We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Beginning of the End or End of the Beginning?

00:00

Formale Metadaten

Titel
Beginning of the End or End of the Beginning?
Serientitel
Teil
52
Anzahl der Teile
79
Autor
Lizenz
CC-Namensnennung 3.0 Unported:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen.
Identifikatoren
Herausgeber
Erscheinungsjahr
Sprache

Inhaltliche Metadaten

Fachgebiet
Genre
Abstract
On August 7th maddog turned 65 years old. He started programming in 1969 after almost being electrocuted by 13,600 volts and 800 Amps (he figured software was safer). In celebration of 46 years in the computer in the computer field and five more years before he can afford to retire, come hear maddog explain the computer field in ways few people have thought of it. maddog
1
Vorschaubild
09:05
11
23
Vorschaubild
1:03:26
26
Vorschaubild
1:01:01
30
Vorschaubild
58:05
31
Vorschaubild
53:11
43
60
Vorschaubild
42:31
62
77
Vorschaubild
10:59
Offene MengeFreewareNewton, IsaacRechenschieberElektronischer ProgrammführerKonstanteInhalt <Mathematik>Prozess <Informatik>RechenschieberFormale SpracheSymboltabelleMultiplikationsoperatorObjekt <Kategorie>QuadratzahlZahlenbereichXMLUMLVorlesung/KonferenzBesprechung/InterviewComputeranimation
ComputerspielSystemprogrammierungProgrammiergerätSystemverwaltungSoftwareDatenverarbeitungssystemProdukt <Mathematik>GroßrechnerPascal-ZahlendreieckProgrammSymboltabelleDifferenteLeistung <Physik>Prozess <Informatik>SoftwareMinimalgradComputerPlastikkarteVarietät <Mathematik>Physikalisches SystemQuaderRechenbuchFormation <Mathematik>InformatikPascal, BlaiseVirtuelle MaschineMusterspracheMultiplikationsoperatorBitRuhmasseSystemverwaltungZeitreihenanalyseMetropolitan area networkProgrammVorlesung/KonferenzBesprechung/Interview
WasserdampftafelLeistung <Physik>Gesetz <Physik>ClientMusterspracheTypentheorieGleitendes MittelEinsLeistung <Physik>Ordnung <Mathematik>Faktor <Algebra>WasserdampftafelComputeranimation
WasserdampftafelLeistung <Physik>Gesetz <Physik>Leistung <Physik>Service providerWasserdampftafelKategorie <Mathematik>Gesetz <Physik>MultiplikationsoperatorVirtuelle MaschineSpider <Programm>Vorlesung/KonferenzComputeranimationBesprechung/Interview
Analytische MengeOrdnung <Mathematik>Babbage, CharlesDatenverarbeitungssystemGebäude <Mathematik>RechenbuchMultiplikationsoperatorBabbage, CharlesOffice-PaketSchnittmengeRechenschieberTabelleBaumechanikMathematikerMereologieGrundsätze ordnungsmäßiger DatenverarbeitungFehlermeldungHochdruckTangente <Mathematik>DifferenteVirtuelle MaschineCASE <Informatik>Selbst organisierendes SystemWeb-SeiteBridge <Kommunikationstechnik>MinimalgradDialektKomplex <Algebra>MathematikWort <Informatik>ProgrammLeistung <Physik>Rechter WinkelZahlenbereichComputeranimationVorlesung/KonferenzBesprechung/Interview
Analytische MengeOrdnung <Mathematik>Babbage, CharlesDatenverarbeitungssystemTabellePlastikkarteMaschinencodeWhiteboardVirtuelle MaschineZahlenbereichDivergente ReihePlastikkarteMAPElement <Gruppentheorie>MultiplikationsoperatorFigurierte ZahlProgrammRechenbuchAggregatzustandFrequenzBabbage, CharlesMehrrechnersystemDifferenteComputeranimation
PlastikkarteMaschinencodeWhiteboardTuring-TestAggregatzustandEin-AusgabeVirtuelle MaschineZahlenbereichWhiteboardWort <Informatik>Divergente ReiheMetropolitan area networkAuflösbare GruppeDifferenteZahlenbereichAuflösungsvermögenMultiplikationsoperatorComputerZeitreihenanalyseProgrammVirtuelle MaschineMaschinencodeTouchscreenTypentheorieSoundverarbeitungHalbleiterspeicherVorlesung/KonferenzBesprechung/InterviewComputeranimation
MagnetbandlaufwerkZellularer AutomatLineare AbbildungOperations ResearchSymboltabelleQuadratzahlKonfigurationsraumVirtuelle MaschineStatistische HypotheseDatenverarbeitungssystemZuse, KonradAnalysisGenetischer AlgorithmusMultifunktionBoolesche AlgebraMathematische LogikAlgebraisches ModellDigitaltechnikTypentheorieDatenmodellAggregatzustandTransportproblemVirtuelle MaschineTuring-MaschineMultiplikationsoperatorHalbleiterspeicherTypentheorieComputerArray <Informatik>SymboltabelleEndliche ModelltheorieBell and HowellBoolesche AlgebraDigitaltechnikVerknüpfungsgliedTuring-TestZuse, KonradBasis <Mathematik>MathematikerParallelrechnerRechenbuchMechanismus-Design-TheorieMathematische LogikMaschinencodeVorlesung/KonferenzBesprechung/InterviewComputeranimation
MaschinencodeMathematikCodierungstheorieBinärdatenPunktZuse, KonradDatenverarbeitungssystemProgrammClifford-AlgebraABC <Computer>Lorenz-KurveCodierung <Programmierung>Virtuelle MaschinePatch <Software>RöhrenflächeVakuumSystemprogrammierungFigurierte ZahlParallelrechnerProzess <Informatik>MultiplikationsoperatorVirtuelle MaschineMaschinencodeMathematikComputerGanze ZahlPunktCoprozessorTuring-MaschineMessage-PassingGebäude <Mathematik>SchnelltasteResultanteTuring-TestProgrammHalbleiterspeicherRechenwerkCAMOrdnung <Mathematik>VollständigkeitLeistung <Physik>Komponente <Software>Kartesische KoordinatenRelationentheorieWort <Informatik>Shape <Informatik>WellenpaketWinkelBitrateArithmetisches MittelVorlesung/KonferenzComputeranimation
InformationsspeicherungDreiecksfreier GraphFlächeninhaltVirtuelle MaschineGeradeProgrammLochstreifenHalbleiterspeicherRöhrenflächeAbstandEvoluteVorlesung/KonferenzBesprechung/InterviewComputeranimation
DruckverlaufDatenfeldRechter WinkelRechenbuchMathematikerInformationNabel <Mathematik>Virtuelle MaschineParallelrechnerGravitationDigitaltechnikKeller <Informatik>SchießverfahrenRichtungWinkelDichte <Physik>FehlermeldungMailing-ListeGrundsätze ordnungsmäßiger DatenverarbeitungMultiplikationsoperatorEinflussgrößeAutorisierungHilfesystemWasserdampftafelWhiteboardMereologieOpen SourcePerspektiveWeb logZählenAuswahlaxiomVorlesung/Konferenz
MathematikTabelleDatenverarbeitungssystemSystemzusammenbruchHopper, Grace MurraySoftwareProgrammMailing-ListeMomentenproblemOntologie <Wissensverarbeitung>Virtuelle MaschineArithmetische FolgeMathematikComputerHopper, Grace MurrayShape <Informatik>ComputeranimationVorlesung/Konferenz
MathematikTabelleDatenverarbeitungssystemSystemzusammenbruchHopper, Grace MurraySoftwareMetropolitan area networkShape <Informatik>ProgrammHopper, Grace MurrayPunktGruppenoperationTermKalkülRechenbuchGefangenendilemmaComputerVorlesung/KonferenzBesprechung/InterviewComputeranimation
BildschirmfensterSystemzusammenbruchProgrammfehlerMultiplikationsoperatorVirtuelle MaschineComputerHopper, Grace MurrayDreiecksfreier GraphZweiWort <Informatik>Gebäude <Mathematik>ZeitreihenanalyseMultigraphVorlesung/Konferenz
BinärdatenPunktZuse, KonradGruppenoperationZahlenbereichDezimalzahlDatenverarbeitungssystemProgrammDigitalsignalGruppenoperationVirtuelle MaschineGrundsätze ordnungsmäßiger DatenverarbeitungMereologieComputerGleitkommarechnungMaschinencodeComputeranimationVorlesung/KonferenzBesprechung/Interview
BinärdatenDatenverarbeitungssystemInformationsspeicherungProgrammMaßstabROM <Informatik>National Physical LaboratoryDatenmodellCodierungstheorieProgrammKategorie <Mathematik>QuellcodeBitrateLernprogrammTuring-TestMultiplikationsoperatorGanze FunktionEndliche ModelltheorieComputerMaschinencodeSchreib-Lese-KopfHalbleiterspeicherRöhrenflächeComputeranimationVorlesung/KonferenzBesprechung/Interview
MultiplikationsoperatorBitMinimumParametersystemRöhrenflächeSchreib-Lese-KopfHalbleiterspeicherErschütterungProjektive EbeneLesen <Datenverarbeitung>PunktVorlesung/KonferenzBesprechung/Interview
BinärdatenDatenverarbeitungssystemROM <Informatik>Turing-TestSoftwaretestVirtuelle MaschineHopper, Grace MurrayEin-AusgabeFormale SpracheFunktion <Mathematik>DigitalisierungComputerWort <Informatik>Virtuelle MaschineAssemblerBinärcodeHopper, Grace MurrayUnrundheitMultiplikationsoperatorDatenflussFormale SpracheSoftwaretestGeradeProgrammEinsÄhnlichkeitsgeometrieART-NetzTelekommunikationNeuronales NetzExistenzsatzVarietät <Mathematik>ZeitreiseTuring-TestMAPComputeranimationVorlesung/Konferenz
SymboltabelleSystemprogrammierungHalbleiterspeicherInformationsspeicherungBefehlsprozessorLastKonnektionismusOperations ResearchAdressraumMinkowski-MetrikMini-DiscStapeldateiMultiplikationsoperatorBestimmtheitsmaßTouchscreenSymboltabelleMittelwertDifferenzenrechnungComputerarchitekturVirtuelle MaschinePhysikalisches SystemVersionsverwaltungComputeranimation
Physikalisches SystemProzess <Informatik>ComputerQuick-SortDifferenteBetriebssystemDifferenzenrechnungMereologieHalbleiterspeicherMultiplikationsoperatorEinfügungsdämpfungEchtzeitsystemGemeinsamer SpeicherMetropolitan area networkVorlesung/KonferenzBesprechung/Interview
MinimalgradSoftwareOffene MengePhysikerProgrammSchreiben <Datenverarbeitung>SoftwareOpen SourceTypentheorieGeradeInformatikGrundraumComputerMechanismus-Design-TheorieVirtuelle MaschineMinimalgradMaschinencodet-TestPhysikalisches SystemComputerspielComputerarchitekturAutomatische IndexierungMultiplikationsoperatorDatenstrukturPhysikalismusComputeranimationVorlesung/KonferenzBesprechung/Interview
t-TestSoftwareGruppenoperationDatenverarbeitungssystemMailboxWhiteboardDezimalzahlInformationsspeicherungt-TestComputerKontextbezogenes SystemSoftwareGrundraumDreiphasensystemStellenringLeistung <Physik>PhasenumwandlungSampler <Musikinstrument>ProgrammOnline-KatalogSelbst organisierendes SystemRechter WinkelComputeranimationVorlesung/Konferenz
t-TestSoftwareGruppenoperationDatenverarbeitungssystemWhiteboardMailboxDezimalzahlBitWort <Informatik>HalbleiterspeicherDatenstrukturDreiecksfreier GraphLochstreifenZweiSchreiben <Datenverarbeitung>SoftwareProgrammComputerMailing-ListeMultiplikationsoperatorE-MailArithmetische FolgeRechter WinkelParametersystemQuick-SortMaschinencodeCompilerLesen <Datenverarbeitung>MereologieAssemblerTexteditorRichtungComputeranimationVorlesung/KonferenzBesprechung/Interview
Formale SpracheMinkowski-MetrikDezimalzahlKonnektionismusProjektive EbeneHyperbelverfahrent-TestComputerRechter WinkelGruppenoperationAuswahlverfahrenMomentenproblemAssemblerFormale SprachePhysikalisches SystemBinärcodeMinkowski-MetrikMultiplikationsoperatorComputeranimationVorlesung/KonferenzBesprechung/Interview
Formale SpracheMinkowski-MetrikDezimalzahlKonnektionismusBell and HowellHochdruckResultanteKernel <Informatik>SpeicherverwaltungMaschinencodeBetriebssystemNichtlinearer OperatorDateiformatGrundsätze ordnungsmäßiger DatenverarbeitungTypentheorieMereologieMobiles EndgerätPunktFormale SprachePhysikalisches SystemDatenstrukturGanze FunktionComputeranimationVorlesung/KonferenzBesprechung/Interview
InterpretiererNabel <Mathematik>TexteditorQuick-SortKonnektionismusMakrobefehlLesen <Datenverarbeitung>SystemaufrufFilter <Stochastik>Nabel <Mathematik>Faktor <Algebra>PunktDatenverwaltungTypentheorieKonstruktor <Informatik>MultiplikationsoperatorSchreib-Lese-KopfInformatikDichte <Physik>t-TestComputerComputeranimationVorlesung/Konferenz
ARPANetTorvalds, LinusDezimalzahlHardwareMultiplikationProzess <Informatik>Mobiles EndgerätComputersicherheitStabilitätstheorie <Logik>VIC 20SystemprogrammierungDatenverarbeitungssystemSchnelltasteAnalogieschlussMagnetbandlaufwerkTouchscreenInformationsspeicherungURLStandardabweichungPhysikalisches SystemMultiplikationsoperatorRechenwerkSoftwareComputerspielBitMereologieGrundraumMobiles EndgerätHardwareEndliche ModelltheorieAnalogieschlussFehlermeldungURLComputersicherheitWhiteboardDifferenteARPANetSoftwareschwachstelleBestimmtheitsmaßComputeranimation
DatenverarbeitungssystemROM <Informatik>TaskASCIIMini-DiscKlon <Mathematik>MultiplikationsoperatorDiskettenlaufwerkComputerStellenringPhysikalisches SystemVirtuelle MaschineBetriebssystemComputeranimation
DatenverarbeitungssystemDesign by ContractSoftwareProdukt <Mathematik>HardwareSchreiben <Datenverarbeitung>MittelwertHochdruckEinsMultiplikationsoperatorAusnahmebehandlungSoftwareHardwareDesign by ContractWeb SiteCompilerProgrammQuick-SortVorlesung/KonferenzBesprechung/InterviewComputeranimation
SoftwareDesign by ContractModemComputerQuaderProdukt <Mathematik>PunktMailboxTypentheorieNichtlinearer OperatorData MiningMinkowski-MetrikProgrammBildgebendes VerfahrenHeegaard-ZerlegungCookie <Internet>HochdruckVorlesung/Konferenz
Funktion <Mathematik>SoftwareOpen SourceBinärdatenVirtuelle MaschineFreewareComputerFunktionalProdukt <Mathematik>SoftwareRechter WinkelPhysikalisches SystemMaschinencodeVarietät <Mathematik>Schreib-Lese-KopfBefehlsprozessorMultiplikationsoperatorZellularer AutomatZahlenbereichNotebook-ComputerSerielle SchnittstelleComputeranimationVorlesung/Konferenz
DezimalzahlDatenverarbeitungssystemBinärdatenVersionsverwaltungDialektPascal-ZahlendreieckBinärcodeTypentheorieRechnernetzPhysikalisches SystemEindeutigkeitVirtuelle AdresseBSD UNIXt-TestSampler <Musikinstrument>Formale SpracheInformationsspeicherungVirtualisierungWeb-SeiteVorlesung/KonferenzComputeranimation
MaschinencodeDezimalzahlProgrammSoftwareBinärdatenWort <Informatik>CoprozessorTabellenkalkulationModemDatenverarbeitungssystemCASE <Informatik>Physikalisches SystemMultiplikationsoperatorMusterspracheFrequenzProjektive EbeneSoftwareBetriebssystemQuellcodeVollständigkeitDiskettenlaufwerkOpen SourceVorlesung/KonferenzComputeranimation
SchlüsselverwaltungOrdnung <Mathematik>Virtuelle MaschineBildgebendes VerfahrenSoftwareentwicklerMultiplikationsoperatorMaschinencodeGesetz <Physik>CASE <Informatik>Vorlesung/Konferenz
BefehlsprozessorRechnernetzSummengleichungROM <Informatik>BetafunktionSummengleichungBefehlsprozessorHalbleiterspeicherLokales MinimumAggregatzustandMomentenproblemBus <Informatik>ComputeranimationVorlesung/KonferenzBesprechung/Interview
Klon <Mathematik>Arithmetisches MittelInformationsmanagementDezimalzahlServerSystemprogrammierungBSD UNIXAggregatzustandDatenverarbeitungssystemCompilerSuite <Programmpaket>Torvalds, LinusKernel <Informatik>t-TestDistributionenraumMultiplikationsoperatorTabelleMagnetbandlaufwerkFormation <Mathematik>DifferenteProdukt <Mathematik>Arithmetisches MittelEinsVarietät <Mathematik>Kernel <Informatik>VersionsverwaltungPhysikalisches SystemServerComputerDatensatzt-TestProjektive EbeneEinfügungsdämpfungComputeranimationVorlesung/Konferenz
Jensen-MaßKernel <Informatik>RISCPhysikalisches SystemMultiplikationsoperatorDistributionenraumBitMaschinencodeComputerAdressraumRISCInformatikVorlesung/KonferenzComputeranimation
Physikalisches SystemSupercomputerOpen SourceOperations ResearchMereologieMixed RealityDatenverarbeitungssystemQuellcodeAuswahlaxiomServerSystemprogrammierungPhysikalisches SystemComputerMultiplikationsoperatorBenutzerbeteiligungPhysikalischer EffektKeller <Informatik>RechnernetzCASE <Informatik>Computeranimation
FreewareBefehlsprozessorTropfenROM <Informatik>Mobiles EndgerätSystemprogrammierungiPhoneNotebook-ComputerTablet PCVolumenTrägheitsmomentDienst <Informatik>BetriebssystemRechnernetzRechter WinkelPhysikalisches SystemProzess <Informatik>BitTypentheorieWort <Informatik>MultiplikationsoperatorZellularer AutomatWhiteboardVorlesung/KonferenzBesprechung/InterviewComputeranimation
BetafunktionHumanoider RoboterInternetworkingROM <Informatik>Künstliche IntelligenzQuantencomputerSoftwareStandardabweichungOffene MengeInformationsspeicherungAnalogieschlussDatenverarbeitungssystemHochleistungsrechnenPunktwolkeDrahtloses lokales NetzSichtenkonzeptGamecontrollerProgrammierumgebungHardwareNotebook-ComputerSpieltheorieCachingSoundverarbeitungEinfache GenauigkeitSpeicherabzugARM <Computerarchitektur>GraphikprozessorVideokonferenzBefehlsprozessorProgrammGradientDatensichtgerätMini-DiscWhiteboardSupercomputerSystemprogrammierungPrototypingDatenmodellSoftwareGamecontrollerMetropolitan area networkRechenbuchMultiplikationsoperatorDifferenteInternetworkingBitProjektive EbeneNeuronales NetzHalbleiterspeichert-TestDigitalisierungComputerSichtenkonzeptPhysikalisches SystemTypentheorieBildschirmfensterQuantencomputerSupercomputerVerfügbarkeitOrdnungsreduktionAnalogrechnerMereologieEnergiedichteFrequenzInternet der DingeVirtuelle MaschineProgrammSystemverwaltungVorlesung/KonferenzBesprechung/InterviewComputeranimation
Humanoider RoboterClientLateinisches QuadratVererbungshierarchieDatenverarbeitungssystemBefehlsprozessorAnalysisPhysikalisches SystemSoftwareFreewareSupercomputerBildschirmfensterProzess <Informatik>Projektive EbeneSoftwareSystemverwaltungKernel <Informatik>Wort <Informatik>BitVorlesung/KonferenzComputeranimation
SoftwareTorvalds, LinusFreewareMathematikFreewareOrtsoperatorProjektive EbeneTorvalds, LinusEreignishorizontMathematikFormation <Mathematik>MikrocomputerBestimmtheitsmaßVorlesung/KonferenzBesprechung/InterviewComputeranimation
MathematikFreewareLesen <Datenverarbeitung>InformatikFormation <Mathematik>Einfache GenauigkeitFreewareComputerspielRichtungComputeranimationVorlesung/Konferenz
ComputeranimationVorlesung/Konferenz
Transkript: Englisch(automatisch erzeugt)
Thank you very much for inviting me here. I was invited because I was told I gave a talk at the first Frascon ten years ago. And then some people have mentioned I've been to Frascon since,
but I don't really remember because I go to a lot of conferences and when you get to be 65 you tend to forget some things. However, with this talk I try and remember everything, but sometimes I don't remember everything, so some people may object to some of the things I say.
But I try to be objective about things, so if you see something and you disagree with me you can talk afterwards, but I'm not going to talk because I have a lot of slides to go over. And that's the second warning. This is a very long slide set, it's about 105 slides, and I'm going to be talking very fast,
but they're going to be recording the whole thing, so you can go back and look at it later. I often also do not talk about the things which are on the slides at all, and so that carries the problem. You have to read the slides and listen to me at the same time, and often it's not your native language. There's little symbols throughout this, little square symbols, and this particular one is a square beer mug, which has beer mug number zero on it,
and that means that there's more to the story. So if you catch me afterwards with a beer or something like that, I'll go into whatever you're interested in, and the more mugs of beer are there the longer the story, and the more interesting, and there aren't any more symbols in this particular talk. For those of you who don't know me, I've been in the industry since 1969,
I started programming back then. My undergraduate degree was half electrical engineering and half business, with a minor in these computer things, and I'll go into more about that later on. Then I got my MS in computer science in 1977 from Rensselaer Polytechnic Institute.
I've been a wide variety of different jobs, I've been a programmer, an educator, a systems administrator, but one of the things I like to think about and I'm proudest about is the fact that I'm pragmatic about things. I try and get the job done, and I think that's what free software is all about. So we're going to go way back in time,
the year is 1642, Blaise Pascal was a young man, his father is an accountant, he's trying to help him do calculations to be more accurately faster and things like that, so he invents an automated adding machine. Now programmable machines didn't happen until a little bit later, and most people think of music boxes and clocks as programmable,
they were, but typically only like one to two to three songs, but then in 1801 they came along a loom, a jacquard loom, which could weave the pattern into the cloth. Now up until this time they did have power looms, but the looms all wove the cloth the same,
and you printed the pattern on them, but the jacquard loom had holes in cards that went across the top of it like that, and so the warp threads could go up and down, and you could actually program into it the pattern, and Napoleon was so fascinated by this,
he called it the marvel of the day. Now about 1860 to 1929, player pianos, Nickelodeon things came into being. I actually collect player pianos and Nickelodeon, so ones that just like this work off of paper rolls. It's a very, very fascinating type of thing,
but it is a programmable instrument. Now about the 1860s, or before the 1860s, water wheels and textile mills and things were there, but they were water powered, and you had to have your mills very close to your river in order to have the power come in.
There was no electricity to drive them, and then James Watt came along and invented something called the steam engine, and this allowed you to build your factories any place you wanted to, because the steam engine would provide the power that water had provided before. Now there's a little bullet there that says that the water wheels and textile industries
led to intellectual property laws. Well actually intellectual property laws were around a long time before that. The written patent came about in Florence, Italy in the year 1300, we know that for sure, but the British took this to its extreme, and if you were caught with a pencil and paper,
if you were an American caught with a pencil and paper inside of a British textile mill, you could be executed because they thought you were trying to steal their intellectual property and take it back to the colonies. The colonies at that time were the people who grew the flax, grew the wool, grew all that stuff, and then Great Britain would bring it over to Great Britain
and make it into cloth and then sell that back to the colonies. So if the colonies could do this, Great Britain would lose a lot of money. And because of all of this, in Great Britain there was this feeling that machines were gonna solve the problems of the world. And this led a person by the name of Charles Babbage,
who was a, I believe he was a civil engineer or mechanical engineer at the time, but he was sitting there in his engineering office working with a set of tables and books and a slide rule to do calculations on building something. And at that time what you typically did
was you had another engineer sitting side of you doing the same calculations just to make sure you came up with the same answers because you were likely to make a mistake. And they were going through and doing their calculations. They came to one part and they just could not agree. They went over it and over it and over it and they couldn't agree.
Finally they realized that the two different books they were using with the tables of signs, cosines, tangents and everything had a different number in them. Somebody had made a mistake. Making the book. And it was either the person who did the calculation had made the mistake or the printer had made the mistake.
But in either case this horrified Charles Babbage because this meant buildings could crash, bridges could be destroyed, this is a terrible thing. So he decided he was going to create a machine that could do these calculations and print the book at the same time
or print the printing page that you could then use at the printer. So there would be no issue of transcription errors. And he started building what he called an analytical engine which was very extremely complex. It really strained the capabilities of the time
of creating gears and things like that. He got about one third of the way through that. All of a sudden had a brainstorm says oh no I don't have to create something that complex. I can create something called a difference engine and that will do it. So he started all over again. Of course he had to throw away everything he'd done with the analytical engine which pissed off his investors.
But in the meantime he ran into this very nice young lady who was the daughter of Lord Byron and she was a mathematician. And that was very strange back in those days because if you were a lady you didn't do anything with math, oh my God. All you'd learn was to play the piano or the organ in the parlor or something.
But she was a mathematician and she was fascinated by this machine and she said I'm gonna write some programs for it. I'm gonna set up, how do you set up the gears and everything to do these different things. And she did. And so this is one of the reasons why we think that Candace Lovelace, Ada Lovelace, was actually the first programmer.
Now out of this, Charles Babbage never finished either his analytical engine or his differential engine. And he actually died in poverty. But there were two other people who looked at what he had done and actually built a couple of the difference engines.
There were two machines produced. They actually did create some books but they were not financially successful so that kind of like died away. Now in 1884 there was a problem in the United States. Every 10 years the United States takes a census and they count up the people in the United States
and they try and ask questions about them to figure out where we should be putting our money and investing stuff. And the problem was that every time we took the census it took longer and longer to do all the calculations and stuff so we'd be doing the census in 1990 while we were still working on the numbers
from obviously 1890 while we're still working on the numbers from like 1870 and this was going to be a problem. So the government went to this person named Hollerith and said can you make a way of doing this faster? And he said sure, I think we create these tabulating machines so we can get the answers
and punch them onto these cards, put them through the tabulating machines and come up with the answers in a much shorter period of time. Out of that came a whole series of tabulating machines and some of them were programmed by plug boards like the plug board you see up there and I've actually programmed one of these things.
That plug board in effect represents a program and as you move the wires around you move them according to the time sequence that the machine is supposed to be working and what the machine is supposed to be doing across. And if you leave out a step you have to move all your wires down which is a pain and stick in the step as you're going along
and after a while this created what we call the original spaghetti code. Now in 1935 there was a young man in Cambridge, England named Owen Turing, you're probably all familiar with him by now and he was actually interested in trying to create a machine which could duplicate the human mind.
He knew that the mind was made up of some relatively simple thing, neurons, the synapses but a lot of them and he said, gee, maybe I could duplicate this and so he started to think of a series of different ways of doing that and of course there's two types of problems in the world,
there's solvable problems and unsolvable problems and the unsolvable problems are things like what's the last number of pi, what's the last number of e, all that type of stuff, there is no answer to that but the solvable problems should be able to be solved by a digital computer if you give it enough time and memory
and that's basically where he thought and he came up with this machine concept which is called the Turing machine. Now the Turing machine was hypothetical but people started looking at this and say, yeah, this is kind of an interesting concept and we think that we could do every mathematical calculation
that can be solved using one of these machines. Now there's a person in Germany by the name of Konrad Zuse who was watching all this type of stuff and he decided that he was going to build a programmable computer, now back in those days this was built mechanically or maybe with relays or stuff like that, they had that and he built the first
freely programmable computer but it was a little bit unreliable because of the mechanics made. In 1937 there's a guy named Claude Shannon who wrote a paper about symbolic arrays of using relays and switching circuits to do this and basically invented the concept of using logic gates
with Boolean logic and electronic relays to build these types of computers and then after that George Stibitz at Bell Labs really built one using this relay-based computer called the Model K. Now during the war, as again you're probably aware of
due to some movies and stuff that have come out, there's a place very close to London called Bletchley Park and they were trying to break the German enigma code which everybody considered to be pretty much unbreakable. Alan Turing was brought in to work on this, he's built his bomba on the basis of some work
done by some Polish mathematicians who managed to escape from Poland with an enigma machine and with the work they had done and bring it to England for them to go. Now where Turing really did the improvement on this was that he made his machine parallel
so he could do things in parallel and the second thing was he made his machine figure out when it was going down a wrong path and stop so it would never go down a path any further than it would, it didn't go all the way down every time, it would stop but it recognized
it was going down the wrong path and this sped up the whole process of solving the code and he used math to create these shortcuts and it was so successful after a while that Britain had to fake some of the results because they were reading all of the German enigma messages
from the War Department and they could have intercepted everything but they said no, no, we can't let the Germans know that we've done this so they kept faking messages. In the meantime Conrad Zuse is continuing away on building computers and he actually built one
that could do floating point arithmetic. Now some of you may remember the 386 computer system when it first came out it didn't have floating point, you had to buy a separate little processor to fit in there to give you floating point because most of the stuff, most of the work being done back in that day was digital work
but it was integer style of work and very, very little floating point. Well Conrad Zuse actually built a floating point unit but it was electromechanical relays with cams and things like that. It was the first Turing complete machine, the one that could do everything
that Alan Turing said you could do in a Turing machine. However, that of course was in Germany kind of behind the wall and in the meantime over in England they were still working with non-Turing complete machines trying to build one that could actually hold its own program and its own memory. Back at Bletchley Park where it was still
very, very top secret, the Bomba was falling behind because the Germans war machine had come out with a better Enigma machine called the Lorenz. It went from three rotors to it to five and that made it much more difficult to solve it so they needed something that would be
thousands of times faster than the Bomba in order to be able to solve these messages. And so they were looking around, they needed some components that would not attract the attention of the axis powers that they were doing something. And so they used components that were used in telephony,
relays, tubes, and things like that. And they were in an area that was very strong with telephony, there was a lot of telephone lines coming in so it didn't raise anybody's attention that they were ordering all these tubes and relays and things to build this first machine called the Colossus.
But it was still not a machine that was Turing complete. It couldn't hold its own program and its own memory, it had to be programmed on a paper tape. In the meanwhile, back in the United States at Cambridge at MIT, there was a person by the name of Howard Aiken
who was a commander in the US Navy and he was going to build a machine that could do ballistics. Now ballistics, for those of you who are not familiar with it, is the thing of being able to shoot a gun, have a bullet go a long distance and actually hit the target. So if you've ever watched movies of World War II
and especially people in the front, you see these very big guns and then there's two people right next to them, a person with binoculars and a person with this thing that looks like a telephone. Well, it is a telephone, it's a field telephone. And actually, that circuit goes all the way back to a place called Princeton, New Jersey. Because before you fire that gun,
you have to say, I'm going to fire this shell maybe two miles, the shell weighs 65 pounds. I have stacks of gunpowder of various measured out quantities, I'm going to shove that into the back of the gun. Now, I have a choice, I can fire my gun parallel to the ground.
Well, that doesn't work very well. Gravity says that the bullet is going to fall at 32 feet per second, no matter how fast you're shooting in that direction. Okay, 32 feet a second, boom, it's going to blow up right there, you guys are wiped out. Or I can shoot it straight up. Yeah.
Or I can shoot it at an angle. But what angle? I don't know, that's ballistics. Now, I'm shooting it, it's going through the air, the wind is blowing. Well, it's going to be in the air a long time, it's a big shell, the wind is going to blow it off target. So I have to account for wind edge,
I have to shoot it back in the opposite direction, so the wind blows it across. Maybe it's raining, maybe the air has a certain density, all these things go into, of course, it's where you are, where the enemy is, all these things go into ballistics. Now, the people firing the guns don't know how to do this.
They are typically 17-year-old males who were lucky to have gotten through high school. And so they're going back to Princeton, New Jersey, where there's a whole bunch of women sitting in a room, or mathematicians sitting in a room, and they've got books of ballistics,
and they have hand-calculating machines, and they are calculating away with all these ballistics, and they call back with all this information for the gun. Now, you're there, you do all this stuff, elevation, all this stuff, you fire the gun, you sit there watching with the binoculars to see where the bullet hits, and if it hits the target, hey, we're done, it's great, it's fantastic,
if it misses the target, then you have trouble. Because the enemy also has a gun, they also have binoculars, they also have a field telephone, and now they know where you are, and they are motivated to fire their gun and take you out. So if you're smart, you start to move your gun, okay?
And they're moving their gun, and the wind is changing, and birds are flying overhead, and crapping on the bullet, and stuff like this, and in the meantime, you're calling back all this information, and this woman back in Princeton, she's really under pressure to come up with that next thing, because now you've told her how far she was,
off she was, she's going to make the corrections, so you can hit that gun. Fast. So this is the thing that inspired Mr. Aiken to make a machine that would do this calculation extremely fast and extremely accurately,
to replace this woman in prison, not replace him, how can you replace a woman? But the problem was, he made the machine, they made the machine, but then the Navy says, okay, program her for ballistics, and I can't, I'm an electrical engineer, I don't know anything about ballistics,
nothing, nada. Oh, well we'll bring this woman up from Princeton, New Jersey, she's a Navy wave, I'm not going to have a woman on my team, I'm in the Navy, we don't have women on our teams. No, I don't want her. Well, unfortunately for Howard, he got pulled away to Washington, D.C. for a couple weeks, and up came this woman
from Princeton, New Jersey, a lieutenant in a Navy wave, by the name of Grace Murray Hopper, and she taught herself how that computer worked, and she taught herself how to program it, and in two weeks that Howard Aiken was gone, she programmed that thing, and not only that, but she whipped his crew into shape. So when Howard Aiken came back, he finally had to admit that Grace Murray Hopper
was more of a man than he was. And they actually got together, they formed a very good team, she actually wrote one of the first programming manuals ever, and they went on to do the Mark II, and then she went on to do the ENIAC afterwards, and out of this came some pretty interesting terms.
First of all, that group, up until this point you may have noticed, all these names of these things were electromechanical, calculating device, you know, really long names? Well they needed a shorter name, and so it just so happened that the Navy term for these women in Princeton, New Jersey, were doing the calculations of ballistics,
their official term was computer, and so they became computers. The second thing was, when these machines were going, these machines had a drive shaft that went up through the center, the drive shaft turned three times every second, so the cycle time was 333 milliseconds,
and the drive shaft kept everything coordinated, you had relays, you had cams, this whole thing sounded like a cable car, going along, but then when it made a mistake, the whole thing came to a halt, and it sounded like the cable car, it crashed, crashed,
computer crashed. Today when computers crash, you don't hear anything like that, do you? They're quiet, they don't do anything, crash, okay. Finally, on the Mark 2, it was late night in August, very hot, no air conditioning in the buildings, this is before air conditioning, the windows are all up, Mark 2 was having some problems,
Grace Murray Hopper came along, she was looking inside the computer, oh by the way, I should tell you, this computer is about 70 feet long, and about eight foot tall, and about four foot deep, so she's looking inside the computer, and she sees a moth stuck in the relays, and she takes a pair of tweezers, and she pulls the moth out,
and she goes over to the log book, and she says, I found the problem with the Mark 2, there was a bug in it, and although the word bug, had been applied to other things in the future, this is the first recorded time the bug was applied to a computer. Meanwhile, back in Germany, Conrad is working on the next group of machines,
that was binary and floating point, but unfortunately, after the war, he didn't get the credit, he should have gotten for that. Now, when I was going to school in 1969, I was taught that the ENIAC, done at the University of Pennsylvania, was the first electronic digital computer,
and it was done in 1946, but the reason I was told that, was because Buckley Park, Buckley Park was still under classification, it was still classified, nobody knew about the work that those people had done, and after the war,
all of it was completely destroyed, because Churchill was afraid, that the war might start back up again, and they didn't want the German military to know, that they had broken the Enigma code, so all the work that those people had done, was not really disclosed until 1970,
and so if you're looking at textbooks about computers, written before 1970, you'll see the ENIAC prominent, as the first electronic digital computer, after that he gives credit to the Colossus. Back in Cambridge in 1948, they have a small little computer, called the baby computer,
and they stored the program in a cathode ray tube, where you could draw the values, on the actual cathode ray tube, but when you wanted to erase it, you had to erase the entire cathode ray tube at one time, so it was kind of inconvenient to use it.
In 1948 Turing wrote a book called Intelligent Machinery, this is again waiting him to go on, still thinking about modeling the human mind, with these computers, and he wanted to be able to program a computer, just by rewarding it, and punishing it, when it got this bad code,
so he was kind of way ahead of time. The EDSAC in 1949, was the really the first practical stored program computer, where it could store its programming memory, it was actually using tubes filled with mercury,
to store the memory, so there would be a transducer at the bottom, that would create a vibration in the mercury, if it was a one, or lack of a vibration if it was a zero, that vibration would move up through the memory, at the speed of sound through mercury, and then when you get to the top, there was another transducer to test, where there was a zero or one at that point,
if it was a destructive read, it wouldn't bother to reproduce that at the bottom, if it was a non-destructive read it would, and so eight tubes of mercury is a byte going across, by the way back in those days, they didn't have a concept for a byte, there was an argument for a long time, was whether a byte was six bits,
or byte was eight bits or whatever, half a byte was a nibble, we won't go into that, but Maurice Wilkes was the head of the EDZAC project, you notice this a little beer mug next to him, I got to meet him many years later, when he was the person leading me through the museum of computers, at Digital Equipment Corporation,
and you know all I can say is, thank you Dr. Wilkes. Meanwhile 1950 Turing comes back, with his paper about artificial intelligence, where he describes how can you test if a machine is artificially intelligent or not, and I think most of you are familiar with that test.
After this, companies started to get up and say, hey maybe we can start to build these computer things, and a variety of these companies are still in existence, and some of them are gone. All this time machines are being programmed in ones and zeros, or binary code, or maybe assembly language,
and Grace Mary Hopper said, you know I think that we can actually program these machines, in a higher level language, something much closer to English or a native language, and people laughed at her, so she created a couple of simpler languages like Flomatic, and she did a couple rounds of that, but then in 1959 she created,
she headed up a team to create the language COBOL, and about the same time, there's John Backus at IBM, who created a language called Fortran, and that was, those are the languages that first started getting people along the line, and you don't have to program the machines in ones and zeros all the time.
Now I lied, there is another symbol, and I'm going to introduce this as I go along, this is called the urban legend, and I'm going to debunk some urban legends for you, so when you hear them the next time you say, that's not the way it happened, because Mad Dog told me it wasn't, and yes that is me in my monks robes
in front of the blue screen of death. So the first thing I want to debunk is this concept of lock-in for vendors, I mean I mentioned all the vendors there, people say all these vendors were trying to lock in their customers with all of these different operating systems
and architectures and stuff like that, they were just trying to get their customers that they couldn't go to some other company. I was there, we never talked about that. I've just demonstrated to you a whole bunch of machines who had extremely small memories, if they had memories at all,
they ran at extremely slow speeds, we were just trying to help people use those incredibly expensive computers, and to think about trying to put a multi-purpose operating system into that, that could do all sorts of different job loads,
was pretty hard if not impossible. Now Digital Equipment Corporation, about you know in the period of about 1960 to 1970, had a little computer called the PDP-11, we had 11 different operating systems for that, if we were trying to lock in customers,
we only would have needed one, but we had an operating system for real-time work, an operating system for batch, an operating system for time sharing, an operating system for educational use, an operating system for health use, you know all these different operating systems to try and make this thing, this computer easier for our customers to use.
Another little myth I like to get over with, and you can use this a lot I hope, is a free and open source software is some type of new thing, some type of hippie new age thing that came about in the 1990s or even the 1980s.
Back in those days, there were few professional programmers, programmers were people who had problems, and they were writing programs to help them solve those problems, they were electrical engineers, mechanical engineers, civics business people,
educators stuff like that, that's why they were programming, and then when they got finished with their program and solved their problem, they said what am I going to do with this, now I've also showed you one other thing, all these computers were different, there was no common architecture, no common instruction set or anything like that,
in fact even from the same company, oftentimes the next computer was completely different than the line before, well the operating system, if it had one, was completely different than the one before, and so a lot of these people were writing their problem, their code for a very specific computer, for solving a very specific problem,
and there really wasn't a market for them to try and promote this program to a whole bunch of users, because not only that, there were very few users, these machines were incredibly expensive, very few people could afford them, so they said now I finish this program,
what am I going to do with it, and this is why there were virtually no computer science degrees back at that time, because you would be in the curriculum of the university, you would be studying physics, you'd be studying electrical engineering, you'd be studying this,
and you'd be doing this computer thing, now I was a university student in 1969, and the cost of software, if you could buy it, and it wasn't shrink wrapped at your local computer store, that's because there were no computer stores,
if there was a computer store, you would have needed a 20 wheel tractor trailer truck to haul your computer home, you'd need three phase power to plug it in, you'd need a 20 ton air conditioner to cool it, no computer stores, but there was software you could buy, and the software was pretty freaking expensive,
a hundred thousand dollars for a compiler, and I was a university student, I didn't have a hundred thousand dollars in my pocket, but I did belong to this organization called DECUS, the Digital Equipment Corporation User Society, and they had a whole bunch of users, who also were programmers,
who wrote programs to solve their own problem, and would contribute it to the library, and then I as a student could take $15 out of my pocket, send it to DECUS, they give me a paper catalog of these programs, which I would look through and go, oh man, a text editor, an assembler,
and this is gonna go on this little computer right there, that's a PDPA computer, it had 4K, 12 bit words of memory, and it ran maybe 50,000 instructions a second,
and it cost only $80,000. And we had two of them in our lab, and next to it is the ASR-33 Teletype, which could read or write paper tape at the blazing speed of five characters a second. Now if you think about that, your 3,000 character program
is only gonna take five minutes to read or write in, so this is why in the early days, we didn't write comments on our code, it wasn't because the comments took up, it was because it took up more paper tape, and more time reading and writing on the ASR-33 Teletype.
Now like I said, I could find these things, and I had to send away money, $5 for the text editor, $15 for the assembler. Why the difference in price? Longer paper tape for the assembler. But that was still a lot of money, because back in those days, a pitcher of beer was 50 cents,
so I had a choice, text editor or 10 pitchers of beer. I think you can see what direction I would tend to go. But then I would get the paper tape, and because this was free software,
they weren't charging me for the software itself, they were charging me for storing the software, for replicating the software, for mailing the software, this was free software, I could make copies of it, and so I went to the school store, and I bought some new paper tape, I stuck it through my ASR-33 Teletype, I duplicated it,
and I sold it to my roommates for a dollar a copy, and so by the time I made 10 copies, I not only had paid for the original program, and now I paid for all the new paper tape, but I have another 10 pitchers of beer. Now is at that time, I had a professor who is teaching me
some of the aspects of computers, who said, Mendog, you'll never be able to make a living as a professional programmer. Now what he meant was, a programmer who is writing programs for somebody else,
they're not writing the program for themselves, they're not writing the program to solve their own problem, they're writing a program for somebody else, and back in those days, that's not what you did. Yeah, there was a few people that did that, if they worked for IBM, they wrote a compiler, but they used the compiler themselves in a lot of ways, but you didn't write programs for other people, you wrote programs for yourself. Now I've been writing programs for other people
for a long time, I'm still trying to figure out if he was right, we'll see, I still have a few years left to go, we'll get more into that later. So there's another thing that happened in 1969, besides me being a student, Unix came about, 1969, two people, Ken Thompson and Dennis Ritchie,
started this thing in New Jersey called Unix, Ken Thompson had been working on a project called Multics, was taken off that project because, the telephone company is a monopoly, okay, telephone company can't have anything to do with computers, okay, this is Congress saying this by the way, but Ken Thompson comes back,
finds a pvp7 out in the hallway, kind of cast off, gives a group of people together to start working on this. Now you notice there's a beer mug right next to Douglas McElroy's name, I want you to remember that for a little bit, because we hear all the time about Ken and Dennis, and rightly so, but Douglas McElroy got I think short shifted,
I'll get into that in a moment. They wrote the first Unix system in assembly language, now that and it was a cross-assembly language, because they wrote it on one computer, they had it assembled, created the binary tape, took it over to ppp7, booted it, it went, it wouldn't work, then they would play with the switches on the front,
to look at what was happening through the registers, and stuff like that, and they would go back and change it, and continue going, and finally got it going, and why was Ken doing all this? Because he wanted to play space travel, space travel on an ASR 33 teletype, it was fun,
and after a while the ppp7 kind of ran out of steam, so they went and they got financed a deck pdp11, now this I should have had another beer mug next to that, because they couldn't get anybody to buy them the pdp11 at Bell Labs, and because this was not exactly what the telephone company was paying them for,
although it was pure research, they couldn't get anybody, they finally found one department, that had all the money in the world, and they really didn't care what result came out of it, and that was the one who financed the pdp11, it was the legal department,
and that's one of the reasons, why Unix has so much textual oriented type of stuff, because Ken and Dennis convinced the legal department, that they would be able to write their legal briefs on this, and print it off, and be a lot easier, I want you to picture in your mind,
a lawyer sitting down and using ed, not ex, not vi, not emacs, but ed to type in their briefs, and then format it with trof, but that's what they did, now in putting all this stuff back and forth with the pdp7 to the pdp11,
of course machine language and the pdp7 would not run on the pdp11, so they had to rewrite the entire kernel in pdp11 assembler, and then they got all done with that, and they said oh thank god we've got it, you know we've got it over there, but then somebody went on an interdata 832,
and Dennis said that's it, I'm going to write c, we're going to make this thing portable, so actually he wrote c for the pdp11, and they re-compiled, they rewrote the kernel again, and made it so that they had most of it written in c, but the problem was when they went to the interdata 832,
they realized there's more to portability in an operating system, than just the instructions said, you have things like buses and stuff like that, memory management systems, and so they started to break the operating system apart, into different parts that was to make it more portable over time,
and the same time they started to invent little commands to go with this, and a command interpreter, of course the command interpreter turned into shell, the commands themselves use a strange construct called pipes and filters, and this is where Douglas McElroy came in,
Douglas McElroy was the person who conceived the pipes and filters, and a lot of us when we think of UNIX, we think of pipes and filters in the shell and stuff like that, it was Doug McElroy who did that, Doug McElroy was the head of the department, he hired Ken Thompson and Dennis Ritchie in the Bell Labs, he recently retired after 50 years in computer science,
and he's now teaching at Dartmouth University in New Hampshire, and he often does not even mention to his students what he did, also in 1969 the ARPANET was started, it was the last time I ever shaved,
and little recognized except at Helsinki Finland, two people who happened to have him, lead us to our vaults to support, we'll hear a little bit more about him later, now about that time UNIX escaped, and escaped to universities and large government labs,
and some commercial companies like Jack & Sons started to give support to it, they liked the time sharing, they liked the fact that they could have security between the different people in the system, they liked the multi-processing, all the different things, and the most important part was not only was the software portable across hardware,
but the users were portable across hardware too, now about this time various different systems started to come out, for these weak miserable Intel chips, things like the Atari, Kim one, Commodore pad, they use various chips of various pieces, we had the cosmic elf that hooked up to an analog tv screen,
a lot of them did that, and recently I came across this little meme on the net, I grew up in the era where you had to go to channel 3 to play video games, and believe me so many people loved that, and I put it as mad dog what's a channel, is that like a URL, I don't know,
CPM, the MIPS Altair machine, the Osborne one, kpro, all these were computer systems that came out, a lot of them were using CPM, CPM was an operating system that was delivered in binary only form, for these different machines, but about 1976 the Apple started up in a garage,
Apple one, Apple two, Apple one sold for 666 dollars and 66 cents, evangelical Christians didn't like that, and about the same time IBM said, hey these computer things are getting really neat, the price is coming really down, it's only 20,000 US dollars for a decent sized system,
using your five and a quarter inch floppy disk, but they were mostly for professional work, because very few people could afford to bring these home, into the home, unless they were going to be using them, to extend the work hours at home,
so most of these were ending up on the desks of businesses, now about this time, was when the hardware was dropping like a rock, but the software was still really expensive, remember I said it paid a hundred thousand dollars, or I would have paid a hundred thousand dollars for compiler,
except for DICUS, because the software was being written by contract, you the programmer would come together with the customer, and you would do things the customer would say, I have this criteria for my hardware, these are things that need my software to do, this is how much, you say well this is how long it's going to take me to do it,
and this is how much I'm going to charge you for doing it, then you negotiate all this type of stuff, you come up with a contract, and then you write the software, if the software didn't work, well then you weren't paid for it, if the software was late you were paid less for it, if the software didn't have good documentation, you might not be paid for it, that was the way we did software,
but what this is being replaced by software as a product, somebody someplace said this is what I think people need, I'm going to get a whole bunch of engineers together to do it, I'll create the one image of it, and then I will start stamping that out like cookie cutters, and selling it, a friend of mine came back from Redmond Washington,
after visiting Microsoft in the early days, his face was white as a sheet, he said John they're printing money up at Microsoft, it's actually going on the black plastic disc, but they're printing money, and that's what they were doing, and this is the point where computer stores started to come in,
I still remember my first computer store, I walked in there, there was an IBM, there was an Apple II, and there were three boxes of software on the shelf, one of them was MS-DOS, one of them was a modem program, to allow me to attach my modem and dial up a bulletin board, and another one was SuperCalc, that was it,
and that's where computer stores started to come in, now the problem with production software is this, I write my piece of software, if I'm trying to meet a hundred percent of any customers needs, that's really hard, if I'm trying to reach a hundred percent of all the customers in the world, it's also very hard, so typically what I aim for is 70% of the needs of 70% of the world,
and therefore I come up with 49% of the world's needs, you see a problem, and this is why when we have 2.5 billion computers in the world, we have this really huge gap between the functionality that we really need, and the functionality that they're willing to deliver to us,
the other thing about this is there's 7 billion people in the world, and I don't know what operating system the other 4.5 billion people are going to need, now another little fable that people have is Unix was free, never was free, Ken Thompson would take around his tape and give it and show it to everybody,
even make copies of it, but back at AT&T the lawyers were dripping blood out of their mouth, and when they finally started to sell this as a commercial product, it was $160,000 per CPU for you to put that code on there, and you had to tell them what the serial number of your CPU was,
if that CPU went down, you had to tell them what the serial number of the replacement CPU was, before you could move the code, how many of you know the serial number of your laptop right off the top of your head? Does it even have one? I don't know, so a binary license came out of this, Sun Microsystems made up AT&T really bad, so a $350 license and unlimited users,
and then more and more companies started to go with this binary license only, and that's what happened in 1981, that these companies started to put out this Unix systems as binary licenses,
and there were two main flavors of that, AT&T system 5 which had a dial-up store and forward type of networking called UUCP, it was a swapping system not demand page virtual memory, it had two main compilers to it, C and Fortran 77,
versus BSD Unix written by a bunch of freaky college students, which had TCP IP, great networking, demand page virtual memory, and three main languages C, Fortran and Pascal, and of course most of the vendors went with that, Sun OS was BSD based, Altrix from digital was BSD based,
most of them IBM went with kind of with a system 5 and AIX, the only one that went really system 5 was SCO, the real SCO, the true SCO, not the SCO that caused all the problems later on, so about 1984 there was this guy named Richard Stallman,
and he liked seeing the source code for Unix systems, he didn't want to see these binary systems, he was having problems getting his printer running, and so he decided he was going to start a complete project to write the complete Unix operating system in source code, you all know about this so I can go on,
and computer stores were coming into more and more prevalence, and about this time copyright and patent were applied to software, now think about this, this is the period of time that copyright and patents were applied,
now people had applied for patents and applied for copyright, but they hadn't been granted, it was at this time, because companies were beginning to put out these floppy disks that could be copied, and people wanted to have protection against that, and at first it was just case law on this, but then it started to be built in, and people say we need to have copyright
and we need to have patent in order to stimulate research and the development and stuff like that, now I've been up here talking for 53 minutes and I've covered a whole bunch of stuff that has happened without copyright and patent,
and since this time, since 1970s and 1990s, what have we really gotten, because I was using virtual machines back in 1973, mice and things like that, all developed before copyright and patent, the only thing that really came after copyright and patent is this paper clip called Clippy,
and I think we're all glad that that went away, when we're talking about technology and balance, we have to think about the cost of the technology versus the capability of the technology, and that's all based on things of balance, like how fast is the CPU versus the ISP, versus the memory size,
versus bus speeds and things like that, there's a reason why things happen, and it has to do more actually with business and what people can afford than the actual state of the technology at the moment, so we take a look at something like Sony Betamax versus VHS,
Sony Betamax definitely the better technology, but what won? VHS, right, why? Because VHS was easily licensable out so other companies could produce it and sell it, Sony held on to Betamax so tight that nobody else could make any money off of it,
that's why they lost, Sony went in with the Sony Walkman, it was a fantastic thing, for the first time you could take your music and walk around with it, you didn't have to wait for the radio to play it, and stuff like that, you could make up your own little party tape or walk around, and it was great, and that they actually licensed out,
but then they came to the Sony Discman and they screwed it up again, so just because you're large that doesn't mean you can't fail, and all the companies on the top row are companies that at one time or another were the second largest computer companies in the face of the earth,
the other ones down below were also very large and also failed magnificently. By 1991 the desktop was owned by Microsoft, about 90 percent, Apple had seven percent of it, server systems were made up of a wide variety of different systems, the GNU products were all coming out,
BSD, Unix was still struggling with the lawsuit, and that's when Lead us to Evolve as a college student started the Linux kernel project. And he gathered a team, he started the project, by 1994 version 1.0 of the kernel was ready and people started to take the pieces of GNU
and BSD and MIT code and everything put together into some distribution, soft landing systems, Yggdrasil no longer exists, a little bit before their times, but Slackware, Red Hat, all those flourished. I met Lead us to Evolve in 1994,
I took him out on that riverboat, the Natchez, we were going up and down the river, and I said to him, hey, how would you like to take this Linux thing you're doing and put it on a RISC computer to make it portable, and 64-bit to give it a larger address size, because what I saw was something
that we could do research in very large address spaces and therefore move forward computer science. Later on I realized, gee, there's a commercial aspect to this too, that maybe we could help to revive the dying computer system industry by utilizing these things called Beowulf systems,
and then today the 500 fastest computers in the world, 485 of them run GNU Linux, 12 run Unix, one is mixed, and two run Microsoft, because Microsoft pays them too. Of course when Linux came first came out, it had this problem, it didn't have any applications for it,
but gee, there was this wonderful thing happening about the same time called the World Wide Web, Linux was perfect for that, what was being done before with Solaris and Spark could be done way cheaper with Intel and Linux, and that started to get people in the way. Embedded systems in the year 2000 were typically only proprietary systems,
but this thing came along which caused everybody to do a reset, it's called a network stack. Network stacks are very hard to get right, to keep right, there was this operating system that had a network stack, and it worked on all these different processors, and it was secure,
and it was free, and it was called Linux. So after 2000, Linux became almost overnight the most used operating system in new designs, and so today the market looks a little bit the same, except Linux is starting to creep out onto the desktop,
and it is outselling Apple on the desktop, Linux in the disguise of Android, it's starting to sell many more systems, and also on the phones. Now it takes time to change, people becoming used to different things, I remember when my father was using some systems
in the beginning, he would write down every single word he had to type in, and would come back with, and people have gotten past that now, they know what a scroll bar looks like, they know about how a lot of data works, and so they can handle different things, and so it's not the best technology that often wins,
but the technology which is marketed the best, the technology where most people can make money off of it, the technology that people have control over their software, that's why I stopped talking about free software a lot, I stopped talking about software freedom, instead I talk about software slavery,
and I also talk about to business people, I talk about control, because that's what they want, they want control. In the near future we have a whole bunch of different things that are happening, internet of things, resistive memory on a project that HP is doing with what they call the machine, photonics instead of electronics
to be able to connect things, nanotechnology where we can actually create an analog computer to do calculations hundreds of times faster than a digital step-by-step computer, quantum computing and artificial intelligence, and I'm glad I'm retiring in about five years, because the whole view of computers is changing too,
it started with high performance, it went to embedded, but then the Arduino came about, and the Raspberry Pi, because this is the way that a lot of high school students see computers today, and this is how they really work, and we really need to get the incoming freshmen
to be much more ready to go for the types of systems that we have that are coming out. If you haven't seen it, the BBC is promoting something called the micro bit, they want to give it away free to every seventh grader coming into the school system this fall,
they're actually changing some of their programs, like Doctor Who is going to be talking about things to do with the micro bit and stuff like that, and why do I show you a lot of this stuff? Because you too can build something like this, this is a supercomputer that fits in a briefcase, and not only can I demonstrate high performance computing on this, but I can also do high availability computing,
heterogeneous computing, heterogeneous systems administration, and I can take it out and put it back in in a short period of time. In a couple weeks, I'm going to redo this to do cost reduction on it, I hope to get the whole price down way below $400, I'll be publishing how to make it.
Now bear with me just for a couple more minutes, I actually did this part of the talk back in 2010, so it's been five years since I did this, I'm going to show you what I predicted then. 2015, Nokia gives up the Windows OS and uses Android,
this is when Microsoft, yeah Microsoft phone, Microsoft phone, it only costs them $10 billion. Project Cowa, a project I'm working on to produce jobs in Latin America, creates the 1 millionth systems administrator entrepreneur,
we're a little far away from that, but it's moving forward, and Ballmer admits to using GNU Linux at home. Now remember, when I wrote this, he was still the CEO of Microsoft, okay, now he's a basketball team.
2020, the newest GNU Linux supercomputer has 1 trillion processors, and Lita says, I'm glad I got rid of the big kernel lock. If we use Windows NT for this, it would have cost another $35 trillion USD for the royalties, that's almost enough to fund a small war in Iraq.
2020, Steve Jobs says OS X was not being used because they were holding their supercomputer wrong. 2030, software patents are ruled invalid worldwide, they are really stupid, the US Justice Department admits.
Microsoft, Apple wars end because both companies are out of business, free culture wins. And finally, Linus Torvalds retires, it's still fun.
but I wanted to do more scuba diving. He passes his position to his protégé who has been working with him in Brazil, but he will still act as the advisor, and Linus joins MMM as my retirement project. Mad dogs mention a marina of math, music, microcomputing, microbrewery, micro winery,
micro distillery, and big trucks. And if in the year 2031 you happen to be in Floridópolis, Brazil, please stop by and see me.
Finally, 2060, Greek culture brings world peace.
I've been a very lucky person in the 46 years that I've been in computer science. It's not been a single day I've ever been bored. That I consider to be the worst crime. And so, people come up to me and say, thank you mad dog, I heard you speak 20 years ago or 30 years ago or something like that, and what you said changed my life.
I went in a different direction. That's really great, it pleases me a lot. But I want you to remember something. If you would like to see the person who is the most supportive person in free software, and when you get up in the morning, look in the mirror, because that person is you. Thank you very much.