People who spend most of their time in front of a computer need to question their basic habits. I’m talking about the operating system that they use. The market share for Windows desktop computers is now over 90%!
Everyone uses Windows for different reasons:
- Windows OS (operating system) comes as the default OS on their PC (personal computer).
- Users grew up with different versions of the Windows OS, so it’s difficult to change.
- Most people think Windows is the only alternative for their desktop PC. Aside from the Mac OS, they are not exposed to more alternatives.
I must admit that Windows is well designed and convenient. It allows you to perform many tasks easily and is updated regularly.
But if you’re a Windows user who has little experience with other operating systems, you may not be aware of all your options.
The Windows alternative I’m presenting here is Linux.
Linux is an open-source operating system developed by the community. Linux is Unix-like, which means it’s based on the same principles as other Unix-based systems. Linux is free, and has different distributions, for example Ubuntu, CentOS, and Debian.
Every distribution has its pros and cons. Each is used for different applications. Linux’s hard disk is a light weight. It’s used in embedded systems, smart home devices, IoT (Internet-of-things), and much more. Android OS is also based on Linux.
I started looking closely at the OS when I noticed that the basic tools I was using did not allow me to make progress for latency. These tools include the Android Studio IDE and an Android simulator running on a Windows machine. I thought it was the hardware. So I upgraded to a Lenovo Y50–70 PC with 16GB of RAM and a 512MB SSD hard drive.
After installing the necessary software, I realized I had similar latency issues with my new PC. I expected my new PC to be fast. But it wasn’t. At that point, I changed my strategy.
I realized hardware was not the problem. So I started to conduct research on the software. Ubuntu’s distribution of Linux is the most popular distribution for PC users. Ubuntu is available both in a client edition and a server edition. A huge advantage to switching over to Linux is that I am now familiar with Ubuntu. Also, I can use Linux on both my PC and the servers I operate.
I read MANY online resources that debated which OS to use, for example, Linux versus Windows or Windows versus Ubuntu. I realized an OS that fits your needs will make you more productive in the long run.
So I waited for a sign. The sign arrived — it was a virus that forced me to backup all my files and reformat my PC. But this time I was using an Ubuntu operating system. I thought about installing Windows and Ubuntu side-by-side for a soft landing. I’m happy I didn’t. I left Windows because I was committed to Ubuntu. I didn’t want Windows as a fall-back alternative.
Here are the lessons I learned after I switched from Windows to Linux. The lessons are mostly aimed at developers, programmers, and anyone who creates products.
Thanks to its lightweight architecture, Linux runs faster than both Windows 8.1 and 10. After switching to Linux, I’ve noticed a dramatic improvement in the processing speed of my computer. And I used the same tools as I did on Windows. Linux supports many efficient tools and operates them seamlessly.
Linux is an open-source software. Anyone can contribute code to help enhance the users’ experience with Linux. As well, anyone can add features, fix bugs, reduce security risks, and more.
Large-scale, open-source projects benefit from having many pair of eyes examine them. As such, Linux is more secure than Windows. Instead of installing antiviruses to clean malware, you just have to stick to the recommended repositories. Then you are good to go.
The terminal in Linux is a wild card. You can do almost anything with it. This includes software installation, application and server configurations, file system management, and much more.
If you are a developer, the terminal is the sweet spot. There is nothing more convenient than running servers, training machine learning models, accessing remote machines, and compiling and running scripts from the same terminal window. It’s a huge productivity booster. By using the terminal, automation becomes a game changer.
With Linux, you can easily configure and access your computer, check processes, and manage virtual environments. Because your server will probably be Linux-based, it will be easier to mimic behaviours, use similar software and packages, and automate workflows.
Working with remote Linux servers
Most servers are Linux-based for reasons that are not listed here. Linux provides tools for developers to operate scalable and secure servers. Therefore, technological entrepreneurs who operate end-to-end applications must master Linux to configure and maintain servers.
Windows use third-party tools like PUTTY to connect and interact with Linux-based servers. This is not so convenient. For example, to copy files with Windows, you need to download another tool.
An advantage of a Linux-based local machine is that it can connect to remote servers with a single command line. This is done in the terminal. Hosts can be stored in a file as well as with SSH keys and usernames. All you have to do to connect with SSH is to type the following command:
And you’re in! No passwords required.
This is an example of the capability a Linux-based local machine has to configure and maintain Linux-based servers. The ability to work via the terminal for both machines is a no-brainer. Most of the popular cloud providers also have CLIs (command-line-interface) for easy integration.
Familiarity with low-level OS principals
Windows implementation is very high level. Developers are rarely exposed to internal issues and to implementations. Linux is the opposite. Configurations have to be implemented by the terminal. This includes editing OS files, adding scheduled tasks, updating software, installing drivers, and more.
When you use Ubuntu, AskUbuntu.com is your friend. You not only learn skills, but you also learn how to solve issues (sometimes the hard way). As well, you learn to monitor your machine for problems, configure different components, and more.
Not everything is perfect, though
- There is a learning curve if you switch to Ubuntu. Some things you didn’t need help with when you used Windows, you might need help when you use Linux. You can use AskUbuntu.com for assistance, though. Expect to experience issues if you have special hardware installed on your computer, for example GPUs.
- Every technological entrepreneur should be a designer with minimal graphic design skills. Unfortunately, Adobe hasn’t released any of its products to Linux users. So it’s impossible to run them directly. The Ubuntu alternative is GIMP. This is a free software and has the basic features for a developer-designer. Despite the disadvantages, I have no regrets about switching. I’m all Ubuntu now and wish I had moved years ago.
Linux is not for everyone. Check to see if it fits your needs before you decide to switch. If you consider yourself either a technological entrepreneur, developer, data scientist or programmer, you should definitely check out Ubuntu.
To receive more insightful posts, especially if you are a technological entrepreneur, please go to CodingStartups.com
I switched from Windows to Linux. Here are the lessons I learned along the way. was originally published in freeCodeCamp on Medium, where people are continuing the conversation by highlighting and responding to this story.
First Appear on: freecodecamp.org