Sunday, October 16, 2005
There is a great post by Harry Pierson over at his DevHawk blog site describing what can we learn from looking at the success of mainstream text-based programming languages to help us in the development of higher abstraction modeling languages that are actually useful.
As I have written elsewhere, I am a huge fan of raising the level of abstraction to deal with complexity in our software world.  This is part of what I call the industrialization of software.  No, I dont mean making programming fully automatic, as it will never be that way.  It is too large and complex to do so.  However, I am probably as frustrated as Mini-Microsofts quest to make Microsoft a leaner meaner machine in my quest to make software development more of a predictable and repeatable process.  It seemingly aint going to happen over night and may not happen in my lifetime!
John Walker, figured out the industrialization of the engineering design world when his invention, AutoCAD hit the market in 1982.  He said, if you cant model it, you cant build it.  Damn right!  In 2005 and in the software industry, we still have not figured it out, yet.  We are still bashing away with the stone age equivalent of hammers and chisels, whereas the engineering design world has AutoCAD to describe incredibly large and complex building structures, airplanes, engines, electronic circuit diagrams and just about everything else you can think of by modeling blueprints that are meaningful. People use these blueprints to turn models into real world constructs that you and I use every day.  How about that cell phone?  Or your iPOD? Or your car? Or that plane