Tietotekniikka toisena tai kolmantena oppiaineena - mitä ja miksi?
(Ynnän sivuaineinfo 8.9.2021. YFIn ja HELAn vapaasti valittavien opintojen info 15.9.2021)
Mitä on tietotekniikan opiskelu
Virallinen opas on Informaatioteknologian tiedekunnan sähköinen opinto-opas, mutta osa tiedoista on koronavuosien kiireessä päivittämättä.
Normaaliolosuhteissa opetus ja IT-tiedekunnan opinto-oppaan päivittäminen tapahtuvat yllä olevan kuvan Agora-rakennuksessa (kuvaaja: Sergei Chernov). Nähdään siellä, kunhan kulkutaudit väistyvät! Nyt se hetki on toivottavasti jo tosi lähellä, syksyllä 2021!
Tällä hetkellä tarkin tieto on yliopiston opetussuunnitelmassa kaudelle 2020-2023 ja tietysti Sisu-järjestelmässä. Täsmälinkit vielä OPSin sisälle:
Informaatioteknologian tiedekunta ja sieltä kohdasta "Vapaasti valittavat opintokokonaisuudet ja moduulit" erityisesti Tietotekniikan perusopinnot erillisinä opintoina sekä niiden jälkeen mahdolliset aineopinnot ja lopulta jopa syventävät opinnot.
Perusopinnoista aina aloitetaan, joten puhutaan tänään eniten niistä. Ja puhutaan erityisesti oppiaineesta nimeltä tietotekniikka, joka on IT-tiedekunnan tarjonnasta ehkä suorimmin luonnontieteen opiskelijaa hyödyttävä aine.
Tietotekniikan perusopinnot (vähintään 25 op) alkavat mm. tällaisista harjoitteista:
- ITKP1010 Digitaalisen osaamisen perusteet (3 op): Kuinka tietokonetta käytetään "oikein" eli tehokkaasti, turvallisesti ja varsinkin ilman tarpeetonta otsahikeä! Vaikka ei muuta, niin jokaisen yliopisto-opiskelijan kannattaisi käydä ainakin tämä kurssi!!
- ITKP1011 Web-julkaiseminen (2 op): Nimestään huolimatta tämä kurssi täydentää ja laajentaa edellä mainitun työvälinekurssin sisältöjä, johdatellen jo myös tietotekniikan syvällisempään ymmärrykseen.
- ITKP102 Ohjelmointi 1 (6 op) (Peruskivijalka kaikkeen): kuinka tietokone saadaan ratkomaan ongelmia ihmisen puolesta. Ensimmäisellä kurssilla sovellusalueena on pelit, katso esim. aiempia Ohjelmointi 1 -kurssin tuotoksia YouTubessa. Pelit motivoivat joitakin, joitakin taas eivät - mutta pelikontekstissa kaikki oppivat ohjelmoinnin perusteet hyvin!
Ohjelmointi 1 on vahvasti suositeltava kurssi jokaiselle luonnontieteellisen alan opiskelijalle, vaikka ei jatkaisikaan perusopintokokonaisuutta sen pidemmälle!
- ITKP104 Tietoverkot (3-5 op) (joita ilman ei nykypäivänä yksinkertaisesti pärjätä): Miten koneet ja niihin asennetut ohjelmat "keskustelevat" keskenään verkon kautta?
- Perusopintoja voi edellä mainittujen lisäksi täydentää vapaasti erilaisilla aihepiireillä, esim.:
- Ohjelmointi 2: Miten konetta käsketään paremmin (ja paremmin ja paremmin, jatkokursseilla, joita kohti tämä kurssi vielä johdattelee...)?
- Algoritmit 1 ja 2: Kun käyttäjämäärä 1000-kertaistuu, toimenpiteisiin saattaakin mennä 1 000 000 -kertainen aika... Mistä tämä johtuu, ja miten päästään parempaan tilanteeseen eli vaikkapa "vain" 1000-kertaiseen ajankäyttöön? Onko se ylipäätään mahdollista niille toimenpiteille, joita jokin suunniteltavana oleva järjestelmä tarvitsee?
- Tietokannat ja tiedonhallinnan perusteet: Harva todellinen järjestelmä toteutetaan ilman käsiteltävän tiedon järjestelmällistä hallintaa. Miten ja millä työkaluilla se tehdään?
- Funktio-ohjelmointi 1 (Erilainen näkökulma ohjelmointiin ja ongelmanratkaisuun. Potentiaalinen tulevaisuuden tapa ohjelmoida): Onko olemassa ohjelmointivälineitä, joilla väistämättä vältetään monien nykyisiä ohjelmistoja rassaavien ohjelmointivirheiden ja -vaikeuksien mahdollisuus? Ai on.. no mitenkäs sellaisella kielellä sitten ohjelmoidaan?
- Käyttöjärjestelmät: Mistä on pienet Windowsit, Linuxit, MacOS:t ym. tehty? Siis konepellin alla... Mitä tästä seuraa laadukkaiden ohjelmien suunnittelussa ja tekemisessä?
- Lineaarinen ja diskreetti optimointi: "Okei, haluaisin minimoida tämän lineaarisen funktioni näillä rajoitteilla, mutta kynä ja paperi ei oikein riitä 1000-ulotteisiin laskuihin... Miten ratkaisen yhtälön tietokoneella salamannopeasti?"
- Tietokonegrafiikan perusteet: Mihin visualisointijärjestelmät (tieteelliset ja viihteelliset, kuten pelit tai elokuvien tehosteet) perustuvat konepellin alla? Juonipaljastus: Ohjelmoinnin lisäksi lineaarialgebraan ja mm. vektoricalculukseen. "Sneak preview": Tuotantoversio kevään 2018 grafiikkakurssin ensimmäisestä luennosta, sama 4096 tavun koossa, (automaattisesti minifioituna mutta pakkaamattomana javascriptinä).
- ... ja paljon muita tietotekniikan erityiskysymyksiä ...
(lihavoidut kurssit kuuluvat pakollisina aineopintokokonaisuuteen, joten niiden kautta voi ottaa vähän näytepaloja jo perusopintojen osana; muutkin ovat sinänsä hyödyllisiä kursseja.)
Aineopinnoissa (+35 op) on lisää aikaa miettiä mm. edellisiä kysymyksiä ja oppia samalla paremmaksi ohjelmoijaksi. Aineopinnoissa mukaan mahtuu myös esim. luonnontieteilijälle hyödyllisiä "numeronmurskaus" -kursseja eli ammattikielellä numeriikkaa. Kun valitsee huolellisesti tietyt ydinkurssit, tietotekniikan perus- ja aineopinnoista (yht. 25 + 35 = 60 op) saa olennaisesti saman ydinosaamisen kuin alan omilla kandidaateilla on.
Syventävät opinnot (+60 op) vastaavat läheisesti
tietotekniikan maisteritutkinnon pääaineopintoja. Kokonaisuutena tämä tuskin mahtuu
mukaan nykyisiin HOPSeihin, mutta yksittäisiä kurssejakin voi ilman
muuta poimia sitten aineopintojen päälle.
Esimerkiksi numeriikka ja data-analyysi viedään "perille" vasta syventävissä kursseissa.
Mitä on lupa odottaa saavansa?
Tietotekniikan perusopinnot erillisinä opintoina ("sivuaineena") tarjoavat:
- Hyvän perusohjelmointitaidon
- Yhteisen sanaston tietotekniikan alan ihmisten kanssa
(tarpeen yhteistyöprojekteissa)
- Aineopinnoissa myös ohjelmistojen suunnittelutaitoja
- Syventävissä opinnoissa myös erikoistuneemmat
asiantuntijataidot johonkin kohteeseen, kuten numeriikkaan,
data-analyysiin, koneoppimiseen, tietoliikenteeseen, IoT:hen,
tietoturvaan tai mobiili-/WWW-sovellusten suunnitteluun ja
toteuttamiseen
Sivuaineopintojen suuntautuminen varsinkin pidemmälle edettäessä on jokin seuraavista:
- Koulutusteknologia
- Ohjelmisto- ja tietoliikennetekniikka
- Teknismatemaattinen mallintaminen ja päätösanalytiikka "Laskennalliset tieteet"
Tutkijaksi halajaville sekä opettajan urasta tässä vaiheessa
epävarmoille luonnontieteen opiskelijoille suosituksena voisi olla
Laskennalliset tieteet tai Ohjelmisto- ja tietoliikennetekniikka.
Jos opintoihin ei luontevasti kuulu lisäksi matematiikkaa tai luonnontieteitä,
Ohjelmisto- ja tietoliikennetekniikka lienee helpoiten avautuva vaihtoehto.
Opettajuuteen jo määrätietoisesti tähtääville
puolestaan saattaa tarjota hyödyllisiä käytännön apuvälineitä
Koulutusteknologia, joka on ollut syksystä 2020 alkaen ihan erillinen aineensa!
Sen perusopinnoissa on ihan pieni, 2 kurssin kokoinen, eroavuus tietotekniikan perusopintoihin.
Eli aika samasta puusta lähdetään veistämään.
Opintojen ajoittaminen
Aloitus ensimmäisistä kursseista onnistuu joko jonakin keväänä tai syksynä.
Sen jälkeen voi edetä joko nopealla tai hitaalla tahdilla melko joustavasti. Yksityiskohtaiset tiedot kurssitoteutusten aikatauluista löytyy aina vuosittain Sisusta.
Miksi opiskella tietotekniikkaa erillisenä opintokokonaisuutena (ent. sivuaineena)?
Tässä esimerkkejä sovelluksista eri alojen opiskelijan tulevalla omalla alalla.
Vain muutamia poimintoja loputtomista reaalimaailman sovellusesimerkeistä
joidenkin koulutusohjelmien pääaineopiskelijoille:
- Kemia: Uusien molekyylien etsiminen laskennallisesti, laskennallinen kemia.
Läheisesti aiheeseen liittyvä esimerkki löytyykin omasta tutkimusryhmästäni tällä hetkellä (2020)
meneillään olevasta projektista (linkki projektin ensimmäiseen julkaisuun). Emme tulisi toimeen ilman porukkaa, joka osaa eniten kemiaa/fysiikkaa, mutta lisäksi tietotekniikkaa!!
- Fysiikka: Higgsin hiukkanen - Tulokset
perustuvat massiivisen datan keräämiseen ja käsittelyyn
(linkki)
- Matematiikka: Numeerinen ja symbolinen laskenta; suunnaton määrä matematiikan
käytännön sovelluksista perustuu tietotekniikan / ohjelmoinnin käyttöön.
(linkki)
- Tilastotiede: Koneoppiminen, hahmontunnistus, bayesilaiset mallit, ...
tilastotieteen uudet sovellukset edellyttävät tietokoneen käyttöä eli
laskennallista tilastotiedettä (linkki).
- Biologia: esimerkki tutkimusartikkelista (PDF saatavilla ainakin yliopiston verkosta käsin) - jyväskyläläinen tutkimus, jossa yhdistyy matematiikka, tilastotiede, tietotekniikka ja biologia.
- Biologia: Tulevaisuudessa dronet tekee biologin työn? - ei, vaan tulevaisuuden biologi, joka osaa analysoida valtavaa, automaattisesti kerättävissä olevaa aineistoa, jota esimerkiksi dronen kuvaama peltovideo on! Esimerkiksi ihmisen genomi on kartoitettu, kuten 1000 muun eliölajin, mutta mitä se tarkoittaa biologian kannalta? Lataa data läppärillesi ja ryhdy selvittämään ("pieni" kotitehtävä siinä - haastava ja useamman elämäntyön mittainen - kannattaa osata tietotekniikka ja tilastotiede siinä bilsan ohella:))!
- Psykologia: Heitänpä tähän esimerkiksi viimeisimmän oman yhteisjulkaisuni tietotekniikan ja psykologian rajapinnasta
- Humanistiset aineet: Itse yhteiskunnan lisäksi myös humanistinen tutkimus digitalisoituu. Kannattaa pysytellä siinä mukana. Esimerkkinä Suomen Akatemian rahoitusohjelma Digital Humanities (DIGIHUM) 2016-2022. Tällaiset tuskin vähenevät tulevaisuudessakaan.
- Kaikilla aloilla arkipäivän työ tehdään enenevässä määrin tietokoneohjelmilla datan automaattiseen analyysiin perustuen. Ohjelmien ja sovellusten kehittäminen on mahdollista vain yhteistyöllä, jossa sovellusalan asiantuntija osaa kommunikoida mm. ohjelmistokehittäjien kanssa, arvioida ihan itsekin kehittämisen realistisuutta, kustannuksia ja muita ehtoja onnistuneen työkalun tai parannuksen saavuttamiseksi.
Edellä oli vain muutama esimerkki tietotekniikan (erityisesti laskennan) monista sovelluksista.
Lisäksi tietotekniikan osaaminen mahdollistaa aivan uudenlaiset mahdollisuudet
tehostaa omaa työtään (tai aloittaa jännittävä ja palkitseva harrastus!
Esimerkiksi tietotekniikan opiskelijoidemme aikoinaan perustama Instanssi kerää vuosittain digijuttujen harrastelijat oppimaan ja kisailemaan yhdessä, Jyväskylästä ja nykyään kauempaakin.
Omiakin harrastehöpsöttelyjäni päätynyt nettiarkistoihin mm. tuolla, tuolla, tuolla ja tuolla).