Languages and Weird Things
Chapter 3
Chapter Select

Languages and Weird Things

8

BILL GATES SHOULD HAVE EXPECTED his parents' disappointment with his career choice, at least at first. He graduated from Seattle's Lakeside High School in 1973 with a 1590 out of 1600 on the SAT, a score he boasted about to everyone who asked and plenty who did not. To the delight of his parents, Gates enrolled at Harvard University that fall to study law.

Two years later, he dropped out to play with computers.

In fairness, those closest to him should have seen it coming. Born in Seattle in October 1955 to an upper middle-class family, Gates was one of three siblings. The family was close knit but competitive, an atmosphere encouraged by their parents, William and Mary. During summer vacations on Puget Sound, he organized athletic competitions and strove to win. Indoors, he loved dominating siblings and parents alike at Monopoly and Risk, his favorite game. In his pre-teen years, Gates read every book he could get his hands on but began acting out in school. Concerned with his behavior and aware he was bored in his classes, William and Mary withdrew him from public education and transferred him to Lakeside School.

Microsoft (and "Micro-Soft") co-founders Bill Gates and Paul Allen.
Microsoft (and "Micro-Soft") co-founders Paul Allen (left) and Bill Gates.

Gates' aggressive nature and sharp mind rocketed him to academic excellence in science, math, English, and drama. His favorite subject changed after school moms put the earnings of a school sale toward a Teletype terminal for the students. Gates latched on to the computer, enamored with the fact that he could learn to speak the machine's language and make it do anything he imagined. Teaching himself BASIC, he wrote a tic-tac-toe game that let his fellow students challenge the computer.

Kent Evans, Gates' first best friend, shared his enthusiasm for computing until two older teens by the names of Ric Weiland and Paul Allen swaggered into the lab and kicked them out. Allen was the head of a club called the Lakeside Programming Group. He made the rules, and he decided no little kids were allowed. After hearing of Gates' high scores in math courses, Allen changed his mind and welcomed Gates and Evans to the club.

The boys entered a friendly but fierce rivalry to see who could out-dazzle the others. Occasionally, they teamed up to pull off an extra-impressive feat. Their time in the lab almost ended when Gates and Allen took their exploits from indulgence in curiosity to hacking. Lakeside's was one of many connected to a mainframe computer, a huge and hugely expensive machine that processed request from terminals connected to it and sent back results through time-sharing, a process computer scientist Walter F. Bauer described as similar to how households buy electricity and water from utility companies.

Buying time limited how often one user could demand a mainframe's resources so there was plenty of processing power to go around. Gates and Allen discovered a glitch that awarded them free time and abused it until the company that maintained the mainframe reported suspicious activity to Lakeside. It didn't take long for administrators to winnow out suspects and revoke the club's computer privileges. They got back in the good graces of school officials and the maintenance company by debugging the code responsible for the glitch.

The Lakeside Programmers Group became so renowned that teachers approached Gates and Evans, then juniors, with a problem. Lakeside had merged with a local all-girls school, and nearly 400 students would soon flood the halls. The faculty asked the boys to write a scheduling program that managed classes to avoid overcrowding, factored in special circumstances like preventing Student X from being in the same classroom as Student Y, and made sure not to schedule drumming class while the choir class one floor above was in session.

Gates and Evans saw their dreams coming true. While their peers played sports and chased girls, they fantasized about starting companies and making the Fortune 500 list. Doing a job for Lakeside was their first step. Before they could begin, Evans, who sought activities and subjects unfamiliar to him to become well-rounded, signed up for a mountain-climbing class. During a practice session, Evans fell to his death.

His friend's abrupt passing stunned Gates. Then it motivated him. He would honor his memory by accomplishing all the lofty goals they had set together.

Bill Gates (left) and Paul Allen.
Bill Gates (left) and Paul Allen.

Gates wrote the scheduling program and received free computer time as renumeration. As he grew closer with Allen and Weiland, he reframed how he viewed their programming adventures. They could write code in circles around everyone they knew. That prowess could form the bedrock of a business. Taking an interest in civics, Gates and Allen studied how traffic surveys were performed. Through most of the '70s, state and local governments stretched rubber hoses across roads. The pulses triggered by the weight of the car's tires activated pneumatic road tube traffic counters that punched holes into paper tape, the type of programming the boys learned on their own. Companies translated compiled data into reports that city engineers used to improve traffic flow.

