loading...

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... [Read Full]
markdown guide
 

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.

 

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

 

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).

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.

 

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

 

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

 

Nope, on Linux you have to run docker as root to run it at all. πŸ˜…πŸ˜…

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

Nope, on Linux you have to run docker as root to run it at all. πŸ˜…πŸ˜…

This is not entirely true.

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.

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

Thanks

Docker running as root is general information.

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

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.

Interesting googles excitedly πŸ˜ƒ

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?

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.

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

Thanks for the info

@avalander

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.

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

 

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.

 
  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?)

 

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.

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.

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

Did my article help?

 

And,

Linux is powerful and preserve your privacy πŸ˜‰

 

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.

 

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

 

Unlike Windows, it is more accessible to disable.

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

 

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.

 

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

 

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!

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

 

#9 isn't a real reason to use Linux, and #5 is more the lack of a disadvantage than a positive advantage, but the rest are good reasons.

To add some reasons, the lack of price is a good one, and there's a lot to be said about the efficiency of a CLI (although that's not entirely fair since Windows has the PowerShell).

I use FreeBSD personally, but I see Linux as part of the same camp (hence why I prefer to talk about 'Unix').

 

Good points

Thanks for the feedback @RyanWestlund

 

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.

 

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

 

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!

 

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

 

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).

 

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...

 

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?

 

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.

 

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

code of conduct - report abuse