The evolution to integrated development environments (IDE)

I am in Tokyo Japan for my daughter Molly's graduation from International Christian University (ICU).  While I am in town, I am meeting with members of the Japanese developer press to talk about the "Innovation of IT Technology and Software Development and Tools".  I am really looking forward to this press meeting.  While I am doing some of the talking, we will also have a group discussion about some of the market trends and also gaze into the future of developer tools.

My first "development environment" was an IBM punch card machine and an IBM 360 model 40 computer. You turned your job deck in to the operator and waited (sometimes for hours) for the printout to return.  The next generation development environment involved a timesharing terminal connected to the California State University network where you could write programs in Basic and Pascal.  You typed your programs in, saved them on the remote computer, ran them and saved the program source code locally on punched paper tape.

In the 1970's I remember using the Apple II BASIC and also the University of California San Diego (UCSD) p-system Pascal compiler.  It was in 1983 at Comdex Las Vegas that I first met Philippe Kahn who gave me a copy of Turbo Pascal version 1.0.  Turbo Pascal's integrated development environment combined a simple text menu screen, Wordstar-like editor, the Pascal compiler, runtime library, run in memory and compile to disk.  Many developers also used programmer's editors like eMacs and VI along with command line compilers as their development environment.

With the success of Microsoft Windows came the rapid development and visual IDEs of Visual Basic and Delphi.  These next generation development environments allowed you to create forms by dragging and dropping pre-built components.  The components (or objects) contained properties, methods and events.  You connected your program logic to the event handlers and also to the called methods.

Today, we have integrated environments that include programmable editors, code refactoring engines, team collaboration systems, object and data modeling, build environments, debuggers, unit testing and static and dynamic analysis of your programs.  With the advent of Eclipse and NetBeans we have two open source frameworks for building IDEs.

Looking forward, the modern integrated development environment will also have to provide support for cross platform and device development, cloud computing architectures (both for the IDE and for application deployment), convergence of database and programming tooling, device simulators, green technology algorithm profiling, software agent technology, automatic refactoring for data and code, polyglot programming, standardized special purpose libraries and components, security and hardening of databases and applications, deployment and on-demand execution.

What will your integrated development environment look like in the next ten years?  Will you still be using command line tools and programmer's editors?  Will your IDE run in the cloud on the Internet?  What capabilities do you wish you had in your IDE today? Post a comment and let me know.

Programming is Life!

Recent news for developers:

David Intersimone (David I) is the Vice President of Developer Relations and Chief Evangelist for Embarcadero Technologies. My company blog is at Note: This is a weblog of David Intersimone. The opinions expressed are those of David Intersimone and may not represent those of Computerworld.

Copyright © 2010 IDG Communications, Inc.

Shop Tech Products at Amazon