Everyone a Programmer
The biggest promise of the Information Age is the great and still unrealized potential of tailoring information technology to individual human needs. Today’s applications programs are like ready-made clothes-one size fits all. So most are ill-fitting, and we have to contort ourselves to improve the fit. Another potential outcome of this practice for business is that if every company used the same set of canned programs, they would follow more or less the same procedures, and no company would stand out against the competition. Shrink-wrapped, ready-made software is good enough for the state of information technology at the end of the twentieth century. But it won’t be as good in tomorrow’s information marketplace.Great gains will be achieved when individuals and businesses can bend and fashion information tools to do exactly what they want them to do, rather than bending themselves to what the tools can do. This quest for customizable information tools with specialized knowledge will be no different than the current trend toward customized manufacturing. It could well be that by the close of the twenty-first century, a new form of truly accessible programming will be the province of everyone and will be viewed like writing, which was once the province of the ancient scribes but eventually became universally accessible.
This isn’t as absurd as it sounds. We invented writing so that we could communicate better with one another. Tomorrow we’ll need to communicate better with our electronic assistants, so we’ll extend our “club” to include them as well. Everyone will then be a “programmer,” not just the privileged few. And none of them will be conscious of it. In fact, this is already happening on a small scale among the millions of people who use spreadsheets and who would be very surprised to learn that they are programmers.
When I say people will program, I am not talking about writing the detailed code and instructions that make computers run. That will still constitute the bulk of a software program and will indeed be created by professional programmers, who will fashion the many larger building blocks that we will use. Each individual’s “programming” will account for a very small fraction of the software code, maybe 1 percent. But it will be the crucial factor that gives the program its specificity. It will be like building a model railroad; you don’t make all the track or engines or cars, but you do arrange the pieces to create your own custom railway patterns.
We can increase the usefulness of our machines in the emerging information marketplace by correcting current human-machine faults, by developing automatization tools, and by creating a new breed of gentle-slope software systems that understand specialized areas of human activity-and that can be easily customized by ordinary people to meet their needs. Pursuing these directions should get us going on our quest, which I expect will last well into the twenty-first century, to harness the new technologies of information for the fulfillment of ancient human purposes.