Tervetuloa HyperCardiin
Tervetuloa HyperCardiin

Kahdessa edellisessä Retro Apple -artikkelissa olen nostanut esiin Applen laitteistoja, jotka vaikuttivat koko teknologiateollisuuteen: Applen QuickTake 100-digitaalikamera ja Apple Newton MessagePad 2100. Tänään puhun Applen ohjelmistotuotteesta, joka muutti maailmaa ja jota ei valitettavasti enää ole olemassa:

HyperCardin juuret

HyperCard oli tehokas, mutta erittäin helppokäyttöinen työkalu, jolla voitiin luoda ”pinoja” – lähinnä litteitä tiedostoja sisältäviä tietokantoja, joissa käytettiin hyperlinkkejä ”korttipinossa” navigoimiseen. On ymmärrettävä, että kun HyperCard julkaistiin ensimmäisen kerran vuonna 1987, World Wide Webiä ei ollut vielä olemassa, joten hyperlinkkien käsite oli täysin uusi. HyperCard sai monet Mac-fanit aloittamaan ohjelmoinnin, mutta se on myös inspiroinut joitakin nykyään itsestäänselvyyksinä pitämiämme työkaluja.

HyperCardin kehitys alkoi, kun Bill Atkinson, yksi Macin graafisen käyttöliittymän keskeisistä suunnittelijoista, visioi linkitettyjen korttien järjestelmän LSD-matkan aikana. Hän viittasi ensimmäiseen versioon nimellä WildCard, mutta kun Applen työtoveri Dan Winkler alkoi työskennellä HyperTalk-skriptikielen parissa, jonka avulla käyttäjät voisivat määrittää toimintoja objekteille, nimi muutettiin HyperCardiksi.

Vaikka Applen tuotetta ei enää ole olemassa kuin MacOS:ää edeltäneissä Mac-tietokoneissa ja keräilykoneiden Apple IIGS -koneissa, sen perintö elää edelleen.

Kuvitellaan The Rocket Yardia ja MacSales.comia HyperCard-pinona...
Kuvitellaan The Rocket Yardia ja MacSales.comia HyperCard-pinona…

HyperCard oli olemassa Applen tuotteena Mac-tietokoneille ja Apple IIGS -koneille vuoteen 2004 asti. Sen saattoi ostaa 49,95 dollarilla, mutta useimmat Macin omistajat saivat sen ilmaiseksi, koska se kuului jokaisen uuden Macin mukana. Kun HyperCardista luovuttiin, World Wide Web oli suurelta osin korvannut tällaisen työkalun tarpeen. Erillisten pinojen sijaan Web yhdisti Netscapen tai kammottavan Internet Explorerin kaltaisia Internet-selaimia käyttävät ihmiset palvelimilla isännöityihin verkkosivuihin.

On kiehtovaa ajatella, että World Wide Webin luoja Tim Berners-Lee ja hypertekstinsiirtoprotokollan (Hypertext Transfer Protocol, HTTP) takana oleva Robert Cailliau saivat molemmat vaikutteita HyperCardista. JavaScriptin luoja Brendan Eich löysi HyperTalk-skriptikielen innoittajakseen. Jopa Wiki-käsitteen (eli Wikipedian) juuret juontavat juurensa Wikin keksijän Ward Cunninghamin luomaan HyperCard-pinoon. Tunnetko AppleScriptin, Macin automaation skriptikielen? Se perustuu myös HyperTalkiin. Jos haluat yksityiskohtaisen katsauksen HyperTalkin toimintaan, tässä on linkki HyperTalk 2.4 Reference -pinon PDF-tiedostoon, jonka tarjoaa hypercard.org.

Miksi HyperCard oli niin uskomaton? Se mahdollisti sen, että lähes kuka tahansa pystyi luomaan omia Mac-ohjelmia. Näitä ohjelmia rajoitti periaatteessa vain ”tekijöiden” mielikuvitus (Apple ei käyttänyt HyperCard-ohjelmoijista termiä ”kehittäjä”). Alkuperäinen HyperTalk-kieli oli tulkattu, joten monimutkaiset pinot saattoivat olla hitaita toiminnassa, mutta vuonna 1989 Apple julkaisi HyperCard 2.0:n, joka sisälsi lennossa toimivan HyperTalk-kääntäjän nopeampaa toimintaa varten sekä sisäänrakennetun debuggerin.

