What Operating System(s) do you use?

Let's take a look at which OS(s) our engineers and customers prefer.

Favorited Favorite 0

The dominance of the Windows Operating System (OS) among visits to SparkFun.com has been shrinking from 70% five years ago to 60% this year. Obviously, Windows is still the predominant OS and visits using Windows grew 18% in the recent year, but all visits grew substantially. So which OS took share from Windows?

Android.

alt text

The majority of visits to our website in 2016 have been from Windows (61%); followed by Android (13%), Macintosh (12%), iOS (8%) and Linux (5%).

Visits using the Android OS grew the most (70% year over year), followed by iOS (20%), Windows (18%), Macintosh (10%) and Linux (3%).

In step with the rapid growth of the Android OS is the growth of all mobile (phone or tablet) visits to SparkFun (72% YOY). The most common operating systems in use from mobile devices include Android (61%), followed by iOS (36%), Windows (1%), and Blackberry (0.5%).

As I started looking into trends in Operating System use, I ran into Nate, so I asked him what OS he uses here at work. He replied, "Windows 7."

Windows 7?!

alt text

As go the majority of embedded electronics enthusiasts, so go SparkFun engineers?

I decided to do an unofficial survey of SparkFun engineers: “What OS do you use here at work?” and “What OS(s) do you think are best for hobbyists working embedded electronics?” *Note: the way I worded these questions means I did not get any information on OSs used on their mobile devices (Android).

Half of SparkFun’s engineers (and Creative Techs) use more than one Operating System at work, and almost all of them use Windows at least part of the time.

  • 93% Windows (12 out of 13 Engineers use Windows at least sometimes at work; six of them use Windows 7)
  • 43% Linux
  • 36% OSX/Mac

SparkFun engineers and our audience use Windows OS more than the global population according to SitePoint. And our community uses Linux at five times the average rate.

Why?

Here is where I handed it off to SparkFun engineers.

alt text

Shawn Hymel

What operating system do you use here at work?

All of them! I use the three major, modern operating systems: Windows, OS X, and Linux.

What operating system(s) do you think is the best for hobbyists working with embedded electronics? Why?

Most software tools one needs as an electronics hobbyist can be managed using all the major operating systems. For example, EAGLE, Arduino, and Blender have installers for Windows, OS X, and Linux. However, many professional-grade tools, such as Atmel Studio, MPLAB, PSoC Creator, Altium Designer, and Solid Works are Windows-only. If you want to be a hobbyist, any OS will work just fine. If you are planning to join a company as an engineer, you will likely be required to use a more powerful tool, and many of them are strictly Windows.

alt text

Toni Klopfenstein

What operating system do you use here at work?

I use Windows 7 on my desktop, and Ubuntu 15.04 on my laptop for work. I like having two different ones because it gives me the option to test things out on two different operating systems and make sure everything works well. I'd personally run some version of Linux on both if I could, but since a lot of our customers and tech support are on Windows, I need to be able to help them debug.

What operating system(s) do you think is the best for hobbyists working with embedded electronics? Why?

I think in a lot of ways, open source systems like Linux distros are great because they give the users a lot of freedom for customization and configuration (and also, open source!). Unfortunately, there's still a lot of software out there that isn't compatible on Linux, so Windows and Mac are more supported. End of the day though, I think whatever operating system a hobbyist is most comfortable with is the best one for them to work on embedded electronics - that way they can spend their time really focusing on learning and debugging the electronics, instead of getting bogged down in operating system nonsense.

alt text

Jim Lindblom

What operating system do you use here at work?

I switch between a Windows 10 PC and a Macbook running Mac OS X 10.11.3 at work. It can be a hassle to get some toolchains working on a Windows machine, but it's an OS I feel very comfortable using. Plus, there are a few programs I use that only work in a Windows environment, like Atmel Studio and PSoC Creator. I go back-and-forth between that and the Mac, which runs 90 percent of the applications I need for work (Eagle and Arduino specifically). The Mac gives me a UNIX terminal, which is handy. Plus, I think OS X’s extra UI polish just subconsciously makes me a little happier.

What operating system(s) do you think is the best for hobbyists working with embedded electronics? Why?

I think a hobbyist can easily get by on Mac, Windows, or any flavor of Linux - there are plenty of CAD, EDA, and software-developing options out there (many even support all three). If anything, I think it's important to be familiar with all major OS's. If you're developing a new product, you'll be better able to support or debug it on any machine.

alt text

Pete Dokter

What operating system do you use here at work?

