2017 CHM Fellow Alan Cooper: Father of Visual Basic
2017 CHM Fellow Alan Cooper is best known as the “Father of Visual Basic,” possibly the most widely used visual programming environment in the software industry. But Cooper had significant accomplishments both before and after independently developing and selling what became Visual Basic to Microsoft in 1988. Cooper had been one of the first software entrepreneurs of the personal computer industry, alongside such giants as Bill Gates and Gary Kildall. And Cooper’s later work on interaction design blazed a trail for the user experience designers who help make our apps easier to use today.
Alan Cooper was a maverick from a young age. Rebellious as a teen, Cooper dropped out of high school his senior year after his ideas on alternative education were rejected by the administration. Cooper became immersed in the Bay Area counterculture, pursued odd jobs, and traveled Europe alone in the summer of 1972, after which his life gained new direction. Cooper enrolled at the College of Marin to study building architecture, and decided to pay his way by working as a COBOL programmer on an IBM 370 mainframe for a data processing company in San Francisco.
After buying an IMSAI 8080 microcomputer, an Altair clone, Cooper caught the bug of the personal computer revolution. Cooper and a partner started Structured Systems Group (SSG) in 1976, initially to sell a turnkey accounting solution. This would have bundled IMSAI hardware (which initially cost less than $500 as a kit) with accounting software Cooper would write, and which would be sold to a customer who was considering a minicomputer-based solution for $30,000. After this initial customer, Cooper realized that it would make more sense to sell the accounting software, General Ledger, separately from the IMSAI hardware, and SSG became one of the first applications software companies of the new personal computer industry, and one of the three major PC software companies at the time, the other two being Microsoft and Gary Kildall’s Digital Research. SSG released several other business applications, including payroll and inventory systems, using a public domain, compiled version of the BASIC programming language written by Kildall’s student Gordon Eubanks, who in later years led Symantec into the software utility and anti-virus business. Patching bugs in Eubanks’ BASIC-E led to SSG eventually publishing Eubanks’ CBASIC, a commercial, structured BASIC with fixed decimal arithmetic, better for writing the kinds of accounting software SSG was creating.
Differences with his co-founder led Cooper to leave SSG and start a new company, Access Software, in 1981, which fell victim to the wave of industry consolidation that came in the wake of IBM’s entry into the PC market that year. (Without Cooper, SSG also failed.) Cooper joined Kildall’s Digital Research to start their R&D division. Cooper had been promised by Kildall that in his new position, he could get away from programming to focus solely on the design, specification, and product planning of software applications. His arrangement with Kildall was not honored by Digital Research’s President, however, and he left in 1982, after only a year and a half.
Having written several business plans for applications for Digital Research that were never pursued by the company, after leaving, Cooper set out to write these programs on his own and sell them to software publishers for distribution. The first of these was SuperProject, a critical-path project management application, published by Computer Associates. The second was Microphone II, the first serial communications program for Microsoft Windows, published by Software Ventures. After seeing a demonstration of a Xerox Star workstation in 1985, Cooper began to investigate writing a replacement for Microsoft Windows’ graphical user interface (GUI) shell, which evolved into a custom shell construction kit that would let developers write graphical interface applications quickly. This became the core of what Cooper called Ruby (no connection to the Ruby programming language), which he sold to Microsoft in 1988. Microsoft, after pairing Ruby with its languishing QBasic language, released the product to the world in 1990 as Visual Basic. Key to Visual Basic’s success was the VBX interface, which allowed developers to write their own custom “controls,” such as buttons and other widgets, and sell them as plug-ins to other developers, creating a vibrant aftermarket for user interface controls. At the time, Visual Basic was one of the few true uses of Windows’ dynamic link library (DLL) system. Another component of Visual Basic’s success was that it was easy for COBOL programmers to pick up, allowing them to quickly transition from programming mainframes to modern desktop and client-server applications.
Cooper’s involvement with Visual Basic was completed after he delivered his Ruby prototype to Microsoft in 1988, two years before its release. Unfortunately, despite having negotiated with Bill Gates a legal contract requiring Microsoft to promote Cooper as Visual Basic’s creator, Microsoft middle managers, ignorant of the contract, initially attempted to bury Cooper’s involvement and claim it was Microsoft’s sole invention. Fortunately, Cooper had managed to get Gates to agree to credit “Cooper Software, Inc.” though not Alan himself, in the About Box of Visual Basic 1.0, after which it was excised. Mitchell Waite, who wrote the first book on Visual Basic, saw the credit and contacted Alan, after which Waite credited Cooper in his book as being the “Father of Visual Basic.” After Cooper called Gates directly to keep up his end of the contract, Microsoft honored Cooper with an award for his contribution.
The first stage of his career, Cooper had been starting and running software companies; in the second stage, Cooper was an independent developer who sold software through larger publishers. In the third stage of his career, Cooper would stop coding altogether and focus on what is now known as “interaction design,” the design of the way the user interacts with a software application. Cooper’s early experiences at SSG and Access taught him valuable lessons on the design of user interfaces. It was these lessons that led him to conclude that UI design and software implementation should not be done by the same person. Although his attempt to do this at Digital Research failed, after successfully selling Visual Basic, but failing to sell a fourth independent software product, Alan decided to give up programming for good, starting the Cooper design consultancy with his wife Sue in 1992.
Cooper would codify his firm’s key design processes in two books, About Face: The Essentials of User Interface Design (1995) and The Inmates Are Running the Asylum: Why High-Tech Products Drive Us Crazy and How to Restore the Sanity (1995). The first method involved using qualitative research to compile common patterns among users in order to identify a representative archetype of a user, which Cooper calls, a “persona.” A persona encapsulates a representative user’s end goals and allows the designer to focus on designing to help the user achieve those goals, rather than focus on how the user completes tasks or exercises program functionality. A second method involves pair design, in which one designer, in the role of a “Generator,” comes up with ideas, while the second, the “Synthesizer,” assesses how and whether those ideas enable the user to reach their goal and fit into a larger, coherent whole. Through his work and writings, and the seeding of his designers into many Silicon Valley firms such as Apple, Google, and Facebook, Cooper’s ideas have influenced the whole new field of user experience (UX) and interaction design.