• 0 Posts
  • 18 Comments
Joined 1 year ago
cake
Cake day: June 15th, 2023

help-circle













  • So, for a bit of a crash course, a virtual machine is just that, a machine that is virtualized. So, anything you can do with your physical machine (your computer) you can do on a virtual machine. (You could even dual or triple [or more] boot a VM)

    Just like a normal computer, changes made to a virtual machine are persistent unless you configure them not to be. So no need to worry about losing changes. (Though, I would suggest taking a snapshot of your newly installed distro as soon as you finish the initial installation, it will be useful if you need a clean starting point for something you want to do)

    I suggest you download a couple of Linux distros you want to play with, download VirtualBox, and setup a virtual machine for each distro. You can also setup the VM to run in full screen mode, so it feels like native.

    There are tons of guides online to help you out, and a large number of computer nerds here that will help you too.

    The one limitation with VMs is gaming. You can get around that limitation once you’re more well versed with them, but just don’t expect to be gaming on a VM for quite a while.


  • There just isn’t any reason to do it manually. You don’t learn anything useful that you can’t learn on a VM. And it adds complexity to your system that doesn’t need to be there.

    As others have stated, the main risk comes from having Windows as one of your partitions, as Windows doesn’t care if you are working with other systems, it only cares about Windows.

    I know SOLID principles are meant for object oriented programming, but, they have merit in many areas. One of the more impactful ones is the principle of single responsibility “…[X] should do one thing and therefore it should have only a single reason to change.” Adding in additional responsibilities increases entropy and increases the likelihood that if something goes wrong, you won’t be able to pinpoint what caused it, and therefore how to fix it. Situations like that are antithetical to your stated impetus of learning.

    However, if you used virtual machines, not only are you now abiding by the principle of single responsibility, but you are also giving yourself access to standard industry tools and techniques that will serve you well in your learning journey. For example, when dual booting, if you royally mess something up, you are now left with a useless hunk of computer until you either figure out what you did and how to undo it, or you just give up and reinstall your OS. With VMs, you can just take a snapshot before you make your changes, and if removed hits the fan, you just revert to your snapshot and retry. This gives you the chance to figure out not just what happened, but why, and how to avoid it, all without losing access to your main system.

    Not only that, but multiple VMs can be running simultaneously and can be used to simulate networks of interconnected machines all running disparate software with different goals and responsibilities.

    It’s obviously your computer and your choice. But, I’m trying to save you the headache many of us had to go through on our learning adventures. Just use VMs.