Win 7 Pro. It's what works. Less maintenance than Linux of any flavor, but I'm down on neck-beard cred as a result. Meh. I got a job to do.

What operating system(s) do you think is the best for hobbyists working with embedded electronics? Why?

Jeez, you're going to start a flame war with that. But as far as OS's go, most of our suppliers write stuff that's supported by Windows because that's what's most prevalent. If you want to work less on your PC and more on your project, you're probably better off with a Windows machine. If you want complete control over everything in your domain (and all the headaches that go along with that), try out one of the zillions of Linux distros. That's my take.

alt text

Chris Taylor

What operating system do you use here at work?

Windows (7, specifically), because it's what most of our customers use, so we develop in the same environment as the user.

What operating system(s) do you think is the best for hobbyists working with embedded electronics? Why?

Depends on your definition of “embedded electronics.” If you’re an engineer developing with AVRs, ARMs, etc, you probably want Windows, because those companies and third-party companies create IDEs and tools specifically for Windows. They want to use closed-source IDEs so they can sell and support them, but don’t want to jump through the driver hoops that Apple forces on you. If by “embedded electronics” you mean “Arduino,” operating system doesn’t matter, because the Arduino IDE was written in Java, which is platform-agnostic and will run on anything that will run Java. If by “embedded electronics” you mean “programming on a Raspberry Pi,” then Linux, because RPi’s run Linux.

alt text

Marshall Taylor

What operating system do you use here at work?

I use Windows 7 on my work and home PCs. My mobile computer uses Windows 8.0. I use Windows because it is cheaper to buy a computer with, and because Linux doesn't work well for general computing -- I feel it works well when building a computer for a specific task (like creating a audio editing workstation/POS system, etc.).

What operating system(s) do you think is the best for hobbyists working with embedded electronics? Why?

I would recommend hobbyists list out the software they wish to run, and buy a machine that fits their needs. I find the Linux solutions attractive, but there's always some program Linux can't run, which necessitates windows or OS X. I would recommend what's easy for them to use.

alt text

Nate Seidle

What operating system do you use here at work?

Windows 7 Professional (heading towards Windows 10), because I never learned Linux. I know, I know. I'm a bit addicted to the Windows GUI and toolchain. It's like a warm blanket you had growing up as a kid – so hard to give away.

What operating system(s) do you think is the best for hobbyists working with embedded electronics? Why?

Hard to say. I still hear reports that Linux is better but not great for hobbyists (with regards to driver and software support for our various tool chains like JTAG programmers and IDEs). I think the most important thing for hobbyists is to constantly learn something new. For me, I know I need to round out my proficiency with Mac and Linux. Each has their strengths.

alt text

Brent Wilkins

What operating system do you use here at work?

I spend 98 percent of my time in the current version of OS X (10.11.4 El Capitan). I also have Windows 10 in a virtual machine on my laptop. I have Windows 7 and the latest version of Ubuntu (free, open source OS) on my work desktop, but it is too slow so I rarely use it. I have mostly learned all of the GNU (free SW mass collaboration project) tools that come with POSIX systems like UNIX, BSD, GNU/Linux, and OS X. I like being able to write custom functions for common tasks (shell scripts and related stuff). You can run all of this as an add-on in Windows using packages like Cygwin or MinGW, but last time I tried the user experience wasn’t as good. I could also learn PowerShell, but Windows is not as common as POSIX compliant OSs in embedded systems. I always keep Windows around so I can run a handful of Windows-only applications.

What operating system(s) do you think is the best for hobbyists working with embedded electronics? Why?

With more and more of the things I do being in the cloud/browser, the actual OS matters less and less. I used a Chromebook when I started here, but the one I had couldn’t run EAGLE because it ran an ARM processor.

alt text

Pearce Melcher

What operating system do you use here at work?

I use OS X 10.7.

What operating system(s) do you think is the best for hobbyists working with embedded electronics?

Whichever OS you are most well versed in. These days toolchains MUST be cross-platform to be worth using. If you’re forced to learn another OS just so you can run a program or program a board, then you should be using another program. Electronics can be incredibly frustrating, working with them on an OS you’re uncomfortable with just makes things worse.

Mike Hord

alt text

What operating system do you use here at work?

I use Windows 7 at work because it was the last Windows OS that was reasonably easy to use unsigned drivers on. It’s also really stable, widely well supported by programs and drivers, and the UI is comfortably familiar to anyone who’s used Windows for ages, like I have.

What operating system(s) do you think is the best for hobbyists working with embedded electronics?

