Chris Lininger and I had a discussion today about the slow evolution of information technology that truly empowers the business end user. We talked about all of the failed promises over the past 25 years including 4GL (4th Generation Languages), CASE (Computer-Aided Software Engineering), etc.
My first exposure to great IT myths was James Martin’s landmark book, “Application development without programmers“. Martin was a prolific writer about various data processing subjects, and he popularized the notion that end users could create their own applications without the “Data Processing” department.
Well, it’s 25 years later and my retrospective view indicates that the progress and results are disappointing. This is accentuated by some experiences in the last month… We happen to be working on a client project that requires the application of “Business Rules Management” software (previously known as “expert system” software). While many of the software vendors portray their tools as enabling the business users to maintain knowledge in rules, the reality is quite different. Most of these are just tools to enable the IT folks to be more productive. Hence, the bloated promises continue into the next generation…
I’ve only been doing programming for about a year, but it’s illogical to think such terms. “Application development without programmers.” Well the application development of that product (the product that the end user would use to develop their own product) would need to be created by someone (programmer.) And if there was such a tool that all you had to do was type in a bunch of stuff (words), and you press a little OK button, and–poof it appears–you are still a programmer.
Factor this, according to Google’s little definition query tool I use all the time a programmer is: “One who writes computer programs…”
teladesign.com/ma-thesis/glossary.html
Am I wrong? Or am I taking the title too seriously?
How could someone really program without actually typing code? It’s like the military in WWII saying there will be robots fighting the war. Patton’s replied, “Never. No heroes and no cowards.”
The same applies in application development. The one who turns out to do well is the hero—or one who gets the bonus. The one who is lazy and doesn’t perform–the coward is the one who gets fired.
And even if a user could develop their own stuff with this wonderful magical tool—they wouldn’t want to test it, upgrade it, etc fully–it’d be Propriety—image someone developing CAD software! It’s very humorous to think that there will never be programmers–or (end) users developing their own.