Johdanto

Tältä sivulta löydät materiaalit perjantaiseen esitykseeni. Kyseessä ei ole tavanomainen tutkimuksen ja sen tulosten esittely, vaan erään laskennallisen yhteiskuntatutkimuksen edistämiseen keskittyvän ohjelmistoprojektin esittely.

Materiaalit-kohdasta löydät esityksen diat sekä tammikuussa kirjoittamani johdannon avoimiin tutkimusmenetelmiin, jossa käyn pintapuolisesti läpi R-kieltä. Ko. teksti ei liity tähän esitykseen/projektiin kuin R-kielen kautta.

Mikä rOpenGov-kohdassa esittelen tiiviisti mistä projektissa on kyse ja ketkä sen tekemiseen tällä hetkellä osallistuvat.

- Markus Kainu

Materiaalit

linkki huom!
slides.html Esityksen diat .html-muodossa - (ei toimi vanhoilla Internet Explorer -selaimilla! Käytä Firefox, Chrome, Safari tms.)
Lahti-rOpenGov-NIPS13.pdf Older slides in English
Fördjupning: Open research methods in computational social sciences and humanities: introducing R Kirjottamani “kevyt johdatus avoimiin tutkimusmenetelmiin ja R-kieleen”

Mikä rOpenGov?

rOpenGov on yhteisövetoinen ekosysteemi avoimen julkishallinnollisen datan ja laskennallisen yhteiskuntatutkimuksen R-paketeille.

Suomessa ja maailmalla nopeasti lisääntyvät hallinnollisen ja muun avoimen datan virrat ovat erityisen kiinnostavia yhteiskuntatieteiden, datajournaslimin ja kansalaisten osallistumisen näkökulmasta, mutta laskennalliset työkalut näiden datavirtojen hyödyntämiseen vielä ovat puutteellisia. rOpenGov-projektissa kehitetään yhteisövetoista skaalautuvaa ohjelmistoekosysteemiä tavoitteena valjastaa avoimen laskennallisen analyysin ja uusien datalähteiden potentiaali yhteiskuntatieteiden käyttöön. Projekti ottaa oppia biotieteiden menestyksekkäiden ekosysteemiprojektien kuten Bioconductor:in tai rOpenSci:n kokemuksista.

rOpenGov-yhteisö

rOpenGov on yhteisöllinen projekti, joka rakentuu ydintiimistä, pakettien kehittäjistä ja pakettien käyttäjistä.

Käyttäjäyhteisö koostuu akateemisista tutkijoista, opiskelijoista, datajournalisteista, kansalaistieteilijöistä ja muista kiinnostuneista.

Ydintiimin palvelee kehittäjiä ja käyttäjiä ylläpitämällä infrastruktuuria, arvioimalla uusia paketteja ja laatimalla suosituksia pakettien toiminnalle. Ydintiimin jäsenillä on laskennallisten tai yhteiskuntatieteiden tieteiden koulutus:

Pakettien kehittäjien projektit helpottavat erilaisten lasennalliselle yhteiskuntatutkimukselle relevanttien datalähteiden ohjelmoinnillista hyödyntämistä. Mm. seuraavat eri tieteenalojen tutkijat ovat aktiivisesti mukana omien pakettiensa ja koko projektin kehitystyössä:

Projektin tavoitteet

Tilastolliset ja graafiset menetelmät. Projekti pyrkii tarjoamaan yhteiskuntatieteille relevantteja laskennallisia työkaluja R-kielen täydentämiseksi tältä osin. Erityisesti rOpenGov tarjoaa työkaluja uusien datalähteiden käyttöön.

Dokumentaatio. Projektissa uskotaan että korkealaatuinen dokumentaatio ei ole vain hyvä kehittämistrategia vaan myös ehdoton edellytys sille että uudet työkalut otetaan käyttöön. Jokainen rOpenGov-paketti sisältää vähintää yhden vignetin (ohjedokumentti R-projektissa), jossa esitellään tehtäväkältöisesti, läpinäkyvästi ja toistettavasti kuvaus paketin toiminnallisuudesta ja mahdollisuuksista. Pakettien ensisijaiset vignetit käännetään automaattisesti online-ohjeiksi rOpenGov:n verkkosivuille.

Skaalautuvuus. rOpenGov on jaettu ohjelmistoalusta joka mahdollistaa laajennettavien, skaalautuvien ja keskenään yhteensopivien ohjelmistojen ripeän kehittämisen. Yksittäinen tutkija ei kykene tuottamaan näin monipuolisia työkaluja kuin mitä on tarpellista uusien datalähteiden potentiaalin hyödyntämiseksi.

