PyCon Ireland 2016: parhaat pointit

Kävin viime syksynä Irlannin PyConissa (lue myös aiempi blogaukseni Suomen PyConista) ja nyt viimein esitysvideotkin on laitettu YouTubeen.

Seminaaripäivä alkoi viiden herätyksellä, jota seurasi välilasku tunnin taaksepäin ajassa, ja sitten toinen tunti taaksepäin Irlantiin. Dublinia en valitettavasti päässyt näkemään kovin paljoa, vaikka päivälle kertyi reilu 22 tuntia valveillaoloa. Illalla kävimme konferenssihotellilla katsomassa ympärillemme ja otimme oluet muiden paikallaolevien konferenssivieraiden kanssa.

Lauantaina virkeänä paikalle, erittäin sikeiden unien jälkeen. Tämä konferenssi oli noin kahdesti Suomen konferenssia isompi, myös kestoltaan ja hektisyydeltään – hyvällä tavalla, totta kai. Sponsoriständit suoraan salien edessä käytävällä rajoittivat kulkua ja nostivat äänenvoimakkuutta kenties turhankin paljon, mutta toisaalta ne sai käytyä läpi tauoilla.

Paikallinen työministeri Mary Mitchell-O’Connor avasi tapahtuman. Enpä tiennyt, että Irlannin viennistä 40 % on teknologiaa, tai että neljä viidestä suurimmasta vientiyrityksestä ovat teknologia-alalla! Valitettavasti hän ei tainnut jäädä paikalle seuraamaan tapahtumaa pidemmäksi aikaa, jonkinlainen jutustelu olisi ollut varmasti antoisaa.

Pythonin käyttö yleistyy Mozilla Firefoxissa

Ensimmäisen keynoten piti Tarek Ziadé Mozillalta, otsikko sopivasti Mozilla & Python. Hän kertoi miten Pythonin käyttö on yleistynyt Mozillalla Firefox-selaimen julkaisuketjussa. Vielä vuonna 2009 Mozillalla oli erittäin sekalainen seurakunta ohjelmointikieliä ja -kehyksiä, mutta nyt suurin osa on Pythonia ja Djangoa.

CertBot: olennainen osa tietoturvaa

Hienoa heijastusta Suomen PyConiin tuli Justin Mayerin Essential Python Security -esityksessä, kun hän mainitsi CertBotin (aiemmin Let’s Encrypt Client) olennaisena osana tietoturvallista infrastruktuuria. Esityksessä käytiin lähinnä läpi paljon hyviä käytäntöjä ja ratkaisuja, eli kalvot kannattaa katsoa – ne ovat niin oleellisia, että kaivoin linkinkin tähän artikkeliin!

Pythonilla helppoa käsitellä suuriakin määriä dataa

Heijastusta Suomen konferenssiin tuli myös tietojenkäsittelyteemasta. Irlannissa sitä oli puolen ohjelman verran. Zalandon Ana Peleteiro Ramallo veti perustason esityksen Introduction to Data Science in Python. Oikein hyvä perustason lähtö, jos ei tunne alaa. Tämä, seuraava Ali Kingin Data Pipeline Evolution ja Breandan Considinen Experimenting in Tensorflow – yhdistetynä Suomen konferenssin puheisiin aiheesta – antoi ymmärtää vain yhden asian: Pythonilla on todella helppoa ja tehokasta päästä käsittelemään suuriakin määrää dataa. Sitten täytyy vain oppia matematiikka ja tilastotiede.

Läheltä liippasi Johannes Ahlmannin How to Merge Noisy Datasets. Joskus, tai pikemminkin yleensä, kerätty tieto on eri tavoin sotkuista. On erilaisia merkistöjä, eri kulttuureissa ihmiset nimetään eri tavoin ja osoitteet ovat eri maissa erilaisia. Puhuja esitteli miten näihin saadaan tolkkua erilaisten Python-kirjastojen avulla. Siellä oli monta kirjastoa, joista olisi ollut hyötyä, jos niitä olisi ollut aikoinaan olemassa.

