Clearly he did some programming in his teen years but we don't know what he worked on, and while Paul Allen went on to write advanced microprocessor simulators, Gates clearly did not.
A week or two ago I made an unguarded comment about Bill Gates being an opportunist rather than either a visionary or a programmer. That drew a lot of argument - on both issues.
The visionary versus opportunist side of this is pretty clear. Visionaries create new strategies, drive the public's understanding of new ideas through innovation, and generally lead the charge in new directions. Microsoft's record of innovation is a null set: just about everything they've done has been opportunistic, making money on other people's ideas or products.
Basically Bill Gates has made more money for himself and his shareholders selling Steve Jobs' ideas to the public than Apple has, but it's easy to see who's been the visionary and who's been the opportunist in that relationship.
Although Bill Gates is known mostly for his founding of Microsoft he also has done a number of programming jobs before becoming the worlds richest man. Bill Gates first programming job would be when he offered the principle at his high school a timetable organizer that would be more efficient and easier to use than what the principle had previously been using. Little did Gates' principle know that Bill had created the program to his own benefit... Bill was going to be in all the pretty girls classes. Bill's second job was a summer's work programming in which he earned 4200 dollars. At the age of fourteen Bill Gates and his programming buddy thought up the idea for a traffic counting computer which would later be named 'Traf- o-Data' and earn them 20 000 dollars. But when word got around that the computers were being sold out of a basement by a couple of teens the business fell through. Gates also worked as a Congressional Page and at a programming company called 'TRW'. After dropping out of Harvard Gates created the first basic operating language for the computer. Although Gates has programmed a number of programs he is still going strong at it and is programming as I write this.
In 1968 at age 13 as an 8th grader while at Lakeside School (a private exclusive school for boys) he got access to a Teletype connected by a 110 baud modem to a GE MARK II time-sharing system that only had BASIC (Beginner's All-Purpose Symbolic Instruction Code). The teletype combined a keyboard, a printer, and a paper tape punch and reader. It cost $89 per month to rent the teletype and $8 an hour for on-line fees (about $450 and $40 in 1998 dollars, respectively). Gates quickly became an avid programmer and one of the main users of the system.
Paul Allen, two years ahead of Gates at Lakeside, was part of the group Gates found clustered around the GE terminal but his focus, and that of most of the others in the group, was on the internals: not on using BASIC, but on what made the thing work and therefore on what else it could be made to do.
Beyond that period, however, the picture gets hazy. We know Bill Gates sold a couple of programming projects culminating in his pitch to Altair on providing a BASIC for the MITS machine, but we do not know from independent sources either who delivered on those projects or what was delivered..
Even if you've been following our saga of Micro-Soft's 1975 Altair BASIC here and here, - one question remains unanswered.
"'Could Bill Gates Write Code?' Or was he merely the luckiest man alive," before concluding... "Yes He Bloody Could!"
And that should be convincing, except that it isn't because the quality of the code isn't at issue - and both IBM and DEC had similar products for their 5X00 and PDP lines respectively. What's at issue here is who first wrote that code and on that the only evidence we have is in a listing that miraculously surfaced sometime in 1999 - about ten years after Bill Gates first promised to make it public.
Beyond that, what we know is that the other people involved from the earliest projects on, including Allen and Davidoff among many others, have amply demonstrated the needed skills in other contexts - but Gates has not. Indeed most of the photos from the period show Allen at work with Gates looking on, and even the Gates publicity machine has backed off claims about his post 1975 programming expertise and personal contributions to MS-DOS since the truth about its origins in QDOS and CP/M has become widely established.
So bottom line, was, or is, Bill Gates a programmer? Clearly he did some programming in his teen years but we don't know what he worked on, and while Paul Allen went on to write advanced microprocessor simulators, Gates clearly did not.
It's legitimate, therefore, to argue that he did programming, and so must be, or at least have been, a programmer; but, I think the questions should be considered largely unanswered because we have lots of claims but no incontrovertible evidence for any serious work.
There was no quality to Gates' or Microsoft's product -- it was timing and chance (and marketing and contacts) that led to their success. They were wise and ruthless enough to exploit the opportunities -- there was no genius (but probably some fraud).