Your development platform
Last year I wrote about my experience in switching to a Mac laptop after many years of running Windows portable machines. In the ensuing months I’ve found that some of the Mac software is pretty poor.
Finder, for instance, is terrible compared to Windows Explorer, but Path Finder from Cocoatech is a superb replacement. iPhoto is practically unusable if one is porting a lot of pictures from another machine. GoodSync is a great way to synchronize files between machines – I use it to sync to a Windows desktop. iTunes remains about my least favorite program in the world.
But my article had a poll question that asked for peoples’ preferred development platform. Windows scored a paltry 39% of responses. Linux won at 42% with the Mac’s fan base at 12%. Though the vast majority of toolchains for embedded development are Windows-based, it appears most of us wish otherwise.
The vendors went ballistic. I received a lot of unhappy email from them, as the results were orthogonal to what they expected.
Is the operative word in the poll “preferred?” How does our preferred environment mesh with that which we’re actually using? Are we coerced into the Windows world by the dearth of tools for other platforms? Or do vendors push for that OS simply because Windows has most of the desktop market share?
I don’t have authoritative figures, but Wikipedia pegs Mac OS at about 7% of the OS market and Linux just over 1%, though they acknowledge that other sources have somewhat different numbers. I would have guessed a much higher number for Linux, and suspect that in the engineering world it garners significantly more adherents than in corporate America or in the home.
It’s logical for a vendor to create tools that run on the broadest possible range of systems. But truthfully, the Mac’s market share is so small that there’s probably not a lot of upside for the amount of engineering and support needed to run on OS X. But if most of us prefer something other than Windows, you’d think true market leadership would be to boldly go where few embedded companies have gone before, and sell products that meet the needs and desires of the customers.
What do you think? If you could be doing your embedded development on any platform, which would it be and why? (Alas, when embedded.com was revamped over the summer the polling mechanism was removed. So please post your votes/thoughts as comments here.)
Jack G. Ganssle is a lecturer and consultant on embedded development issues. He conducts seminars on embedded systems and helps companies with their embedded challenges. Contact him at email@example.com. His website is www.ganssle.com.