Fortuitously, Lakeside had students reading paper tape from traffic counters by hand as part of a course. Gates and Allen believed they could log and process traffic data faster by writing a program to automate the process using cutting-edge hardware and software. To do that, they needed custom software. They could write that, but they needed a more powerful computer. Minicomputers, refrigerator-sized behemoths, were too expensive. They would have to build their own machine.

Neither knew how to build a computer.

Seeking help, they visited University of Washington and met Paul Gilbert, an electrical engineering student who agreed to help if Gates and Allen supplied the parts. The boys went to an electronics shop and bought an Intel 8088 processor for $360. Gilbert built their computer and became one-third owner in Traf-O-Data, the company they formed to sell their program. Impressed, the City of Seattle cut them a check for $20,000.

Soon after, Ric Weiland and Paul Allen graduated and went off to college at Stanford and Washington State, respectively. After Gates finished high school with his impressive SAT score, he enrolled at Harvard but stayed in touch with Allen.

After two restless years at UW, Allen dropped out and moved to Boston to work for Honeywell, a technology company. When Allen and Gates met up in 1974, Allen showed his friend a copy of Popular Electronics that advertised a do-it-yourself kit of parts. When assembled, those parts formed the Micro Instrumentation and Telemetry Systems (MITS) Altair 8800, a microcomputer that fit on a desk. This, Gates knew, would bring him one step closer to realizing his dream. Spotting an opportunity, they wrote to MITS on Traf-O-Data stationary to appear professional and announced they were writing a BASIC interpreter. With an interpreter, anyone who knew BASIC could write their own software, a first for the embryonic home computing industry. Was MITS interested in acquiring it?

A short time later, they received a call from Ed Roberts, MITS' president. He was interested in a demonstration. Gates and Allen scrambled. There was no interpreter. They had cast a line never expecting their white whale to bite. They rushed to Harvard, where Gates still attended, and worked in 24-hour shifts. Exhausted but in possession of their once-fictitious program, the friends flew to Albuquerque for their meeting with Roberts and loaded the paper tape containing the instructions for their creation.

It didn't work.

The second time, the interpreter's prompt, READY, appeared. Allen typed a simple BASIC command: PRINT 2 + 2. After several moments, the numeral 4 appeared. Swallowing a massive sigh of relief, he wrote instructions to draw squares and perform more arithmetic. Roberts was sold. In July 1975, Bill Gates and Paul Allen signed a licensing agreement with MITS stating that Roberts' company would distribute Altair BASIC. In exchange, Gates and Allen received an upfront fee of $3,000 and royalties of 30 dollars per copy of 4K BASIC (a dialect compatible with Altair 8800 computers that had 4K of memory) sold, and $35 per copy of 8K BASIC. Shedding Traf-O-Data, they formed a new company: Micro-Soft, short for Micro-Computer Software.

To the dismay of his parents, Gates dropped out of Harvard and moved to Albuquerque that November. After a year, Gates and Allen ditched the hyphen and rebranded as Microsoft. Their contract with MITS gave the company ownership of the program after it had paid out a certain amount of royalties. However, there was no clause preventing Gates and Allen from converting their interpreter to myriad other computing platforms that emerged. Three years and several million dollars in revenue later, they relocated to Bellevue, Washington, and pushed to realize the mission statement that Gates articulated.

"The original vision was, 'A computer at every desk and in every home,'" says Robbie Bach, who joined in 1988 as manager of business operations in Paris, France. "That was the North Star of the company. That started with languages. Then you had weird things."


MICROSOFT EMPLOYEES DID not work in the Death Star. Before the Empire became the Empire, it hosted multiple divisions and thousands of employees in six buildings spread across Bellevue and overseas.

Bill Gates and Paul Allen parlayed their success with Microsoft BASIC to other avenues of software development. "The company would see opportunities and pursue them. DOS was an opportunity. It wasn't part of any grand business plan," Robbie Bach explains.

Robbie Bach.
Robbie Bach.

