Random thoughts on a variety of subjects
By Sam Redman
Many years ago (in 1982), a programmer named Bill Budge created a unique software program called Pinball Construction Set, which provided a graphic user interface with various elements for dragging and dropping on the screen all the different graphic images of parts of a virtual pinball machine, so that a user would be able to design their own totally unique, functioning pinball video game, but without programming, other than specifying such things as speed of a flipper or a plunger, or other characteristics of play for those and any of the other perhaps 50 different images of pinball parts (simulating the real mechanical parts which a hardware pinball machine builder would use to construct an actual physical arcade machine). Once a user’s design was completed by these simple steps they would have created an original (and unique) iteration of a pinball machine, each of which could be saved as individual programs, which could then be distributed to others. They sold about 300,000 copies of the construction set software.
But, what was more significant in the annals of programming is that Pinball Construction Set got the attention of software programmers everywhere because it defined in many people’s eyes the archetype of what a true “no programming required” software creation device could be, in other words, the objective now was to produce a “Construction set construction set.” Over the years, many people have worked on such a project (including Bill Budge for a while), and while that goal has been elusive, programmers today still pay tribute to that Pinball Construction Set as the model for such sought after “programmer-less” software construction tools.
Spreadsheet macro languages have had characteristics of such “software” creation tools and, in fact, that was our objective in the development of the unique macro generation tools in Lucid 3D in 1989 (many readers may be familiar with the program… you can search the NYTimes archives to read about it). But, while that was our goal (to allow users to select and cleverly assemble their choices of any of the hard coded features of Lucid software, thereby creating their own unique applications) the ultimate realization of the released macro tool (while amazingly simple and powerful), alas, was that it too, had become yet another programming language, still requiring users to learn principles of computer logic and the proper syntax of instruction expressions.
But when I first got the notice regarding the new Google Android tool (called the App Inventor), I thought about that Pinball Construction Set (the Google description sounds a lot like the promos did for that product all those years ago). But, of course this one promises to be that long sought after “construction set construction set.”
I believe that it can be done and I am thinking that if not in the first versions then eventually, subsequently, the goal will be reached. It still will require good design and good logical thinking (and testing and debugging) which might, as others have noted, remove a lot of would be software developers from the pack… but, it still sounds like this product has the makings of a breakthrough.