Ratkaisutiimi vietti 13. perjantain Heimarissa kehittämässä omaa toimintaansa.
Päivän aiheita olivat edellisen vuoden projektit, oman osaamisen arviointi ja kehittäminen, uudet toimintatavat sekä Pyramus 2009:n käynnistys.
Päivä aloitettiin Villen johdolla uuden projektin Pyramus 2009:n esittelyllä.
Noin pähkinänkuoressa Pyramus on toiminnanohjaus, -suunnittelu ja seurantaväline, jolla voidaan harrastaa kannattavuuslaskentaa, kustannusseurantaa, tilastointia sekä raportointia.
Ohjaavina ideoina projektissa ovat:
- Open source
- Yksinkertainen ja helppo käyttää
- Käyttäjälähtöinen
- Helppo ylläpitää
- Turvallinen
- Datan täytyy säilyä tapahtui mitä tahansa
- Sisältää henkilörekisterin (tietoihin pääsy tulee olla tarkkaan varjeltu)
Projekti käsiteltiin suhteellisen nopeasti. Varsinainen suunnittelun aloittaminen sekä projektiryhmän kasaaminen päätettiin jättää lähitulevaisuuden ongelmaksi.
Kun Pyramus -projekti oli saatu käsiteltyä loppuun asti aloitettiin keskustelmaan edellisestä vuodesta. Edellisenä vuotena oli ehtinyt menemään läpi niin paljon pieniä projekteja, että emme mitenkään voineet käsitellä niitä kaikkia. Sen sijaan käsittelimme kaksi suurinta projektia: Muikku 2:n ja eDelfoi 2:n ja niputimme pienet projektit kahden otsikon alle: Pienet projektit sekä open source -projektit. Keskusteltavaa suurista projekteista tuntui piisaavan, mutta pääasiallinen viesti oli selkeä: eteenpäin on menty ja reilusti, niin laadussa kuin käytettävyydessäkin. Silti parannettavaa on vielä kummallakin saralla paljon.
Pienissä projekteissa muutos on ollut viime vuonna erityisen suuri, sillä niiden tekemisessä ole enää lähdetty rakentelemaan Nexus -ympäristöjä vaan ollaan useimmiten päädytty open source -ratkaisuihin kuten Wordpress tai Wiki. Ensimmäisen Wordpress-installaation jälkeen (Nettilukion blogi) on erilaisia pikkusaitteja ehditty tekemään Wordpressin avulla jo 10 kappaletta. Wordpressi lisäksi Wiki-pohjaisia ympäristöjä on matkan varrella siunaantunut jo kuusi kappaletta ja useita muita ratkaisuja on ehditty protoilemaan ja tutkimaan. Kelkka on siis vihdoin alkanut kääntymään Nexuksesta open sourceen! Rock Rock!
Menneisyyteen tuijottelun jälkeen siirryimme kaikkien niin kovin rakastamaan osuuteen: omien ja tiimitovereiden vahvuuksien kartoittamiseen. Käytännössä kirjailimme kukin paperille omia, tiimin ja tiimitovereiden vahvuuksia ja heikkouksia. Lopuksi tulokset vedettiin kootusti yhteen (tuloksia voi käydä kyselemässä oikeuden määräyksen kanssa minulta). Kaikki tämä piina tähtäisi seuravaan tehtävään: miten meidän pitäisi yksilöinä ja tiiminä kehittyä, että pysyisimme paremmin tekemään työtämme. Keskustelussa ilmeni, että varsinaista koulumuotoista koulutusta pidettiin epätoivottavana tapana mutta kirjallisuutta kaivattiin kyllä. Kirjoja olisi hyvä olla ainakin väreistä, Ajaxista, JavaScriptistä, Prototypestä sekä Scriptaculouksesta.
Keskustelussa tuli esille myös se, että joidenkin kohdalla kehittymiselle nähtiin esteenä pelko siitä, että kun tässä talossa kehittyy jossakin hyväksi vedetään kehittynyt yksilö kouluttamaan pajoihin sun muihin virvellyksiin osaamaansa asiaa, eli käytännössä tietynlaisella persoonalla varustettuja ihmisiä siis rangaistaan kehittymisestä. Tähän ongelmaan ehdoteltiin ratkaisuksi sitä, että nörtit yrittäisivät viestiä osaamistaan, olemistaan heille luonnollisella tavalla, eli blogeissa, ningeissä, tubeissa sun muissa hassun nimisissä palveluissa. Lisäksi keskusteltiin mahdollisuudesta jakaa tietoa MMM:lle, josta sitä voitaisiin näppärästi jakaa eteenpäin.
Muonitustauon jälkeen lähdettiin kohti iltapäivää ja konkretiaa. Aiheena oli tiimin uudet toimintatavat. Uusiin ehdotettuihin ja keskusteltaviin toimintatapoihin kuuluivat extreme programming, koodikatselmoinnit sekä bugien hallinnan kehittäminen.
Extreme programmingilla tarkoitetaan satsia ketterän ohjelmistokehityksen menetelmiä, joihin kuuluu mm. pariohjelmointi, testivetoinen kehitys, jatkuva iteraatio jne. XP-menetelmiä olemme kyllä käyttäneet ennenkin palvelinpuolen kehityksessä mutta tällä kertaa keskustelimme ideoiden käyttöönotosta myös websuunnittelutyössä. Lisäksi käsittelimme yksikkötestauspohjaista suunnittelua.
XP-keskustelu aloitettiin pariohjelmoinnista (kaksi koodaria koodaa samaa projektia samalla koneella). Pariohjelmointi (ns. XP-koodaus) on todettu varsin hyväksi metodiksi, jakaa tietoa sekä ratkaista vaikeita ongelmia mutta sitä ei vain meillä ole vielä kokeiltu webohjelmointipuolella. Ideaa kokeilla XP-koodausta webkoodauksessa ei sinänsä tyrmätty mutta todettiin kuitenkin, että esimerkiksi JavaScriptin vääntämiseen se ei vielä ole paras mahdollinen opiskelukeino, sillä websuunnittelijoiden pohjatieto JavaScriptissä ei ole vielä riittävä. Eli ensin kirjoista pohjatieto kuntoon ja sitten XP:nä kehittymään.
Yksikkötestauksen käyttöönotosta syntynyt keskustelu oli lyhyt mutta hedelmällinen. Lopputuloksena oli päätös kokeilla suunnittelutapaa uudessa Pyramus-projektissa ja jatkaa käytäntöä sitä seuraavissa projekteissa, jos se todetaan hyväksi ja toimivaksi toimintatavaksi. Vanhojen kokemusten perusteella tiedettiin jo, että vanhoihin jo olemassa oleviin projekteihin yksikkötestaus ei sovellu.
Seuraavaksi keskustelu jatkui koodikatselmointeihin. Käytännössä koodikatselmointi tarkoittaa sitä, että kun ohjelmaan / sivustoon ollaan tekemässä päivitystä, luetaan kaikki muuttunut koodi läpi vähintäänkin kahden mutta mielellään useamman koodarin voimin. Käytännöllä pyritään vähentämään virheiden määrää, sekä parantamaan koodin laatua. Koodikatselmoinnit ovat koodareiden puolella jo arkea, mutta websuunnittelija puolella käytäntöä ei kuitenkaan käytännön syistä ole koskaan edes harkittu. Palvelimien virtualisoinnin myötä on kuitenkin mahdollistunut tilanne, jossa ratkaisuilla on oma palvelin jota vasten websivustoa kehitetään ja kun koodi on valmis ja testattu, voidaan se koodikatselmoinnin kautta viedä varsinaiselle tuotantopalvelimelle.
Hommaa helpottamaan päätettiin samalla uudelleenorganisoida versiohallinta käyttämään trunk/stable-haaroja. Nykyinen versionhallinta siis jaetaan kahteen haaraan, joista toinen edustaa testipalvelimen ja toinen tuotantopalvelimen tilannetta.
Lopuksi keskusteltiin bugien hallinnasta. Ehdotuksena oli, että otamme Bugzillan kunnolla käyttöön keskitetyillä ilmoittajilla, hautaamme bugilistan, alamme viikkotasolla seuraamaan bugien määrää ja niiden ratkaisujen vasteaikaa sekä uudelleenohjaamme Muikun bugit takaisin helpdeskiin.
Ehdotuksista tuli käden käänteessä päätöksiä, sillä päätimme ottaa Bugzillan käyttöön ainoana bugien hallintavälineenä. Bugzilla on tosin asennettava uudestaan sillä tämän hetkinen asennus ei toimi. Keskitetyn ilmoittamisen kannalla oltiin yksimielisesti, koska tuolla ratkaisulla säätyttäisiin kaaokselta, jonka bugien ilmoitusmuutos muutoin aiheuttaisi sekä saataisiin ongelmien ohjautuminen oikeille urilleen, eli ensisijaisesti helpdeskiin, josta ihan oikeat bugit ohjautuisivat Bugzillaan ja sitä kautta korjaajien tietoon.
Sitten eikun ideoita toteuttamaan…