11 ms·
I've used Linux as my main desktop OS for about 3 years, from around 2010 to around 2013 (so maybe some things changed in the meantime). The article says that
by mastazi 8y ago
I've used Linux as my main desktop OS for about 3 years, from around 2010 to around 2013 (so maybe some things changed in the meantime).
The article says that you pay a "VM tax" by running in a Linux VM in Windows or by using WSL, but by using Linux directly you end up "paying" in other areas, for example in terms of less-than-perfect drivers (which leads to problems such as worse battery life, worse graphical performance etc). In an ideal world, laptop and GPU makers would put as much effort developing Linux drivers as they do when they create Windows drivers, but unfortunately this is not the case.
Another point is that, even if you are running Linux on your dev machine, it is often challenging to have a local environment that is as close as possible to your production one; for example where I work we have Ubuntu 16.04, Ubuntu 18.04 and CentOS (and with various combinations of installed packages), even if I was using a Linux laptop, I would still need containers to get all the different environments right. The only case where you could use no containers at all is if you had all of your servers running the exactly the same environment.
Finally there is the issue of some pieces of software not being available for Linux, 95% of the times you can find a Linux equivalent that works for you but, in my experience, there were still rare cases where I had to resort to Wine or some Win VM just to run some specific tool that was needed to do my job.
PS My job, at the time I was using Linux as my main desktop OS, and during the couple of years after I switched back to Windows, was about PHP, Python and Java web apps deployed on Linux servers, so my comments above should be taken in this context. Maybe in other fields of software development there are different factors to take into account.
PPS I have also tried MacOS, on the one hand it's great that Mac is UNIX, but on the other hand it's not Linux so, if you want to closely replicate your production Linux environment, you will still need VMs or containers.
- baroffoos 8y agoI picked a Dell XPS for development and it runs linux amazingly well. Only bit that doesn't work out of the box is the fingerprint scanner but there are unofficial drivers for it. With web development its so trivial to do everything you need on linux and almost all of the time its easier to set up on linux or mac than on windows.
- themodelplumber 8y agoAgreed, using an XPS here too. I remember when I started looking for webdev tools back when I moved to Linux as a daily driver. I was bummed that there weren't any really nice FTP clients. Turns out my file manager was a step ahead of me with ssh:// and various other niceties. It was all built in.
- dragosmocrii 8y agoBeen using FileZilla forever. Very convenient if you manage lots of sites
- themodelplumber 8y agoI used to use it, too. Does it still store all your server login credentials in plain text?
- dragosmocrii 8y agoLol, thanks for pointing that out as I was not aware of it. Looks like now FileZilla has support for a master password that's used to encrypt stored passwords.
- themodelplumber 8y agoCool. Encryption is better than base64 for these things :-)
- JetSpiegel 8y agoWhy not use Full Disk Encryption straight away?
- sk5t 8y agoI give anyone who asks a "hard no" on FileZilla, certainly not least because it came (maybe still does come) packaged with crapware/malware depending on your chosen author-sanctioned download location. Panic Transmit on MacOS, or just use openssh.
- rashkov 8y agoIf I may abuse this metaphor a little further, I'd like to point out that running Linux also pays dividends by teaching you, well, Linux. It is the platform that most code ends up running on, after all. You'll know it is worthwhile when you're able to comfortably debug production problems by hopping on the server and looking at all layers of the stack, or when you make quality of life improvements for your team with a quick shell script.
- mastazi 8y agoYes, this is absolutely true, I should have included this part in my post above. I am considered the "Linux specialist" at work but I never really had to "study Linux", I just learned almost "effortlessly" by just using it day by day.
- sams99 8y agoA very interesting and important aside is that in Linux you pay almost no tax for using Docker. This is not the case on Windows and MacOS where there is a significant cost. That 8 minute spec run, also takes 8 minutes in docker. https://meta.discourse.org/t/beginners-guide-to-install-discourse-for-development-using-docker/102009/32?u=sam https://meta.discourse.org/t/beginners-guide-to-install-disc...
- amanzi 8y agoThe significant cost on Windows is due to having to spin up a Linux VM in the background, right? So the cost is probably more due to the VM than Docker itself?
- sams99 8y agoThere are 2 parts to the cost. 1. is the VM 2. is handling filesystem mounts across operating systems (2) can be debilitating in dev environments on Mac for example where you want to edit files outside the container but have the container have access to them. Docker have done a lot to improve this over the years but it is still very painful.
- deleted 8y ago[deleted]
- NightlyDev 8y agoAs with everything, take "almost no cost" with a grain of salt. There sure is situations where docker can be slow compared to bare metal, even on linux.
- ehnto 8y agoI would never develop on anything but linux, but I definitely know the struggle of drivers and configuration well. It is relatively pain free these days. But I still have to manually find my wifi drivers from a strangers github repo and build from source to install them.