Karttasovellus kehittäjän näkökulmasta

2024-05-31

Termeistä

  • Kehittäjä = sovelluksen/ohjelmiston suunnittelija/ohjelmoija
  • Verkkosovellus = ohjelmisto, jota käytetään internet-selaimella
  • Datasovellus = Verkkosovellus jonka ensisijainen tehtävä on esittää dataa.
  • Houstaaminen = missä sovellus on saatavilla selaimelle
  • Serveripuoli = palvelimella, ei selaimessa tapahtuvat operaatiot

Tausta

  • päivätyö Kelan tutkimusyksikössä (erikoistutkija/tutkimus-atk:n yleismies)
  • aiemmin YK FAO, HY Aleksanteri-instituutti, sekalaisia konsultointiprojekteja
  • vapaa-ajalla vapaan lähdekoodin ohjelmistokehitystä, yksi rOpenGov↗-yhteisön perustaja ja kehittäjä
  • avainsanat: data, R, linux, docker, http, paikkatieto, opendata

Sovelluksen historia

Kehittämisperiaatteet

  • avoin data: vapaus käyttää, muokata ja uudelleenjakaa
  • vapaan lähdekoodin teknologiat: joustavuus, tulevaisuusvarmuus, koodin jakaminen, matalat kiinteät kustannukset (ei lisenssi tai alustakustannuksia)
  • selainpohjaisuus: nopeus, tietoturva, ei ylläpitoa eikä houstauskustannuksia

Datalähteet

  • THL:n Sotkanet: HOS-datat ja sairausindeksit
  • Tilastokeskuksen paikkatietoaineistot, Paavo-postinumeroaineisto sekä Kuntien avainluvut -tietokanta
  • Kelan avoin data

https://karttasovellus.diak.fi/data.html

Teknologiat

Datan poiminta ja harmonisointi R-kielellä

  • poiminta: pxweb, sotkanet, geofi, rvest, httr2
  • harmonisointi: tidyverse,sf,janitor

Käyttöliittymä Javascript-kielellä

Staattinen verkkosivu, joka toimii kokonaan selaimessa. Houstataan Github-palvelussa: github.com/DiakGit/kartta ↗

Lopuksi

  • PowerBI (Microsoft), Tableau (Salesforce), Looker (Google) tai Cognos (IBM) eivät ainoat vaihtoehdot
  • Selainpohjaiset sovellukset nopeita, energiatehokkaita ja tietoturvallisia
  • Vapaan lähdekoodin teknologioilla ei ole myyntimiehiä, kehittämisessä paljon samaa tieteellisen tutkimuksen kanssa
  • Vapaa lähdekoodi ei synny itsestään - kehitystä voi tukea osallistumalla tai rahallisesti!