When you're new to programming, you may fall into something called, "tutorial hell". This is the phenomenon of endlessly scrolling through YouTube videos. I get it, there's so much to learn and you don't quite know where to start.
A solid place to start is buying your laptop or pc. This is essential for a comfortable web dev environment. However, I'm not here to tell you which machine you should buy/build. I'm here to tell you about something that's slightly more important. Which system should you be operating on?
This is a highly debated topic among the dev community and could get pretty confusing to navigate. Don't worry, pretty much every programmer has been through this. And while you need to choose the environment that works best for you, this is not a life or death decision. You can always change things up if you need to.
Like most questions in the dev community, the answer isn't black and white. So, rather than recommend a system based on my personal preferences, I've decided to rate the three main OS by pricing, popularity, and adaptability.
Pricing
While programming is a high-paying career field, who doesn't want to cut costs when possible?
macOS usually runs on the more expensive side but it's not directly the operating system you're paying for. Its lesser known to transfer this operating system to any machine other than a Mac. Therefore, to run code in a Mac/Unix-based environment demands more upfront cost.
This cost doesn't go unjustified however, you're paying for a simpler design, longevity, and more security.
On the flip side, we have Windows and Linux. A lot of PCs that accept Windows os accept Linux as a subsystem or fully Linux os. And Virtually every machine that accepts Linux will accept Windows.
However, if you're planning to program on a custom build or a laptop that doesn't use either os then you will have to install these which is a separate price, unlike macOS.
Linux is open source, meaning is free to install on compatible machines. So if you buy a relatively cheap computer that accepts this system, this would be very convenient for a beginner programming student.
The cost of Windows depends on the version. If you're going to go with Windows 11, the price is around *$100 - 120. This isn't too bad for a reliable and well-trusted system like Windows, but I wouldn't call it cheap when you compare it to its free counterpart.
Popularity
Generally speaking, macOS, Windows, and Linux are the top operating systems for everyday use and programming. So you'll be hard-pressed to not find information on them. However, the quantity, specificity, and quality of the os vary and that's what we are looking at.
In terms of downloads/users, ** "For desktop and laptop computers, Windows is the most used at 75%, followed by Apple's macOS at 15%, and Linux-based operating systems, at 5%''
Now, why would we look at the popularity of systems? Don't we know it's bad to always follow trends? Well not in this case. We can make a general assumption that Windows is more popular because of the pricing and availability just as we can assume that Linux is significantly less popular due to its niche uses.
This also affects the quality of articles. As programmers, googling is a mastered skill of ours. Stackoverflow is always bookmarked.
However, something to take into consideration is, when you come into a terminal or environment error, what quality of help can you expect?
Linux is open source, meaning you can tailor it specifically to your needs. Well, your dev needs aren't Bryans's dev needs, and his needs aren't Lindsay's dev needs, and so on. It's harder to debug through problems with an os that's customized.
With less popularity, it is a smaller community that helps you work through your inevitable problems. I'm personally a Windows and Linux subsystem user and with just a few keywords in a search engine, it's easier to find articles, comments, reports, and videos for window systems than Unix-based ones.
Adaptability
Let's be honest. We are web developers. All of our time and attention should be focused on programming and developing our soft skills.
Everyone's path looks different. Some of us have the time to dedicate to knowing our environment front and back. That should always be our goal, however different os allows us to go about that differently.
As we discussed, Linux is a fully customizable open source operating system. This means, that this comes with a pretty steep learning curve. This may be seen as a way of getting off track for some programmers while others can add this as a skill on their resume.
While Windows is customizable, you can think of it as more like adding CSS than just a full rearrange. It's pretty intuitive and has lots of features. However, with more features, this takes time to remember and utilize.
I would say that UI-wise macOS has everyone beat. Its clean terminal, commands, and multiple bash commands are the easiest to pick up. However, I ran into the problem of oversimplification. If you're switching from Windows for regular use to macOS for dev work, it's pretty hard to adjust to the various shortcuts and commands available for dev work.
Takeaway
I know you're expecting a nice bow on top, however, there isn't one. The only thing everyone reading this article has in common is that we are programmers. You can be a beginner, a student, a freelancer, or a pro, but we're all the same but our needs are different.
If you're looking for convincing and affordability, a regular pc/laptop using Windows ubuntu subsystem Linux is the best option perhaps.
However, if you're looking to upgrade and have more of a streamlined dev process then macOS would be a more suitable fit.
Regardless of your operating system, I'm sure you're going to kill it in web development. So go out there with your pragmatic self and get to programming :)
references used
Buy Windows 11 Pro | SoftwareKeep
* Usage share of operating systems - Wikipedia
Top comments (0)