Apple halusi todella, että kaikki voisivat luoda omia ohjelmiaan, joten kaikki HyperCardissa oli niin ei-uhkaavaa kuin mahdollista. Ohjelmat olivat ”pinoja”, kehittäjät olivat ”kirjoittajia” ja HyperTalk oli ”skriptikieli”. HyperTalkia pidetään ”korkean tason oliosuuntautuneena käsikirjoituskielenä”. Minua hämmästyttää vielä tänäkin päivänä se, että koko tämä kehitysympäristö oli alun perin vain neljällä kaksipuolisella levykkeellä.

Minun yhä sinetöidyt HyperCard-levykkeeni ja niiden mukana tullut käsikirja
Minun yhä sinetöidyt HyperCard-levykkeeni ja niiden mukana tullut käsikirja

Johtelin Mac-pohjaista tietotekniikkaosastoa eräässä kaasuputkiyhtiössä, kun HyperCardia esiteltiin ensimmäisen kerran paikallisessa Applen konttorissa, ja välineen potentiaali kiinnosti heti. Pian esittelyn jälkeen Apple järjesti paikallisessa toimistossa yhden päivän seminaarin, jossa oli mukana kirjailija Danny Goodman. Goodman oli kirjoittanut kirjan ”The Complete HyperCard Handbook” (Täydellinen HyperCard-käsikirja), ja kaikki osallistujat pääsivät kokeilemaan HyperCardia ja saivat kirjan ilmaiseksi. Tätä kirjaa pidetään kaikkien aikojen myydyimpänä kirjana Mac-alustalle, ja sen väitetään olleen historian nopeimmin myyty tietokonekirja. Sitä myytiin yli 650 000 kappaletta, ja tiedän, että minun kappaleeni ensimmäisestä painoksesta kului nopeasti loppuun!

Goodman näytti meille, kuinka helppoa oli luoda pino ottamalla tyhjä ”kortti”, lisäämällä siihen kenttiä ja painikkeita ja kirjoittamalla sitten skriptejä, jotka reagoivat hiiren toimintoihin tai toimivat korttiin syötettyjen tietojen perusteella. Mihin voisit käyttää HyperCardia ja HyperTalkia? Kaikkeen ja mihin tahansa.

HyperMedia

Yksi yleiseksi esimerkkipinoksi muodostui osoitekirja, mutta sovellus soveltui paljon muuhunkin. Sanotaan esimerkiksi, että halusit luoda interaktiivisen oppikirjan. Voisit luoda pinon, joka alkaisi otsikkonäytöllä, sitten olisi sisällysluettelo, jota napsauttamalla pääsisit tiettyyn lukuun tai sivulle. Jokaisella sivulla voisi olla grafiikkaa tai linkkejä, jotka avaisivat ponnahdusikkunan, jossa näkyisi sanan tai termin määritelmä. Tätä ominaisuutta kutsuttiin tuolloin nimellä HyperMedia, joka kuvasi linkkien käyttöä mediaesityksessä.

Monet ohjelmoijat tarttuivat heti HyperCardiin työkaluna graafisten käyttöliittymien prototyyppien luomiseen tai kokonaisten projektien toimivien demojen luomiseen. Oli niin yksinkertaista tuoda esiin tyhjä kortti (näyttö), lisätä painikkeita ja kenttiä ja sitten lisätä toimintoja, jotka olivat joko käyttäjän käynnistämiä (klikkaamalla jotakin) tai kulissien takana suoritettavia. Yrityksille, jotka tarvitsivat itsestään toimivia tietokonekioskeja, HyperCard oli täydellinen, koska HyperCard-pino voitiin asettaa toimimaan automaattisesti, kun Mac käynnistettiin.

Ei kannata ajatella, että koska HyperCard oli helppokäyttöinen, vakavat kehittäjät eivät käyttäneet sitä. Hurjan suosittu 1990-luvun Myst-peli luotiin HyperCardilla.

Danny Goodman tajusi, että hänen ensimmäisen kirjansa ja HyperCardin valtava menestys kerjäsi jatkoa, joten hän kirjoitti HyperCard Developer’s Guide -oppaan. Amazonissa on vielä yksi kappale saatavilla, jos joku on kiinnostunut!

