This is not the code generation of years gone by where the code was difficult to understand and impossible to modify. Modern code generation offers a viable alternative for the IT direct who wants to save time on development and testing; reduce bugs; redeploy senior developers to high priority tasks; and maintain control.
Turning your web-based application vision into reality is a path filled with long nights of mindless infrastructure coding. Unless battling ASP.NET and writing SQL are your passions, you probably would rather focus your own energy — and that of your senior developers — on the unique application logic that gives your application personality. There have been lots of promises over the years to automate this process, but many came with baggage as well as benefit. Let’s look at one such promise that has taken on modern proportions, code generation.
Although code generation is a promise that everything from IDEs to HTML editors make, advanced code generation can quickly create customized data grids for the .NET Framework that let developers effectively solve the problems of complex user interfaces, sophisticated data entry and large data sets.
The key to modern code generation is it attempts to generate only the portion of your application amenable to automated code generation and not the entire application. But that portion is frequently 70%-90% of your code. If you can generate 70% to 90% in just 5% of the time, the cost economics of application development switches back in favor if in-house development.
If you then add the overhead management costs of managing a remote project, off-shore outsourcing actually is more expensive, probably by 25%-35%. The point isn’t to show code generation is cheaper; it’s to show you need at least a 4-to-1 labor cost differential, i.e., a college educated off-shore software developer making $8 per hour or less.
Generated code should do what you want outsourcing offshore to do. It can and should match the caliber of code written by senior developers — the developers you wish you could clone. Some of the scalability and performance provided by today’s code generators are the ability to run on multiple servers, concurrency management, and optimized application performance in a .NET environment.
All of this means just one things: outsourcing is stupid when you can do the work cheaper at home.
Alan Fisher is co-founder and Chairman of Iron Speed, Inc., maker of Iron Speed Designer, the popular application generation software for building Microsoft .NET web applications. The pain of building enterprise-class web applications from scratch inspired Alan and his partners to launch Iron Speed and simplify and accelerate web application development, particularly for the growing number of .NET web application developers. Please send comments or ideas to Alan at edi[email protected].
What do you think? Does the author have a point? If so, we’d like to hear about it in our IT Management Forum.