I'm completely new to Linux and want to learn ROS 2 from the ground up. My current plan is to install Ubuntu in a beginner-friendly virtual machine such as VirtualBox, learn the Linux basics, and then move on to ROS 2. Does that sound like a sensible progression, and what should I do first? I've also heard that dual-booting Windows and Linux provides better GPU performance. Is that worth considering, or would a virtual machine or separate computer be a better choice for learning?
2 Answers
Dual-booting can give Linux direct access to your hardware, but it adds installation and maintenance risks. Back up anything important before changing partitions, because a mistake can wipe the drive. For a beginner, using a spare computer dedicated to Linux is simpler if you have one; an inexpensive used business laptop can work well. Otherwise, begin in a virtual machine and only move to dual-booting when you actually need better GPU or robot-hardware performance.
A virtual machine is probably the safest starting point. It lets you experiment with Ubuntu without changing your Windows installation, and you can reset it if something goes wrong. It should be fine for learning Linux, command-line basics, programming, and much of ROS 2, although graphics-heavy simulations and hardware access may run noticeably slower. Start with Ubuntu fundamentals, then learn Git, Python or C++, and basic ROS 2 concepts such as nodes, topics, services, and launch files.

So if I avoid dual-booting, would a virtual machine be enough for getting started?