Danny Goodman teki luultavasti enemmän kuin kukaan muu HyperCardin popularisoimiseksi tehokkaana ohjelmointi- ja prototyyppityökaluna
Danny Goodman teki luultavasti enemmän kuin kukaan muu HyperCardin popularisoimiseksi tehokkaana ohjelmointi- ja prototyyppityökaluna kuin kukaan muu

Gudmanin innoittamana ryhdyin laatimaan stäkkejä sekä omaan käyttööni että yritystäni varten. Aluksi loin uusille työntekijöille tarkoitettuja koulutusmateriaaleja, jotka käyttivät HyperCardin ominaisuuksia paitsi työntekijöiden kouluttamiseen turvallisuusmääräyksiin myös niiden testaamiseen.

HyperCardia voitiin laajentaa käyttämällä XCMD:tä (ulkoisia komentoja) ja XFCN:ää (ulkoisia funktioita), joita olivat luoneet sekä Applen että kolmannen osapuolen kehittäjät. Emoyhtiömme pyöritti tuohon aikaan yrityksemme laskutusjärjestelmää IBM:n suurtietokoneilla, ja muistan osoittaneeni vain vähän kiinnostusta erästä XCMD-ohjelmaa kohtaan, josta olin kuullut ja joka tarjosi suurtietokoneen liitettävyyden.

Se muuttui eräänä päivänä, kun työskentelin laskutustiimimme kanssa ja he olivat turhautuneita siihen, etteivät suurtietokoneen ohjelmoijat olleet edistyneet tavassa, jolla he voisivat prosessoida joitain Coloradon osavaltiosta eri puolilta kaasunmittauspaikkoja tulevia raakatietoja postitettaviin laskuihin. Minulle tuli mieleen, että voisin käyttää XCMD-yhteysohjelmaa hakiakseni raakatiedoston keskusyksiköstä ja käyttää sitten HyperScriptin tehokkaita tekstinkäsittelyominaisuuksia analysoidakseni tiedot .csv-tiedostomuotoon, joka voitaisiin tuoda Microsoft Excel -taulukkolaskentaohjelmaan. Taulukkolaskentataulukkoja voitaisiin sitten käyttää laskutukseen.

Päätietokoneen ohjelmoijat vastustivat tätä, mutta kun sain järjestelmän toimimaan viikossa – kun he odottivat, että päätietokoneratkaisun saaminen toimimaan kestäisi vielä ainakin yhdeksän kuukautta – he käskivät minun tarttua toimeen. En aio mennä HyperScriptin tekstinkäsittelyn yksityiskohtiin, mutta tässä Wikipedian artikkelissa selitetään hyvin, mitä kutsuttiin ”chunkingiksi” ja ”chunk-lausekkeiksi”, jotka tekivät sen mahdolliseksi. Mainframe-ohjelmoijilta kesti muuten yli kolme vuotta toteuttaa samat ominaisuudet, jotka minä sain toimimaan viikossa. Kyse ei ole siitä, etteikö heillä olisi ollut taitoa; he eivät vain asettaneet projektiamme tärkeysjärjestykseen.”

Oheinen video on hypercard.org-sivustolta, ja siinä näytetään yksinkertaisen esimerkin avulla pinon luominen, kuvien lisääminen, korttien linkittäminen ja skriptien tekeminen. Kiitokset Uli Kustererille (@uliwitness) siitä, että sain upottaa videon tänne.

Video, jossa näytetään HyperCardia käytössä luomassa yksinkertaista pinoa

HyperCardin käyttöliittymä oli suurimmaksi osaksi tiukasti yksivärinen. Kun HyperCard 2.2 ilmestyi vuonna 1992, se sisälsi kaksi kaupallista lisäosaa, joiden avulla se pystyi tukemaan värikuvia ja animaatioita. Applella ei ollut tuohon aikaan ongelmia kilpailijoiden kanssa, joten muut yritykset loivat HyperCardin ”klooneja”, jotka ylpeilivät ominaisuuksilla, joita Apple ei lisännyt.

SuperCard

