You are not authorized to post comments.

The age of uber-tooling in software development

By Sean McGrath, ITworld.com |  Development Add a new comment

When developing software in the old days, we used to grab a bunch of separate tools with names like compiler, linker, editor, profiler, debugger and hook them together with our fingers. That is, we installed them as individual applications and made them work together the way we wanted by organizing a working setup on the hard disks of our computer systems.

Over the years, this model seems to have undergone gradual but constant erosion in favor of a more monolithic approach to tooling in which large applications such as Microsoft Visual Studio[1] and Eclipse[2] taking center stage.

There are a number of interesting side-effects to this trend. First, it is resulting in a significant change in the market for developer tools. It is still possible to "go it alone" and develop stand-alone developer tools but increasingly, developer tools are being positioned as "add ons" or "plug-ins" to uber-tools such as Visual Studio and Eclipse.

Second, these tools are BIG. Big in size, big in scope, big in terms of feature sets, big in terms of the commitment required from developers to learn to wield them well. I do not think it is stretching credulity too much to say that the IDE used by an individual developer significantly impacts their world-view, their understanding of the software development process and their mental model for how complex stuff hangs together. Take a C++ developer out of one of these uber-tools and drop them into another uber-tool and you may well have to wait quite some time for their head to bob back up above the water line in terms of productivity.

Third, in order to be a good uber-tool you need to have an extensible set of graphical components so that plug-in developers can re-use existing code for creating outline views, color-coded editors, etc. Looking at it another way, a good uber-tool must - by definition - be a good custom application development framework. This creates an interesting dynamic in which an uber-tool aimed initially /primarily at software developers can find a home as a generic container for end user applications. I know of no better example of this phenomenon than the Eclipse Rich Client Profile[3]. The phrase "developed in Eclipse" has a potential interpretation quite unlike, say, "developed in Delphi"[4].

Fourth, the whooshing noise in the background is the sound of a race in full flow. A race to get developers on board using uber-tool X, Y or Z before the next guy gets there first. Why the rush? Well, generally speaking your average developer will use one of these uber-tools as the center of his or her universe for quite some time. The stakes are therefore quite high.

Fifth, as the center of gravity in the developer tools industry shifts to the uber-tools, it will become more and more difficult to stay outside of one of the big uber-tools. Pretty soon, complete projects set up for ubertool X,Y or Z will have the network effect of getting all developers on those projects to use the same uber-tool. Think of the 'office wars' on a smaller scale and to a very different audience you have the general flavor of it.

One final and largely uninteresting side-effect is that I have - partly as a consequence of the reasoning presented in this article - begun using an uber-tool (Eclipse as it happens). After years of avowing that I would never succumb to using one of those newfangled all-singing and all-dancing IDEs, here I am, dragging and dropping my way through a software development project.

My resistance was ultimately futile. Will I be happier? More productive? I don't know. Will I be less out of touch with 21st century software development realities? Yes.


[1] http://en.wikipedia.org/wiki/Visual_Studio


[2] http://www.eclipse.org/


[3] http://wiki.eclipse.org/index.php/Rich_Client_Platform


[4] http://en.wikipedia.org/wiki/Borland_Delphi

ITworld LIVE

DevelopmentWhite Papers & Webcasts

Webcast On Demand

How to Distribute Apps to Your Mobile Workforce

When considering enterprise app deployment, you may find some unexpected challenges and a number of options that range from simple distribution to running your own enterprise market. How can you determine the best approach for your organization? MOTODEV for Enterprise can help you understand and evaluate current enterprise deployment technologies and learn best practices that support your choice.

Sponsor: Motorola Mobility

Webcast On Demand

Authentication, Certificates and VPNs

MOTODEV for Enterprise can help get you up to speed quickly on key topics such as how to enable secure access to a company intranet from outside the firewall. This webinar provides a clear explanation of terms and technologies and what they can do for your enterprise app development.

Sponsor: Motorola Mobility

Webcast On Demand

Improving Enterprise App Quality with MOTODEV App Validator

MOTODEV for Enterprise supports quality app development for businesses, government, and institutions with technical resources and tools such as the MOTODEV App Validator, a free static analysis testing tool.

Sponsor: Motorola Mobility

White Paper

HR Analytics: Driving Return on Human Capital Investments

In today's economy, it's critical for organizations to make employee retention and development a major business focus, to ensure that valuable employees are not lost as the economy improves. With advanced BI solutions, organizations can be supported by workforce analytics to drive return on human capital investment and to see the value the workforce delivers to organizational performance. This white paper demonstrates how the increased power of having metrics and analytic insight can align core HR business processes with organizational goals and strategies and help ensure organizations make the right business decisions today for tomorrow.

White Paper

Positioning the CIO as a Powerful Business Partner with IT Portfolio Governance

In this whitepaper, learn how you can become a visionary portfolio manager and transform IT into a streamlined revenue and profit center.

See more White Papers | Webcasts

Ask a question

Ask a Question