I would stick with a virtual machine as you originally planned, instead. It looks like a pretty neat tool for deploying a web server in a cross platform way that remains consistent. Which can be handy for production environments where you need to regularly deploy new web servers in a consistent manner. That’s probably why your experienced programmer friend suggested it, as they likely have experience with it in and like it. However with TOP, you will likely find it easier to follow the curriculum in a Linux machine built the way they suggest for learning. I would explore XAMPP more once you’ve completed TOP to see if it’s something you want to use moving forward.