There are applications that I use that don’t run on any OS other than Windows; that makes trying to use another OS painful (I could run in a virtual machine, but that tends to make hardware stuff trickier and causes a performance hit; dual booting is also an option but in my experience, a dual boot machine gets used in one OS all the time anyway).

It’s an unpopular opinion, but I see no reason other than bragging rights to use an OS other than Windows for most people. HOWEVER, I do make heavy use of a program called Cygwin, which basically gives you a command line equivalent to Linux under Windows. I find the Linux command line to be much more pleasant to work under than Windows, and Cygwin gives me just enough of that to satisfy my needs.

In other words, it’s easier for me to get my Windows machine to behave enough like Linux for my comfort than it would be to get a Linux machine, or Mac, to behave enough like Windows.

There are other engineers in the department that use Macs, and a couple that use Linux at least part time. For simplicity’s sake, though, I stick with Windows.

alt text

Sarah Al-Mutlaq

What operating system do you use here at work?

I use Windows because I feel like it is easier to access all my files, and all the programs I need to use can easily run on Windows

What operating system(s) do you think is the best for hobbyists working with embedded electronics?

For me, Windows is the best operating system, since some programs I have to run on Windows for Mac (just recently the SewArt program for changing .jpeg images into .pes images for the embroidery machine, also SolidWorks and 3D imaging programs). I just think it's better not to have to deal with that.

In Summary

It was interesting to find that there is not an operating system monopoly here at SparkFun - nor at large (like there used to be). And it was good to know that a number of my coworkers use multiple systems in a day - some of them open source. As it turns out, there are good reasons why the majority of engineers run Windows, and the majority of SparkFun's programmers and creative types (including myself) prefer to run OS X at work. It seems to come down to the types of programs available and one's level of familiarity with the OS. Preconceived notions and brand loyalties didn't come into play as much as I thought.

What is your preferred OS? Why?


