Hello World!
Just wanna do my first #healthydebate to see how it feels to have interactions with other programmers. I bought a week ago a new pc and decided to buy a window. I read some articles on it before deciding and it came out that windows will allow me to have more freedom (and to play videogames 😊). What do you think about that? Do you have a mac or a window / what pc do you have? Why?
I'm very interested in creating a conversation / a debate thinking about which one is the best, particularly for programmers. I also have in mind to write an article on that, maybe using quotes from this post.
Remember the comment!
PS: You can also comment if you have linux
If you don't want to write a long comment, just say which OS (Windows, MAC or Linux) do you use.
Check this article, my second debate, how programmers love to code?
Article No Longer Available
And this one, why programmers love to code?
Article No Longer Available
Article No Longer Available
Just wanted to add the Stack Overflow results:
Platform devs develop for:
Subscribe to my Newsletter!
A loooong, and fun, weekly recap for you
Free PDF version of my articles
Highly customizable inbox
That's --> free <-- and you help me!
Top comments (75)
Windows < Mac < Linux
Windows is the worst OS for developers and should be avoided at all cost. It was simply not made with us in mind. Scripting capabilities are limited, PowerShell is badly designed and poorly documented, and WSL2 fails with cryptic errors at any task that is remotely low-level. Windows is a bloatware: there is a huge amount of pre-installed software you don't need which slow down your PC, take a lot of memory and disk space, and that you can't uninstall...
MacOS is already a far better choice but has too many protections, so you can't configure things you'd like to change, and Docker doesn't run properly because of OS permission issues.
Linux is the best dev+gaming option. You get an even better developer experience as with a Mac, a computer with the same specs costs half the price of a Mac and lasts twice as long, and also the OS doesn't spy on you and is built with free software. It was not the case a decade ago but now there are a ton of gaming-oriented distros to chose from (beware of SteamOS which is not that great tho).
If I were you I'd dual boot your Windows PC with 25% of disk space for Windows just for games that don't run elsewhere, and 75% of disk space for Linux that you'd use for everyday computing, developing, and gaming.
Solo Linux user here.
I literally have a Celeron G3930 with 4GB RAM and Integrated Graphics.
It's already enough to game nicely(War Thunder mainly) and programming is smooth.
XFCE 4 with Manjaro Linux, running Linux 5.10
I've never had my computer so stable in my life before Linux. Already ran Windows on it, barely could use it properly. Tried Hackintosh, was horrible.
What kind of cryptic errors did you encounter in WSL2?
Things like how you can't access network sockets low level, and you can't access USB devices properly for flashing with UF2 (i.e. STM32 devices). That's just two recent issues I've had.
Plenty of them, I left Windows years ago, but on top of my head:
npm install
of simple, front-end-only packages, that failed due tonode-pre-gyp
^THIS
Hard disagree on PowerShell. Its actually quite well documented and the fact it outputs objects instead of texts makes scripting so much easier. Not to mention the direct access to .NET classes/objects.
You've lost me in the first sentence.
See, people say Linux even if you don’t add it as an option (:
Yes, but I think it's legitimate! Hear me out:
Billions have been invested in marketing by Microsoft and Apple so that people don't even think of any other OS besides theirs. It might sound annoying to hear people bring Linux on the table even if no one asked, but I think most of these interventions come from a genuine desire to tell people about an option they've been conditioned into not even considering
Yes, i didn't think there would be so many on linux. I changed the article title!
I'm not a Windows user but would recommend setting up the Windows Subsystem for Linux. Then you can Ubuntu and do Linux programming without a separate install + reboot.
I do find switching between mac and Linux command line generally easy. My first tech job also meant using Linux command line for the first time ever but programming on mac before that prepared me well.
The frustrating thing about mac is the price. Of the laptop and mouse, extras etc.
People who own mac's will probably say this cost is worth it for the brand performance.
People who use linux will probably say it is free and flexible.
Want to reinstall another flavor of linux on your machine? People do it all the time. There are tons of distros. There is only one mac OS and it increments.
Programming on linux and mac both mean security. By the design. And also because majority of the world uses windows so hackers write viruses for windows.
Linux programming also makes it easy for modern computing. Like running a container or a remote web server or kubernetes cluster. Free, open source and secure.
Linux is about collaboration to make and give away free software. Apple is a for-profit company so they will always do things like keep the closed so don't need know what they are doing with your data and they will have an agenda on how to sell more apple products and ship their OS. Apple has been a leader in some innovation so they are not bad. They will also just be different from open software orgs
I actually disagree with your points on security, Windows is probably the most secure in my opinion. Microsoft just has so much more experience dealing with viruses and hackers on a large scale (multiple different types of devices) that a device will only be insecure if you disable the numerous number of protection Windows has.
I don't know.
Windows having experience with hackers doesn't alone make them better, it might just mean Windows is easy target for vulnerabilities so they get targeted easily?
I don't think I've ever heard of someone associating Windows with security. While Linux and Mac are frequently associated with security. Linux because its code can be viewed by anyone so the public finds, reports and fixes bugs potentially faster than a company with limited employees and fixed release cycles and closed source code can achieve. Macs are built on Bash and now ZSH - similar open source shells which form the base of Linux.
I worked with someone who said to a Windows colleague - don't bother installing anti virus software on your mac. Macs are built for security.
As someone else said here, mac asks for a lot of permissions for things and this assists with security. I get a pop up when a dev server tries to use a port. And get a pop up if I tried and install software that doesn't come from a signed apple provider so it asks me verify it is a trusted source.
I had a discussion yesterday where I was told that Windows is making it harder to deliberately disable updates and even then it makes security updates mandatory. Which is good. But still doesn't mean the system as a whole is more secure.
Not doing to do a deep dive, but just going to pick a few quotes from the first few articles in a search, willing to see arguments from both sides on has the reputation for being more secure. And as a bonus if this still holds.
Overall I found mac does indeed have the reputation for being more secure but this is due to windows being 90% of user and therefore targeted. And that both systems have vulnerabilities and neither is inheritantly more secure.
DuckDuckGo search "Windows vs mac security".
Results in the order found. First 4 below are first 4 in the results.
Kaspersky 2020. First result.
Digitaltrends conclusion
Transunion
Not on reputation but comment that they are equally resistant.
Mac sounds better equipped by default with regards permissions.
Tom's guide
Digital trends again
They actually said Chrome OS was most secure but Mac is next best as practical choice.
Another angle:
CNET
Mac appears to have an edge in that regard.
I was just giving my opinion, but here we go.
Linux being open source doesn't make it more secure, open source means everyone can see the code including hackers etc...
Mac OS is seen as more secure but that doesn't mean it actually is more secure it , in truth Mac OS is just has a smaller percentage of the market that hackers don't really bother (but that means if a hacker actually tried Apple would have less experience and wouldn't have the systems in place, 9to5mac.com/2020/08/01/new-unpatch...).
Windows in my opinion has more experience dealing with hackers and viruses that it actually makes it a more secure choice.
Security is a set policies set in place to secure data and devices, and just based on the amount of experience Microsoft has I'd argue they have the better security.
In my opinion it's always better to have a third party antivirus that secure connections and file downloading.
Wow! Really nice research
Personally I use both Win and Mac, I have similar toolset on those (Pycharm and extras mostly).
My feelings: in general, I feel I'm way more productive with Windows, considering all the keyboard shortcuts and, well, years of developing my habits with it.
On the other hand, MacOS provides much more pleasant experience with much better look and the MacBook itself is just such a nice device and it's just a bit more enjoyable per se.
Both are great as long as it fits your personal workflow 🦾
Thanks for the feedback. I think like you, you have to choose according to your habits and how you feel better. Although the two should be tried first. Windows are free and fast, but a MacBook is so beautiful, and it can be very fast when you know the cords (thanks to its nice UI).
re beautiful: link
re fast: have a look at what some people can do with i3 or awesome. Those systems are optimized for fast user interaction with a steep and long learning curve, so you can keep improving and getting more proficient for a long time. Alternatively, something like cinnamon gives you nice defaults that let you be productive from the start while still letting you customize many aspects so they're more in line with your preferred way of interacting with your PC.
Oh, don't get me wrong - I was using Arch Linux +i3wm exclusively for a few years of university and I still do use Linux at work.
I really like i3, it's a great and efficient working environment.
There are some major problems with it. It really requires a lot of setup in order to make it usable. Also you need to have quite a good knowledge about Linux in order to be able to set it up correctly.
And one thing I really don't like - UI scaling doesn't work as good as on other systems. In my case it's kind of deal breaker - I use 150% scaling on Windows, and on Linux it's always blurry, no matter if I use Wayland or Xorg. I guess there may be some solution, but I was tired of looking for solutions and just wanted a working environment so I can focus on programming instead of tweaking my OS. :P
But Linux is great, I'd never say it's worse than Win or MacOS - it's just different approach, which just doesn't fit (at this moment!) my work needs.
Just imagine an OS where you could set all those shortcuts up the way you want them 😝
My preference goes to Linux or MacOS. I despise Windows for programming and if I see one more error that I need admin permissions to delete my node_modules folder I'm going to scream.
WSL2 is better but still not for me.
For gaming Windows is still the best option for me so my gaming Rig runs Windows. My laptop runs Linux.
macOS is good for installing software, including proprietary ones, until your Mac become older than a few years.
WSL2 is not that good compared to real Linux desktop. Therefore, in the end, I use both Windows machine (which does have WSL2) and Linux machine (which has VirtualBox).
Are you trying to start a bloodbath here?? 😉
As always, "It depends." I am a staunch Linux user. I would not recommend Linux if you're trying to develop Windows desktop applications though... that wouldn't make sense..!
This question comes up time and time again though, and is very dependent on the use-case. You might want to refine your query.
So,
100 Continue
Windows just feels broken these days. I mean why do you have two different apps for one function (control panel and windows settings) so I decided to convert to linux and it's great for development and normal usage but for gaming I would always choose windows
For gaming ou would always use Linux or Windows?
It was a typo 😅
This debate goes on since the late 80's, trust me you won't figure out much but here it goes.
I've tried all 3 major platforms Win, Mac and Linux. I've sticked to Mac for the reason that it just won't crash*. Never had issues with updates nor unresponsive applications or blue screens of death. Plus if you practice safety it is almost impossible to get malicious stuff. Working happily ever since.
If you are a serious player alongside with programming go for Win.
If you are a hardcore backend dev go for Linux.
Nothing else to be said. My advice is to try them all (borrow a friend's laptop) if you can.
*except a couple of times but no damage was done
I understand you, my windows crash all the time and I have serious problems with applications not responding / problems when not updating. But I'm also a fairly serious player who know windows shortcuts by heart.
I also personally think that mac keyboard is too tiny for gaming / writing fast (even if the absents of noise is fantastic).
From what I see here a lot of developers have a bad outlook on Windows and as someone who has tried all OS's, some of these complaints seem misguided or driven by inexperience.
Linux is very free, developer friendly and allows for a large set of programing to be done with ease, that is until you run into some software you need that Linux doesn't support, also from just a user experience perspective Linux straight up sucks (it is improving rapidly but it's not there yet), do note user experience is separate from user interface there are many Linux variants with good UI but that doesn't necessarily mean a good user experience.
Mac OS is basically Linux with a good user experience and a steep learning curve. The problem with Mac OS is that it's very limited by design and you are at the mercy of Apples decisions (long term with the M1 switch Apple
may
force apps to need to use the app store, but that is the general problem with using Apple products, you just don't know what they will do).Windows is sort of more user experience over developer experience. Windows Security used to be a nightmare when using basically any programing language they've improved this with recent windows updates, more memory is required than their counter parts, UWP Isn't the default app install type (UWP apps are smaller and use less system resources overall), you are under the rules set by Microsoft (even though it's often too a lesser extent than Apple it's still there) and etc... The list of problems are long but the problems aren't so bad that Windows is unusable for programing tasks, and a bunch of these problems are actively being fixed, project reunion is a plan to unify Windows UI and API's so Windows is as consistent as Mac OS and system resources are better used by apps. Powershell is very powerful but Powershell Core is a tier above that. A bunch of abilities once locked become available to you the more you actively try to learn about what you can do with Windows (there reason why IT pros like it).
For a summer internship in the IT department of a company a while back I was forced to really learn how to use Windows and Windows is quite powerful and even has its own learning curve but if you learn it, it can be an awesome experience.
Do note, I have used Mac OS for 3 years, Linux in a docker environment for 2 years (I also tried using just Linux for over a month, the experience was just not good enough), I have used Windows for 2 years, and I have used Chrome OS for 4 years (don't even bother with Chrome OS, programing requires such hacky solution, it's kinda off putting).
Some comments may only be visible to logged-in visitors. Sign in to view all comments.