Is Developers Tool Choice Rational(ized)?
On the other hand, IBM is probably entitled to express itself to developers in whatever way it prefers: Despite the high profile of Microsoft among mass-market software developers, IBM claims to have led the tools market in revenue for five straight years, with Microsoft in second place at half of IBMs tool revenues.
Of course, Microsoft may not judge its success in tools by how much money those tools bring in, but rather by their success in attracting talent to the Microsoft platform. I once asked Microsoft research manager and genuine development guru Jim Gray if Microsofts tools were expected to generate the same kind of margins as other Microsoft products, or if the tools group was merely expected to cover its overhead while serving strategic developer engagement goals. "Thats a good question," he replied, but thats as far as his answer went.
I vented in a recent blog post on the subject of whether taxpayer-funded software development should make a point of using only standards-based tools for nonproprietary platforms: This led to some dialogue among our blogs readers on whether I was (i) taking a cheap shot at a government agency that had made a rational choice of a productive tool set or (ii) accurately identifying the political nature of the process by which tools are chosen. Ill admit that Im of two minds myself. Ideologically, I want to see school kids with Macs or Linux boxes being just as able to use a NASA-developed learning application as students in Windows-equipped classrooms. Practically, and as I acknowledged on the 20th anniversary of Windows late last year, Ive seen technical tasks dramatically aided by the availability of useful and free applications that might never have been written without the leverage of inexpensive tools for a ubiquitous desktop client.
To argue against myself, though, Ive also taken a good hard look at how the world of end-user computing might have evolved if Windows had been less effectively marketed, and if broadly licensed standards from many vendors or open standards created by the community had instead become the definers of how we develop and deliver. I believe its possible, and smart, to choose development tools and practices that reflect the common subset of technology thats available to almost every user: a "subset" that is today an enormous superset of what we once thought was pretty darn good.
Tell me how you make these choices at firstname.lastname@example.org.
Check out eWEEK.coms for the latest news, reviews and analysis in programming environments and developer tools.