MS-DOS, shorthand for Microsoft Disk Operating System, was a command-line operation system that users operated by typing commands. Timing was everything. As personal computers--which Gates and Allen knew as microcomputers like the Altair 8800--became more affordable, more businesses and consumers would adopt them. Thanks to a deal with IBM, MS-DOS outsold competing operating systems and became the industry standard in 1985, the same year Microsoft released Windows 1.0. DOS remained popular for so long that it outsold Windows for more than a decade.

The company's growing influence was a beacon for engineers and savvy business types. "I was employee number 3,607, I think," recalls Bach, who earned his MBA from Stanford in 1988. "That was my badge number. When I joined in '88, I joined as a marketing person fresh out of Stanford. I fit into the company in the sense that I liked working my ass off. I'd say I was reasonably smart, but certainly not at the IQ of the average Microsoft technical person. But I was passionate; I loved the business of what we were doing."

"Almost everyone I worked with at the company seemed to enjoy writing the best code to create applications that anyone could use," says Robert Donner, engineer.

Microsoft's environment reflected the ambition of its co-founders and employees. Unlike many workplaces, there were no cube farms arranged under the bright, sterile glare of florescent lights. "Microsoft really prided itself on giving workers--especially salary workers, which were most of the workers I interacted with--private offices, so you had long hallways with rows of doors," says Ed Fries. "Everyone had their own office with a door they could shut."

Though prolific in programming languages and operating systems, Microsoft's fleet of engineers looked for other industries to dominate. "The same thing happened in the applications business," Bach says. "They said, 'Hey, we're doing great in the operating systems business, but where's the actual engagement? Oh, it's with applications.'"

Unlike interpreters and operating systems, applications development was a crowded field. Many operating systems existed across countless PC platforms, and with that came applications that fit some or all. Microsoft's Works, a set of productivity tools such as word processing and spreadsheets, competed against the likes of WordStar, WordPerfect, and Lotus 1-2-3. Works gained traction by presenting a softer interface: Still text-based, but with a single-color background and menus at the top of the screen that users could interact with using a mouse. Although it encouraged consumers to buy MS-DOS, Microsoft developed Works for Apple's Macintosh, more advanced machines that noteworthy for true graphical user interfaces (GUIs) with buttons and icons.

"Works was sort of the software for education and the software for small businesses and home users," says Bach, who came to Bellevue in 1992 to lead marketing efforts for the growing Microsoft Office suite of productivity software. "There was a Macintosh version of Works, which was successful with small businesses and in education; and we had Word, Excel, and PowerPoint on the Mac as well, and it was sold as Office in 1988."

Excel 2.0, the product's second launch on the WIndows OS.
Excel 2.0, the product's second launch on the WIndows OS.

Ed Fries played a critical role in the "productivity wars" against WordPerfect and Lotus. Following his internships, he kept in touch with the head of productivity software, who tantalized Fries with two opportunities: a new thing, and an old thing, though he offered no more details. "The new thing sounds interesting," Fries said. The manager promised to try to get him a spot.

Closer to Fries' graduation, the manager called back. "We want to put you on the old thing," he said.

"Oh," Fries said, disappointed. He wanted to be part of something new and shiny. When he learned the old thing entailed porting the Mac version of Microsoft Excel to Windows, he was pleasantly surprised. He'd get to work on one of Microsoft's biggest products as an understudy to Mark O'Brien, the team's technical lead who, like other managers, saw big things in store for Fries' future. "Tech leads on these projects weren't a management lead, they were a programming lead," Fries explains. "That meant they were the best programmers on their teams and knew the most about how their programs worked. They were responsible for everything."

Fries was one of seven engineers responsible for translating the code for the Mac version of Excel to Windows, plus adding new features. "It was incredible exposure to how Excel worked and set me up, several years later, to become a technical lead," says Fries.


WEIRD THINGS HAPPENED AT MICROSOFT after dark. On Friday nights, shouts echoed down hallways littered with obstacles. Dark splashes stained the walls in an oddly spirograph pattern. The tinkle of breaking glass could be heard from far off. Engineers stalked the corridors brandishing clubs as they chased their diminutive fleeing target--a golf ball.

The game started as a way for Fries to kill time. Working long days and nights on Excel, Ed Fries had to wait 10 to 15 minutes for the changes he made to Excel's code to compile. To kill time, he brought a putter, golf ball, and hole into his office. His game migrated into the hallway when he transitioned to perfecting his long putt. One night, Rick Powell, a technical lead, came upon him and challenged him to a putting game that wound throughout the serpentine building.

