Nagu paneks funktsioon ilmus esimest Macintoshi
Makradar Tehnikaülikool / / December 19, 2019
Iga tänapäeva inimene naudib multitegumtöö funktsioone oma seadmetes. See ei ole oluline, mis see on: nutitelefoni, tahvelarvuti või koduarvuti. Enamik inimesi isegi ei mõtle palju selle kohta, kuidas ehitada süsteemi toimimise mitme protsesse samal ajal: me lihtsalt Me suhtleme võrgus, töö erinevate dokumentide, kuulata muusikat ja vaadata telesaateid, osavalt liigub vahel mitu töötab programmid. See lugu, mille autor on Andy Gertsfeld ei sisalda selgitus keeruline jaotus mälu ja teiste igav tehnilised juhendid, kuid räägib, kuidas multitegumtöö ja seega ilmus ettevõtte arvutid Apple.
Esimene kaubanduslik toode, olen töötanud pärast lahkumist Apple 1984. aasta märtsis oli Thunderscan - üsna odav skanner Macintosh. Selle loomine toimus koostöös väike firma Thunderware. Töö algas 1984. aasta juunis, ning oktoobri alguses, projekti oli peaaegu lõppenud.
Tom Petri, üks kahest juhid Thunderware (teine oli Victor Bull, kellega olen töötanud termoprinter Silentype, kes sai esimese projekti, Olen loonud Apple), andsin mitu esitlusi erinevatel arvuti ajakirju saada positiivset tagasisidet vajalikud edendamine toode. 11. oktoober 1984 Läksin koos Tim kontorisse Hillsboro näidata Thunderscan jaoks Byte ajakiri.
Bait ülevaataja oli John Markof. Ta oli autor veerus tehnoloogiat San Francisco Chronicle. John peeti üks parimaid kajastavatele ajakirjanikele personaalarvuti tööstus. Tom rääkis Thunderscan ja hiljem hakkas demo lugema. John küsis mõned küsimused, mis on kirjutatud teksti toimetaja oma IBM PC. Ajal minu kõrval vastust oma helises telefon.
Vabandamine, John vajutas klahve klaviatuuril ja seejärel arvutiekraanil tekstiredaktor kiiresti muutunud teise rakendusse. Ta oli telefoni minut või kaks, ja siis lõpetada vestlus, tagasi nimekiri küsimusi Thunderscan kasutades kõiki samu klahvikombinatsiooni.
"Mis sa just teha? - Ma olin huvitatud oma tarkvara - võid minna teise programmi nii kiiresti? "
"Oh, ma kasutan Memory Shift. Kas te ei ole kogenud seda? - John ütleb - on DOS utiliit, mis võimaldab teil meeles pidada mitu rakendusi ja vahetada neid kiiresti. Olen tihti kasutada seda viimastel aastatel. " Ta näitas kuidas vahetada paar korda, et näidata mulle kiirust see utiliit.
"Tead, ma arvan, et ma saan teha midagi sarnast Macintosh», - I pahvatas enne teadlikult asju läbi mõelda.
Macintosh 512K tarned hakkasid paar nädalat tagasi. Üritasin joosta mitmeid rakendusi üheaegselt ning 512K, kuid oli nurka mälu konfliktid ja muud võimalikud tagasilöögid. Aga nüüd, pärast näeme ümberjaotamiseks meetmeid, mul oli idee, mis tundus, mitte liiga raske rakendada.
"Jah, see oleks tore" - John kokku. Jätkasin Thunderscan demonstratsioon, kuid ei suutnud keskenduda täielikult, mõelda vaheldumisi rakendusi. Mulle tundus, et luua sellise kasuliku - üsna teostatav ülesanne, mille tulemusena on väga kasulik.
Tom Petri märganud minu põnevust, sest uusi ideid. Pärast esitlust ta võttis mind koju ja meenutada minu kohustused, võttes mind luban, et lõpetada alfa vabanemist Thunderscan võimalikult kiiresti, enne midagi uut. Leppisime nimekirja ülesandeid, mis ma pidin täitma kaks lähinädalatel. Kui alfa versioon oli valmis, oli mul võimalus võtta pausi töö lüliti taotluse hiljem uuesti kogeda töö Thundescan, valmistades versioon 1.0 poolt novembri lõpus.
Poleerimine Thunderscan, olen kaalunud nüansse programmeerimine lüliti. Parim vahel rakenduse allalaadimine ühte ala, mis on optimaalne kasutada mälu ja kasutamise individuaalsete tsoonide parema isolatsiooni iga programmi I arveldatakse teisel versioon, kuigi ta ei olnud kindel õigsuse käesoleva valik.
Meil oli lahendada palju väikseid probleeme. Kõige olulisem oli see, et rakendus on salvestatud mälu on globaalsed muutujad, mis peaks jooksul välja vahetada lüliti, sest iga programm on oma rida muutujad. Mitte kõik punktid olid mulle selge. Ma teadsin, et minu esimene kogemus ei ole ideaalne, kuid ma olen kindel, hakkama silumine kõigi vältimatu probleeme.
Paar päeva pärast algust lõppjärgus töö Thunderscan sain väga huvitav telefonikõne kaugusel Jeff Harbers kes juhtis meeskonna Macintosh rakendused Microsoft. On teatatud, et Microsoft on välja töötanud väga oluline strateegiline projekt, ja nad arvavad, et ma oleks ideaalne kandidaat selle rakendamiseks. Jeff ei avalda muud üksikasjad telefoni, kuid ta pakkus lennata Seattle arutada kõike isiklikult. Ma olin intrigeeritud piisavalt stop tööd Thunderscan ja istuda lennukis.
Jeff mind peale lennujaama ja suundusime peahoone firma Microsoft, kus me liideti Neil Conze - andekas 23-aastane programmeerija Macintosh. Ma teadsin teda aeg meie ühine töö lisades funktsioone assembly. Ta oli sel ajal vaid 16 aastat vana.
Jeff küsis minult, mida ma praegu tööd. Ma rääkisin talle Thunderscan, aga kui nimetatud katseid kasuliku rakenduse lülitades oma lõualuu langenud. Jeff ei suutnud uskuda, et ma tegelikult ütles ta.
"See on täpselt see, mida tahtsime rääkida! On tore, et te juba selle kallal! "- Jeff hüüatas.
Ta selgitas, et see on vajalik kõvasti tööd, et teha seda tööd pidevalt rakendused väikestes piirkondades Macintosh 128K RAM. Lisaks Lotus teatas hiljuti uue tarkvarapaketi Jazz Macintosh 512K, mis võimaldab teil kiiresti ja hõlpsasti vahetada oma tegevusalad. Eesmärk oli tutvuda veenda mind kirjutama samasuguse taotluse, lülitada lepingu Microsoft.
Neil Conze esitatud võimalike projekti arenenud tööriistad laual. Ta tegi ettepaneku kasutada sama mälu ala, mille ma kohe keeldus, räägib alternatiivset lähenemist, eraldi alad, andes suurima töökindluse.
Minu päev Microsoft lõpule eraviisiline kohtumine Bill Gates. Jeff võttis mind oma kabinetti ja vabandas ja lahkus meid rahule.
Pärast saatja vahetamist viisakust, Bill vaatas üles ja palus mulle silma: "Sa tõesti on hea programmeerija, kas pole? Ma arvan, et sa tõesti olema hea programmeerija. "
"Ma arvan, et" - Ma vastasin, ei tea, miks ta meelitab mind.
"Ma arvan ka nii. Kuidas te arvate, kui palju aega kulub, et rakendada seda projekti? Kuu või kaks? Mulle tundub, hea programmeerija peaks hakkama seda paar kuud. "
"Ma ei tea - ma ütlesin - ei tea isegi, kas on võimalik rakendada."
"Vaatame - ütles ta natuke üleolevalt toon - see ei tohiks kuluda rohkem kui kümme tuhandeid ridu koodi ja tõesti hea programmeerija suudab kirjutada vähemalt tuhat rida nädalas. Ma arvan, et see viib teid mitte rohkem kui kümme nädalat. "
Ma ei tea, mida vastata, nii et ma lihtsalt vaikis ja kuulas.
"Mis sa arvad, kui palju raha saab teenida head programmeerija? Maksame meie parimaid töötajaid umbes kaks tuhat dollarit nädalas. Kas sa ei arva, et sa pead rohkem maksma? "
"Ma ei tea" - vastasin ma. Selgus, et Bill üritas muuta mind väga kiire viis kirjutada see utiliit.
"Kui sa saad umbes neli tuhat dollarit nädalas, - jätkas ta - et lõpuks kümme nädalat saad nelikümmend tuhat."
Ma ütlesin talle, et ma teen kõik, mis võimalik, et tagada, et see tööriist toimib hästi rakenduste Microsoft. Tahtsin seda teha igal juhul ja ilma selle ettepaneku, sest Microsoft on olnud väga populaarne kasutajate hulgas. Me raputas käed ja ma jätsin kontoris positiivse noodiga.
Tagasi koju Palo Alto, tahtsin töötada kontseptsioon kasuliku lüliti programmid, vaatamata lõppkuupäev Thunderscan ettevalmistamisel.
Lõpuks oli mul luua kasutajaliidese selle kasulikkust. Olen töötanud non-stop 20 tundi, arendades põhilisi programmis. Uskumatult see oli tore vaadata järk-järgult parandab stabiilsust kasulikkust, lahendades regulaarselt probleeme mäluga.
Töötades oma projekti, märkasin Bud TribbleD, kes naasis Apple 1984. aasta juulis ametikohale Tarkvara Manager pärast meditsiinilise praktika Ülikooli Washington ja elas lähedal mind.
Küsisin Bud ise, et näidata kiire vahetamine MacPaint, MacWrite ja MacDraw. Ta avaldas muljet, kuid minu üllatuseks, on kurtnud, et üleminek toimub liiga kiiresti.
"Ja kui keegi teeb seda lülitit kogemata? See võib põhjustada segadust, - ütles ta mulle - see võib olla võimalik kasutada animatsiooni luua sujuv üleminek? ".
See idee tundus tõesti hea. Me otsustasime, et muuta programm tuleb kerida horisontaalselt ja kõik töötavad rakendused saab selgelt näha väike ala ekraanil. Ma kirjutas kiiresti vajalikud koodi ja oli üllatunud, kui suur programmi pinnatud üle ekraani.
Ma ei olnud sellise kontseptsiooni oma sõpradega Apple ja mõned lihtsad kasutajad. Kõik positiivselt omaks oma projekti. Kahjuks mul ei ole aega, et Thunderscan läbivaatamist, kuid ma ikka täitnud lubadust, ja ta oli valmis lõpus novembris.
Pärast lühikest pausi oli aeg minna tagasi arengu kommunaalteenuste lüliti rakendusi, hakkasin helistada Switcher. Detsembri alguses olin saavutanud enamiku, sealhulgas kasutajaliidese.
Jaanuari alguses 1985 Sain telefonikõne kaugusel Guy Kawasaki, kes ütles mulle, et Apple on huvitatud ostmisest Switcher. Esimene samm oli läbi tooteesitluse Steve Jobs.
Lähen oma kabinetti, olin natuke mures, hinnates projekti veerand miljonit dollarit, kuid ta oli kindel, et Steve ei maksa kunagi mulle nii palju. Ma olin uhke oma lapse, ja ma huvitatud reaktsiooni Jobs teda. Running MacWrite, MacPaint, MacDraw ja Finder, ma sihilikult demonstreeris Switcher animatsiooniga, hiljem teha tähelepanuväärne mulje. Ma kiiresti vahetada rakendusi mõlemas suunas.
"Noh, ma nägin piisavalt - Steve katkestas mind, - see on suurepärane. Soovime, et integreerida see projekt Mac ».
Hetkeks ta seisis ja vaatas mind pinevalt, justkui ta tahtis mind hirmutada.
"Ma ei taha, et sa kasutada Apple».
"Mida sa mõtled?" - hämmingus tema sõnad, ma küsisin küsimuse.
"Sa ei saa lõpetada programmi ilma teabe, et saad siit. Selle tulemusena, siis on kaotanud soov lõpetada projekti. "
"Programm on valmis täpselt pool. Ma kahtlen, et kui ma maksan aus, ma ei kavatse motiveerida lõpetada töö "- hakkasin vihaseks.
Pärast näeme me isegi tõsisem pilk, Steve teatas ühe numbri, ilma ühegi selgituseta.
"Sada tuhat dollarit."
"Ma ei tea - ma ütlesin talle - ma arvan, et vahetaja on palju kallim."
"Ära vaidle minuga, - pareeritud Jobs - õiglane hind, ja sa tead seda."
Tundus, et ma ei ole mingit alternatiivi, ja ma pidin loovutama Steve hinnakujundust. Temaga oli tõepoolest väga raske väita. In the end, allkirjastamise juures lõpliku kokkuleppe Guy Kawasaki suutsin boonuse, mis tulevikus tõi mulle teise viiskümmend tuhat.
Nagu oodatud, kõige raskem osa töö Switcher oli saada teda tööle pidevalt Microsoft rakendusi. Arendajad on lubanud end erinevate vabaduste süsteemiga, on neist eemale tõmbunud tavalisest juhiseid, mis põhjustas mulle raskusi.
Mul oli tõlkida pseudo kood bytecode. Tõlge kuus võistkonda järgnevaks silumine oli üsna valus Switcher.
Üks hiljutisi probleeme, ma silmitsi kuni esimese versiooni vahetusnuppu märtsil 1985 See oli rakendamise võimalust "tapmine" Hung taotluse ilma sulgeda kõik kohe. Olen lisanud seda funktsiooni koos võime jälgida staatuse töötavad programmid.
Mul oli valida piisavalt haruldane kombinatsioon võtmed alustada seda funktsiooni. Valisin neli nuppu, mis, nagu tundus, et see oli väga raske kohanud juhuslikult, kuid siiski oli üllatunud, kui sain telefonikõne kaugusel Jeff Harbers Microsoft.
"Mulle meeldib see variant sunnitud lõpetamist programmi, kuid sa pead muuta kiirklahvi, sest me kasutame seda, kui töötavad Microsoft Word». Jeff selgitas mulle, et Word on väga keeruline toimetaja ja on suur hulk kiirklahve.
Jeff ei paku midagi konkreetset, kuid helistas mulle järgmisel päeval, pakkudes erinevaid kombinatsioon.
"Muudame Sõna järgmises numbris. Probleem on selles, et me ei ole tulnud leida ohutu võtmejärjestus. Me lihtsalt kasutada neid kõiki, "- naeris mind, Jeff.
Vabastamist lõpliku versiooni Switcher ametlikult toimus 1985.aasta aprillis. Toetasin mitu versiooni pärast käivitamist, kuid lõpuks andis selle Phil Goldman, andekas programmeerija Princetoni, kes on saanud tööd Apple. Ta hakkas arenema MultiFinder, kes sai vastuvõtja Switcher 1987.
kaudu Folklore.org