Every programmer needs to ask themselves several questions about their development environment which, when correctly answered, can make the job much easier in the long run. One of the questions that needs to be considered is which operating system to use for programming. While certainly not the only choice, Linux is a fantastic platform for programmers. Here are several reasons why this is the case, and why you should keep Linux in your considerations.
Linux Is Free
Of course, one of the primary benefits that Linux offers is that it’s free. Especially if you’re just starting out with programming and haven’t built up much of a career yet, you most likely don’t have the money to shell out for the various software that you’d need on other platforms. This isn’t necessarily a technical benefit for programmers, but hey, financial benefits are worth taking into account as well.
It’s Easy To Get Linux And Install It
Nowadays Linux has become extremely easy to obtain and install (besides some distributions which have different philosophies), and it works on virtually any hardware. Just pick one of the more popular distributions (if you aren’t sure which one, a safe choice is Ubuntu), download the ISO file (which, again, is completely free), write it to a USB drive or burn it to a DVD, and boot off of that media to go through the installer. If you have another operating system already installed, you can also choose to dual-boot between the two operating systems so you can use Linux for programming and your other OS for anything else.
Support For Most Programming Languages
Linux has lots of support for all sorts of languages. Unless it’s notoriously known for being specific to a certain platform (such as Visual Basic for Windows or Objective-C for Mac OS/iOS), then the chances that you can get it on Linux are extremely high. C/C++, Java, PHP, Ruby, Python, Perl, and so many more all work perfectly in Linux.
If a specific language that you’d like to use isn’t already installed by default, you can (except for very rare instances) just get the necessary packages straight from your distribution’s repositories. Just look through the package manager for the name of the language you’re looking for, and you should be able to find it.
Large Range Of Coding Applications
Support for many languages is great, but what about the applications you use to edit your code? Linux has a ton of those too, spanning across the entire range of tastes. You can get as nerdy and simple as emacs, or just use gedit, a more functional equivalent to Windows’ Notepad. There’s also stripped down but focused code editors such as Geany, or you can go with full-fledged IDEs like Eclipse. Again, these are just examples that show the variety of coding applications on Linux, and there are several alternatives to these.
If you’re just programming to get something specific accomplished, but don’t have any requirements in regards to the language, then tapping into Linux’s utility line commands and Bash scripting is an excellent option. Many of the commands that come with Linux (or that can be installed) work like highly-functional but focused blocks that can do certain things.
With a Bash script, you can put those blocks together to create something that can do what you want it to. For example, as Newsletter Editor for MakeUseOf I have to work with multiple lists of subscribers. With Bash scripting, I was able to create a script that would merge them all, extract the email addresses, remove duplicates, and add the correct formatting so that it can be read by other programs. It didn’t take very much time to write, the script isn’t very long, and it completes very quickly. It’s a great productivity tool worth checking out and putting some time into to learn.
Linux Is A Desirable Skill
Lastly, have you ever looked at the job market lately? A very common item found in programming job descriptions is familiarity with Linux. Adoption of Linux is on an upward trend, and there are no signs to show that will change anytime soon. Putting Linux on your system and doing some programming on it will quickly give you some familiarity with the operating system that can give you a competitive advantage later on.
Why Would You Use Anything Else?
With these six great reasons in mind, it’s pretty hard to come up with enough reasons to choose a different operating system. Even if you already have a development environment going, it can’t hurt to reevaluate it to see whether it feels your needs as well as it could.
If you use Linux for programming, what are some other reasons why people should consider it? What’s your favorite programming feature or tool on Linux? Let us know in the comments!