Python-tulkki

Pythonin sisäisestä toiminnasta on aina kiva kuulla myös. Stephane Wirtel puhui otsikolla CPython Bytecode and VM siitä, miten Python-tulkki (virallisen toteutuksen nimihän on CPython) kääntää ihmisluettavan ohjelmakoodin väliaikaiseen muotoon, jota tulkki itse asiassa tulkitsee. Hän kävi läpi tiedon rakenteen ja miten ihminen voi sitäkin lukea.

Säielukon poistaminen Pythonista

Toinen keynote liippaa läheltä. Se tuli Larry Hastingsilta, joka on Pythonin ydinkehittäjiä. Hänen esityksensä nimi oli GILectomy. (Kyseinen video ei ole juuri tästä seminaarista, mutta puheen sisältö on suunnilleen sama.) Kyseessä on nk. GILin, prosessinlaajuisen säielukon (Global Inerpreter Lock) poistaminen Pythonista. GIL on suorituskykyinen ja elegantti tapa taata säikeelle vapaat kädet koodin suorittamiseen, mutta vastapainona monisäikeiset ohjelmat hidastuvat moniytimisillä koneilla. Pythonin kehittäjä Guido van Rossum toi sen kieleen vuonna 1992, jolloin tietokoneissa ei ollut kuin yksi ydin, ennen kuin Linuxissa oli tukea säikeille.

Ongelma on alkanut muodostua nykyään, kun moniytimiset suorittimet alkavat yleistyä jopa älykelloissa. Tällä hetkellä Hastingsilla on ideoita miten ratkoa tämä tilanne, mutta hän etsii vielä parhaita kompromisseja. Suorituskyky ei ole vielä riittävän hyvä yksisäikeisille ohjelmille ja C-ohjelmointikielellä kirjoitetut moduulit saattavat hajota. Moduulien hajoamisen voisi välttää esimerkiksi toimittamalla kaksi versiota kielestä, mutta päätöksiä ei vielä ole. Odotamme siis innolla mitä tästä tulee!

Oma esitykseni: Plug in with Python

Pääsin itsekin lavalle. Uusin aiemmassa Suomen PyConissa olleen Plug in with Python -esitykseni. Tällä kertaa olin laajentanut kalvosettiä, ettei aika pääsisi loppumaan kesken. Ikävä kyllä videotykin kanssa oli ongelmia, kuten kaikilla muillakin, joten esityksessä tuli hieman kiire. Jouduin karsimaan jonkin verran mielenkiintoista materiaalia pois, mutta toisaalta esitys saattoi pysyä tämän ansiosta paremmin kasassa. Voit itse katsoa tähän upotetusta videosta mitä mieltä olet.

***
Kuva: Flickr Creative Commons, Cazz.

Etätöistä lähitöihin – Gironasta Helsinkiin

Gironan jälkeen on taas virkistävää pyöräillä Helsingissä.

Tein viime syksynä kolme kuukautta etätöitä Gironasta, Kataloniasta. Olen kirjoittanut aiemmin sekä ensimmäisistä vaikutelmista että työn ja elämän sujumisesta parin kuukauden etätyön jälkeen. Nyt on aika miettiä mitä kolmen kuukauden etätyöstä voi oppia.

Säännöllisyys tärkeää etätyössä(kin)

Työt sujuivat loppuun asti melko hyvin. Pieniä ongelmia aiheutti lokakuussa pitämäni viikon loma. Ystäväni tuli näet käymään Gironassa, minkä vuoksi päätin lomailla ja keskittyä pyöräilemiseen. Pyöräily sujui hyvin, kilometrejä ja nousumetrejä kertyi, ja sain myös lomalla hieman töitäkin – Codenton sisäisiä kehityshommia – tehdyksi. Loman jälkeen töiden aloittaminen sen sijaan oli paljon vaikeampaa kuin olisin luullut. Ilmeisesti etätyössä säännöllisyys ja jatkuvuus on tärkeää. Pienenkin tauon, kuten loman tai sairauden jälkeen työn alottaminen vaatii erittäin suuren ponnistuksen. Oppi: ei lomaa muutaman kuukauden etätyöjaksoilla.