Ed Fries, king of Swing Around the Wing.
Ed Fries, king of Swing Around the Wing.

With that, Swing Around the Wing became a Friday night staple. As more players joined, the game grew more elaborate. One engineer arranged full cans of Coca-Cola along one hall. By the end of the night, fizzy liquid painted the walls. Aside from sprays of sugary lifeblood from soda cans and divots in walls, no serious injuries or deaths occurred following several years and approximately 50,000 strokes.

Engineers decompressed without damaging company property. Interested in learning how to code for Windows, Fries set aside spare time to convert Fish-O-Rama. As the project moved along, he learned DDE, or dynamic data exchange, a way to import live data into Excel, and incorporated it into his program. "I made it so the spreadsheet could control a submarine in Fish, drive it around, shoot at the fish. It showed how live data could come in and out of Excel, and all the logic for controlling a submarine was recalculated in real-time in the spreadsheet."

Other developers entertained similar ideas. Fries was approached David Norris and Hans Spiller, two other employees who made little games during downtime under the label Bogus Software. "If you were making something fun for Windows that wasn't your job, it was bogus software," Fries explains. "We were all working a lot. Nobody was complaining when we were golfing in the hallway in the middle of the night or doing other stuff. We were getting our jobs done on Excel and Word. Other than that, the programmers were left alone."

Norris and Spiller wrote Taipei for Windows, splitting development time between the office and home. They considered copyrighting the game under Microsoft but came up with their own label instead. When they learned of other Microsoft developers writing fun programs, they invited them to join them just for fun. That gave Fries an idea.

To learn to program for Macs, Fries challenged himself to update Fish so the fish swam behind open folders and other windows on Apple's interface. Another programmer, Tom Saxton, took notice and suggested Fries write an editor so people could make their own fish. Fries had no time but half-jokingly invited Saxton to do it. A short time later, Saxton produced the editor. They teamed up to package the editor and screensaver together, offering Mac and Windows versions in the same package.

Fries liked the name Bogus Software but didn't want to step on Norris's or Spiller's toes, so he got permission from them to change the label. "We put the name Bogus Software on that, but we didn't want to just say 'Bogus Software,' since it was just Tom and me, so we called it Tom and Ed's Bogus Software."

Fries and Saxton released the program for free, with an invitation. Users who created fish could mail them to Tom and Ed's Bogus Software, Suite A3334, Bellevue, Washington--a PO box Fries registered for their business. Floppies containing fish arrived, as did a few donations. "We'd get five-dollar checks, 10-dollar checks, and they were made out to Tom and Ed's Bogus Software so we couldn't do anything with them. We said, 'Well, we should probably form a company so we can cash these checks. It seems like a waste to have a pile of checks.'"

They opened a bank account and cashed the checks, then took their bogus-turned-semi-lucrative venture further. They could release a shareware version, a program free to use but offering special features for anyone willing to pay for them. Fish became free, but the editor was available only to paying customers. The program caught on, and more checks rolled in. "Fish spread all around the world. We got checks from Timbuktu, almost everywhere in the world. We got weird money orders we couldn't cash. I had boxes full of letters."

Once, Fries went to the PO box and withdrew an envelope that contained no check. It did, however, hold a letter. "One said, I came to visit your 'suite' and discovered it's best measured in inches. I thought that was good. It was super-fun and we were just doing it on the side."

Other side projects took on a life of their own. When Chris Peters, Fries's boss on Excel, programmed Reversi, Microsoft included it in Windows 1.0. When the coders experimented with networking features, one of the guys encouraged everyone to write their version of poker. Once they finished, everyone would weigh on the best version, and they'd use it to play against one another over a network connection.

Fries and a handful of others rose to the task. When none of them felt like drawing graphics for a deck of cards, Wes Cherry, an intern, ripped graphics from a card game for DOS. Fortuitously, someone else found a DLL file--dynamic link library, a chunk of code that programmers can transplant into Windows programs to make add features--that dealt cards on the screen to begin the poker game. The guys copied the file into their poker games. Meanwhile, Cherry implemented it in one of his own projects.

"Wes sees this DLL that can make cards go on the screen," Fries remembers. "He decides to write his own thing using that and writes the first version of Windows Solitaire. That's where it came from."