Comments 23 comments

  • I refuse to use any Apple products. I will not change my mind either.

  • With Windows 10 supporting bash and native Ubuntu binaries this summer (or sooner on Insiders program) this question should get more interesting soon...

  • I prefer to use Mac OS X (10.11.4) along with the Homebrew package manager. I guess I have two main reasons for this: 1) I only own a laptop, and Apple makes excellent laptops. 2) With a package manager, the OS feels like a stable, polished Linux-like environment, albeit without all the customizability... At one point I dual-booted my Macbook Pro with Arch Linux using the rEFInd boot manager, but I don't bother with that anymore. Before that I had a custom PC with Gentoo Linux, and I probably spent more time maintaining Gentoo than actually using it. Lol. Gentoo was a pain because, at the time, the Radeon drivers were under heavy development, and I had to use unstable packages. This let to having to use unstable dependencies, which over time led to even more unstable dependencies. It was a mess. This was during the time where I was unhappy with Apple; They switched to Intel and made my Powermac obsolete.

    At work I recently switched from Windows 7 to OS X. I still use Windows on all the lab computers, and I'll probably have to dual boot with Windows if the need arises: if there is some specific Windows-only software I need to use. Other than that, I try to avoid Windows. There are a couple reasons why I avoid Windows. One is the command-line. PowerShell is a little better than Command Prompt, but it still sucks... A lot. Installing dependencies is a miserable experience as well, double clicking installers all the time, and then having to choose where to install, rather than just having a standard place like /usr/local/. The filesystem also doesn't feel as organized as other UNIX filesystems. I'm also aware of CYGWIN, MSYS, and MinGW, but they aren't as nice as having a "native" UNIX environment.

    For Raspberry Pi's or other ARM boards, I usually install Arch Linux right away. I use Arch Linux mainly because it's lightweight, fast, and flexible. I also don't like the APT package manager. I don't remember why though, it's been a while.

  • I've been 100% OSX for some time. I have Parallels on my Macs but avoid it where possible. Right now I'm only using Win10 under Parallels to play with Xilinx FPGA tools. When I outgrew the Arduino IDE (and wanted an RTOS and a debugger) I moved to Chipkit Pic32 boards and cross-developed with MPLAB-X and Pickit3 on OSX. Embedded development is fine. Both Beaglebone and Edison have cross-compiling/debug tools using Eclipse on OSX. Finally, I use Eagle, Makerbot, Otherplan, etc. on OSX. With Parallels to fall back on, OSX has met my needs. Martin

  • Wow, only 3 comments (so far)? When I saw the title of today's topic, I thought it was going to generate thousands of comments -- and probably a flame war!

    I just want to mention my own favorite operating system: FreeBSD. It's another version of open source Unix, like Linux, but based on the original BSD Unix sourcecode rather than written independently, as Linux was. We use FreeBSD here for everything, and people are often surprised at how much you can do with open source software (firefox or chrome for web-browsing, libreoffice for documents/spreadsheets/etc., gnucash for finances, avr-gcc and avrdude for compiling and running code for Atmel microcontrollers, Geda for electronic CAD, etc.). Though it's a little more work to get comfortable in than Windows or OS/X are, it's worth it for the total control you have when you use an open source operating system, and open source programs. It's your computer; you should know what's running on it! So for those of you contemplating learning something like Linux or FreeBSD, I would strongly recommend it.

  • If OS X is supported for a tool but Linux isn't, that's just poor planning (or, more likely, rectal-cranial inversion on the part of the marketing department [a far too common problem in my experience]), as "under the hood" OS X is BSD Unix, so with a tiny bit of care it only takes a few minor tweaks and a "re-compile" to make it work under Linux.

    Unfortunately, I'm still forced to use the Evil Empire's (M$) products all too often. My XP laptop has recently started having problems, so I'm migrating to a MacBook. I intend to put a VMware XP onto it, but a broken wrist is really slowing things down.

    Gosh, it's hard to believe it's been more than a dozen years since my primary OS was Solaris... (Last I checked, OpenOffice still includes support for Solaris [as well as Linux, OS X, and Windoze, and IMHO, is easier to use than M$ Office.)

    • You aren't a developer are you? Supporting multiple OSs isn't as trivial as you imply. You have two write much of the GUI twice. Once for X11 and once for Carbon or Cocoa. XQuartz Is terrible in my recent experience. Some direct hardware access, exclusive file access guarantees, etc. are different too. The APIs are similar, but not the same. Dynamic linking is implemented different which brings up more work in some cases.

  • I genuinely thought this was going to end with a /s... Really? I shut down my Windows 10 Laptop before leaving work yesterday. I forgot to sign into the newly setup wifi. So I connected my Windows 10 phone to it. My Windows 10 phone has my Windows Live account on it. As does my Windows 10 Laptop. Today, I logged into my Windows 10 laptop using my Windows Live username and password, and yesterdays WiFi settings (that I setup on my phone) instantly sync'd with my Windows 10 laptop. At the same time, my Onedrive account sync'd all the files I'd been working on last night, on my Windows 10 desktop here. You can get the same 'least amount of work' experience if you fully invest in the Microsoft ecosystem (onedrive.. live.. etc..).

  • Generally I prefer to run Linux. It's just the system I feel most at home in. I tried Mac OS X for a while, feeling like it would give me the means to run Unix software (since it's got all that Unix stuff under the hood) but also a more polished user experience... It really wasn't right for me. It wasn't a great system for running the Unix software, as it turned out. Not in my opinion anyway. It was a lot like running Unix software through Cygwin on Windows - you can do it, and there are package repositories to help, but there's not the same variety of packages you'd get with a real Linux distribution, and the nature of the integration is such that the Unix programs feel decidedly out-of-place, and second-class. (IMO Cygwin is actually better in that regard...) Windows mostly just agitates me, and it seems to get worse in that regard all the time. I can install Cygwin on it and mostly pretend it's a Unix box, but there's all these little things, like Cygwin's insistence on remapping the filesystem through mounts, or the constant parade of system notifications and software update notifications, that pull me back to the reality of the system I'm on. Personally I believe that, despite the sort of "command-line machismo" that often comes with Unix fans, in fact all users need some "user-friendly" design when they encounter something new. But I think the prevailing notions of "user-friendly" are geared toward certain types of users (probably the majority), but not necessarily others. I think that's part of what tends to bother me in Mac and Windows, the systems do more hand-holding than I'm comfortable with, and occasionally even obstruct me. Choice of software is a problem, of course: there are many useful tools that are only on Windows, as others have pointed out. In my hobby work the software options on Linux are usually enough for me, but there's bound to be something from time to time that can't be done on Linux because the software is Windows-only. It's an unfortunate situation, but generally speaking I'd rather deal with that than run Windows.

  • I use Windows 7, 8 and 10, but mostly Windows 10. I feel like it's the most user-friendly option, it's very open, and my files are easy to get too. I could use Linux because I'm a techy kind of person, but I used Windows in my childhood. I grew up with Windows XP.

    The reason I don't like Mac is because I don't like Apple in general. I feel like they are just such a closed system and force you into upgrading things. I bought one of their devices 6 years back (Ipod Touch 4th Gen) and it just becomes more obsolete every day. The fact that I can't upgrade to IOS 7 let alone 9 makes me angry. Oh and don't get me started on tech support...

    No, Windows is the better option by far!

  • Primary is Win7 both at home and work. I don't have a choice at work, but I do at home and I have no intention of upgrading to 10. It's my workhorse but I also have a stack of laptops of varying vintages running LinuxMint, XP, OSX (10.5) and the Most Honorably Venerated You-Can-Have-It-When-You-Pry-It-From-My-Cold-Dead-Hands MacOS 9. I cut my teeth on a Mac Plus in my early teens and taught myself HyperCard before soiling my hands with Win2000/ME which turned into quite a love/hate relationship. Some ridiculous unresolvable issue with XP lead me to use a Knoppix Live CD to try and recover some files which turned into a several year stretch of whoring myself to any and all flavors of Linux I could find, it was fantastic! It took Windows 7 to finally get me to settle back down and just be happy again, which I am. I do have an OSX machine, which I don't acknowledge most of the time. I just growl and poke it with sharp sticks. Stupid Apple... how dare you dump HyperCard...

  • I first learned to program on Linux. You can hop on to most Unix or Unix-like environments today and typically have c, c++, perl, and python development environments available by default. I don't think Microsoft has ever included a c compiler in Windows. It always surprises me when I hear people say getting X development environment setup is easier in Windows. If it's cross-platform, my experience has been most development tools are actually easier to setup in Linux.

  • "Windows 7?!"

    ...this is not surprising

  • I always enjoy reasons of the form, "I use windows because all the programs I use run on windows." Well, duh.

    • It's a harsh reality that those of us who prefer working on other OSes frequently have to deal with - a lot of software is available on Windows, but not necessarily on other platforms. One can wind up needing to run Windows in order to run a certain program. It stinks but that's life.

  • Windows for my primary desktop (games and such) and my CNC mill's controller, Debian (KDE, not GNOME) for my laptop and almost everything serious.

    If I had to pick a favorite? Linux. Being able to configure it (once.) and not to have to reboot twice every day (W10, I'm looking at you.) or after an in-place upgrade is nice. I only use windows because developers of certain pieces of (alternativeless) software and hardware (I'd buy one of your DSOs, but Linux support is "LOLNOPE", especially when it comes to "But we need a custom driver, because of Windows". WINE may not be an emulator, but it also Is Not an Alternative, in that case.) who w/don't target Linux.

    But for most desktop stuff? I've even got my 55 year old father on Linux. He hasn't managed to mess it up yet. He used to come to me every couple of months ("It's broken.") for a windows reinstall.

  • For all technical work, I tend to use Linux. All of the tools I typically need run there. For other tools, like, say, QuickBooks, I use OSX. I avoid Windows as much as I can (other than having to format external storage as some msft format because everyone speaks it) and so far manage to do that just fine.

  • For me its always been Windows. I am IT/DBA and mainly use Windows, plus as a kid I learned on Windows after the DOS/Deskmate days. Its like Nate said "It’s like a warm blanket you had growing up as a kid – so hard to give away." But that said, I always keep a Linux VM around and completed the LFS build. I have lived on VM's since college, something everyone should play with. At work I use a OSX laptop just so I can keep my skills up to snuff for all operating systems. But I find OSX too frustrating to use. So I rather use Windows/Linux. It's amazing to see how much more support there is for Linux these days compared to just a few years ago. All my dev work though is on Windows between Arduino IDE and Embitz(Win Only), Notepad++(Win only) and Eagle. You can easily use w/e OS you want and just run a VM for the apps that can't run in that OS. These days what OS you are running is becoming less of thing. Working in education the next generation of students can just jump on any computer and get done what they need. We are a mixed Win/OSX/ChromeOS district so students get exposed to most OS's.

  • My preferred OS is whatever can get the job done quickly and efficiently. At work, I use Windows for all my "office" type work, but I generally use Redhat/CentOS (the volume of Linux VMs is staggering) for all my main work (being a programmer as such). Granted, there are instances where I have to do some programming on Windows, but that's quite limited. The way people should look at their "workflow" is to look at what they need to get done and tailor their OS to make sure it gets done easily, quickly, and keep outside maintenance low. It's okay to step out of your comfort zone in order to make your job easier in the long run. This means, if you need to use a CAD program and you're on an unsupported OS, suck it up and install a VM of the OS it does work on (you'll learn a new set of skills).

Related Posts

IP Obesity

How do I beer?

Recent Posts

Tags


All Tags