DEV Community

10 reasons to choose Linux

wolfiton on February 26, 2020

Hi everyone, Today, I want to write about the 10 reasons any web developer and programmer should choose Linux as the main Operating System. Witho...
Collapse
 
themobiledev profile image
Chris McKay • Edited

I was once a diehard Linux user. I had to stop because I realized I was spending more time tweaking and distro hopping than I was actually working. It also didn't help that I was developing commercial desktop software, for which I couldn't get a market on Linux.

Now that things have shifted to more web-based apps, it's a great option for developers. For me, I still find myself working around little things to improve the desktop experience, things I don't have to mess with on Windows or MacOS. So for me, I'll continue to play with it in the hopes that someday it will meet my needs.

Collapse
 
wolfiton profile image
wolfiton • Edited

I also had trouble but discovered a simple solution. If you would like I can share my Linux setup in a future article.

Would this be of interest to some other readers as well?

Thanks for the feedback and your experience @ChrisMcKay

Collapse
 
themobiledev profile image
Chris McKay

I think sharing desktop setups is always good. I used to frequent desktop customization sites just for fun. For me, my problems with Linux weren't setup issues. I was plagued with software that just wasn't finished or polished compared to their closed-source counterparts. Now, it's been over 10 years, so I realize things have changed. I'm still always checking out the latest Ubuntu and Fedora (my favorite) releases.

