Windows device development faster, cheaper than Linux?

But if so, why are so many outfits committing suicide?

  • alert
  • submit to reddit

High performance access to file storage

A survey of embedded device developers claims a 4:1 development cost advantage in using Windows embedded platforms over Linux ones. By happy coincidence the report was funded by Microsoft, and will no doubt therefore be playing its part in Redmond's current 'get Linux' campaigns, but nevertheless it should not be dismissed out of hand - its numbers do have a certain validity, and warrant examination, although the report may not ask all of the right questions.

The obvious question it doesn't ask Linux developers is, if it's so darned expensive, why are you doing this to yourselves? It claims average total cost of development for using Windows XP Embedded, Windows CE.NET and embedded Linux respectively at $438,000, $510,450 and $1,888,458. Within this, Linux development tools are more expensive, time to market is almost double (14.3 months versus 8.1 months), Linux developers are paid more, Linux development teams are bigger, and total runtime licensing costs are far higher, because while much comes free with Windows, Linux projects typically require more components to be bought in.

Pretty damning stuff? You can get Jerry Krasner report with all the raw data here, then join us in taking a shot at the 'why are they doing this to themselves' question.

Krasner surveyed 50 outfits developing for Windows and 50 for Linux, covering the standard range of devices. For reasons of commercial confidentiality it clearly wasn't possible for him to go too far in identifying particular products, but given the fairly small number in each category (e.g. one each for consumer electronics and gateway/server for Windows, also just the one for Linux POS/kiosk) there's a lot of scope for single projects to screw up the averages, and there's no way to match the level of resources expended with the relative complexity of particular projects, aside from crossing your fingers that distortions will average out.

The two European Linux set top developers who clocked up DMM (Developer Man Month) scores of 1955 and 1700 would seem to us to have had a certain unfortunate impact on the numbers, as indeed would the Asian Thin Client project under XP Embedded that took two engineers one month, for a DMM score of 2. Divergences like these within very small samples would seem to us to tend to undermine the statistical validity of the numbers.

One can infer a certain amount about project complexity from the populations of the various device sub-categories. CE handheld computers (several are covered), for example, should by now be pretty simple things to develop, given the amount of effort Microsoft has put into this particular sub-sector of world domination. Linux handheld computers, on the other hand, are clearly a considerably bigger challenge, while Linux gateways and servers, being rather more mature, are much less so. So the devices range from simple, well-understood ones that are at least approaching commoditisation (by design, in the case of many of the Windows ones, which provides one answer to the question we started with) to more ambitious punts aimed at categories that don't entirely exist yet.

But despite this, with just a couple of exceptions Krasner's numbers do seem to indicate fairly consistently that more development effort is put into Linux embedded projects than Windows ones. The divergent nature of the projects may make it rash to, as he does, report a threefold advantage for Windows (64.0 versus 203.7 DMM), but the divergence is there.

So, why? Do we hear voices at the back saying it's because Linux developers are creative types with short attention spans who'll goof off down strange byways if you don't keep an eye on them, whereas Windows developers are code-monkey morlocks? There's perhaps more than a grain of truth here, so we'll try rephrasing it less insultingly.

Windows, in all its many and varied forms, is about commoditisation. Microsoft offers tightly defined and controlled platforms together with a wealth of standard tools, Ts & Cs and support packages for developers to work with, so it's fairly cheap and easy to produce products that are pretty similar to other people's products. Microsoft also, from way back in the 80s, has pushed the industrialisation of the development process. The result as far as hardware is concerned has been that differentiation and price have been eroded, and if you want to compete - with, say, Dell and HP - in the commodity handheld computer market you need to keep your team size down and your ambitions modest.

