include "../../header.ssi"; ?>
Jaakko Suominen, Digitaalinen kulttuuri
luento 1, luento 2, luento 3, luento 4, luento 5, luento 6 (ei verkkoaineistoa), luento 7
LUENTO 1
A11.7 Digitaalitekniikan pehmeä puoli?
Ohjelmistohistorian harjoituskurssi (2 ov)
Jaakko Suominen, kevät 2005
Kurssisisältö
Ohjelmistojen historia on varsin uusi ja kasvava tutkimusalue tietotekniikan historian tutkimuskentällä. Kurssilla tutustutaan erilaisiin tietokoneohjelmiin ja ohjelmatyyppeihin, niiden historiaan ja merkitykseen osana digitaalista kulttuuria. Kurssi koostuu luennoista ja yksin tai ryhmissä tehtävästä harjoitustyöstä.
Suoritustapa: Kurssi koostuu luennoista ja yksin tai ryhmissä tehtävästä harjoitustyöstä.
Opetus: Viikot 10-11 maanantai klo 16-18 (ls 267) ja keskiviikko klo 16-18 (sh 268), viikot 18-20 maanantai klo 8-10 (ls 267) ja keskiviikko klo 10-12 (sh 268), viikko 21 maanantai klo 8-10 ja keskiviikko 10-12 (sh 268).
Opettaja: Professori Jaakko Suominen
Alustava kurssiohjelma
vko 10 ma 16-18 Orientaatio kurssiin: suoritustavat, ohjelma, harjoitustyöaiheiden esittely, mitä ovat tietokoneohjelmat, ohjelmistojen ja niiden tutkimuksen yleislinjat suppeasti
vko 10 ke 16-18 Ohjelmien ja ohjelmoinnin tarpeen synty 1800-luvulta 1900-luvun alkupuolelle ja harjoitustöiden aiheiden valinta
ohjelmointitavat, ohjelmien tallentaminen (kortit, nauhat, magneettimuistit, levykkeet, romput jne)
konekieliohjelmointi, ohjelmointikielten kehityksen alkuvaiheet
vko 11 ma 16-18 ohjelmointiteollisuuden käynnistymisvaiheet, käyttöjärjestelmäkehityksen alkuvaiheet, ohjelmatyyppien kehitys modernin tietotekniikan ajalla sekä myytti "tappajasovelluksista"
vko 11 ke 16-18 Ohjelmointi ammattina 1950-luvulta 2000-luvulle ja tietoteknisen lukutaidon osana
vko 18 ma 8-10 Harjoitustöiden dispositioiden ja kysymyksenasettelun käsittelyä
vko 18 ke 10-12 Harjoitustöiden dispositioiden ja kysymyksenasettelun käsittelyä
vko 19 ma 8-10 Ohjelmavirheet ja haittaohjelmat kulttuurisena ilmiönä (bugit, virukset, vakoiluohjelmat, roskapostitusohjelmat jne)
vko 19 ke 10-12 Esimerkkejä ohjelmistoyritysten historiasta (esim. Microsoft)
vko 20 ma 8-10 Ohjelmistohistorian tutkimus ja aineiston tallentaminen, säilyttäminen ja arkistointi
vko 20 ke 10-12 Harjoitustöiden käsittelyä
vko 21 ma 8-10 Harjoitustöiden käsittelyä
vko 21 ke 10-12 Harjoitustöiden käsittelyä ja kurssiyhteenveto sekä palaute
Esseeaiheita
Valitse joku tunnettu tietokoneohjelmoija ja käsittele, esittele hänet henkilöhistoriallisesti ja käsittele, miksi hänestä on tullut kuuluisa (esim. Linus Torvalds, Richard Stallman, Ada Lovelace, Grace Hopper, peliohjelmoijat: Sid Meier, Richard Garriot, Shigeru Myamoto, Warren Spector tms.)
Tutustu peliohjelmointiin: miten peliohjelmointi on muuttunut 1980-luvulta 2000-luvulle tultaessa
Graafistentysvaiheita: ohjelmistourakointi (1950-l-), yritysten ohjelmistotuotteet (1960-), massamarkkinatuotteet (1970-l lopulta)
Software-termi esiteltiin 1959-1960, sitä ennen puhuttu ohjelmoinnista tai koodaamisesta
Lähde: Campbell-Kelly (2003)
Muita huomioita
Varhaisvaiheissa tietokoneita ja konttorikoneita ohjelmoitiin kytkemällä
Suurista laitevalmistajista esim. IBM paketoi laitteet, ohjelmat ja huollon, mutta joutui eriyttämään toimintojaan monopolisyytösten takia
Ohjelmia on tallennettu mm. reikäkorteille ja nauhoille, magneettilevyille ja nauhoille sekä myöhemmin mm. cd- ja dvd-levyille
Ohjelmistohistorian tutkimuksen mahdollisia näkökulmia
Biografiset esitykset (henkilöhistoriat)
Instituutiohistoriat (ohjelmistoyhtiöt jne.)
Sovelluskohtaiset tutkimukset
Kansallisesti orientoituneet tutkimukset
Kokonaisesitykset esim. ohjelmistoteollisuudesta
Entä millaisia olisivat kulttuurintutkimukselliset ja historialliset esitykset tietokoneohjelmista?
Vastaus edelliseen
Esim. ohjelmoinnin arvostusta tai julkisen kuvan muutosta käsittelevät tutkimukset
Sukupuolijärjestelmiä käsittelevät tutkimukset (ammattikunnan tutkimus, ohjelmistotuotteiden tutkimus)
Vastakulttuurisuuden ja vaihtoehtoliikkeiden analyysi
Ohjelmoinnin kytkeminen tallentamisen mediakulttuuriseen tai laajempaan digitalisoinnin kontekstiin
Erilaiset ohjelmien sisältöanalyysit jne. jne.
ß ohjelmistoihin liittyvien kulttuuristen merkitysten ja käytäntöjen ymmärtäminen ja tulkinta teknologian suunnittelun ja käytön kokemusten matriisissa
Seuraavalle kerralle
Mieti alustavasti oman harjoitustyösi (esseen) aihetta (ks. lista aiheista)
Seuraavalla kerralla lyödään lukkoon töiden aiheet ja käsitellään ohjelmoinnin ja ohjelmien tarpeen syntyä 1800-luvulta 1900-luvun alkupuolelle
Huom! Kurssin WWW-sivu, jossa esim. lisätietolinkkejä löytyy osoitteesta http://www.tuug.fi/~jaakko/opetus/ohjelmahistoria2005/
A11.7 Digitaalitekniikan pehmeä puoli?
Ohjelmistohistorian harjoituskurssi (2 ov)
Luento 2: Ohjelmien ja ohjelmoinnin tarpeen synty
Jaakko Suominen, kevät 2005
Kurssikerran sisältö
Esseeaiheiden valinta ja esitysaikataulu
Ohjelmien ja ohjelmoinnin tarpeen synty 1800-luvulta 1900-luvun alkupuolelle ohjelmointitavat, ohjelmien tallentaminen (kortit, nauhat, magneettimuistit, levykkeet, romput jne)
Ohjelma
Ohjelma: ohjeiden koodattu kokonaisuus, jolla (tieto)kone saadaan suorittamaan haluttuja operaatioita
Ohjelma perustuu germaanisperäiseen ohja-sanaan, ohjelma oppitekoinen uudissana, Yrjö Koskinen ottanut käyttöön 1880, tätä ennen ruotsin program suomennettiin esim. julistuskirja, kutsumuskirja, myös käsky, sääntö, käytöksen osoitus (Häkkinen 2004)
Nykysuomen sanakirjan (1966) mukaan luettelomainen suunnitelma, selonteko jonkun tapahtuman sisällöstä tai jotain tilaisuutta varten laadittu järjestelmällinen selonteko
Tietokoneohjelma-termin tulo suomen kieleen
Jo 1950-luvun alkupuolen populaariesityksissä (esim. Laurila 1953) kirjoitettiin numerokoneen ohjauselimestä ja ohjeista, jotka on tietyn koodin mukaan painettu reikänauhalle koneen toimintaa varten
Tietokoneohjelma ja ohjelmisto ovat edellisistä johdettavia termejä, jotka tulivat laajempaan käyttöön luultavasti 1950-luvun lopulta 1960-luvun alkupuolelle
Software
Hardware = tietokoneen fyysiset osat, käyttöön tässä merkityksessä 1947 (yleisesti jo 1515)
Software = tietokoneen ohjelmat, käyttöön tässä merkityksessä 1950-1960-luvun taitteessa, aikaisemmin (1851-) villa- ja puuvillakankaat tai kaikkein herkimmät (hajoamaan tai pilaantumaan) kulutustavarat
Käsitteestä vielä
"Tietokonevalinnan yhteydessä ratkaisevaa osaa näyttää usein nykyään "soft-ware" (vastakohtana hardware=kone ja sen teknilliset ominaisuudet). Tällä tarkoitetaan lähinnä erilaisia ohjelmointiapuvälineitä sekä systeemikokemusta (Systems Know-How), joita edellytetään toimitettavan "pakkauksina" jo ennen koneen toimitusta." (joht. K. Dickman, Tietokone 2/1961, 6)
Taustahistoriaa
Tausta mm. teollistumisesta ja kapitalistisessa talousjärjestelmässä: töiden jakaminen, rationalisoiminen ja vaiheistaminen
Keskeisiä teoreetikoita mm. Adam Smith (1723-1790), Suomessa ehkä Antti Chydenius (1729-1803, vapaakauppa, ei niinkään muuten)
Keskeisiä teknisiä ideoijia: Joseph-Marie Jacquard (1752-1834) ja Charles Babbage (1791-1871)
Adam Smith ja ajatus työnjaosta
"Yksi mies venyttää langan, toinen suoristaa sen, kolmas katkaisee, neljäs teroittaa, viides hioo toisen pään nuppia varten [--] nuppineulan valmistamisen tärkeä tehtävä on täten jaettu noin noin kahdeksaantoista erilliseen käsittelyyn[.]" Kansojen varallisuus I (1933 (1776)), Työnjaosta, s. 7.
à Teollistamisen kuvaus, mutta miten edellinen liittyy tietokoneohjelmointiin?
Vastaus
Työn kuvaaminen ja jakaminen osiin, mahdollistaa tehostamisen ja automatisoinnin
Tarvitaan ohjeita koneita varten, algoritmeja, joissa tehtävä on jaettu osiin ja joissa osataan ottaa huomioon myös erilaiset toimintatilanteet ja ympäristöt
Reikänauhat ja kortit tekstiiliteollisuudessa
Käytössä osin jo 1700-luvun alkupuolelta
Reikäkorttiohjaus erit. Joseph-Marie Jacquardin (1752-1834) kutomakoneissa 1700-1800-luvun vaihteessa
Charles Babbage (1791-1871)
Tavoitteena työprosessien automatisointi koneiden avulla, mm. erotuskone ja analyyttinen kone, joista etenkin jälkimmäinen muistutti suunnitelmien perusteella rakenneosiltaan modernia tietokonetta ja oli tarkoitettu kaikenlaisten merkkisymbolien käsittelyyn
Analyyttiseen koneeseen suunniteltiin reikäkorttiohjausta
Ada Lovelace (1815-1852) ja ajatus ohjelmoinnista
"Voimme sanoa mitä osuvimmin että [Babbagen] analyyttinen kone kutoo algebrallisia kuvioita tai kuoseja [patterns] aivan kuten Jacquard-kudin neuloo kurki- ja lehtikuvioita." (Cit. Gere 2003)
Tallennetun ohjelman periaate
"Keskusmuisti sisältää käsiteltävän datan lisäksi suoritettavan ohjelman käskyt. Ohjelman käskyt suoritetaan yksi kerrallaan. Tietokone hakee muististaan käskyn, suorittaa sen, ja jatkaa käskyjen hakemista kunnes tehtävä on suoritettu." perustuu: John von Neumann (1903-57) "First Draft of a Report on the EDVAC" (1945)
Ensimmäiset tallennetun ohjelman periaatteella toimivat tietokoneet rakennettiin Iso-Britanniassa: Manchester Mark I (1948) ja EDSAC (1949). (Ks. esim. Jarmo Pulkkinen: Tietokone ihmismielen metaforana http://cc.oulu.fi/~pulkkine/metaforat_handout04.html)
Mekaanisempia tapoja koneiden ohjaamiseen ja tietojen syöttämiseen sekä tallentamiseen
Reikäkortit
Reikänauhat
Erilaiset metalliset sylinterit (esim. soittorasiat, automaattipianot ja muut vastaavat koneistot)
Myöhemmin mm. magneettinen tallentaminen ja lasertekniikka jne.
Erilaisia reikäkortteja
Lähde: Suomen tietojenkäsittelymuseoyhdistyksen sivut (http://www.tietokonemuseo.saunalahti.fi/)
Lisää reikäkortteja
Reikäkorttikoneiden kytkentä
Myös ENIAC-konetta (1945) ohjelmoitiin kytkemällä
Humoristinen mainos reikänauhan käytöstä
Myös suomalaisia varhaisia tietokoneita ohjattiin nauhalla
ESKO, Helsinki 1955-1960 ja Wegematic-1000, Turku 1960
Ohjelmien koodaamisen tapoja
Ohjelmien kirjoittaminen suoraan konekielimuodossa (esim. EDSAC 1948-1949) binäärilukuina
Symbolisen konekielen käyttäminen (tekeekö muunnoksen ihminen vai kone?), operaatiokoodi ja osoiteosa
Ohjelmakirjastojen luominen (valmiit testatut tavat toistuvien ja yhteisten tehtävien hoitamiseen), aluksi puhuttiin rutiineista (routine), ohjelmista (programs) vasta 1950-luvulla
Ohjelmointikieli FORTRAN
FORmula TRANslator (kaavankääntäjä), John Backus, IBM
Lähemmäs "normaalia kieltä", esim. X=2.0 * FSIN(A+B)
Lyhensi ohjelmointiin tarvittavan ajan tiettyjen sovellusten osalta viikoista päiviin tai tunteihin
Käytetään yhä tiettyjen teknis-tieteellisten sovellusten tekemisessä
Muita varhaisvaiheiden ohjelmointikieliä
COBOL (COmmon Business Oriented Language), 1960, keskeinen vaikuttajahenkilö Grace Hopper
ALGOL, eurooppalaisena ja amerikkalaisena yhteistyönä (kehitelmiä myös Pohjoismaissa)
Satoja ohjelmointikieliä kehitetty mutta suuri osa hävinnyt käytöstä, FORTRAN ja COBOL hallitsivat paria ensimmäistä vuosikymmentä
Huom! Y2K
Ohjelmointikielten keskeisiä piirteitä
Syöttö- ja tulostuslauseet
Peruslaskutoimitusten suorittaminen
Mahdollisuus poiketa peräkkäisyydestä lauseiden suoritusjärjestyksessä
Tiedon tallettaminen ja noutaminen muistista
Tyypillistä peräkkäisalgoritminen tiedonkäsittely (imperatiiviset kielet) mutta myös vapajärjesteistä tietojenkäsittelyä (esim. funktionaaliset ohjelmointikielet ja logiikkaohjelmointikielet)
Ensi kerralla
vko 11 ma 16-18 ohjelmistoteollisuuden käynnistymisvaiheet, käyttöjärjestelmäkehityksen alkuvaiheet, ohjelmatyyppien kehitys modernin tietotekniikan ajalla sekä myytti "tappajasovelluksista"
LUENTO 3
A11.7 Digitaalitekniikan pehmeä puoli? Ohjelmistohistorian harjoituskurssi (2 ov)
Luento 3:
Ohjelmistoteollisuuden historiaa
Jaakko Suominen, kevät 2005
Kurssikerran sisältö
vko 11 ma 16-18 ohjelmistoteollisuuden käynnistymisvaiheet, käyttöjärjestelmäkehityksen alkuvaiheet, ohjelmatyyppien kehitys modernin tietotekniikan ajalla sekä myytti "tappajasovelluksista"
Kurssikerran alku luentona, loppuosa (1980-1990-l) paritehtävänä ja keskusteluna
Luento pohjautuu pitkälti Campbell-Kellyn teokseen From Airline Reservations to Sonic the Hedgehog
Perustietoja ohjelmistoteollisuudesta (kertaus)
Ohjelmistoteollisuuden liikevaihto on kasvanut räjähdysmäisesti 1950-60-luvuilta ja erityisesti 1980-luvulta lähtien
Yhdysvallat ohjelmistoteollisuuden johtava maa
Kolme osa-aluetta, osittain peräkkäisiä kehitysvaiheita: ohjelmistourakointi (software contracting, 1950-l-), yritysten ohjelmistotuotteet (corporate software products,1960-), massamarkkinatuotteet (mass-market software products 1970-l lopulta)
Software-termi esiteltiin (1958)1959-1960, sitä ennen puhuttu ohjelmoinnista tai koodaamisesta
Lähde: Campbell-Kelly (2003)
Tyypillisiä eri vaiheiden yrityksiä
Urakoijat: SDC (1956), CUC (Computer Usage Company 1955), CSC (Computer Sciences Corporation 1959), Informatics (1962)
Yritysmarkkinoiden tuottajat: ADR (1959), Informatics (1962), Computer Associates (1976), Oracle (1977)
Massamarkkinat: Microsoft (1975), MicroPro (1978), Software Arts (1979), Lotus (1982), Activision (1980), Broderbund (1980)
Ohjelmoinnin aliarvostus
1940-luvulla ohjelmointi naisten työtä
1950-luvulla vielä usein aliarvioitiin ohjelmointikoodimäärän tarve ja projektien vaikeus
Aivan aluksi suurin osa ohjelmista käyttäjien tuottamia, ei laitevalmistajien, syntyi käyttäjäyhteenliittymiä kulujen karsimiseksi
IBM oli ohjelmistotuen edelläkävijä 1950-luvulla verrattuna esim. Univaciin, kuitenkin tarvittiin käyttäjien yhteenliittymiä kustannusten karsimiseksi (esim. SHARE)
Ohjelmointiurakoinnin synty
Yhdysvaltojen suuret tietokonejärjestelmäprojektit: Whirlwind ja SAGE, tarvittiin ohjelmia, useita puolustusvoimien urakoitsijoita mukaan
SAGEn ohjelma oman aikansa mittavin, yli miljoona ohjelmakäskyä (hinta n. $50/rivi)
-> Kylmään sotaan kytkeytynyt projekti takasi erinomaisen liiketuloksen esim. IBM:lle, joka oli mukana
Urakointiyritysten tausta
Perustajina yksittäiset henkilöt, joilla laajaa teknistä asiantuntemusta ja markkinataitoa (kiinnostusta)
Ohjelmointitaito oli tullut joko tietokonevalmistajan tai käyttäjäyrityksen palveluksessa
Kun taito oli, yrityksen perustaminen sinällään helppoa
Perustajat käyttivät aikaisemman uransa sosiaalisia verkostoja hyväkseen liiketoiminnan laajentamisessa
1950-luvun ohjelmointi
Käytännöt ja standardit alkoivat vasta muotoutua, samoin tietokonejärjestelmät
Helpommat ohjelmointitavat (ohjelmointikielet, esim. FORTRAN ja COBOL) alkoivat kehittyä
Syntyi tarve ohjelmistotuotteille ja teollisuudelle, kun tietokonejärjestelmien käyttö laajeni
1960-luvun ohjelmistoyritykset
Useita tuhansia alan yrityksiä (perust. erit. 1960-l jälkipuoliskolla), mutta vain alle puolet pysyi pystyssä 1970-luvun yli
Yrityksiä myös Yhdysvaltojen ulkopuolella (esim. Eurooppa, Japani) mutta suppeammin, Suomessa ehkä yksittäisiä
Menestyneet yritykset erikoistuivat, alalle oli helppo tulla, mutta menestyäkseen jatkuvasti uudistuttava ja kehityttävä
Ohjelmistoja edelleen etupäässä räätälöitiin asiakkaiden tarpeisiin, vaikka valmiita ohjelmistotuotteitakin alkoi tulla markkinoille
Ohjelmistotuoteyritykset 1960-luvun loppupuolella
Laitevalmistajien koneiden mukana tulleet ohjelmat eivät enää tyydyttäneet asiakkaiden tarpeita
1960-1970-luvun vaihteessa ohjelmistoteollisuuden toimintaa vaikeuttanut lama
1960-luvun loppupuolen ohjelmistokriisit
Pula ohjelmoijista
Ohjelmoijien heikko tuottavuus
Ohjelmavirheet ja epäluotettavuus
Projektien kustannusten karkaaminen käsistä
Käyttöjärjestelmäkehityksen alkuvaiheet
IBM S/360 (1964) ensimmäisiä yhteensopivia laiteympäristöjä, jossa voitiin pyörittää samoja ohjelmia
1960-l alussa ollut pelkästään IBM:llä 7 yhteensopimatonta laiteympäristöä
OS/360-käyttöjärjestelmäprojekti, merkittävä, mutta viivästyi ja epäluotettava tuote aluksi
1960-luvun ATK
Koneiden määrän kasvu, myynti USA 1955 240 (maailma 246), 1960 4400 (5500), 1965 21600 (29600), 1970 48500 (79000)
Suomi: 1960 muutamia, 1965 n. 80, 1971 n. 210
Kapasiteetin kasvu: isot koneet vaativat isompia ohjelmia (mukana toimitettavien ohjelmien koodin määrä kymmenkertaistui tietokonesukupolvesta toiseen)
à pitkään vallinnut harhakuvitelma, että laitteiden ja ohjelmistojen kustannussuhde (80/20) muuttumassa ohjelmistojen puolelle
Ohjelmistotuote
Termi software product käyttöön 1966
Ei juuri edellyttänyt muokkausta tai räätälöintiä vaan oli otettavissa käyttöön sellaisenaan (vrt. ohjelmistopaketointi ja urakointi) à myytävä tuote, kiinnostus patentointiin
Yksi ensimmäisistä esitysgrafiikkaohjelma Autoflow
Entä Suomi?
Toistaiseksi niukalti kokoavaa tutkimustietoa, seuraavassa varovaisia hahmotelmia
1960-luvulla ohjelmointi tapahtui pitkälti käyttäjäorganisaatioissa tai laitemaahantuojien tuella niiden laskukeskuksissa (erit. IBM ja Suomen Kaapelitehdas)
Lehtimainonnan perusteella yrityskentässä laitemaahantuojat sekä oheistuotemyyjät (paperit, kortit, nauhat, kalusteet jne), vähän palveluyrityksiä mutta ensimmäiset perustettiin 1960-luvulla
Tyypillistä piirien pienuus, samat henkilöt mukana koulutushankkeissa, yrityksissä, järjestöissä jne.
Palveluyritykset 1960-l
Konsulttipalvelut laitteistojen hankinnassa, käyttöönotossa jne, koulutuspalvelut
Alan asiantuntijoiden kerhoutuminen ja sitä kautta yritystoiminnan synty (erit. Tietojenkäsittelyneuvonta)
Käyttäjien liiketoiminnan laajeneminen (esim. Yhdyspankki perusti Tietotehtaan (nyk. Tieto-Enator) 1960-l lopussa)
Alueelliset toimijat, esim. Tietosavo (nyk. Enfo)
Ohjelmistoyritykset 1970-l
Teollisuudenala alkoi saada nykyään tunnetun muotonsa
Hidas kasvu, painopiste kohti ohjelmistotuotteita, minikoneympäristöt antoivat uusi mahdollisuuksia, samoin IBM:n varovaisuus monopolisyytösten kohteena
Ohjelmistotuottajat 1970-l
Laitevalmistajat suur- ja minikoneympäristöissä (IBM, DEC, Singer, HP)
Itsenäiset ohjelmistotalot (sekä ohjelmistotuotteet että ohjelmointipalvelut, esim. ADR, UCC)
"Pakettikauppiaat" (laite-, ohjelma- ja huoltopalvelut yhdessä, erit. pienempien järjestelmien osalta, esim. Triad, Wang)
Softanvälittäjät (hyvien asiakkaiden tuottamisen sovellusten markkinointi muille, esim. COSMIC)
Suurkoneiden monikäyttöpalvelut (erit. tieteellis-tekninen laskenta)
Killer Application
Application = hakemus, sovellus, ahkeruus, kangaskollaasi (applikointi), käyttökohde
-> taas yhteys tekstiiliteollisuuteen
Killeriaplikaatio on yksittäinen ohjelmistotuote, sovellus, joka saa aikaan räjähdysmäisen kysynnän myös tietynlaisille laitteille tai laitejärjestelmille
Tehtävä
Lukekaa annettu pätkä From Airline Reservations to Sonic the Hedgehog-kirjasta (kahdella ihmisellä aina sama pätkä), keskustelkaa sitten sisällöstä (mitkä ovat tekstin pääasiat), sen jälkeen käydään läpi tekstipätkät järjestyksessä ja esitellään ne kaikille kurssilaisille
Lukuaikaa 10 min, parikeskustelu 5 min, yleiskeskustelu 10-15 min
Sivut
s. 165-168, 197-199
s. 201-205
s. 206-211
s. 212-219
s. 269, 274-279
(s. 251-256)
Ensi kerralla
vko 11 ke 16-18 Ohjelmointi ammattina 1950-luvulta 2000-luvulle ja tietoteknisen lukutaidon osana
4. Ohjelmointi ammattina ja tietoteknisen lukutaidon osana
Jaakko Suominen, kevät 2005
Luennon osat
Ohjelmoijan ammatin synty, arvostus ja sukupuolijakauma
Ohjelmoinnin merkityksen muutos
Ohjelmointi tietotekniikan perustaitona ja osana tietoteknistä lukutaitoa
Tehtävä
Lue Valittujen Palojen artikkeli "Ihmisten ja koneiden vuorokeskustelu" (VP elokuu 1961, 56-60)
Kiinnitä huomiota seuraaviin kysymyksiin: mitä on ohjelmointi, millaista kyvykkyyttä ohjelmointityön kerrotaan vaativan, mikä on ohjelmoinnin merkitys tulevaisuutta, miten jutussa käsitellään ohjelmoijien sukupuolta, miten ihminen ja kone jutun mukaan keskustelevat?
Aikaa noin 7 minuuttia, jonka jälkeen keskustelu
1960-luvun ATK
Koneiden määrän kasvu, myynti USA 1955 240 (maailma 246), 1960 4400 (5500), 1965 21600 (29600), 1970 48500 (79000)
Suomi: 1960 muutamia, 1965 n. 80, 1971 n. 210
Kapasiteetin kasvu: isot koneet vaativat isompia ohjelmia (mukana toimitettavien ohjelmien koodin määrä kymmenkertaistui tietokonesukupolvesta toiseen)
à pitkään vallinnut harhakuvitelma, että laitteiden ja ohjelmistojen kustannussuhde (80/20) muuttumassa ohjelmistojen puolelle
Ohjelmoijien määrä USAssa
1955 arviolta 200-250 haastavampiin töihin pystyvää ohjelmoijaa ehkä 1200 yksinkertaisempia ohjelmointitöitä tehneitä
1966 Business Week lehden mukaan 120 000 ohjelmoijaa ja tarve 60 000-120 000 uudelle
Sen jälkeen tapahtunut ohjelmoinnin yleistyminen kulttuurisena ilmiönä (kuvastot, koulutus, ohjelmistoteollisuus jne)
Tietojenkäsittelyalan henkilöstö Suomessa 1960-l
1961, alan ammatit: osastopäällikkö, ohjelmoitsija, konsolioperatööri, operatööri, tarkistuslävistäjä, lävistäjä, tekninen henkilökunta, matemaatikko, konttorisuunnittelija
Yhteensä Suomessa 1313 henkilöä, seuraavan kolmen vuoden kasvun ennakoitiin olevan n. 50 %
Ohjelmoitsija ainoa uusi ammatti verrattuna rk-aikakauteen (48 henkilöä, joista 4 naista)
Naiset toimivat alemmissa ja rutiininomaisissa tehtävissä, miehet johto- ja suunnittelutehtävissä
Henkilöstö 1970-luvulla
Ohjelmoijia ja (systeemin)suunnittelijoita kumpiakin n. 1000, yhteensä alalla 7100 henkilöä (yli 50 % työstä tietokonetyötä)
Naisia ohjelmoijista 33 % ja suunnittelijoista 12 %
Pyrkimys em. töiden erottamiseen
Muodollinen koulutus avasi naisille pääsyn atk-asiantuntijoiksi, naisten osuus ammattilaisista suurempi kuin muissa länsimaissa 1980, naisten osuus tietojenkäsittelyopin opiskelijoista nousi 1970-l vajaaseen kolmannekseen, sittemmin määrä kääntyi laskuun (lama, koulutus, harrastustausta)
Ohjelmoijien määrän lisääntyminen ja ammattien kehittyminen 1960-1970-l
Uudet ATK-järjestelmät
Poliittinen päätöksenteko ja suunnittelu
Koulutusrakenteiden luominen
Alan tilanteen hahmottaminen ja tulevaisuuden suunnittelu
Ohjelmointikoulutuksen kehittyminen Suomessa
1950-luvulla käytännössä "kisällijärjestelmä" sekä maahantuojien lyhyitä kursseja ja esittelytilaisuuksia ja opin hakemista ulkomailta
1960-luvulla selvitykset koulutustarpeesta
seurauksena mm. koulutuksen valmistelu yliopistoissa (paljon muutakin kuin ohjelmointia) sekä kauppaopistoissa
Koulutusrakenteinen kehittyminen 1970-luvun alussa (mm. ATK-Instituutin perustaminen, ks. erillinen aikajanamoniste sekä lukioiden opetuskokeilut)
Ohjelmointi uuden aikakauden taitona
Tietokoneohjelmointi tulevaisuuden kielenä ja ajattelutapana, ajatus alkoi vahvistua informaatioyhteiskuntakeskustelun myötä 1970-1980-luvun vaihteessa (vrt. Mattelart ja kalkyylin kieli)
Kuluttajamarkkinoille suunnatut kotitietokoneet mahdollistivat laajamittaisemman ohjelmoinnin kokeilun (erit. kotimikrojen BASIC (Beginners All-purpose Symbolic Instruction Code) -tulkkien avulla (suunniteltu alun alkaen alkeisopiskeluun)
Ohjelmoinnin levittäminen
Tietokonekurssit alkoivat usein ohjelmoinnilla
Ohjelmalistausten julkaiseminen lehdissä ja kirjoissa, ohjelmointia käsittelevät radio- ja tv-ohjelmat
BASICin ristiriitaisuus 1980-luvulla
Ohjelmointi ei jaksanut kiinnostaa kaikkia tietokoneen käyttäjiä
Joidenkin ammattilaisten mukaan BASIC ei soveltunut monimutkaisempaan käyttöön ja antoi jopa vääränlaisen käsityksen tietokoneohjelmoinnin luonteesta
Ohjelmalistausten julkaiseminen
1970-l lopussa, mikrotietokoneille, keino ohjelmien levittämiseen ja ohjelmointitaidon kehittämiseen
Listaukset tärkeä osa mikrotietokoneisiin keskittyneiden lehtien sisällössä 1970-l lopulla ja 1980-l alkupuolella (perustui myös lukijatutkimuksissa havaittuun ohjelmoinnin suosioon, tästä tosin ristiriitaista tietoa)
Esim. Mikrobitissä 1985 noin puolet sisällöstä listauksia, suuri osa pelejä, hyötyohjelmien määrä lisääntyi
Ohjelmointi radiossa
Suomessa Yle otti mallia mm. BBC:n Computer Literacy projektista, mm. ohjelma Kansanmikrokerho (1982), jossa suurin osa lähetyksistä BASIC-ohjelmoinnin opetusta, myös ohjelmointikilpailu, toinen ohjelma Silikoni, jolla parhaimmillaan yli 110 000 kuuntelijaa
Ohjelmien välittäminen äänisignaalina radiolähetyksissä, yksi keskeinen maa myös Alankomaat
Paikallisradioilla omia ohjelmia tietokoneista (Saarikoski 2004a, 2004b)
Merkityksen muutos
Ohjelmoinnin merkitys tietokoneharrastuksen keskiössä kapeni 1980-luvun kuluessa à käytettiin sovellusohjelmia, joita oli saatavilla ja ohjelmat muuttuivat yhä monimutkaisemmiksi
Kehitys näkyi kotimikrolehdissä, joissa ohjelmistoa koskevien artikkelien määrä ja etenkin listausten määrä väheni (MikroBitti lopetti listausten julkaisemisen jouluk. 1989)
Ohjelmointi Internetin aikakaudella
Koodaamisen uusi tuleminen tietyssä mielessä (yhteydessä mm. sisällöntuotantokoulutukseen)
Tyypillistä jatkuva muutoksen tila, jatkuva tarve ylläpitää ja päivittää tietoja, epävirallisten tiedonhankintakanavien tärkeys, ei välttämättä muodollinen koulutus (uudelleenohjautuva työvoima, Castells)
Lisätietoja
Petri Saarikoski: Koneen lumo (2004a)
Petri Saarikoski: "Basicilla tietoyhteiskuntaan. Ohjelmointi ja varhaisten kotitietokoneiden käyttötarpeet." (2004b)
Jaakko Suominen: Koneen kokemus (2003)
Timo Joutsivuo: Tietojenkäsittelyn opetuksen eturintamassa. ATK-instituutin historia (2003)
Nalini P. Kotamraju: ""Kaikenlaista hässäkkää" - WWW-suunnittelun taito." mediumi 2.2 (27.6.2003) <http://www.m-cult.net/mediumi/article.html?articleId=224&print=1&lang=fi>
Dispositioiden ja töiden esittelyaikataulu
Dispositiot ja kysymyksenasettelut: vko 18 ma 8-10, vko 18 ke 10-12
Esseet: vko 20 ke 10-12, vko 21 ma 8-10, vko 21 ke 10-12 (ei yhtä monta työtä viimeiseen kertaan)
LUENTO 5. Ohjelmavirheet ja haittaohjelmat kulttuurisena ilmiönä Jaakko Suominen, kevät 2005
Luennon sisältö
Termien määrittely: ohjelmavirheet, virukset, haittaohjelmat
Em. ilmiöiden kulttuurihistoriallista tarkastelua
Tekninen ja kulttuuritieteellinen näkökulma ohjelmavirheisiin ja haittaohjelmiin
Tutkimusnäkökulmat
Yleisesti haittakeskeisyys ja pyrkimys ongelmien korjaamiseen esim. lainsäädäntöön tai asenteisiin vaikuttamalla tai teknisen kehitystyön avulla
Kulttuurintutkimuksellisesta näkökulmasta haittaohjelmia voidaan tarkastella esim. osana riskiyhteiskuntaa (Beck) tai vaikkapa teknologian mentaliteetti- ja mentaalihistoriaa (ihmisen teknologiansuhteen, käsitysten ja tuntemusten muutosten ja luonteen tutkimus) ß tarkoitus ei ehkä niinkään puolustella mutta selittää ilmiöitä osana laajempaa kulttuurista merkitysympäristöä
Kysymyksiä
Muistele, miten ja milloin törmäsit ensimmäistä kertaa tietokoneviruksiin
Mitä tietokoneviruksia muistat nimeltä?
Virukset (perustuu erit. Jussi Parikan artikkeliin "AIDSia, aivoja, rakkauden tunnustuksia ja mustia kostajia. Tietokoneviruksen kulttuurihistoriaa." Tekniikan Waiheita 2/2004, myös PS:n väikkäri)
Fred Cohen: Virus on symbolien joukko, koodi, joka aiheuttaa muiden symbolien joukon muutoksen tietyssä ympäristössä niin, että kohdeympäristö tulee sisältämään viruksen à ts. virusohjelma tartuttaa itsensä muihin ohjelmiin
--> "klassinen määritelmä" 1980-luvulta, virus ei välttämättä määrity vahingontekijäksi
Fred Cohen
Aloitti tietokoneviruskokeet 1983, ei ensimmäinen tekijä tai kokeilija mutta ensimmäisiä, joka otti tietoturvallisuusriskin vakavasti
Cohenin virusmäärittelyistä muodostunut alan standardilähtökohta
Viruksen osat
Tarttumismekanismi
Kuorma (payload, se, mitä virus tekee)
Laukaisija (trigger, jokin joka käynnistää viruksen toimintaan)
Tavallisia alalajeja
Matovirukset (mm. John Shochin ja Jon Huppin tutkielma 1982, Robert Morrisin Internet-mato 1988)
Troijan hevoset (naamioidaan joksikin muuksi ohjelmaksi)
Makrovirukset (erit. Microsoft Office ohjelmien makrokomentojen haittasovellukset)
Polymorfiset virukset (pyrkivät muuttamaan jatkuvasti muotoaa ja vaikeuttamaan virustorjuntaohjelmien toimintaa)
Tietokonevirusten esihistoriaa
Virusmaisesti käyttäytyvät ohjelmat, muistin tyhjennys 1940-luvulla
Ajatukset itseään kopioivista sekä keskusmuistin valtaavista ohjelmista (1940-1950-luvut) (esim. Darwin ja Core Wars)
Varhaiset tieteiskirjallisuuden viruskuvaukset, esim. 1972 David Gerold: When Harlie was One, John Brunner: The Shockwave Rider (1975), Thomas J. Ryan: Adolescence of P-1 (1977)
Tunnettu 1980-luvun kuvaus, jossa sivutaan viruksia, William Gibson: Neuromancer (1984)
--> yhteydet mm. genetiikan kehitykseen sekä tekoälytutkimukseen
Ensimmäiset tunnetut virukset
Elk Cloner Apple II koneissa 1981-1982
Brain eli pakistanilainen 1986
Christmas Tree, joulukuu 1987 IBM:n verkossa
Morrisin mato 1988 à Laajamittaisempi julkinen ja yhteiskunnallinen huomio, virusuhkakuvat
Virusjulkisuuden varhaisvaiheet Suomessa
1987 Printti-lehden juttu "Tietokonemaailman musta surma. Piileekö ohjelmissasi virus"
SCA virus Suomeenkin Amiga-tietokoneisiin 1987 à Mikrolehdet seurasivat ja tiedottivat virustilanteesta
1988 Internet-mato ei saanut Suomessa niin suurta huomiota, koska Suomi vasta liittymässä Internetiin mutta ylitti uutiskynnyksen
1989 Aki Korhosen provosoiva juttu tietokoneviruksen teko-ohjeista MikroBittiin, kantelu JSN:oon
1990 tietojenkäsittelyopin pro gradu työ (Kimmo Kauranen) viruksista, kaksi tietokirjaa aiheesta
Virukset ja julkisuus 1990-luvulla
Ajoittaista virushysteriaa julkisuudessa erit. harrastajien mukaan
Suojausohjelmista bisnes (esim. suomalainen F-Secure) (taloudellinen voitto ja kilpailu)
Erityisesti jo aiemmin peli- ja ohjelmapiratismi nähtiin viruksen leviämisen keskeisenä tekijänä
Finnish Sprayer, suomalainen virus 1993-1994
Lisää tietokirjallisuutta aihepiiristä
Virukset ja julkisuus 2000-luvulla
Tietokoneiden, Internetin ja Microsoft Officen sekä Windowsin yleistyminen ovat tehneet viruksista keskeisen osan tietotekniikan käyttökulttuureita, virustiedotukset ja tietoturvauutisointi yleistyneet mm. päivälehdissä ja televisiouutisissa, tiedotus pitkälti virustorjuntaohjelmistojen valmistajien kautta
Edelleen hyödynnetään biologista tautimetaforiikkaa niin virusten nimissä, populaarikuvauksissa kuin virusaiheisessa huumorissakin
Tietokoneistetun toimiston riskit (Edward Tenner: Why Things Bite Back 1996)
Lisääntyvä kontrolli, turvattomuus, riippuvuus, taloudelliset riskit, ohjelmien epäluotettavuus
Ongelmia on myös vaikeampi ennustaa
Yhteensopimattomuusongelmista johtuvat viivästykset
Ohjelmien monimutkaistuessa virheet lisääntyvät
Yksittäisten työntekijöiden tehtävät lisääntyvät (vrt. Swartz Cowan "More work for mother") ß illuusio siitä, että kone tekee työn
Ohjelmabugi
Ohjelman piirre, jota ei ole haluttu ja jota ei ole tarkoitettu, joka aiheuttaa toimintahäiriön, virheen: ohjelma toimii väärin tai esim. tietyn operaation jälkeen jumiutuu, vastakohta ominaisuus (joskus ohjelmistovalmistaja voi jopa väittää käyttäjän bugiksi luulemaa toimintaa vakio-ominaisuudeksi)
Tietokoneslangissa voidaan puhua myös bugisista ihmisistä (henkilökohtaiset ongelmat, kummallinen käytös tietyissä tilanteissa) ß tyypillistä siis tässäkin leikittely biologisilla metaforilla, antropomorfismilla ja teknomorfismilla
Bugin käsitehistoria
Vahva myytti siitä, että varhaisessa tietokoneessa todellakin ötökkä, joka aiheutti tietokonevirheen
Termi kuitenkin laitevirhemerkityksessä käytössä jo aiemmin mm. lennättimen (ainakin jo 1870-luvulta lähtien), radioamatööritoiminnan sekä II MS:n tutkajärjestelmien käyttäjien keskuudessa
Tehtävä: kuuluisat ohjelmavirheet
Etsikää tietoa seuraavista kuuluisista ohjelmavirheistä. Mitä tapahtui? Mistä virhe johtui?
Vuoden 1970 Suomen eduskuntavaalien prognoosi
Y2K
Pentium-prosessorin ensimmäiset versiot
1960-luvun kuulennot ja avaruusluotaimet, viimeaikaiset Mars-luotaimet
Falklandin sota 1982 ja Britannian aluksen (HMS Coventry) upottaminen
Joku muu ohjelmointivirhe, joka tulee mieleesi
Tehtävä, jatkoa
Aikaa mikroluokka- tai kirjastotyöskentelyyn n. 30 minuuttia
Sen jälkeen takaisin luentotilaan ja tehtävien läpikäynti ja keskustelu
LUENTO 7. Ohjelmistohistorian tutkimus ja aineiston tallentaminen, säilyttäminen ja arkistointi
Luennon sisältö
Tietotekniikan historian tutkimuksen eri näkökulmia
Ohjelmistohistorian tutkimus mitä oikein tutkitaan ja mitä voitaisiin tutkia
Aineiston tallentamisen ja säilyttämisen haasteet
Ohjelmistohistorian trendit ja tutkimusnäkökulmat
Tietotekniikan historian kirjoittajat ja näkökulmat
Kolme tai neljä näkökulmaa tietotekniikkaan
- luokitteluja tehneet mm. William Aspray ja Michael S. Mahoney, tietotekniikan historioitsijat (viitanneet yleensä esim. ammattilaisten, journalistien ja historioitsijoiden kirjoitustapojen eroon, oma laajennus siitä)Tietojärjestelmätieteen vaiheet (systeemiteoreettinen, sosiotekninen, humanistinen (Nurminen))
-> verrattavissa esim. elokuvan tai taidehistorian esitystapoihin
Ammattilaiset ja journalistit kirjoittajina
Insinöörihistoriallinen tai internalistinen
kaksi alalajia: matemaattisesti (tietotekniikka on kehittynyt matemaattisessa ajattelussa tapahtuneiden murrosten kautta (ajatus teknologiasta soveltavana tieteenä) ja teknisesti painottunut (laitteistokehitys, laitteistosukupolvet jne)
Vastakulttuurinen (osin journalistinen)
mikrotietokonevallankumouksen keskeisyys
"Käänteiden" jälkeiset tutkimusnäkökulmat
Konstruktionistinen, sosioteknologinen innovaatiotutkimus ("kova" teknologian sosiaalinen konstruktio, innovaatioprosessien tutkiminen, miten teknologia kehittyy ja syntyy innovaatioprosessien aikana)
Kulttuurihistoriallinen ("pehmeä" teknologian kulttuurinen konstruktio), keskiössä ei välttämättä niinkään teknologia materiaalisena faktojen kautta tai innovaatioprosessien kautta vaan laajemman kulttuurisen kontekstin tutkiminen, merkkien ja merkitysjärjestelmien kartoittaminen
Nykykiinnostus
Voidaan hahmottaa ero 1) perinteisemmän historiantutkimuksen ohjelmistohistoriakiinnostuksen ja 2) kulttuurin- ja teknologiantutkimuksellisen kiinnostuksen välille
Ohjelmistohistoria perinteisemmän historiantutkimuksen kentässä
Kiinnostunut varhaisemmasta historiasta, tieteellisestä ohjelmoinnista, ohjelmointikielien kehittämisestä, toisaalta ohjelmistoteollisuuden historiasta ß Suomessa vähäisempää toistaiseksi, tietotekniikan historian tutkimus lähtenyt liikkeelle toisista suunnista
Ohjelmistohistoria Yhdysvalloissa
The Software History Center (ks. http://www.softwarehistory.org/ (sivuilta löytyy mm. bibliografia): The SHC is working to preserve for future generations information about the companies, people, products, and events that shaped the evolution of this vital industry.
Iterations: An Interdisciplinary Journal of Software History (http://www.cbi.umn.edu/iterations/tc.html), Charles Babbage instituutin alaisuudessa, instituutilla projekteja, jotka liittyvät ohjelmistohistoriaan ja sen tallentamiseen ja esittämiseen)
Computer History Museum (http://www.computerhistory.org/): Kerätty myös ohjelmistoja kokoelmiin
Ohjelmistohistorian tutkimus yleensä
Yleistynyt pikku hiljaa muutamien viime vuosien aikana (julkaisut, konferenssit, tutkimushankkeet jne.), edelleen kuitenkin tietotekniikan historiaa lähestytään laitepainotteisesti
Ohjelmistohistoriasta on keskitytty aiemmin pitkälti tietokonekielten historiaan
Ohjelmistot pohjoismaisessa tietotekniikan historian tutkimuksessa
History of Nordic Computing. IFIP WG9.7 First Working Conference on the History of Nordic Computing (HiNC1), June 16-18, 2003, Trondheim, Norway. Series: IFIP International Federation for Information Processing, Vol. 174 Bubenko, Janis; Impagliazzo, John; Solvberg, Arne (Eds.) 2005, 488 p..
Ohjelmistojen osalta käsitelty lähinnä ohjelmointikielten kehittämistä (erit. Algol ja Simula) mutta myös ohjelmointitapojen muutosta sekä ohjelmointiammatin muutoksen varhaisempia vaiheita
-> ei hallitseva mutta huomattava asema kokonaisuudessa
Kulttuurin- ja teknologiantutkimus
Kiinnostus enemmän vaihtoehto-, vasta- ja populaarikulttuurin suunnasta ja nykypäivästä: erityisesti vapaiden ohjelmistojen sekä pelien luonteen ja mahdollisuuksien tutkimus ß Suomessa kansainvälisesti vahvaa tutkimusta esim. Linuxiin (esim. Helsingin alueen yliopistot ja tutkimuslaitokset) ja pelikulttuureihin kytkeytyen (tutkimusyksiköt ja laboratoriot eri puolilla maata)
-> Sinänsä historiallisen tai kulttuurihistoriallisen tarkastelun rooli tämän näkökulman mukaisessa ohjelmistotutkimuksessa on vähäisempi
Ohjelmistohistorian aineiston tallentamisen haasteet
Ohjelmistohistorian tallentamiseen liittyvän keskustelun alkuvaiheita USA:ssa
1986 David Bearmanin raportti, jossa käsiteltiin ohjelmien arkistoinnin kysymyksiä (valinta, säilyttäminen, institutionaaliset puitteet, tekijänoikeudet, käyttäjät)
1988 Kongressin kirjaston hanke, jossa pyrittiin luomaan "konehuone" vanhojen ohjelmien käyttöön ja konvertointiin
1990 Columbian yliopiston seminaari mikrotietokoneiden ohjelmistojen säilyttämisestä
1993 "First National Software Archives Conference" Seattlessa, mukana ohjelmistoteollisuuden, valtion, arkistojen ja yliopistojen edustajia à Yleisempi konsensus ohjelmistojen säilyttämisen tärkeydestä, useita erillisiä hankkeita, jossa ohjelmistojen lisäksi on kerätty ja dokumentoitu niihin liittyvää oheismateriaalia ja muistitietoa, valtakunnallista organisaatiota tai museota ohjelmistojen tallentamiseen ja esittämisen ei kuitenkaan saatu aikaan
Vanhojen ohjelmien säilyttämisen tarpeellisuus
Keskustelua siitä, onko alkuperäisen lähdekoodin saatavuus olennaista: toisten tutkijoiden mielestä koodi on primaarilähde, jota voidaan käyttää esimerkiksi erilaisten ohjelmistotekniikoiden keksimisen, muutoksen ja vaikutuksen tutkimiseen
Toisten mielestä taas tärkeämpää on se, että tallennetaan pikemminkin ohjelmien dokumentaatio, selostus siitä, mitä ohjelmat tekevät, tutkijan ei voida edellyttää pystyvän sujuvasti lukemaan ja ymmärtämään kaikissa ympäristöissä tehtyä tietokonekoodia, tärkeämpää esim. muistitiedon tallentaminen ja kirjallisen sekä kuvallisen aineiston kokoaminen
Säilyvätkö vanhat ohjelmat
Tarvitseeko niitä käyttää alkuperäisissä koneissa, mikä on hankalaa: osittain koneita on käyttökunnossa, osittain voidaan korvata esim. vanhat massamuistilaitteet uusilla, osittain voidaan käyttää emulaattoreita ja simulaattoreita (esim. vanhojen pelikoneiden emulointilaitteet ja ohjelmat)
Toisten tulkintojen mukaan datan säilyttäminen itse asiassa helpompaa kuin fyysisten artefaktien, data on ainoastaan tuoreutettava säännöllisin väliajoin
Lisätietoja edellisistä
Ks. erit.
John G. Zabolitzky, "Preserving Software: Why and How," Iterations: An Interdisciplinary Journal of Software History 1 (September 13, 2002): 1-8. http://www.cbi.umn.edu/iterations/zabolitzky.html
Elisabeth Kaplan, "A Response to 'Preserving Software: How and Why,'" Iterations: An Interdisciplinary Journal of Software History 1 (September 13, 2002): 1-3. http://www.cbi.umn.edu/iterations/kaplan.html
Tietokonealan museokokoelmat Suomessa
Tekniikan museossa jotain laitteistoja, samaten esim. yliopistojen hallussa
Laajin kokoelma Suomen tietojenkäsittelymuseoyhdistyksellä Jyväskylässä, osa näytteillä JY:n tiloissa, suurin osa varastossa
Mikrotietokoneita keräilijöillä sekä media-, sähkö- ja elektroniikka-alan museoilla ja museohankkeilla (esim. Salon elektroniikkamuseohankkeen kokoelmat)
Suomen kokoelmien suhde ohjelmistohistoriaan
Alan museotoiminta Suomessa vasta kehitteillä
Ohjelmia tai ohjelmistohistorian muita aineistoja ei yhtä laajalti kerätty saati dokumentoitu, laitteita käyttökunnossa joinekin ohjelmineen erit. Jyväskylässä
Paras tilanne lienee koti- ja mikrotietokoneiden osalta, sillä harrastajilla toimivia laitteita, niihin ohjelmia tai vähintään emulaattoreita, systemaattinen dokumentointi ja kokoaminen yhteen kuitenkin vähäistä
Ohjelmistohistorian dokumentoinnin tilanne
include "../../footer.ssi"; ?>Osittain verrattavissa audiovisuaalisen materiaalin arkistointiin, osin minkä tahansa informaation digitalisoimiseen (kysymykset arkistoinnin laajuudesta, arkistoijasta, tuoreuttamisesta)
Sen sijaan käyttötarve ja -muodot osin erilaiset (koodiluonne, teknologian historian tutkimus)
Voidaan (ja on ehkä hyväkin) erottaa toisistaan varsinaisten tietokoneohjelmien arkistointi ja tutkimus sekä digitaalisen datan arkistointi ja tutkimus (erilaiset aineistot, joiden käsittelyyn on käytetty tietokoneohjelmia)