It might sound shallow, but I think if nVidia would release drivers that performed as well as they do on Windows, then I would probably jump ship again (I'm a gamer in my "spare" time).

Thread Thread
 
wolfiton profile image
wolfiton • Edited

Me too, I am also a gamer(when I have time) and Vulkan support plus steam proton really brought gaming to Linux with mods also.

I think, I will write an article about how to play games on Linux soon.

Collapse
 
nicekiwi profile image
Ezra Sharp

"Linux takes security very seriously" - But most developers run Docker as root :laugh-emoji:

Collapse
 
wolfiton profile image
wolfiton • Edited

They probably are not Linux admins and use docker to emulate their system(docker image for work) on a Windows PC.

Collapse
 
nicekiwi profile image
Ezra Sharp

Nope, on Linux you have to run docker as root to run it at all. 😅😅

Thread Thread
 
wolfiton profile image
wolfiton • Edited

I will dive into docker soon.

Thanks for the heads up, on the root access needed, I might look for alternatives now, that are more secure and don't need root privileges to be used.

I opened a new discussion here if you like to join and elaborate more and what you told me here would be great.
Thanks again @EzraSharp

Thread Thread
 
avalander profile image
Avalander • Edited

Nope, on Linux you have to run docker as root to run it at all. 😅😅

This is not entirely true.

Thread Thread
 
nicekiwi profile image
Ezra Sharp

Historically you could use Docker Machine for that purpose. But the Docker team have specifically abandoned their machine product to focus on Windows and MacOS products. :( It runs as root on Windows and Mac too but in a VM seperated from the host OS. So ironically it's secure on every OS except the one that enables it's technology to work. The Linux kernal.

Thread Thread
 
wolfiton profile image
wolfiton

Very interesting information, can you pojnt me to where you read about that(source)?

Thanks

Thread Thread
 
nicekiwi profile image
Ezra Sharp

Docker running as root is general information.

Docker Machine being placed into maintenance state is here. github.com/docker/machine/issues/4537

Thread Thread
 
avalander profile image
Avalander

Docker can be run in rootless mode as well. Albeit it is still experimental and has some limitations, I expect it will get better soon enough.

Thread Thread
 
nicekiwi profile image
Ezra Sharp

Interesting googles excitedly 😃

Thread Thread
 
ghost profile image
Ghost

It runs as root on Windows and Mac too but in a VM seperated from the
host OS. So ironically it's secure on every OS except the one that enables
it's technology to work. The Linux kernal.

And can't you run it in a VM in Linux, just like in Windows or Mac?

Thread Thread
 
nicekiwi profile image
Ezra Sharp

You can and that's what Docker Machine did without all the fuss (bugs aside). But manually exposing docker outside of the VM to your host is difficult and complex.

 
wolfiton profile image
wolfiton

So we can use the same idea that some people use with PostgreSQL on Linux.

Thanks for the info

@avalander

Thread Thread
 
nicekiwi profile image
Ezra Sharp • Edited

Maybe I should rephrase that @avalander . Must be run with root privillages. Which is what the docker group enables you do do without the sudo command. As any commands that are run in a docker container run with root permissions in the host when directories or files are shared. See Docker surface level attack.

You can setup the docker process to run as a manually created user who has the docker group and reduced permissions elsewhere, but it becomes less and less convenient to setup and use.

Thread Thread
 
wolfiton profile image
wolfiton

Thanks for explaining more with examples and also for the warning regarding the surface attack.

Collapse
 
k1dv5 profile image
Kidus Adugna

Good reasons but, correct me if I'm wrong, Linux has some problems that don't seem to have any hope of being solved anytime soon. For me they are

  1. Its power consumption, at least on a laptop. Yes you can use tlp and powertop but still, not as good as Windows.
  2. It's touchpad support. It isn't as polished as Synaptics on Windows. They say it's even better on MacOS :)
  3. This may not be for everyone but... The audio. I'm so used to increasing the bass from the sound setting on Windows so that all the audio sounds really good (it's Microsoft's audio driver) but in Linux, if you want anything like that, you have to use some software (pulseeffects seems to be the best), which is a pain to configure by the way, and if you do get it right, #1 worsens.

Again, please correct me if I'm wrong.

Collapse
 
wolfiton profile image
wolfiton
  1. I don't use a laptop on batteries so I can't argue with that point.

  2. My touchpad works but in general, I use a mouse.

What version, distro of Linux have you used? (Ubuntu, Arch, Fedora Cent OS?)

Collapse
 
k1dv5 profile image
Kidus Adugna • Edited

I'm not saying the touchpad doesn't work at all, it does. I'm talking about the additional things like arrow momentum.

I've tried Mint, Pop!OS, Xubuntu, Elementary and MX, all the latest in the last 4 months. Right now I have Clear Linux, hoping the optimizations by Intel improve the battery life but it doesn't seem like they do.

Thread Thread
 
wolfiton profile image
wolfiton

I use a different distro after trying:

  • Manjaro

  • Lubuntu

  • Ubuntu

Also, the distro I use will be covered in my new article and can say that it works well also on older laptops. Maybe it can help with your touchap problem as well.

Thread Thread
 
k1dv5 profile image
Kidus Adugna

Alright then, thank you, and waiting for your next article...

Thread Thread
 
wolfiton profile image
wolfiton

Did my article help?

Collapse
 
thomasbnt profile image
Thomas Bnt ☕

And,

Linux is powerful and preserve your privacy 😉

Collapse
 
wolfiton profile image
wolfiton • Edited

There are telemetry options you will have to disable and I am not quite sure if bugs are not reported automatically in silent mode in certain distributions.

Have a look here gnu.org/philosophy/ubuntu-spyware....

That is why privacy was not added to the article.

Thanks, for the feedback.

Collapse
 
vicentdev profile image
Vicent

Linux itself doesn't have telemetry options, so, the sentence "Linux is powerful and preserver your privacy" is 100% true :D

Thread Thread
 
thomasbnt profile image
Thomas Bnt ☕

Oh yeas of course!

Collapse
 
thomasbnt profile image
Thomas Bnt ☕

Unlike Windows, it is more accessible to disable.

Thread Thread
 
wolfiton profile image
wolfiton

I agree, with Linux we can even rewrite the whole system if we want too.

Word of warning don't do that on actual hardware try in VM(virtual machine) first :D

Collapse
 
mattemc profile image
Matteo Carotta

I would go deeper on point 2. "Linux takes security very." There is no impenetrable system except one completely disconnected from the internet, which is not a practice way of using a computer in 2020. But most of the distributions based on GNU/Linux offer a good user experience with very high security standards tanks to 3 reasons:

  1. Open Source offers transparency. Although the most of us cannot understand the source code of Linux there are talented Individuals as well as Organizations both profit and no-profit making sure the source is not corrupted by malicious code, embedded backdoors and so on.... All these organizations pursue very different objectives and serve different interests and agendas, which may suggest that there is no centralized power bending intentionally the safety of the OS to pursue the own interest.
    On the other hand, Windows, OsX or source code of other proprietary OSs is not exposed to public reviewing, hence we have no idea what's inside. You can either trust them or not, and I suggest you to don't trust them. They give us enough evidence on the way the treat our private information to believe that under the hood things are even worst.

  2. Linux distributions offer controlled software repositories. The most popular distributions offer a package manager and a software center full of good and safe open-source software, just install it and it will be kept updated in the future automatically (if you desire so). Even if you install cloed-source software though a PPA it will be kept updated automatically. On the other hand, the most of the time I hear of people getting malicious software on their win pc or being victims of a scam it has to do with their inability to select secure software from a secure source. And may times when it doesn't have to do with malicious software the bad experience on windows is ensured by bloatware that comes with the installer package or preinstalled on Windows 10 (great job microsoft!).

  3. Safety measurements are taken into the kernel. Yes, the most of the safety on Linux distributions don't come from patches or anti-virus software it comes from coherent solutions right in the kernel, which are more efficient and respectful of your experience. How many times evidence is collected of anti-virus software spying on you or using too many system resources to compensate windows limitations?

Collapse
 
wolfiton profile image
wolfiton • Edited

Very good points, thanks for sharing them @MatteoCarotta.

I will look over them in detail as soon as I finish my new article.

Your points would be a huge contribution to the article would you allow me to quote you and credit you?

Also as aside not the article was created using only the knowledge I accumulated in my head over the years.

Collapse
 
tirtakeniten profile image
Tirta Keniten

I am actually an OS agnostic. I use Windows PS at home, MacOS on my MacBook, and Ubuntu at office. I'm a web developer so I have to use Ubuntu. All of my servers are mostly Ubuntu, and the rest are CentOS. And I pretty much love it.

Collapse
 
wolfiton profile image
wolfiton

I use Linux as my main OS for work and home use and it has been great.

My current article today will cover this.

Thanks for sharing your experience @TritaKeniten

Collapse
 
wrldwzrd89 profile image
Eric Ahnell

I have found Linux interesting, though a poor fit for my past history developing native/semi-native apps. With the pivot to Web apps, using Linux as a true developer OS is not only possible for me, but realistic enough that I am trying exactly that at the moment. It’s gone reasonably well so far!

Collapse
 
wolfiton profile image
wolfiton • Edited

I am glad it works out well for you, thank you for sharing your story.

Collapse
 
not_jffrydsr profile image
@nobody • Edited

Very compelling write 🤟🏿 (almost considered how long it'd take to spin-up a dual-boot again just to play with some new distros).
I noticed many comments implying some advantage to web-development on Linux than Windows 10 though rather nondescript; what specific features does Linux give the web developer that Windows 10 lacks? Personally, without such an advantage, the out-the-box stability and UI customization I get with Win10 is what made me switch from Ubuntu, Elementary, Kali 😈, Mint, FreeBSD, and Fedora (while kids my age were twerking at parties, I was trying out Operating Systems like new shoes).

Collapse
 
wolfiton profile image
wolfiton • Edited

So the things that made me move away:

  • the technology I use needs Linux so I had a VM opened every day with Kubuntu

  • Windows 10 has som much bloatware that other devs created scripts to uninstall

  • if you work with API's then postman needs special permission to be able to test your API

  • a lot of tools work best on Linux or else you will have to install WSL(Windows Subsystem for Linux)

  • internet security program antivirus firewall consumes a lot of RAM and CPU

  • Cortana

  • Updates that break the system and my video card drivers

The list could go on, but i think i should stop here.

On KUBUNTU:

  • easy customization

  • low resource usage

  • total control

  • security

  • cool tools to use

  • scripts for automation

  • better performances regarding the graphics card with Vulkan and steam proton

  • Can open 20 tabs without problems at the same time(cool to have, but I don't think I will use that in the future)

  • can work with the same browsers for testing

I hope that my reasons help you decide. But personally i would go with a live usb and then full Kubuntu. Also, a very good community has Linux Mint and very helpful.

I also have this article about Kubuntu here dev.to/wolfiton/when-kde-meets-ubu...

Collapse
 
aminnairi profile image
Amin

One thing among the multiple things I like about GNU/Linux is that most drivers are baked into the kernel, which is nice to plug-n-play out-of-the-box without-headaches-whatsoever.

Collapse
 
wolfiton profile image
wolfiton • Edited

If you don't need Vulkan and AMD OpenCL, then you will not have any problems, but if you do, prepare for a long battle especially on older AMD video cards.

I am writing this from my personal experience with this fact.

Thanks for sharing your experience @aminnairi

Collapse
 
aminnairi profile image
Amin • Edited

Actually, I had the best experience using AMD hardware. Even on an old laptop which I-don't-remember-the-reference of the APU (GPU + CPU) I have been able to successfully install the non-free driver and the administration panel to be able to tweak the settings without too much hassle back then.

The worst case I had was with another laptop shipping NVIDIA + Intel and the so called Optimus technology. I now understand the hate that Linus has toward NVIDIA. This was really the only hard time I had with drivers. Since then I only bought AMD hardware for my PC and decided not to play on any laptop anymore to ease the installation of GNU/Linux on some of my laptops.

Thank you for giving us the opportunity to share our experiences!

Thread Thread
 
wolfiton profile image
wolfiton • Edited

Glad I could write this article and share our experiences with it.

Collapse
 
wolfiton profile image
wolfiton

If you have time Dear Readers, please also add your suggestions and comments here, so I can write articles that everybody will enjoy.

dev.to/wolfiton/what-would-you-lik...

Thanks in advance

Collapse
 
wolfiton profile image
wolfiton

Good points

Thanks for the feedback @RyanWestlund