Avoiding commoditisation while sticking in the Windows arena is however hard, and quite probably a suicide mission, so if you don't want to go on it you go somewhere else instead, check? You don't necessarily go for Linux (Krasner's Linux versus Windows focus is in this sense artificial), but whatever you go for you're likely to be spending more on development than you would by taking the Windows commoditisation route. And your developers are more likely to be more expensive, goof-off prone geeks than cheaper, downtrodden code-monkeys.

Not inevitably, of course - in cases where the objective is simple and well-understood it should be possible to knock out a Linux or BSD product for relatively little effort, and provided you understand that means it's a commoditised product and price it accordingly, then that's cool too. As embedded Linux matures, there should be more products that fall into this category.

So it strikes us that the higher costs for Linux Krasner identifies could to a large extent be put down to a larger proportion of the developers trying to differentiate and/or break new ground. In doing this they will naturally tend to overrun development schedules, cancel projects and produce products that fail to hit the spot (The Register now owns several of these, but could not possibly have afforded them at list price).

High risk projects that are possibly aimed at new categories we think may exist are more expensive and fail more often, but produce higher rewards when they hit the spot. Commoditised categories result in low risk projects, but the rewards are also lowered, and there's a case for saying that, where there is an overall objective of commoditisation, innovation dies.

In the embedded market, Microsoft initially set out to displace proprietory embedded systems, and is now in some areas the incumbent defending itself against what it sees as a similar challenge from Linux. Microsoft spent - and continues to spend - a large amount of money in getting itself into this position, and it seems reasonable to expect a certain expense now to be associated with challenges to Microsoft. Further down the road, if the challenge begins to succeed, then the average costs will come down, although we'd argue that it'd be bad for innovation if expensive and protracted development projects vanished entirely.

Essentially, innovation, differentiation and building on new platforms ought to cost more, and we should not be surprised when they do. Krasner's figures are certainly interesting, and flag some areas of concern (the tools issue being one of the more obvious of these), but they do not provide adequate reason for Linux developers to flee the battlefield and sign on with Satan instead. Hindsight may tell us that some of the developers of failed embedded Linux devices were indeed foolhardy or even crazed, but most current developers are not, have very good reasons for not taking the Microsoft shilling, and understand the reasons for spending more, if that's what it takes. ®

Related link:
Embedded Market Forecasters

Combat fraud and increase customer satisfaction

More from The Register

next story
This time it's 'Personal': new Office 365 sub covers just two devices
Redmond also brings Office into Google's back yard
Batten down the hatches, Ubuntu 14.04 LTS due in TWO DAYS
Admins dab straining server brows in advance of Trusty Tahr's long-term support landing
Inside the Hekaton: SQL Server 2014's database engine deconstructed
Nadella's database sqares the circle of cheap memory vs speed
Microsoft lobs pre-release Windows Phone 8.1 at devs who dare
App makers can load it before anyone else, but if they do they're stuck with it
Oh no, Joe: WinPhone users already griping over 8.1 mega-update
Hang on. Which bit of Developer Preview don't you understand?
Half of Twitter's 'active users' are SILENT STALKERS
Nearly 50% have NEVER tweeted a word
Internet-of-stuff startup dumps NoSQL for ... SQL?
NoSQL taste great at first but lacks proper nutrients, says startup cloud whiz
Windows 8.1, which you probably haven't upgraded to yet, ALREADY OBSOLETE
Pre-Update versions of new Windows version will no longer support patches
IRS boss on XP migration: 'Classic fix the airplane while you're flying it attempt'
Plus: Condoleezza Rice at Dropbox 'maybe she can find ... weapons of mass destruction'
prev story


Top three mobile application threats
Learn about three of the top mobile application security threats facing businesses today and recommendations on how to mitigate the risk.
Combat fraud and increase customer satisfaction
Based on their experience using HP ArcSight Enterprise Security Manager for IT security operations, Finansbank moved to HP ArcSight ESM for fraud management.
The benefits of software based PBX
Why you should break free from your proprietary PBX and how to leverage your existing server hardware.
Five 3D headsets to be won!
We were so impressed by the Durovis Dive headset we’ve asked the company to give some away to Reg readers.
SANS - Survey on application security programs
In this whitepaper learn about the state of application security programs and practices of 488 surveyed respondents, and discover how mature and effective these programs are.