Linux had a big birthday recently -- its 20th -- but the event may have been a tad bittersweet for its most devoted fans. According to recent results of the annual application development survey from Santa Cruz, Calif.-based researcher Evans Data Corp., Linux has slipped to third place in popularity, behind Mac OS and, of course, Windows.
Steve Bougerolle is an independent Linux consultant and software developer in Vancouver, B.C. Although he started out as a physicist doing scientific programming in Fortran (and worked as an IT manager along the way), Linux programming has become his specialty. "It's flexible. I can always find a way to do what I want. I have total control over what I do, which isn't true with either Windows or OS X."
Josh Oakhurst, chief creative officer for Charlotte, N.C.-based Skookum Digital Works, a developer of custom Web and mobile applications, concurs. "Linux isn't for the faint of heart. If you're looking for a pretty solution with stylish software, it's just easier to go with the Mac."
For other developers, the cost premium on Apple hardware is worth it. Ries van Twisk has been a freelance software engineer for five years. He lives in a little town about 20 minutes outside of Quito, Ecuador and uses an iMac for OS X development. He loves the fact that his computer is an integrated, all-in-one unit. "In my situation, I can't always just go buy more peripherals," he says.
Van Twisk is also willing to pay for Apple hardware's elegance. "It's brilliant that they got everything into one machine," he says, admitting as well to an intense dislike for the sound of fans on PCs; the noiselessness of Macs lets him concentrate on his work. "You want to concentrate on development, not on the machine."
Commonalities and conundrums
If anything, this gives developers more flexibility than ever before. "Cloud platforms further distance the deployment platform from development platform," notes IDC's Hilwa. "That tends to drive [developers] toward more diverse platforms, because the client machine is irrelevant. You're writing code that runs somewhere else."
Horvath concurs: "A browser-based system is platform-independent. The user is going to get the same experience. Loosely coupled applications separate the presentation layer from the data layer and from the transport layer. The more loosely coupled the application, the easier it is drop something in the back-end. The UI guy shouldn't care what's going on back there."
Developers may be attracted to OS X because they not only want to design for the latest cool devices, but also because there is significant demand for iOS developers.