Solitaire for Windows.
Solitaire for Windows.

Windows Reversi and Windows Solitaire were two of the earliest games published under the Microsoft banner, but not the first. One of the reasons Paul Allen and Bill Gates moved to Seattle was the arduous task they had inveigling sharp engineers to live in New Mexico. Bob Greenberg and Gordon Letwin, two of Microsoft's first 11 hires, proved exceptions.

Fish! on Mac.
Fish! on Mac.

Greenberg joined in 1977 and left a mark early on when he helped Gates and Allen develop a new version of BASIC. Letwin came aboard in '78 and remained until 1993, making him the second-longest tenured developer next to Gates. Like Greenberg, Letwin started out working on BASIC. In 1979, he spent his free time writing a game modeled after Colossal Cave Adventure, a primordial text adventure where players explore a cave system by typing verb-noun combinations like GO NORTH and LOOK AROUND. It was created by Will Crowther, a spelunker and avid Dungeons & Dragons player who wanted to entertain his daughters with a work of fiction based on Kentucky's Mammoth Cave system. Crowther wrote and uploaded the game on a PDP-10 mainframe and uploaded it to a network of computers maintained by universities, laboratories, and the military. Solving the game became a rite of passage for students and personnel who happened across it. Letwin was one such and endeavored to recreate the game for the PC.

Microsoft Colossal Cave Adventure debuted in 1979 for the TRS-80 and Apple II, two of the most popular PCs of the era along with Commodore's PET, and later for the IBM Personal Computer, where it became one of the first two games on the platform. In 1980, fellow Microsoft engineer Timothy W. Smith wrote Olympic Decathlon. Both games were published under Microsoft Consumer Products. Both barely qualified as blips on Microsoft's radar. The productivity wars remained the company's focus, but the company hoped Windows 3.0 could change the tide.

Richard Donner, a fresh-faced intern, hoped to fight on the front lines. "I didn't know anything about Windows. I had been working at Microsoft for a few months when people started talking about how amazing the next version of Windows would be," he says.

Minesweeper.
Minesweeper.

Donner began studying Microsoft's APIs--application programming interfaces, a common set of code used to develop software--to decipher how Microsoft Word's GUI worked. He wrote small games that could serve as test-beds for features he was learning. He called his first experiment Mine, renamed Winmine and eventually landing on Minesweeper.

Donner got the idea after talking with a colleague, Curt Johnson, who'd written an OS/2 game where players have to navigate from one corner of a game board littered with hidden mines to the opposite corner. Instead of picking a path, Donner would challenge players to mark all the mines. "It was simple and easy to understand. I knew I could program it in a night or weekend."

Minesweeper's interface comprised a grid of gray squares, much like the face of a calculator with uniformly sized buttons. Users click squares to interact with the board, a functionality that carries the bonus of teaching neophyte users how to manipulate a mouse. "At the time, most games had a keyboard interface," Donner explains. "I decided to require a mouse because I wanted to learn more about programming the cursor and clicks, and encourage people to use both buttons."

Every square hides a mine, or a number showing how many mines lay hidden nearby. Left-clicking a square activates it. If they trip a mine, the game ends. Right-clicking a square plants a flag, a function Donner intended as a way for players to mark where they believe a mine hides. Players win after all safe squares have been opened, so flagging a mine is temporary: Eventually, players will have to return to flagged squares and activate them, hoping the logic they used to uncover the rest of the board was sound.

Just above the minefield, Donner pasted in code for Microsoft's standard menus: File, View, Help, and so on. He also added options for players to increase or decrease the number of mines, and a timer so players could challenge themselves to set and beat records. To begin, users clicked a smiley-face icon in between the minefield and menus. "I really wanted a way to quickly start a new game. Putting a button at the top center was perfect, but having text like 'new game' on the button didn't seem appropriate, so with my limited artistic ability I drew a happy face that would change when you clicked, died, and won."

Minesweeper.
Minesweeper.

Clicking and holding the left mouse button caused the face to open its mouth in surprise, as if in suspense over what would happen when players lifted their finger and square activated. When players die, the face frowns and Xs appear over its eyes. When they win, it dons a pair of sunglasses. "The 'cool shades' image idea was borrowed from the Solitaire deck where the sun would occasionally put on sunglasses," Donner adds.

