More developers now use OS X than Linux
9to5mac.com
9to5mac.com
I had a debian thinkpad while in graduate school that did what I needed it to do, but still ended up being extremely finicky after a few years (especially WIFI and power management). Despite always wanting to do work with computers, I've accepted the fact that I really don't want to have to play sysadmin on some personal machines, and am willing to pay to have them just work.
edit: one extra note, regardless of what platform I am developing with, my deployment target is typically some form of Linux HPC cluster, so I don't know if the OS X vs. Linux argument is particularly clear cut. I use both (and windows), but in very different ways. I don't have a clear incentive to pick one platform for everything.
This is pretty much why I switched to a MacBook too.
Windows is a workable desktop OS, and it has great software support for things other than developer tools (I can also play games, for example). Unfortunately, its lack of UNIXness means half the open-source software world (at least, the portions I care about) doesn't work well with it, and this is a pain.
Because I wanted something UNIXy, I switched to Ubuntu (more than once), but the desktop experience isn't great (in particular, both my graphics and my sound were broken) and non-developer application support is poor (few games I wanted to play were supported or worked, not to mention other things).
OS X, on the other hand, has a solid desktop experience, sufficiently UNIXy underpinnings for development purposes, and has good enough application support for my needs.
I do have the option of switching over to Windows on this thing, but tellingly I haven't in the two years I've had it. (I do have a Boot Camp partition for Windows, but it exists for the sake of a single game. Everything else I want to do can be done in OS X.) While using Windows or Ubuntu it usually took less time than that before I got fed up and switched OS yet again.
My experiences aren't representative, of course. I don't just do web app and systems programming on my computer. If I did, I'd probably be fine with Linux. But sometimes I also do things like browse the web (including watching YouTube videos and using web pages which have WebGL), dabble in game development (Unity's editor doesn't run well under WINE), edit videos (there's no good Linux video editor), play games, and so on.
I'm also someone who doesn't like dual-booting. I don't want to have to deal with two completely different operating systems with their own user interfaces, and have to stop one activity and reboot if I want to do a different activity. I don't want to have to deal with the mess that is trying to share files between different OSes.
I bought the cheapest, newest MacBook I could find on Craigslist and gave it a while since I hadn't ever experienced Macs on a daily basis outside of school settings. Loved it instantly and haven't looked back.
Before Vagrant and VirtualBox all of my development truly was local. My Java still compiles local and the Tomcat server runs in my IDE, so I'd say I develop directly in OS X.
My other languages though (PythON, PHP, mostly) are written from the same IDE connected to Vagrant VMs because I don't want to have 25 instances of nginx/Apache running simultaneously and have a /hosts file longer than it already is.
When working on embedded, C, Postgres, or pretty much anything that is completely UIless we get most of our information from short to the point blogs, with 1/3 or less from SO.
When working on web (php, node, css/js/popular framework) or mobile we pretty much exclusively use SO. The blogs and documentation here are full of stupid terms and too much text.
The other cases I was thinking of were Python and R. Both of which I found were SO heavy, and whose blogs seemed awfully similar to the front end stuff.
To create a representative sample, you need knowledge on your population. For survey on the general population of a given country or state, the census data is used. You know what percentage of your population is in a given age bracket, their occupation, their gender, their family situation, etc. and you build a sample with the same proportions.
I expect more people dev on OSX simply because of wanting to design for IOS, and being locking into the OS to do so.
Apart from that I believe you're largely right. I had to switch from Windows to OS X for this reason exactly.
I'm an Android dev joined a Xamarin team recently, and you can't work on the iOS version lest you have an OS X machine. As far as UX goes, I'm not too pleased with the transition.
56,000 respondents is a small sample?
I'm by no means a stats guru, so correct me if I'm wrong. But that seems like a pretty good error rate to me.
The criticism that StackOverflow isn't a good representation of the general developer community still might be valid. I honestly don't know enough about its demographics to make any educated opinion about that statement.
[1] I make this assumption because there a finite set of jobs. Even if a developer's job requires them to use Windows, they had an equal probability of another developer of having a job that allowed them the freedom to choose their platform/required them to use OS X.
In almost 40 years of experience, I never had the choice to chose the OS.
Look at comments about the post. Someone wrote that "OSX" is perfect Linux. Nice joke. If anything OSX is wasted BSD. There is nothing but fanboyism on this page.
I wasn't aware OSX had one. Not an official one from Apple, anyway.
There are third-party package managers, but that's not the same.
Looking at my peers (CS graduates last year) only a handful of us (out of ~100) know the differences and histories, and all of us will happily accept linux=unix in general conversation.
I expect a large part of those 50% still on Windows to be corporate devs, accessing StackOverflow during work hours on an OS they didn't necessarily have a say on. Many of them will be using OSX or Linux at home : if anything, the non-Windows figures could be underestimated.
BTW StackExchange is a Windows / .NET shop, not exactly prime suspects for Apple fanboyism. https://meta.stackexchange.com/questions/10369/which-tools-a...
Since I became a 100% laptop user, my GNU/Linux usage has been constrained to VMs, server and a small netbook I use to travel. But zero Mac OS X around me.
Love the OS with its NeXTStep roots, but could never get myself to pay the 1000 euros difference to get a Mac that would be somehow comparable to e.g. Thinkpad W510 in terms of available CPU/discrete graphics.
Also for better or worse, my Windows roots go all the way to Windows 3.1/Win 16, so those skills are quite valuable in the enterprise. And I enjoy the love C++, .NET and Java have on the platform anyway.
iOS is the only thing that might force me to eventually get a Mac, but so far Android and Windows Phone already keep me busy enough.
When it does, we use VMWare with Ubuntu or Red-Hat distributions.
iOS alone does not explain OS X's popularity. I know several people who develop using OS X and have never dealt with iOS[0], including myself.
[0] One caveat here: I actually have developed for iOS, but never on OS X. That was on Windows.
In my company for example, you will get assigned a Windows machine, unless you convince your boss to get one of the "creative people" machine (designers, typesetters, ...), which is OSX. Linux, sure you can. But not on a laptop ( so if you want to work from home that's OSX or Windows), and you will need to use a VDI to use the corporate software including office.
Even if you like Linux better, that's a lot of hurdles.
In 2013 Linux and OSX made up ~38 percent of users. Now they are at ~48% while Windows has declined.
Both Linux and OSX usage have continued to grow. To me that is the bigger story here.
Yeah, that's not worrying at all... /s
ETA: I'd be more worried about developers using brands that have been known to bundle BIOS- or firmware-level spyware with their systems, and those tend to be exactly the same brands on which people are most likely to run Linux natively. Would you rather have someone using the "wrong" platform in terms of cosmetic issues, or in terms of security?
And beyond that, do the term dogfooding mean anything at all these days?
The participation of Chinese, Japanese, Russians and Latin Americans on this survey is just ridiculous. You can see also a clear web & mobile bias on the survey page:
Again, I'm not dissing open source here. I've learnt a whole lot from it. But there's many, many things that are lacking in open source, which when seen from the other side seem extremely basic and fundamental to creating good software.
Java also has excellent out of the box documentation. Tools which are developed commercially often have better documentation whether the source is open or not, and where there is good documentation Stack overflow usually becomes a last resort rather than a useful reference. Either way it's something I look at for specific questions, not as some kind of community where I go to answer surveys
http://stackoverflow.com/research/developer-survey-2016#prio...
I attribute my dis-interest in what has been a decade of OSX adoption (after a decade of Linux/Unix), as a result of having to think, too many times, about the sandbox, the API rules, brew update && brew upgrade && brew doctor, and so on.
Out of curiosity what hardware are you maybe looking at?
http://www.razerzone.com/store/razer-blade-stealth
As long as it feels as comfortable as a Macbook, with decent performance, I'm willing to switch completely.
http://www.razerzone.com/store/razer-blade-stealth
I don't care about the Windows license - frankly, after a decade of ignoring Windows, it might be nice to buy Windows, try it out, and have it alongside Linux. No big deal.
The real thing, of course, will be getting my OSX environment virtualized for the switch...
web developers? core software engineers? core system level engineers? algorithm engineers?