Yksi suosikkiklooneistani oli SuperCard, joka tuki täysin värejä ja jossa oli paljon tehoa… mutta se ei tietenkään pystynyt kilpailemaan Webin kanssa. Onneksi sitä on edelleen saatavilla Software Essentials nimiseltä firmalta ja se toimii hienosti macOS:ssä. Yritys tarjoaa alennusta kaikille, joilla on vanhaa, alkuperäistä HyperCard-materiaalia (pakkaukset, levykkeet ja käyttöohjeet), ja SuperCard voi kääntää vanhat HyperCard-pinot päivitettyyn muotoonsa. Ehkä minun on aika palata takaisin SuperCardin pariin!

Olen usein ajatellut, että nykyaikainen HyperCard olisi täydellinen seuralainen iPhonelle ja iPadille, sillä sen avulla lähes kaikki voisivat luoda omia sovelluksiaan ilman Xcodea ja Macia kehitystyötä varten. Kuunteletko sinä, Tim Cook?

Heizer Software Stack Exchange tarjosi luettelon HyperCard-pinoista sekä markkinoita tuleville ohjelmoijille.
Heizer Software Stack Exchange tarjosi luettelon HyperCard-pinoista sekä markkinoita tuleville ohjelmoijille.

Jossain vaiheessa kaupallisten pinojen kirjoittajista koostuva mökkiteollisuus kukoisti, ja minä olin yksi heistä. Heizer Software pyöritti niin sanottua ”Stack Exchangea”, paikkaa, jossa pinojen kirjoittajat saattoivat myydä tuotteitaan. Kuten Apple nykyisten sovelluskauppojensa kanssa, Heizer otti osuuden jokaisesta myynnistä pyörittääkseen kauppaa, mutta kirjoittajat saattoivat tienata melko hyvin suosittujen pinojen myynnillä. Yritys lähetti painettuja luetteloita, joissa oli kuvaukset ja kuvakaappaukset kustakin pinosta; tilauksen sai etanapostilla, ja sitten sai levykkeitä (myöhemmin CD-levyjä), joilla pino(t) oli.

Kokeile HyperCardia nykyisellä Macilla

Ehkä tämä pitkä kurkistus muistoihin herätti sinussa kenties halun etsiä vanhanlainen Mac-tietokoneesi, ladata siihen System 7:n tai -8:n ja käynnistää sitten HyperCard-kopion. No, sinun ei tarvitse tehdä sitä – Internet Archivessa on ihana emulaattori, joka toimii selaimessa.

  • Voidaksesi saada esimakua tästä emulaattorista, suuntaa suosikkiselaimesi osoitteeseen https://archive.org/details/AppleMacintoshSystem753 ja napsauta sitten vihreää painiketta ”kuvan” päällä. Emuloitu Mac, jossa on System 7.5.3 – HyperCard mukaan lukien – käynnistyy, ja voit leikkiä olemassa olevilla pinoilla tai luoda omia. Voit jopa käyttää emulaattoria iPhonellasi tai iPadillasi!
  • Jos sinulla on hieman enemmän aikaa, on olemassa myös emulaattori, joka sisältää 250 Mt erilaisia HyperCard-pinoja Berkeley Mac User Groupilta (BMUG). Tämän lataaminen ja käynnistyminen vie jonkin aikaa, joten ole kärsivällinen.

Kuten Newton MessagePad, joka inspiroi nykyisiä tehokkaita ja kannettavia älypuhelimia ja tabletteja, ja QuickTake 100 (ensimmäinen suosittu kuluttajille suunnattu digitaalikamera), HyperCardilla oli vaikutus, joka tuntuu vielä tänäkin päivänä. Kun käynnistät Macin Automator-sovelluksen tai työskentelet Shortcuts-ohjelmalla iPadissa tai iPhonessa, näet heijastuksen HyperCardin ominaisuuksista. Toivon, että tämä artikkeli innostaa lukijoita paitsi tutustumaan HyperCardiin emulaattorin kautta myös kokeilemaan nykyaikaisia työkaluja omien työnkulkujensa luomiseksi. Ne eivät ehkä ole yhtä hauskoja kuin vanhat HyperCard-pinot, mutta ne ovat varmasti tehokkaampia.

Vastaa

Sähköpostiosoitettasi ei julkaista.