Avoin lähdekoodi. rOpenGov on ja tulee aina olemaan 100 % avoimen lähdekoodin projekti. Projektissa käytetään laajasti git:iä ja Github:ia versionhallintaan and yhteistyöhön. Kaikki paketit julkaistaan avoimen lähdekoodin lisensseillä, jotta käyttäjillä ja kehittäjillä olisi pääsy algoritmeihin sekä niiden sovelluksiin, ja että kansainvälinen tiedeyhteisö voi omistaa tutkimuksen tekemiseen vaadittavat ohjelmistot.

Toistettava tutkimus. Projektissa pyritään edistämään tutkimuksen toistettavuutta tarjoamalla työkaluja ja työvirtoja, jotka ovat helposti sovitettavissa erilaisiin tutkimuskysymyksiin erilaisissa tutkimusasetelmissa. Yhdenmukaisen käyttöliitymän äänestysdataan sekä taloudellisiin ja sosiaalisiin indikaattoreihin on yksi esimerkki tästä. Tämän kaltainen rakenne tekee analyyseistä suoraviivaisempia ja ymmärrettävämpi, kun dataa ei kerätä ja käsitellä erikseen jokaisella kertaa. Samoin läpinäkyvä dokumentaatio algoritmien yksityiskohtineen luo puitteet hyvälle tieteelliselle laskennalle ja tekee edistynyttä tieteellistä metodologiaa, työtapoja ja ymmärrystä tutuksi laajemmalle yleisölle.

Avoin kehitystyö. Projektissa käyttäjiä rohkaistaan astumaan kehittäjien rooliin, joko kehittämällä rOpenGov-yhteensopivia paketteja tai pakettien dokumentaatiota. Lisäksi rOpenGov tarjoaa foorumin ryhmien ja projektien yhteistyölle, joilla on yhteisiä tavoitteita ohjelmistojen kehityksessä. Tällainen yhteistyö voi myös auttaa tutkijoita oppimaan lisää laskennallisten ja tilastollisten menetelmien yhteiskuntatieteellisista sovelluksia. Tämän ohella projekti tarjoaa pakettien kehittäjille lisähyötyjä, kuten TravisCI skriptit automaattisiin rakentumisraportteihin, automaattisesti generoituvat online-ohjeet paketeille, yhteisen pakettien jakamisen projektin verkkosivulla sekä näkyvyyttä ja tunnustettavuutta yksittäisille paketeille. Avoimen kehitystyön malli luo puitteet ohjelmistojen kehittämiselle virheiden korjaamisen ja laajennoksien rakentamisen kautta ja tarjoaa työkaluvalikoiman, joka mahdollistaa tutkijoiden perehtyä ja laajentaa metodeita.

Kielipolitiikka

rOpenGov perustuu tilastolliseen R-ohjelmointikieleen. R on korkean tason tulkattava ohjelmointikieli, jolla on helppo testata uusia laskennallisia menetelmiä. Olioperusteinen rakenne mahdollistaa moninaisten ja kompleksisten yhteiskuntatieteellisten tutkimusongelmien mallintamisen ja ratkaisemisen.

Valtaosa projektin komponenteista jaetaan R-paketteina. Näin käyttäjillä on mahdollisuus käsitellä, analysoida ja raportoida datoja ja tutkimuksen tuloksia. Projektiin ovat tervetulleita myös tukipalveluja ja metadataa tarjoavat paketit. Yleisperiaate on että pakettien julkaisuversiot jaetaan CRAN-verkoston kautta ja kehitysversiot rOpenGov:n Github-organisaation kautta.

Projektin kieleksi on valittu R-kieli muuan muassa siksi että se tarjoaa:

  1. vakiintuneen järjestelmän ohjelmistojen paketoimiselle,
  2. monipuoliset mahdollisuudet automatisoituun dokumenttien luomiseen,
  3. verkossa olevan datan tehokkaaseen hyödyntämiseen sekä
  4. tuen moninaisten tilastollisten simulointien ja mallintamisten tekemiselle sekä
  5. tämänhetkistä huipputasoa edustavat graafiset graafiset ominaisuudet.

R:n puolesta puhuu lisäksi kielen ympärillä vaikuttava vahva ekosysteemi ja käyttäjäyhteisö. Lisäksi R on projektin tekijöille tutuin kieli ja sillä on vahvat näytöt samankaltaisista yhteisöllisistä projekteista muilta laskennallisten tieteiden aloilta. Samalla projektissa pidetään tarkkaa silmällä muiden ohjelmointikielien ja niiden ekosysteemien kehitystä, kuten Python- ja Julia-kielten, ja kielipolitiikkaa voidaan tulevaisuudessa laventaa.

Liity yhteisöön!

Ajankohtaisia linkkejä