Pitkäaikainen, luova työskentely vaikeaa nykytyökaluilla

Eräs tekemäni projekti eteni vaiheeseen, jossa projektin suunta kävi epäselväksi. Kukaan projektissa mukana oleva ei oikein tiennyt mitä pitäisi tehdä seuraavaksi. En ainakaan minä. Tämmöinen epäselvyys on ihan normaalia pitkissä projekteissa täysin riippumatta suunnitelmista ja johtamisesta: maailma muuttuu projektin aikana. Yleensä epäselvyys ei ole ongelma, koska asioista keskusteleminen, tilanteen hahmottaminen ja ratkaisujen piirtäminen yhdessä muiden projektissa mukana olevien kanssa luo nopeasti yhteisen ymmärryksen ja selvyyden seuraavista tehtävistä. Etätyönä tämä ei kuitenkaan onnistu helposti, jos ollenkaan. Nykyisin työkaluin on liki mahdotonta työskennellä yhdessä riittävän pitkään ja luovasti. Oppi: ei pitkiä projekteja etätöinä.

Mieti, kauanko voit olla ulkomailla ennenkuin ikävä iskee

Kolmannen kuukauden aikana ikävä Suomeen, suomalaisia ystäviä ja kotikontuja kohtaan kasvoi. Gironasta ja sen lähistöltä löytyi jatkuvasti uutta kahden kuukauden ajan. Sää alkoi myös huonontua. Iltaisin oli viileää, eikä terasseilla voinut enää lukea kirjoja T-paidassa. Lokakuun aikana elämäni alkoi arkistua, rutinoitua. Alkoi tuntua olevan aika palata kotiin. Oppi: kaksi kuukautta on sopivan mittainen etätyöjakso.

Varaudu siihen, ettei teknologia aina toimi

Ikivanhassa kaupungissa kivimuurien keskellä kännykät toimivat melko huonosti. Siksi puhelut on hoidettava jollakin nettisysteemillä: Whatsapp, Slack ja Google Hangouts osoittautuivat kaikki oikein hyviksi. Kannattavan tietokoneeni kamera sen sijaan osoittautui epäluotettavaksi. Noin puolessa puheluista kamera kieltäytyi toimimasta. En tiedä mistä tämä johtui – eikä tietokoneen boottaaminenkaan ratkaissut ongelmaa. Merkillistä, mutta nykytekniikalla ilmeisen väistämätöntä. Oppi: teknogia voi pettää yllättävin tavoin.

Etätyö kannattaa

Entä nyt? Olen taas Helsingissä. Projektin saimme raiteilleen keskustellen ja piirrellen puolen päivän verran toimistossamme. Lumi satoi maahan, siirryin maantiepyöräilystä talvipyöräilyyn. Ihana luminen keli, pyöräily on yhtä riemukasta kuin helteisessä vuoristossa. Ystäviä joka puolella, kaikki iloisia kuten minäkin jälleennäkemisestä.

Ai niin, kaukaa näkee paremmin. Useissa kokouksissa ymmärsin asioita, joita paikalla fyysisesti olevat eivät olleet ymmärtäneet. Samoin ehdin ajatella Codenton liiketoiminnan kehittämistä enemmän kuin olisin ehtinyt Kaisaniemen päämajassamme. Etätyö kannattaa.

Tämän artikkelin on kirjoittanut Matti Kinnunen ja sitä ovat sittemmin muokanneet muut Codenton työntekijät.

Katso Codenton avoimet työpaikat