Once he'd coded the basics, Donner passed Minesweeper around to friends and watched them play. Their feedback helped shape the game. "The mines are randomly placed, except if you hit a mine with your first click, it is moved so there is still a chance of completing the board." Early on, the squares could contain coins that shield users from mines; a coins counter appears where Donner added the timer at a later date. Donner made another late change when he replaced the cursor, originally a foot that turned into a bloody stump upon losing, into a standard arrow cursor--not because the bloody stump was controversial, but because he deemed his artwork subpar.

Donner noticed that his testers continued playing Minesweeper for fun long after he'd finished incorporating their feedback. Once, a friend called him over and showed him how to clear the board in seconds. Donner asked him to walk through how he knew each spot was safe to click. His friend admitted there were scenarios where he had to guess. Donner responded by adding a cheat code. Typing XYZZY--a magic word in Colossal Cave Adventure, the first computer game Donner played--then pressing the Shift key followed by tapping Enter caused the pixel in the upper-left corner to turn white. When players hover their cursor over a square, the pixel will either remain white, showing a safe spot, or black to warn of a hidden mine.

Windows Reversi.
Windows Reversi.

Finishing Minesweeper in a few days, Donner moved on to other assignments. On May 22, 1990, Microsoft launched Windows 3.0, its most sophisticated GUI-driven operating system yet. Concerned that consumers would take one look at the OS's system requirements and write it off as software designed for companies, the Entry Business team assembled a collection of simple games .

"A product manager thought it would be a smart idea to gather a few games together and create the Microsoft Entertainment Pack, so it became an intern's job to track down individual developers, get the source code, and ensure the apps could be shipped," Donner remembers.

Donner contributed Minesweeper and another game called TicTactics, a derivative of tic-tac-toe. The Entertainment Pack launched in October for $39.95 and became a labor of love for Bruce Ryan, the product manager in charge of writing and mass-producing 20,000 copies of that documentation at a local print shop. His favorite game was Minesweeper, and he wasn't alone.

Microsoft Windows Entertainment Pack.
Microsoft Windows Entertainment Pack.

To Donner's astonishment, Minesweeper spread across Microsoft after one of his friends uploaded the game to an internal server. Solitaire became the most-used application on Windows, but Minesweeper stood a chance to take its crown.

Dit Talley, one of Microsoft's customer service reps, recalled a phone call with a client, Washington's Corporate & Government Consulting, Inc., that was interrupted when his contact shouted obscenities into the phone. The embarrassed consultant admitted he'd just had a breakthrough in Minesweeper. Another woman confessed she analyzed the tiled wall in her bathroom to determine which squares contained mines. Employees in offices learned to press the Alt and Tab keys together--a combination known as the "boss key"--to hide the game when their boss walked by their cubicles.

The biggest addict to Minesweeper was Microsoft's co-founder. After Bruce Ryan set a clear time of six seconds, he dared anyone in the company to beat his records. Still possessed of the same competitive spirit that had driven him to crush his family at board games, Bill Gates posted a time of five seconds. Not only had he demolished Minesweeper in record time, word got out that Gates had to sneak into president Michael Hallman's office after hours to play. He'd been so obsessed with the game he'd uninstalled it from his own machine.

When no one beat Gates' time, development manager Tom Reeves wrote a program that solved Minesweeper in three seconds. Furious, Gates fired off a company-wide email: "My critical skills are being displaced by a computer. This technology thing is going too far. How can one retain human dignity when computers do the important stuff better than people?"

Beginning with Windows 3.1, Microsoft included Minesweeper alongside Windows Solitaire with every version of the operating system through 2009's Windows 7. (Microsoft still offers a free version of Minesweeper in the Microsoft Store.)

Donner was pleased and humbled by his creation's success, which inspired competitive play from players around the world. "Games were obviously not useful for any large organization trying to get employees to do real work. Selling expensive software like Word and Excel was certainly more profitable than a simple game. The success of the Entertainment Pack surprised many people."

While he viewed video games as a diversion from more important engineering work, he found merit in writing them. "Games serve many purposes. It has been suggested that including them in Windows helped people learn how to use the mouse and entertain. In my humble opinion, freebies are always good. The Entertainment Pack showed that Windows could be used for more than just work."

Hello, Meet Lola