"“Our father, Gary Kildall, was one of the founders of the personal computer industry, but you probably don’t know his name. Those who have heard of him may recall the myth that he ‘missed’ the opportunity to become Bill Gates by going flying instead of meeting with IBM. Unfortunately, this tall tale paints Gary as a ‘could-have-been,’ ignores his deep contributions, and overshadows his role as an inventor of key technologies that define how computer platforms run today.
"Gary viewed computers as learning tools rather than profit engines. His career choices reflect a different definition of success, where innovation means sharing ideas, letting passion drive your work and making source code available for others to build upon. His work ethic during the 1970s resembles that of the open-source community today.
"With this perspective, we offer a portion of our father’s unpublished memoirs so that you can read about his experiences and reflections on the early days of the computer industry, directly in his own voice."
Sounds really interesting. Thanks for making this available!
I just happen to have been reading this past week, the Digital Antiquarian's IBM PC release overview (4 parts). This covers comparing Gates and Kildall (and includes e.g. the uncertainty of what actually happened with that "flying instead of meeting with IBM")
Let's be frank. Gates was from the WASP elites, old money stuff. IBM would probably find a reason to give him the deal rather than to Gary no matter what.
In particular, his mother – Mary Maxwell Gates – was on the United Way board along with IBM’s chairman John Opel and reportedly discussed her son’s company with Opel a few weeks before they made the decision to license MS-DOS.
There's little doubt that Ms Gates suggested that IBM look into Bill Gates, but I seriously doubt that IBM made the major business decision to contract with Gates because of his mother's suggestion.
None of us know what was said but I have no reason to doubt it based on the reports of his subsequent conversations with lower-level IBM executives. It probably didn’t seem like an especially consequential decision both because neither Gates nor Kildall were especially proven at that time by the standards of a Goliath like IBM and the mainframe guys were notoriously dismissive of PCs (Opel came up through S/360). I’ve seen enough nepotism not to question the plausibility but it’s especially easy to imagine people high up the management ladder at the biggest mainframe manufacturer thinking it didn’t really matter which of the toy computer operating system vendors they picked. I didn’t work in that world then (that was my dad’s generation) but even in the mid-90s when I started working in tech it was not uncommon to find mainframe people who were dismissive of PC or Unix systems as non-serious.
I specified the United Way to avoid confusion on that point. While the word nepotism originated from the Italian word for “nephew” referring to popes appointing their relatives, in modern English usage it more broadly includes friends as well. See for example the OED: “the practice among those with power or influence of favouring relatives, friends, or associates, especially by giving them jobs”.
If it helps, pretend that I wrote “cronyism” instead. My point was simply that it having a friendly voice at the board level is a large potential advantage which was only available to one of the vendors. While we cannot prove anything which wasn’t written down, it seems implausible to say it couldn’t have affected things – especially in an era where personal relationships carried more weight and there was less scrutiny of these sorts of things.
I remember the very high price of CP/M-86. If that was because of DRI's pricing and not something IBM did, then indeed that made the choice simple, in Kildall's disfavour.
According to the oral history of Tom Rolander (VP of engineering at DRI, he was in the famous IBM meeting), IBM wanted to call CP/M-86 "PC-DOS" and pay a one-time licensing fee, but DRI said they had to keep it as CP/M-86 and pay a per-device royalty. About a month after the meeting, Rolander heard through the grapevine that IBM had licensed QDOS instead of CP/M-86 for their operating system. Kildall informed IBM that he was already aware of QDOS and was preparing a lawsuit against SCP because he believed it to be an illegal CP/M clone. To defuse the situation, IBM promised that they wouldn't bundle an OS with the PC, would offer PC-DOS, CP/M-86, and UCSD P-System alongside the PC, and would pay the royalties up front for some large number of copies of CP/M-86. The condition was that DRI wouldn't sue IBM or Microsoft over the similarities between QDOS and CP/M. When the PC was released, Kildall and Rolander discovered they had been double crossed:
> So we got the notice about the rolling out and all the rest
of that, and so as Gary and I were want to do, we flew up to San Jose and took a cab over to the IBM
store, and we came in the store, and sure enough there was the IBM PC sitting there, and here were the
three boxes of the operating system. And we looked at this and the IBM PC-DOS was priced at $40, and
then over here was CP/M and it was priced at I’m pretty sure it was $260. It was more than $200 above
PC-DOS, and I don’t even remember what the UCSD P-System was. But we looked at that and I’ve never
had my face slapped in my life, but I know what it would feel like to have my face slapped. It was such an
unexpected thing. I mean we had totally assumed that this was going to be a level playing field, that PC-
DOS was going to be priced the same as CP/M, the same as the UCSD P-System, and that we were
going to let the market, the users decide which one, which clearly it wasn’t. And Gary described that day
later on in his memoirs as kind of the day innocence was gone.
> It was such an unexpected thing. I mean we had totally assumed that this was going to be a level playing field, that PC- DOS was going to be priced the same as CP/M, the same as the UCSD P-System, and that we were going to let the market, the users decide which one, which clearly it wasn’t. And Gary described that day later on in his memoirs as kind of the day innocence was gone.
This seems like a rather unrealistic expectation when one has per-device royalties and the other hasn’t. Of course, that probably can’t fully explain the magnitude of the price difference-which may indeed have involved some underhandedness on IBM’s part-but a vendor who charges a reseller more for a product than its competitor and then complains that reseller sells its product for a higher price the competitor’s, is being a bit silly
> I tried CP/M-86, and found it to be different, but not better.
Comparing PC-DOS 1.0 to CP/M-86 1.0, I don’t think there are huge differences in features - maybe FAT12 is a more efficient filesystem; PC-DOS records file sizes to the byte, CP/M files are made up of 128 byte records, and although there is a filesystem attribute to say how many bytes in last record are used (file size mod 128), it has to be implemented at the application level; DOS had EXE files (wasn’t in SCP 86-DOS, was added by Microsoft), I think CP/M by then had something similar? Neither had directories yet, but CP/M had “user areas” which were a kind of limited equivalent.
I think if they’d ported MP/M instead of CP/M (which I believe they did later), it would have been a more compelling offering-multitasking-but I suppose that would have made it even later to the market than it already was.
> There is no way successful IBM would commit to Microsoft without a thorough vetting.
As I recall, at the time said commitment was made, Microsoft didn't even _have_ an operating system, and subsequently bought QDOS! Their original deal was for languages.
Gates convinced IBM that he could build one, as he knew about QDOS, and immediately went and bought QDOS as a base to start with. So, yeah, it was a bit of bluster on his part, but he was able to fulfill the contract.
One way to look at it is that if IBM considered licensing MS-DOS and CP/M to be equivalent, which is to say either one would serve there purposes. Then I can easily see the Chairman of IBM putting a finger on the scale to swing it toward Ms. Gates son. It's like a two-fer[1], IBM is going to do a deal anyway and they figure either OS would work, and he gets a 'favor' point from a fellow board member who he might someday need their vote on a board decision down the road. Politics at that level is all about the banking of favors and opportunistically cashing them in.
[1] "Two for one" -- two desirable outcomes from a single action.
The original comment said they were both on the board of United Way. Those are the votes he'd be curating. United Way, at the time, was the largest non-profit in the United States and it's mission was to funnel donations to "deserving" non-profits. Many companies, including IBM, had a payroll contribution you could make to United Way. The 'service' United Way provided was doing the research to avoid scam charities and non-profits. The old joke "I gave at the office" when a person comes to your door asking for donations, was in reference to giving to United Way and implicitly telling the solicitor that if they wanted a donation to go to United Way and convince them to give some of the donated money to their charity.
As a result, being on the board gave a person tremendous soft power by giving them a direct impact on whether or not they chose to fund a non-profit. The way that expressed would be trips and junkets "for free" for United Way board members as a means of attempting to persuade them to fund a given non-profit. So let's say your kid starts a non-profit and you want other board members to advocate for it being funded. You, as the parent, have a conflict of interest and so must recuse yourself from that decision, but others on the board do not. Having someone in that meeting you can count on to make a solid case for your kids non-profit is worth a lot.
Rich people giving advantages to other rich people is frowned upon as collusion and nepotism, but when you launder that through a giving non-profit and even better you get to use other peoples money, and avoid a whole passel of tax implications. Well who is going to complain that United Way is funding this non-profit versus another? They had so much money to give away it was no doubt easy to hide the less well supported donations from things like the Red Cross or mothers against drunk driving donations.
IBM went to Microsoft (MS) for languages for the new PC. IBM asked if MS could provide an OS. As per unwritten agreement, MS told IBM to go to Digital Research (DRI) for an OS.
Whatever happened at DRI, IBM didn't get a licensing deal for an OS. No OS meant no need for MS languages. When IBM complained to MS about not getting a licensing agreement for CP/M for IBM PC, one of the MS people suggested Tim Patterson's CP/M clone. IBM was outsourcing everything to keep away the IBM bureaucracy, so they told MS to handle everything.
When MS asked IBM how they wanted to pay for the OS, MS gave several options including 1) per copy royalty, or 2) flat rate (which turned out to be $40K). For easy accounting, IBM chose 2). MS asked to be able to license OS to others. IBM said yes. MS didn't really care about how IBM paid for the OS, their bread and butter was languages. DRI wanted to be paid per copy of CP/M-86.
DRI still didn't have a retail CP/M-86 for IBM PC at launch time. By the time they did ship CP/M-86, charging much more than PC-DOS1.0, Lotus 123 would launch within a few months running on PC-DOS. By the time DRI lowered the price for CP/M-86, they were way behind in market share.
The Gates family was indeed wealthy, but they were nowhere near the kind of wealth that would influence IBM. I'm sure Ms Gates was intelligent, well educated, and quite charming, but she didn't know anything about computers. IBM would have been foolish to let her decide their PC division's major decisions.
I.e. I'm not buying the notion that her influence went beyond simply suggesting they check into what her son was doing.
Ah, I see. I wasn't clear. Let me try this:
I don't think Ms Gates knew anything about computers and I don't think IBM would have picked MS-DOS over a technically superior OS. I think 3 things happened:
1) Mary mentions to John the chairman of IBM that her son has a company doing "Computer Stuff" (they were the premier BASIC on CP/M at the time, IBM was planning to have BASIC in ROM so would have been talking to Microsoft about that). John asks the team doing the PC if this "micro-soft" has an OS like CP/M or if they are just a language company.
2) The question gets back to Bill who scrambles to say "Sure we can do OSes too! we have this thing we're calling it, uh, "microsoft disk operating system" MS-DOS for short. (while they scramble to secure the rights to the OS) I expect Bill had already been talking to Seattle Computer Products about selling a version of BASIC on their 86-DOS because he was all about the hustle and he wanted it to be on every computer. He likely saw the opportunity and would have asked about licensing it as a product Microsoft could sell.
3) The PC team finds out that Gates can supply both the OS and BASIC and presents to John: "Option A: We can get BASIC from Microsoft and CP/M from Digital Research" (most popular OS and most popular language), "or option B: we can get both BASIC and an OS that is similar to CP/M from Microsoft."
I am suggesting, that given that scenario, John could have expressed a "preference" (always leave it in the hands of the team you delegated the decsion to, to decide, but you can express a preference) that they go with option B. Putting myself in his seat, I might have spun that preference as "Microsoft's OS isn't out there, but neither is CP/M for the 8086, and this way we would only have to deal with one vendor for software integration." All straight up, all above board, reasonable argument.
What I'm saying, is that in making that choice, it gave John something he could use with Mary, "Hey we're going with your son's company for the language and the OS" and she would be happy about that. I'm also saying that I would not be surprised that had a product person said "We going to be fighting headwinds with a microcomputer that doesn't run CP/M as that is the one that these small businesses are using, we really should go with CP/M-86 here." And having the chairman push back with "Why don't we do this, IBM has a good reputation for its operating systems on 'real' computers, we'll take the Microsoft product and rebrand it as 'PC DOS' and it will be an IBM thing which businesses already trust, how about that?"
Also a reasonable thing to do or choice to make. And it worked out for them and Mary appreciated John's support in helping her son's business. Which was helpful to John as a board member of United way. So two for one, IBM gets an OS and John gets a favor credit with Mary.
But I also point out that this is rampant speculation and no more accurate than a large language model that uses statistical likelihoods to write sentences. :-) The only other bit of information I can add is that I was working for IBM the summer of 1977 as an intern, and my boss knew I was trying to save up enough money to buy a CP/M computer so he gave me a secret peak at how IBM was going to take over the microcomputer market so maybe I should wait. He showed me an unreleased product, the IBM 5100 running BASIC, it had a built in screen. It was a computer by engineers, for engineers, and no one would buy anything else :-).
Even young me knew that was not gonna fly :-). But the IBM of that time was both predatory (they were being sued left and right it seemed) and cheap, and they thought they were the smartest people in the world. When I went to the PC presentation they gave us in 1981 at USC I thought, "Hmm, not a 5100, but a bunch of their own software with third party chips." That was very on brand for them.
I wrote a book report on a biography of Bill Gates when I was 7 or 8. It contained a youthful anecdote about his mother calling him on the house's intercom and him replying after several attempts that "[he was] busy thinking. Maybe [she] should try it sometime!"
An intercom? In a house? So that your mother didn't have to repeatedly yell up the stairs to your brother that food is on the table? Sure sounded like rich person stuff to me.
I wish Gary was one of the people that the average joe associated with "people who are known for doing computer things", instead of only people such as Bill Gates and Steve Jobs.
He was brilliant, but he was not a predator, which is always part of the problem. We know names like Gates and Jobs because they stepped on the shoulders of others and ate anyone who stood in their way alive. History remembers the victors.
That should automatically tell us we shouldn't trust them, and yet fandoms and followings abound.
Both of them screwed over early employees wrt company shares.
Jobs and Apple board didn't give stock options/shares to some early employees, Woz stepped in to make up for some of the shortfall. see https://apple.fandom.com/wiki/Woz_Plan
Gates argued with Paul Allen about the percentage of company ownership. IMHO, Allen didn't like confrontation so Allen acquiesced to Gates benefit.
In case anyone doesn't realise, (nearly) every episode is available on the Internet Archive. I was recently involved in restoring an additional "lost" episode from a tape found in a libarary.
He was nothing like BG. Gary was an inventor, educator and most of all a visionary. He hated running a business, even though he started DRI after failing to convince Intel to buy CP/M.
Yes, there are quite a few videos on YouTube about him, named “The man who should have been Bill Gates” but that’s just click baiting. Watch the special episode of “The Computer Chronicles” about Gary Kildall and see what his friends and business associates say about him.
While we are here, another important article by Kildall has been made available online, "Global Expression Optimization During Compilation"-1972 [1] - while the field has obviously moved on, this is still interesting and relevant IMO, if anything it shows what a talented technical writer he was.
Kinda saddens me that society usually aligns with marketing and business mindset (impressing, selling, profiting) instead of people like Kildall. There are many passionated, driven, creative, prolific people with intrisic motivations that are wasted due to commercial forces.
I remember the early IBM PC days. PC-DOS was $40. CPM/86 was $240. Both were available, people simply picked the cheaper one. I used both, and there was nothing better about CPM/86.
Due to inflation, this is like $113 vs $679 today. It was a no-brainer to buy MS-DOS instead. Kildall clearly was a businessman wanting to make money off of it.
The date on it is 2016. 33 years later. I don't find that particularly convincing.
BTW, I've read a lot of computer histories, and I often find errors in them. This is why professional historians try to use contemporary sources as much as possible.
This paints Bill Gates as not a tech person and a business first person, which is not true. He got a BASIC compiler on the altair which MITS thought couldn't be done. He helped Wozniak implement a version of BASIC supporting floating point numbers. Gates didn't even want to take Microsoft public. They had to convince him. Ballmer was the biggest businessman in the bunch. Hell, he was the one that suggested kidall since Microsoft wasn't in the OS business.
This is mostly true. Gates was a tech wizard - a great programmer before there were even books about programming. But to make it sound like Gates wasn't a business-first guy is wrong - he wanted to sell software from day 1. Read any early bio about him and his speech about selling software to the homebrew club (https://en.wikipedia.org/wiki/An_Open_Letter_to_Hobbyists).
Um, it is necessary to compile a program before being able to interpret it. I don't know how early BASICs were implemented, but the usual method is to compile it to some sort of intermediate representation, and then interpret that representation.
D's compile time function execution engine works that way. So does the Javascript compiler/interpreter engine I wrote years ago, and the Java compiler I wrote eons ago.
The purpose to going all the way to generating machine code is the result often runs 10x faster.
Early BASICs didn't compile a program before interpreting it. The interpreter read the code as written and executed it step-by-step. There was some tokenization; keywords were turned into single or double bytes and that was literally done when you pressed enter on the keyboard. Your source code was these actual tokenized bytes. On the Commodore 64, you could type the tokenized versions of keywords instead of the full keyword as a shortcut. Even numbers were not transformed into bytes ahead of time.
This was used to save memory -- there wasn't much room to hold both the source code and an intermediate form. But also it wasn't that necessary, with the keywords tokenized and the syntax so simple that there wouldn't have been much savings in space or performance.
You have an idiosyncratic definition of "compiler" then. Many BASICs, including the MS family of BASICs, did tokenize keywords to save on memory storage.
But 99.9% of people take "compiler" to mean translating source code to either a native CPU instruction set or a VM instruction set. In any tutorial on compilers, tokenization is only one aspect of compilation, as you know very well. And unlike some of the tricky tokenization aspects that crop up in languages like C++, BASIC interpreters simply had a table of keywords with the MSB set to indicate boundaries between keywords. The tokenizer simply did greedy "first token which matches the next few characters" is the winner, and encoded the Nth entry from that table as token (0x80 + N).
When LIST'ing a program, the same table was used: if the byte was >= 0x80, then the first N-1 keywords in the table were skipped over and the next one was printed out.
There were also BASIC implementations that did not tokenize anything; every byte was simply interpreted on every execution of the line. There were tiny BASICs where instead of using the full keyword "PR" meant "PRINT", and "GO" meant "GOTO" etc.
It is not necessary to compile a program, in the general case, before executing it.
Many programming languages parse their program to an AST then walk that AST interpretting as they go. But for BASIC you can parse/execute statement by statement - no need to parse the whole program ahead of time, and certainly zero need to compile to either machine code or any internal representation.
Remember at the time we're talking about 64k was a lot of RAM. Some machines had less.
I've been writing compilers for 45 years now. Tokenizing is a big part of every textbook on compilers. To resolve expressions (which are recursive in nature) it would have had to do more than just tokenizing. While this isn't hard at all, it's "parsing" which is also qualifying it as a compiler.
I.e. the basic program was lexing and parsing. It's a compiler. A very simple one, sure, but a compiler.
Compilers generate code in another, usually lower level language that is executed by reading all of the code that could be executed first. Interpreters (such as the BASIC interpreter we are discussing here) read only that part of the code that gets executed and typically call functions rather than that they generate code (never mind JIT). Tokenization prior to interpretation is technically an optional step (it's just an efficiency boost) and is not normally confused with compilation even if there are some superficial similarities.
Um, no? your experience is probably at least two decades after the time period in question.. The more advanced versions of, for example, the TRS-80 BASIC (part of this "microcomputer BASICs that all share a common set of bugs") did no more than tokenize - so, `10 PRINT "Hello"` would have a binary representation for the line number, a single byte token for PRINT, then " H E L L O " and an end-of-line marker. Actually interpreting the code involved just reading it linearly; GOTO linenumber involved scanning the entire code in memory for that line number (and yes, people really did optimize things by putting GOTO and GOSUB targets earlier in the program so the interpreter would find them faster :-)
Tokenizing is a necessary but not a sufficient task for compilation. I could tokenize this comment to efficiently store it in a database but that would have nothing to do with compilation.
MITS was correct. TinyBASIC is a very different animal from the language for time-sharing minicomputers that was what people actually meant by "BASIC" at the time. For one thing, TinyBASIC was a language interpreter and not a compiler.
TS was fairly scarce in those times - let alone on PCs. I wonder when the first general-purpose time-share system was available ... outside of mainframes? I know UofM's MECC had MECC Timesharing System (MTS) up on a Cyber73 in 1977 ; before that, their SUMITS had to make do with batch-processing on a FunnyVac.
Jobs had a key difference from Gates - he had taste. He insisted on the injection molded case for the Apple II instead of sheet metal because he wanted it to look like a finished product. He insisted on not having lines dividing the color bands in their logo, which made it more expensive to print (but much nicer to look at).
Jobs would never let something like Windows 1 escape the lab.
3.1 was a massive upgrade over 3.0 - it introduced TrueType. 3.11 had peer to peer networking and, at least in Brazil, doomed Netware in the small business segment.
I recommend reading "Idea Man" [1] by Paul Allen, Microsoft's cofounder, to understand the deep and early involvement he and Bill Gates had with computers.
I also recommend Hard Drive (1992) [2] for a deeper look into the business side of Bill Gates.
Regardless of any negative opinions about him, I believe Bill Gates was/is in a league of his own.
The kids should not be removing some of their Dad's work. His struggles with alcoholism are well defined in the public and him describing his struggles could help another facing similar problems.
In fact I think all now-dead authors should have their work as-is protected to a fair degree.
Dollars to donuts that the anecdotes revealed something either embarrassing or personally connected to the family members, it's just easier to posthumously blame the drinker.
I absolutely agree that shining light onto the subject of alcoholism is nothing but good for those seeking to avoid the horrible problem.
I wouldn’t say “should not”. That’s a complex issue and I wouldn’t say anyone is obligated to put painful moments of their personal lives on public display. Any family suffering from alcoholism has other examples to learn from, and they aren’t under any obligation to contribute another one if they’re uncomfortable doing so.
It's their call to make. They feel the chapters didn't represent their father and, as a draft, I would expect the later parts to have been less revised and to be in a rougher shape.
Why? Because of possession? That's a crummy reason.
Art is supposed to be upheld as on par with 'divine creation' by those that respect it. Literature, being art, isn't different.
in other words, we knew the Ecce Homo restoration was botched because we were able to compare it to the original piece.. sadly we won't ever have the luxury of knowing what kind of hatchet was taken to the memoir after the author's death.
Obviously this is awesome, however a bit tough to read as the quality/resolution of the text is pretty low. Wonder if someone could clean it up and provide the new file to the hoster? Anyway, will try to clean it up for myself/local copy...
"Glenn came to my tool shed computer room in 1975, so we could "adapt" CP/M to
the IMSAI hardware. What this means is that I would rewrite the parts of CP/M that manage things like diskette controllers and CRTs.
Well. come on, I'd already done this so many times that the tips of my fingers were wearing thin, so I designed a general interface, which I called the BIOS (BASIC I/O System) that a good programmer could change on the spot for their hardware. This little BIOS arrangement was the secret to the success of CP/M.
With the BIOS in place, a programmer could make CP/M work with their specialized hardware. With all those hobbyists out there, believe me, there was no shortage of specialized hardware. Glenn and I built a BIOS that afternoon and stuck CP/M on an IMSAI. He demo'd it to Ed Faber and the IMSAI engineers, and they loved it."
Writing a BIOS for a new machine in a single afternoon. Those were the days...
There wasn't much of a point in writing a replacement when MS-DOS was bundled with your computer. The FreeDOS project only got started when Microsoft first announced that the then-new Windows 95 would start to move away from MS-DOS and people saw the writing on the wall.
TurboDOS was a contemporary one - had multiprocessing (as in, you could have multiple Z80 CPU boards in a single card cage that passed messages over a bus) and was delivered as linkable objects, so you could customize the OS for your hardware (in the multi-Z80 setup, you didn't need any I/O that wasn't in the daughterboards, so in this case the tiny version of TurboDOS on the daughter boards did the message passing thing and talked to the physical serial ports, but didn't need a disk driver since the only disk was hooked to the single master board. Great (long-lost) stuff - we were building an early dialup info-service so each daughter board had multiple modems...
> Sometimes I wonder why I and/or many others did not write an equivalent, even just for fun
In a sense, every game developer back then wrote a very small real-time operating system that dealt with user input, state management, screen updates, and audio. I wrote a window server (a window-stacker would be more accurate) for the Apple II.
Let me give the now defunct Internet History Podcast a shout out. Episode 100 - The Man Who Could Have Been Bill Gates? The Gary Kildall Story
A story with intrigue that chronicles the why and how Microsoft ended up extracting the most value from the PC revolution instead of the hardware makers and of course, why that was DOS instead of CP/M.
I liked the oral history nature of this podcast, walking me through things that preceded me in technology, and then things that I lived through like the 90's internet.
I remember watching a documentary. IBM officials showed up at Kildall's house twice to convince him to sell/license CP/M to them. Pre-planned meetings. He ghosted them both times. One of those times they waited hours for him.
There's a lot of mythology around Kildall and IBM. I'm sure some it it even aligns with the facts but I don't put that much stock in many of the stories and theories.
Past some point, even people with some first-hand knowledge may not know the whole truth, filter things through their own biases, may just misremember, etc.
My dad kept a diary during his combat tour in WW2. Decades later, he read it and was shocked to discover that it did not quite line up with his memories.
When I prepared a "history of D" for a paper a while back, I went looking through all my documents and emails and the D forum history looking to pin things down. I, too, discovered that my memories didn't match the facts as well as I wished it did.
Memory is a funny thing.
One should always be skeptical of accounts written long after the fact. I sometimes wonder how much of our written history is false. I support statutes of limitations because of this.
I read the first part back in 2016 when it was released (spoiler: it was worth it). Still waiting for the rest to come, but it seems that the Gary's Kildall memoirs project is not being pursued.
I am speculating it may be covering aspects of his personal life, e.g. describing family conflicts from his perspective-and I can understand why his family might not want to air that “dirty laundry” in public. Decades from now, many of the people who might be hurt or embarrassed by it will be dead, so releasing it then wouldn’t cause the harm that releasing it now would cause
"“Our father, Gary Kildall, was one of the founders of the personal computer industry, but you probably don’t know his name. Those who have heard of him may recall the myth that he ‘missed’ the opportunity to become Bill Gates by going flying instead of meeting with IBM. Unfortunately, this tall tale paints Gary as a ‘could-have-been,’ ignores his deep contributions, and overshadows his role as an inventor of key technologies that define how computer platforms run today.
"Gary viewed computers as learning tools rather than profit engines. His career choices reflect a different definition of success, where innovation means sharing ideas, letting passion drive your work and making source code available for others to build upon. His work ethic during the 1970s resembles that of the open-source community today.
"With this perspective, we offer a portion of our father’s unpublished memoirs so that you can read about his experiences and reflections on the early days of the computer industry, directly in his own voice."
Sounds really interesting. Thanks for making this available!
I just happen to have been reading this past week, the Digital Antiquarian's IBM PC release overview (4 parts). This covers comparing Gates and Kildall (and includes e.g. the uncertainty of what actually happened with that "flying instead of meeting with IBM")
Here's the url to part 2 of that 4-parter, where Gary gets mentioned (also covered in parts 3 and 4): https://www.filfre.net/2012/05/the-ibm-pc-part-2/
Let's be frank. Gates was from the WASP elites, old money stuff. IBM would probably find a reason to give him the deal rather than to Gary no matter what.
In particular, his mother – Mary Maxwell Gates – was on the United Way board along with IBM’s chairman John Opel and reportedly discussed her son’s company with Opel a few weeks before they made the decision to license MS-DOS.
https://www.nytimes.com/1994/06/11/obituaries/mary-gates-64-...
There's little doubt that Ms Gates suggested that IBM look into Bill Gates, but I seriously doubt that IBM made the major business decision to contract with Gates because of his mother's suggestion.
None of us know what was said but I have no reason to doubt it based on the reports of his subsequent conversations with lower-level IBM executives. It probably didn’t seem like an especially consequential decision both because neither Gates nor Kildall were especially proven at that time by the standards of a Goliath like IBM and the mainframe guys were notoriously dismissive of PCs (Opel came up through S/360). I’ve seen enough nepotism not to question the plausibility but it’s especially easy to imagine people high up the management ladder at the biggest mainframe manufacturer thinking it didn’t really matter which of the toy computer operating system vendors they picked. I didn’t work in that world then (that was my dad’s generation) but even in the mid-90s when I started working in tech it was not uncommon to find mainframe people who were dismissive of PC or Unix systems as non-serious.
Ms Gates wasn't on the board of IBM, she was on the board of another company. That isn't nepotism.
There is no way successful IBM would commit to Microsoft without a thorough vetting.
Few remember, but IBM also sold CPM/86 for the PC. Kildall had his chance, and muffed it with the high price.
I specified the United Way to avoid confusion on that point. While the word nepotism originated from the Italian word for “nephew” referring to popes appointing their relatives, in modern English usage it more broadly includes friends as well. See for example the OED: “the practice among those with power or influence of favouring relatives, friends, or associates, especially by giving them jobs”.
If it helps, pretend that I wrote “cronyism” instead. My point was simply that it having a friendly voice at the board level is a large potential advantage which was only available to one of the vendors. While we cannot prove anything which wasn’t written down, it seems implausible to say it couldn’t have affected things – especially in an era where personal relationships carried more weight and there was less scrutiny of these sorts of things.
I remember the very high price of CP/M-86. If that was because of DRI's pricing and not something IBM did, then indeed that made the choice simple, in Kildall's disfavour.
According to the oral history of Tom Rolander (VP of engineering at DRI, he was in the famous IBM meeting), IBM wanted to call CP/M-86 "PC-DOS" and pay a one-time licensing fee, but DRI said they had to keep it as CP/M-86 and pay a per-device royalty. About a month after the meeting, Rolander heard through the grapevine that IBM had licensed QDOS instead of CP/M-86 for their operating system. Kildall informed IBM that he was already aware of QDOS and was preparing a lawsuit against SCP because he believed it to be an illegal CP/M clone. To defuse the situation, IBM promised that they wouldn't bundle an OS with the PC, would offer PC-DOS, CP/M-86, and UCSD P-System alongside the PC, and would pay the royalties up front for some large number of copies of CP/M-86. The condition was that DRI wouldn't sue IBM or Microsoft over the similarities between QDOS and CP/M. When the PC was released, Kildall and Rolander discovered they had been double crossed:
> So we got the notice about the rolling out and all the rest of that, and so as Gary and I were want to do, we flew up to San Jose and took a cab over to the IBM store, and we came in the store, and sure enough there was the IBM PC sitting there, and here were the three boxes of the operating system. And we looked at this and the IBM PC-DOS was priced at $40, and then over here was CP/M and it was priced at I’m pretty sure it was $260. It was more than $200 above PC-DOS, and I don’t even remember what the UCSD P-System was. But we looked at that and I’ve never had my face slapped in my life, but I know what it would feel like to have my face slapped. It was such an unexpected thing. I mean we had totally assumed that this was going to be a level playing field, that PC- DOS was going to be priced the same as CP/M, the same as the UCSD P-System, and that we were going to let the market, the users decide which one, which clearly it wasn’t. And Gary described that day later on in his memoirs as kind of the day innocence was gone.
Here's a link to the full oral history if you're interested: https://archive.computerhistory.org/resources/access/text/20...
> It was such an unexpected thing. I mean we had totally assumed that this was going to be a level playing field, that PC- DOS was going to be priced the same as CP/M, the same as the UCSD P-System, and that we were going to let the market, the users decide which one, which clearly it wasn’t. And Gary described that day later on in his memoirs as kind of the day innocence was gone.
This seems like a rather unrealistic expectation when one has per-device royalties and the other hasn’t. Of course, that probably can’t fully explain the magnitude of the price difference-which may indeed have involved some underhandedness on IBM’s part-but a vendor who charges a reseller more for a product than its competitor and then complains that reseller sells its product for a higher price the competitor’s, is being a bit silly
As I recall, Kildall thought that CP/M-86 was much better than MSDOS, and people would pay the higher price. He was unable to make the case, though.
I tried CP/M-86, and found it to be different, but not better.
> I tried CP/M-86, and found it to be different, but not better.
Comparing PC-DOS 1.0 to CP/M-86 1.0, I don’t think there are huge differences in features - maybe FAT12 is a more efficient filesystem; PC-DOS records file sizes to the byte, CP/M files are made up of 128 byte records, and although there is a filesystem attribute to say how many bytes in last record are used (file size mod 128), it has to be implemented at the application level; DOS had EXE files (wasn’t in SCP 86-DOS, was added by Microsoft), I think CP/M by then had something similar? Neither had directories yet, but CP/M had “user areas” which were a kind of limited equivalent.
I think if they’d ported MP/M instead of CP/M (which I believe they did later), it would have been a more compelling offering-multitasking-but I suppose that would have made it even later to the market than it already was.
> There is no way successful IBM would commit to Microsoft without a thorough vetting.
As I recall, at the time said commitment was made, Microsoft didn't even _have_ an operating system, and subsequently bought QDOS! Their original deal was for languages.
Gates convinced IBM that he could build one, as he knew about QDOS, and immediately went and bought QDOS as a base to start with. So, yeah, it was a bit of bluster on his part, but he was able to fulfill the contract.
So, and correct me if I am wrong, you don't think a little old fashioned nepotism happened like it does in pretty much every major industry?
Nepotism certainly happens, but companies that practice it rarely thrive.
Ms Gates was not associated with IBM.
One way to look at it is that if IBM considered licensing MS-DOS and CP/M to be equivalent, which is to say either one would serve there purposes. Then I can easily see the Chairman of IBM putting a finger on the scale to swing it toward Ms. Gates son. It's like a two-fer[1], IBM is going to do a deal anyway and they figure either OS would work, and he gets a 'favor' point from a fellow board member who he might someday need their vote on a board decision down the road. Politics at that level is all about the banking of favors and opportunistically cashing them in.
[1] "Two for one" -- two desirable outcomes from a single action.
Ms Gates was not on the board of IBM. She was on the board of United Way.
The original comment said they were both on the board of United Way. Those are the votes he'd be curating. United Way, at the time, was the largest non-profit in the United States and it's mission was to funnel donations to "deserving" non-profits. Many companies, including IBM, had a payroll contribution you could make to United Way. The 'service' United Way provided was doing the research to avoid scam charities and non-profits. The old joke "I gave at the office" when a person comes to your door asking for donations, was in reference to giving to United Way and implicitly telling the solicitor that if they wanted a donation to go to United Way and convince them to give some of the donated money to their charity.
As a result, being on the board gave a person tremendous soft power by giving them a direct impact on whether or not they chose to fund a non-profit. The way that expressed would be trips and junkets "for free" for United Way board members as a means of attempting to persuade them to fund a given non-profit. So let's say your kid starts a non-profit and you want other board members to advocate for it being funded. You, as the parent, have a conflict of interest and so must recuse yourself from that decision, but others on the board do not. Having someone in that meeting you can count on to make a solid case for your kids non-profit is worth a lot.
Rich people giving advantages to other rich people is frowned upon as collusion and nepotism, but when you launder that through a giving non-profit and even better you get to use other peoples money, and avoid a whole passel of tax implications. Well who is going to complain that United Way is funding this non-profit versus another? They had so much money to give away it was no doubt easy to hide the less well supported donations from things like the Red Cross or mothers against drunk driving donations.
That's the game at this level.
Paul Allen states his version of the IBM selection of OS for their IBM PC in his autobiography, Idea Man.
see my comment at https://news.ycombinator.com/item?id=43591941 for the long version.
Hopefully short version.
IBM went to Microsoft (MS) for languages for the new PC. IBM asked if MS could provide an OS. As per unwritten agreement, MS told IBM to go to Digital Research (DRI) for an OS.
Whatever happened at DRI, IBM didn't get a licensing deal for an OS. No OS meant no need for MS languages. When IBM complained to MS about not getting a licensing agreement for CP/M for IBM PC, one of the MS people suggested Tim Patterson's CP/M clone. IBM was outsourcing everything to keep away the IBM bureaucracy, so they told MS to handle everything.
When MS asked IBM how they wanted to pay for the OS, MS gave several options including 1) per copy royalty, or 2) flat rate (which turned out to be $40K). For easy accounting, IBM chose 2). MS asked to be able to license OS to others. IBM said yes. MS didn't really care about how IBM paid for the OS, their bread and butter was languages. DRI wanted to be paid per copy of CP/M-86.
DRI still didn't have a retail CP/M-86 for IBM PC at launch time. By the time they did ship CP/M-86, charging much more than PC-DOS1.0, Lotus 123 would launch within a few months running on PC-DOS. By the time DRI lowered the price for CP/M-86, they were way behind in market share.
I'd trust Allen for being a credible source.
When IBM returned to MS, Gates decided that opportunity had dropped in his lap again, and this time he wasn't going to turn away from it.
I can confirm that IBM has always been cheap in their dealings with suppliers. (and in their acquisitions)
The Gates family was indeed wealthy, but they were nowhere near the kind of wealth that would influence IBM. I'm sure Ms Gates was intelligent, well educated, and quite charming, but she didn't know anything about computers. IBM would have been foolish to let her decide their PC division's major decisions.
I.e. I'm not buying the notion that her influence went beyond simply suggesting they check into what her son was doing.
Ah, I see. I wasn't clear. Let me try this: I don't think Ms Gates knew anything about computers and I don't think IBM would have picked MS-DOS over a technically superior OS. I think 3 things happened:
1) Mary mentions to John the chairman of IBM that her son has a company doing "Computer Stuff" (they were the premier BASIC on CP/M at the time, IBM was planning to have BASIC in ROM so would have been talking to Microsoft about that). John asks the team doing the PC if this "micro-soft" has an OS like CP/M or if they are just a language company.
2) The question gets back to Bill who scrambles to say "Sure we can do OSes too! we have this thing we're calling it, uh, "microsoft disk operating system" MS-DOS for short. (while they scramble to secure the rights to the OS) I expect Bill had already been talking to Seattle Computer Products about selling a version of BASIC on their 86-DOS because he was all about the hustle and he wanted it to be on every computer. He likely saw the opportunity and would have asked about licensing it as a product Microsoft could sell.
3) The PC team finds out that Gates can supply both the OS and BASIC and presents to John: "Option A: We can get BASIC from Microsoft and CP/M from Digital Research" (most popular OS and most popular language), "or option B: we can get both BASIC and an OS that is similar to CP/M from Microsoft."
I am suggesting, that given that scenario, John could have expressed a "preference" (always leave it in the hands of the team you delegated the decsion to, to decide, but you can express a preference) that they go with option B. Putting myself in his seat, I might have spun that preference as "Microsoft's OS isn't out there, but neither is CP/M for the 8086, and this way we would only have to deal with one vendor for software integration." All straight up, all above board, reasonable argument.
What I'm saying, is that in making that choice, it gave John something he could use with Mary, "Hey we're going with your son's company for the language and the OS" and she would be happy about that. I'm also saying that I would not be surprised that had a product person said "We going to be fighting headwinds with a microcomputer that doesn't run CP/M as that is the one that these small businesses are using, we really should go with CP/M-86 here." And having the chairman push back with "Why don't we do this, IBM has a good reputation for its operating systems on 'real' computers, we'll take the Microsoft product and rebrand it as 'PC DOS' and it will be an IBM thing which businesses already trust, how about that?"
Also a reasonable thing to do or choice to make. And it worked out for them and Mary appreciated John's support in helping her son's business. Which was helpful to John as a board member of United way. So two for one, IBM gets an OS and John gets a favor credit with Mary.
But I also point out that this is rampant speculation and no more accurate than a large language model that uses statistical likelihoods to write sentences. :-) The only other bit of information I can add is that I was working for IBM the summer of 1977 as an intern, and my boss knew I was trying to save up enough money to buy a CP/M computer so he gave me a secret peak at how IBM was going to take over the microcomputer market so maybe I should wait. He showed me an unreleased product, the IBM 5100 running BASIC, it had a built in screen. It was a computer by engineers, for engineers, and no one would buy anything else :-).
Even young me knew that was not gonna fly :-). But the IBM of that time was both predatory (they were being sued left and right it seemed) and cheap, and they thought they were the smartest people in the world. When I went to the PC presentation they gave us in 1981 at USC I thought, "Hmm, not a 5100, but a bunch of their own software with third party chips." That was very on brand for them.
Gates had a version of DOS ready in 6 weeks, while DR was still planning DOS. MS got things going much faster.
No. He ran out and acquired 86-DOS, from Seattle Computer Products. It's easy to have something when you buy it already complete.
And DR had CP/M-86.
DRI did not have CP/M-86 at that time which is the reason Tim Paterson developed 86-DOS in the first place.
MS still had to make modifications to Tim Patterson's 86-DOS before it shipped as PC-DOS 1.0 - source: Paul Allen's Idea Man autobiography.
Same thing, he did the needful to have something to give ibm.
I wrote a book report on a biography of Bill Gates when I was 7 or 8. It contained a youthful anecdote about his mother calling him on the house's intercom and him replying after several attempts that "[he was] busy thinking. Maybe [she] should try it sometime!"
An intercom? In a house? So that your mother didn't have to repeatedly yell up the stairs to your brother that food is on the table? Sure sounded like rich person stuff to me.
I wish Gary was one of the people that the average joe associated with "people who are known for doing computer things", instead of only people such as Bill Gates and Steve Jobs.
His accomplishments cannot be overstated: https://en.wikipedia.org/wiki/Gary_Kildall#Recognition
He was brilliant, but he was not a predator, which is always part of the problem. We know names like Gates and Jobs because they stepped on the shoulders of others and ate anyone who stood in their way alive. History remembers the victors.
That should automatically tell us we shouldn't trust them, and yet fandoms and followings abound.
> instead of only people such as Bill Gates and Steve Jobs.
At least gates could program...
At least Jobs could design a product…
Both of them screwed over early employees wrt company shares.
Jobs and Apple board didn't give stock options/shares to some early employees, Woz stepped in to make up for some of the shortfall. see https://apple.fandom.com/wiki/Woz_Plan
Gates argued with Paul Allen about the percentage of company ownership. IMHO, Allen didn't like confrontation so Allen acquiesced to Gates benefit.
It's a scanned PDF linked on that page, but someone turned it into an epub if that's what you're looking for - https://gitlab.com/sigwait/computer_connections/-/releases
This is perfect, thank you so much. Resolves the text quality of the original source!
Absolutely loved when I randomly caught an episode of Computer Chronicles back in the old time days.
In case anyone doesn't realise, (nearly) every episode is available on the Internet Archive. I was recently involved in restoring an additional "lost" episode from a tape found in a libarary.
https://archive.org/details/computerchronicles
Why not start with the "Gary Kildall Special":
https://archive.org/details/GaryKild
I think that, by now, I have watched every episode. He was the Bill Gates we needed.
He was nothing like BG. Gary was an inventor, educator and most of all a visionary. He hated running a business, even though he started DRI after failing to convince Intel to buy CP/M.
Yes, there are quite a few videos on YouTube about him, named “The man who should have been Bill Gates” but that’s just click baiting. Watch the special episode of “The Computer Chronicles” about Gary Kildall and see what his friends and business associates say about him.
S12E45, Gary Kildall special: https://m.youtube.com/watch?v=doOQnc0A3Ek&list=PLmM8tWTshxQB...
While we are here, another important article by Kildall has been made available online, "Global Expression Optimization During Compilation"-1972 [1] - while the field has obviously moved on, this is still interesting and relevant IMO, if anything it shows what a talented technical writer he was.
[1]: https://www.proquest.com/docview/302615627/?fromunauthdoc=tr...
Kinda saddens me that society usually aligns with marketing and business mindset (impressing, selling, profiting) instead of people like Kildall. There are many passionated, driven, creative, prolific people with intrisic motivations that are wasted due to commercial forces.
I remember the early IBM PC days. PC-DOS was $40. CPM/86 was $240. Both were available, people simply picked the cheaper one. I used both, and there was nothing better about CPM/86.
Due to inflation, this is like $113 vs $679 today. It was a no-brainer to buy MS-DOS instead. Kildall clearly was a businessman wanting to make money off of it.
It was IBM who set the price. According to Kildall’s right-hand Tom Rolander, they were shocked when they saw the price difference.
> It was IBM who set the price
Not what I heard at the time - IBM accommodated what Kildall wanted. Kildall could have sold it separately at a competitive price.
https://www.computerhistory.org/collections/catalog/10271725...
The date on it is 2016. 33 years later. I don't find that particularly convincing.
BTW, I've read a lot of computer histories, and I often find errors in them. This is why professional historians try to use contemporary sources as much as possible.
We ended up with the one this society, which usually aligns with business and marketing mindsets, deserves.
In time, we might remake society in a kinder, wiser version of itself. At that time, we might even deserve more Kildalls.
This paints Bill Gates as not a tech person and a business first person, which is not true. He got a BASIC compiler on the altair which MITS thought couldn't be done. He helped Wozniak implement a version of BASIC supporting floating point numbers. Gates didn't even want to take Microsoft public. They had to convince him. Ballmer was the biggest businessman in the bunch. Hell, he was the one that suggested kidall since Microsoft wasn't in the OS business.
This is mostly true. Gates was a tech wizard - a great programmer before there were even books about programming. But to make it sound like Gates wasn't a business-first guy is wrong - he wanted to sell software from day 1. Read any early bio about him and his speech about selling software to the homebrew club (https://en.wikipedia.org/wiki/An_Open_Letter_to_Hobbyists).
> BASIC compiler
Interpreter - an entirely different kind of animal. Microsoft didn't get a BASIC compiler until much later.
> He helped Wozniak implement a version of BASIC supporting floating point numbers.
No. He sold Apple a BASIC, then used it as leverage to prevent Apple from making a BASIC for the Macintosh.
> Ballmer was the biggest businessman in the bunch.
He suggested cutting Paul Allen's family off when Allen was battling cancer.
Um, it is necessary to compile a program before being able to interpret it. I don't know how early BASICs were implemented, but the usual method is to compile it to some sort of intermediate representation, and then interpret that representation.
D's compile time function execution engine works that way. So does the Javascript compiler/interpreter engine I wrote years ago, and the Java compiler I wrote eons ago.
The purpose to going all the way to generating machine code is the result often runs 10x faster.
Early BASICs didn't compile a program before interpreting it. The interpreter read the code as written and executed it step-by-step. There was some tokenization; keywords were turned into single or double bytes and that was literally done when you pressed enter on the keyboard. Your source code was these actual tokenized bytes. On the Commodore 64, you could type the tokenized versions of keywords instead of the full keyword as a shortcut. Even numbers were not transformed into bytes ahead of time.
This was used to save memory -- there wasn't much room to hold both the source code and an intermediate form. But also it wasn't that necessary, with the keywords tokenized and the syntax so simple that there wouldn't have been much savings in space or performance.
You have an idiosyncratic definition of "compiler" then. Many BASICs, including the MS family of BASICs, did tokenize keywords to save on memory storage.
But 99.9% of people take "compiler" to mean translating source code to either a native CPU instruction set or a VM instruction set. In any tutorial on compilers, tokenization is only one aspect of compilation, as you know very well. And unlike some of the tricky tokenization aspects that crop up in languages like C++, BASIC interpreters simply had a table of keywords with the MSB set to indicate boundaries between keywords. The tokenizer simply did greedy "first token which matches the next few characters" is the winner, and encoded the Nth entry from that table as token (0x80 + N).
When LIST'ing a program, the same table was used: if the byte was >= 0x80, then the first N-1 keywords in the table were skipped over and the next one was printed out.
There were also BASIC implementations that did not tokenize anything; every byte was simply interpreted on every execution of the line. There were tiny BASICs where instead of using the full keyword "PR" meant "PRINT", and "GO" meant "GOTO" etc.
It is not necessary to compile a program, in the general case, before executing it.
Many programming languages parse their program to an AST then walk that AST interpretting as they go. But for BASIC you can parse/execute statement by statement - no need to parse the whole program ahead of time, and certainly zero need to compile to either machine code or any internal representation.
Remember at the time we're talking about 64k was a lot of RAM. Some machines had less.
The parsing, even if line by line as necessary, is still compiling.
In 45 years of writing software, I've never before seen anyone call tokenizing a BASIC program compilation. It's decidedly not common usage.
I've been writing compilers for 45 years now. Tokenizing is a big part of every textbook on compilers. To resolve expressions (which are recursive in nature) it would have had to do more than just tokenizing. While this isn't hard at all, it's "parsing" which is also qualifying it as a compiler.
I.e. the basic program was lexing and parsing. It's a compiler. A very simple one, sure, but a compiler.
Yes, but tokenization on its own is not compilation any more than whiskers are a cat just because a cat has them.
"Nobody" uses it that way, and language is defined by use.
Compilers generate code in another, usually lower level language that is executed by reading all of the code that could be executed first. Interpreters (such as the BASIC interpreter we are discussing here) read only that part of the code that gets executed and typically call functions rather than that they generate code (never mind JIT). Tokenization prior to interpretation is technically an optional step (it's just an efficiency boost) and is not normally confused with compilation even if there are some superficial similarities.
You of all people should know this, come on.
> necessary to compile
Um, no? your experience is probably at least two decades after the time period in question.. The more advanced versions of, for example, the TRS-80 BASIC (part of this "microcomputer BASICs that all share a common set of bugs") did no more than tokenize - so, `10 PRINT "Hello"` would have a binary representation for the line number, a single byte token for PRINT, then " H E L L O " and an end-of-line marker. Actually interpreting the code involved just reading it linearly; GOTO linenumber involved scanning the entire code in memory for that line number (and yes, people really did optimize things by putting GOTO and GOSUB targets earlier in the program so the interpreter would find them faster :-)
I was going to post this, but you beat me to it.
It's a VM of a sort, and the p-code the VM executes is tokenized input.
Tokenizing it and interpreting the token stream is still a compilation process. Even if it re-tokenized it each time it executed a line.
Tokenizing is a necessary but not a sufficient task for compilation. I could tokenize this comment to efficiently store it in a database but that would have nothing to do with compilation.
MITS was correct. TinyBASIC is a very different animal from the language for time-sharing minicomputers that was what people actually meant by "BASIC" at the time. For one thing, TinyBASIC was a language interpreter and not a compiler.
And had no timesharing features at all.
TS was fairly scarce in those times - let alone on PCs. I wonder when the first general-purpose time-share system was available ... outside of mainframes? I know UofM's MECC had MECC Timesharing System (MTS) up on a Cyber73 in 1977 ; before that, their SUMITS had to make do with batch-processing on a FunnyVac.
Just like Jobs. He was the marketing and sales guy. Woz, et al. were the visionaries and engineers cranking out the product.
Jobs had a key difference from Gates - he had taste. He insisted on the injection molded case for the Apple II instead of sheet metal because he wanted it to look like a finished product. He insisted on not having lines dividing the color bands in their logo, which made it more expensive to print (but much nicer to look at).
Jobs would never let something like Windows 1 escape the lab.
Jobs had control of the hardware and the software.
Gates (well, the MS programmers) had to make the software work on the PC hardware of the time (CGA/EGA video cards including non-square pixels and terrible colour palette, see https://devblogs.microsoft.com/oldnewthing/20100625-00/?p=13...)
He also refused to have fans in the first several models causing a high failure rate...
Form follows function. Just ask Ive.
Good thing Microsoft fixed it with 2.0!?
They arguably fixed it at 3.0, the first truly popular version of windows.
3.11 was the first really decent one.
3.1 was a massive upgrade over 3.0 - it introduced TrueType. 3.11 had peer to peer networking and, at least in Brazil, doomed Netware in the small business segment.
I recommend reading "Idea Man" [1] by Paul Allen, Microsoft's cofounder, to understand the deep and early involvement he and Bill Gates had with computers.
I also recommend Hard Drive (1992) [2] for a deeper look into the business side of Bill Gates.
Regardless of any negative opinions about him, I believe Bill Gates was/is in a league of his own.
[1] https://en.wikipedia.org/wiki/Idea_Man
[2] https://www.amazon.com/Hard-Drive-Making-Microsoft-Empire/dp...
> He was nothing like BG.
This is exactly my point.
> He hated running a business, even though he started DRI after failing to convince Intel to buy CP/M
This is what uniquely qualified him to bring about a nicer timeline.
Sadly, we got the second rate one...
truth. Too bad we got the other one!!!
The kids should not be removing some of their Dad's work. His struggles with alcoholism are well defined in the public and him describing his struggles could help another facing similar problems.
ABSOLUTELY AGREED.
In fact I think all now-dead authors should have their work as-is protected to a fair degree.
Dollars to donuts that the anecdotes revealed something either embarrassing or personally connected to the family members, it's just easier to posthumously blame the drinker.
I absolutely agree that shining light onto the subject of alcoholism is nothing but good for those seeking to avoid the horrible problem.
I wouldn’t say “should not”. That’s a complex issue and I wouldn’t say anyone is obligated to put painful moments of their personal lives on public display. Any family suffering from alcoholism has other examples to learn from, and they aren’t under any obligation to contribute another one if they’re uncomfortable doing so.
It's their call to make. They feel the chapters didn't represent their father and, as a draft, I would expect the later parts to have been less revised and to be in a rougher shape.
>It's their call to make.
Why? Because of possession? That's a crummy reason.
Art is supposed to be upheld as on par with 'divine creation' by those that respect it. Literature, being art, isn't different.
in other words, we knew the Ecce Homo restoration was botched because we were able to compare it to the original piece.. sadly we won't ever have the luxury of knowing what kind of hatchet was taken to the memoir after the author's death.
> Why? Because of possession? That's a crummy reason.
Because it their parent.
Obviously this is awesome, however a bit tough to read as the quality/resolution of the text is pretty low. Wonder if someone could clean it up and provide the new file to the hoster? Anyway, will try to clean it up for myself/local copy...
EDIT, nevermind someone already did it. The epub looks great: https://news.ycombinator.com/item?id=44603066#44605221
"Glenn came to my tool shed computer room in 1975, so we could "adapt" CP/M to the IMSAI hardware. What this means is that I would rewrite the parts of CP/M that manage things like diskette controllers and CRTs.
Well. come on, I'd already done this so many times that the tips of my fingers were wearing thin, so I designed a general interface, which I called the BIOS (BASIC I/O System) that a good programmer could change on the spot for their hardware. This little BIOS arrangement was the secret to the success of CP/M.
With the BIOS in place, a programmer could make CP/M work with their specialized hardware. With all those hobbyists out there, believe me, there was no shortage of specialized hardware. Glenn and I built a BIOS that afternoon and stuck CP/M on an IMSAI. He demo'd it to Ed Faber and the IMSAI engineers, and they loved it."
Writing a BIOS for a new machine in a single afternoon. Those were the days...
In retrospect, MS-DOS was a rather trivial program. Sometimes I wonder why I and/or many others did not write an equivalent, even just for fun.
There wasn't much of a point in writing a replacement when MS-DOS was bundled with your computer. The FreeDOS project only got started when Microsoft first announced that the then-new Windows 95 would start to move away from MS-DOS and people saw the writing on the wall.
TurboDOS was a contemporary one - had multiprocessing (as in, you could have multiple Z80 CPU boards in a single card cage that passed messages over a bus) and was delivered as linkable objects, so you could customize the OS for your hardware (in the multi-Z80 setup, you didn't need any I/O that wasn't in the daughterboards, so in this case the tiny version of TurboDOS on the daughter boards did the message passing thing and talked to the physical serial ports, but didn't need a disk driver since the only disk was hooked to the single master board. Great (long-lost) stuff - we were building an early dialup info-service so each daughter board had multiple modems...
> Sometimes I wonder why I and/or many others did not write an equivalent, even just for fun
In a sense, every game developer back then wrote a very small real-time operating system that dealt with user input, state management, screen updates, and audio. I wrote a window server (a window-stacker would be more accurate) for the Apple II.
FreeDOS is one such program. It comes in quite handy at times.
True, but it wasn't usable until 2006, about 20 years too late.
Its only a decade and change, not too bad
Many things worked way before that.
They did. The GNU project started in 1983.
Let me give the now defunct Internet History Podcast a shout out. Episode 100 - The Man Who Could Have Been Bill Gates? The Gary Kildall Story
A story with intrigue that chronicles the why and how Microsoft ended up extracting the most value from the PC revolution instead of the hardware makers and of course, why that was DOS instead of CP/M.
I liked the oral history nature of this podcast, walking me through things that preceded me in technology, and then things that I lived through like the 90's internet.
https://www.internethistorypodcast.com/2016/03/the-man-who-c...
Kildall may have also invented ghosting.
I remember watching a documentary. IBM officials showed up at Kildall's house twice to convince him to sell/license CP/M to them. Pre-planned meetings. He ghosted them both times. One of those times they waited hours for him.
There's a lot of mythology around Kildall and IBM. I'm sure some it it even aligns with the facts but I don't put that much stock in many of the stories and theories.
We'll never know the truth.
Past some point, even people with some first-hand knowledge may not know the whole truth, filter things through their own biases, may just misremember, etc.
My dad kept a diary during his combat tour in WW2. Decades later, he read it and was shocked to discover that it did not quite line up with his memories.
When I prepared a "history of D" for a paper a while back, I went looking through all my documents and emails and the D forum history looking to pin things down. I, too, discovered that my memories didn't match the facts as well as I wished it did.
Memory is a funny thing.
One should always be skeptical of accounts written long after the fact. I sometimes wonder how much of our written history is false. I support statutes of limitations because of this.
Lol. I'm sure you're kidding, but let's be clear: he didn't invent ghosting. He invented a lot of really cool stuff.
Part 1 was already online since forever. Part 2 however, never seen the light. I wonder if it was just undone or because of some content in there....
(2016) I found that I had already downloaded it a year ago but never read it.
I read the first part back in 2016 when it was released (spoiler: it was worth it). Still waiting for the rest to come, but it seems that the Gary's Kildall memoirs project is not being pursued.
Apparently, Gary’s children agreed for the entire book to be released in 50 years from the partial release. So, only 41 years now…
> You can download it here. https://www.computerhistory.org/_static/atchm/in-his-own-wor...
..which leads to a page, with this link at the bottom.
> Download the Kildall Manuscript [2.31MB] https://computerhistory.org/blog/computer-history-museum-lic...
I'm curious about the part they omitted. I wonder why? But of course, it's their business and I'm happy they shared this.
I am speculating it may be covering aspects of his personal life, e.g. describing family conflicts from his perspective-and I can understand why his family might not want to air that “dirty laundry” in public. Decades from now, many of the people who might be hurt or embarrassed by it will be dead, so releasing it then wouldn’t cause the harm that releasing it now would cause
This is awesome.
(2016)
Akasdas1234