As I promised to write more about my experience with Linux as my replacement for a Mac, here is my experience with developing web apps on Linux.
It’s almost ridiculous how easy web development on Linux is. All the tools are a simple “apt install” command away. If not, most vendors outline how to add their repository and then issue an “apt install” command.
Thus, installing MongoDB, Elasticsearch and MySQL takes you literally a few minutes. Same applies to nodejs (my weapon of choice for web apps). You either have the option to get node from nodejs.org or install nvm (node version manager) which allows you to run different versions of node, e.g. if your production environment runs on node 4.x but you want to get ready for node 6.x. With nvm installed you can painlessly switch between versions with a single command, i.e. “nvm use 6” or “nvm use 4”.
Also, for editing code you have a plethora of options. Some of those editors, are Linux only. Hence I’ll only list my experience with the ones that are available on macOS as well.
People either love or hate vim. Personally, I love the power of vim, and I tend to use vim and sublime text together (Honestly, I sometimes get confused with all the shortcuts). On Linux I use vim more as it just works better. On the mac, it’s sometimes a bit a sluggish experience. Obviously, though with some tweaks, vim runs perfectly on Linux.
Sublime Text 3
This is my go-to editor. It’s extremely fast, comes with a lot of options and the vast amount of packages lets you tailor the editor for your needs. If vim is not your thing (I don’t blame you) then give Sublime Text 3 a chance. It really is one of the best editors out there. As Sublime Text 3 is available on Linux, Windows and macOS it’s quite easy to have the same environment setup on all of them.
I don’t know what it is, but I never really got the hang of Atom. Yes, it’s open source and it looks nice, but it is just so slow. Even on Linux, Atom is the slowest compared to vim and Sublime Text 3. Options are endless and there is a vibrant community and you can find just about any package. I’ve configured Atom to work the same as vim and Sublime Text 3, but I still use Sublime Text 3 and vim more. It’s a nice editor, but as mentioned, there is something that doesn’t work for me.
So there you have it. Personally, I couldn’t be happier with using Linux for web development.