Taas elämä jatkaa kiertokulkuaan, kohti Tampereen vanhaa osaa kaupungista. Muutan puolen vuoden asumisen jälkeen pois Alajärveltä. Joku sanoi, että muutan pois Jumalan selän takaa. Itse olen asunut lapsena ja nuorena Peräseinäjoella, joten olen jo niin paatunut, että en itse niin osaa asiaan suhtautua. Tampere on kuitenkin hyvä kaupunki, vaikka maailmassa varmasti on parempiakin kaupunkeja. Itse ulkopuolisena olisi todennäköisesti hyvin järkyttynyt omasta kohtalostani, mutta pitää vain yrittää vaieta sellaiset ajatukset.
Uusi iteraatio
Elämässä ja ohjelmistokehityksessä ei alussa voi tietää, että mitä tuleman pitää. Eikä mielestäni todennäköisesti voida pitää onnistuneena, jos etukäteen jo tietää tulevaisuuden syntymästään asti. Joskus pitää eksyä, jotta voisi myös onnistua. Isoin vaiva on raaputtaa tyhjät arvat, voitot tulevat sitten mukana sattumalta. Samoin uuteen kirjahyllyyni on kertynyt valtavasti oman alan kirjallisuutta, enemmän tai vähemmän tarpeellista.
Kaikki myös alkaa pienestä, monimutkaiset asiat eivät tule kerralla oikein. Elämä on etenkin asia, jossa pitää elää vaihe vaiheelta, jotta voi päästä loppuun. Loppu ei edes ole mikään odottamisen arvoinen, tärkeintä on ne ennen sitä koittavat vaiheet. Näissä iteraatioissa mitataan, että pysyykö junassa mukana. Aiemmat vaiheet eivät aina mene nappiin, mutta valmiiksi asti ne on kuitenkin saanut. Perään kuuluttaen: Definition of Done?
Uudet työt
Vaihdan työni Japolta Sofia Digitalille muuton yhteydessä, ehkäpä Sofia Digitalilla tunnetuimmat sovellut Suomessa ovat Katsomo ja Ruutu. Tehtävät muuttuvat tuotannonohjauksista enemmän front-end -puolelle eli päätelaitteen pariin. Työni on älytelevisioihin liittyvien sovellusten tekemistä. Koen tämän aihepiirin myös kiinnostavampana kuin teollisuuden, media-ala on paljon seksikkäämpi puheenaihe kavereiden kanssa baareissa käydessä. Kaikella on aina kuitenkin puolensa.
Itse TTY:lla opiskellessani en ymmärtänyt Kuvan 2. Pig & Chicken-vitsiä, jollaisena sitä itse aikoinaan pidin. Nykyään olen tajunnut työn kautta varsin hyvin, että mistä siinä on kyse. Tämä on valitettava asetelma, joka usein ohjelmistoja kehittäessä tulee vastaan, miksi ei monessa muussakin tilanteessa. Koodari on kuitenkin se henkilö, joka tekee ohjelmistot. Koodaus on siis se tärkein asia, ohjelmointi on usein se ongelmallisin osa ohjelmistokehitystä. Nykyään arvostan todella paljon, että kaikilla osapuolilla on ymmärrystä ohjelmoinnista, jopa asiakkaalla. Valitettavasti maailma on kärjistäen sellainen, että pomona saattaa olla joku dorka miljardöörin poika, itse on se huippulajakas nero. Joskus kuulin, että silloin on valmis DI, kun ei tarvitse juoda kaikkea ilmaista viinaa. Niin maailma toimii.
Itselleni erittäin tärkeää oli suorittaa sertifikaatti JavaScriptistä, CSS ja HTML -teknologioista. Myös vuoden työkokemus PHP-kielestä on eduksi. Voin siis kenelle vain suositella sertifikaattien suorittamista, niistä saatava hyöty on moninaista. Sen lisäksi että osoittaa omaa osaamistaan, niin myös oppii valtavasti valmistautuessa sertifikaattiin. Myös itse hallitsen selainten tuen 20 vuoden takaa, niin osaan tehdä kaikille älytelevisioille yhteensopivaa koodia. Kuvassa 3. ostamani ensimmäinen JavaScript-kirjani, jossa esitellään dynaaminen webbisivu alkuperäisessä muodossaan [3]. Netscapesta tulee itselleni aina mieleen kirjaston tietokone, jota sai käyttää vartin kirjojen haun lisäksi [4]. Myös lähes pyhä 30 vuoden takainen painos ’C-ohjelmointikieli’-kirjasta löytyy uudesta kirjahyllystäni.
https://youtu.be/CMvFKDHh4WM
Vaikka sertifikaatin testissä kaikkea ei täydellisesti osaisikaan, niin tietää ainakin, että mitä kaikkea teknologioilla voi tehdä. Hieman tuli sellainen kuva, että Microsofti halusi avata esiriippuaan: samanlaisia kuolevaisia me kaikki ollaan, ottaa vain chillisti. Tentataan 1½ tuntia, jonka aikana todetaan, että on osa meitä. Ei paljoa poikkea jostain Mensan testistä. Tämä on asia jota itse toivoisin Suomen peruskoulutukseen; standardoituja testejä.
Uudet harrastukset
Jatkan aiemmin hyväksi toteamaani harrastusta käydä säännöllisesti kävelyllä. Oma painoni kivasti laski kesän aikana, kuten aiemminkin on käynyt. Nyt kun työmatkaa kävellen on 20 minuuttia suuntaansa, niin saa hyvin hyötyliikuntaa päivittäin. Auton jätin pois käytöstä, jolloin ei tule edes turhia kuluja siitä.
Uutena harrastuksena minulle suositeltiin kirjoja. Luin elämäni ensimmäisen novellini aiheestä Nenä [1]. Ehkä voisi muutenkin lisätä kirjallisuusharrastusta. Töissä saa niin paljon käyttää televisioita, että on hyvä saada jotain vastapaino sille. Itse suosittelin omaan lukupiiriini 1850 vuonna julkaistua 2000 vuoteen sijoittuvaa utopistista kirjaa [2].
Pros & Cons
Aina on hyvä punnita asioiden hyviä ja huonoja puolia. Parhaimpana puolena itse koen, että pääsen Tampereelle asumaan. Työtä en täältä ole aiemmin löytänyt, joten sikäli hyvä muutos. Täällä on enemmän kavereita ja tekemistä. Kavereita pääsee kyllä näkymään, mutta ei oikein kiinnosta ajaa sen takia monta tuntia suuntaansa.
Vaikka palkka nousee, niin nousee myös elinkustannuksetkin. Todella vaikea arvioida, että miten sitten loppujen lopuksi kustannukset menevät. Täten koen tämän melko neuraaliksi asiaksi. Mikä lasketaan pakolliseksi kuluksi ja mikä sitten elintasoa nostavaksi asiaksi, niin niiden määrittely on hyvin yksilöllistä. Joku voi kokea autoilun luksukseksi, maaseudulla se on valitettavaa välttämättömyyttä.
Huonoimpana muutoksena mielestäni on se, että asuminen ja moni muu asia on hieman kalliimpaa. Myös ihmiset ovat hektisempiä. Pitää myös löytää oma porukkansa, joka joidenkin mielestä voi olla huono asia. Kaupungissa on helppoa olla yksinäinen, mutta on se sitä myös pienemmällä paikkakunnalla. Itselleni hieman isompi kaupunki sopii uskoakseni hyvin.
PS. Test Drive 2 -pelin julkaiseella DSI:lla on yhteyttä mm. Stuntiin ja Need for Speed -sarjaan. Kaikki lähtee pienestä! Perusperiaate ei ole kuitenkaan muuttunut mihinkään, enemmänkin vain yksinkertaistunut ja suoraviivaistunut.
https://www.youtube.com/watch?v=n7s0G8hc5Bs
Aiemmin olen kuunnellut nettiradiona Kohinaa [6]. Kuitenkin kun ongelmia on ilmennyt kyseisessä kanavassa, niin olen siirynyt nykyään NoLife-radioon [5].
Miten ohjelmoijan tulisi suhtautua omaan koodiinsa ja ohjelmointiin? Miten ohjelmointiin ja ohjelmoijiin tulisi suhtautua? Miten Tuppu suhtautuu ammattimaisen ohjelmistokehittäjän rooliin työelämässä? Onko asiakkaan tarpeet tärkeämpää kuin laadukas ja hyvä koodi? mitä on hyvä koodi? Kuinka monta ihmistä tarvitaan koodaamaan yhtä ohjelmaa? Miten tämä kaikki hallitaan?
Vesiputous
Itselleni on hyvin jäänyt mieleeni yksi kuvaaja, jonka suomalainen Visual Basic -kirja avasi erinomaisesti muiden asioiden ohella. En itse ole sitä löytänyt uudestaan, mutta erittäin hyvin mieleeni jäi kyseinen projektin eri vaiheisiin käytettävä aika piirakkadiagrammina. Kyseisessä kuvaajassa ohjelmoinnin osuus oli hyvin pieni eli vain n. 15 %:n siivu, jollaiseksi aikajakauma on käytännössä osoittautunut isoissa projekteissa. Seuraava humoristinen Suomen jääkiekon 1995 vuoden MM-voiton Ihanaa leijonat ihanaa karikatyyri muistuttaa nykyään perinteisestä ohjelmistoalan projektimallista eli vesiputousmallista [17].
Minkälainen nykyaikana olisi piirakkadiagrammi, jos ohjelmistokehittäjän työaika kuvattaisiin sillä? onko huuhata väittää, että ohjelmistokehittäjän työstä ohjelmoinnin osuus on vain pieni osa työtä. Mielestäni tämä vanha perinteisen projektimallin viisaus on unohtunut vanhojen oppien demonisoinnin myötä.
”Kuinka monta blondia vaaditaan vaihtamaan lamppu?
– Kaksi. Toinen pitää lampusta kiinni ja toinen pyörittää tuolia.”
Kukaan ei tietääkseni ole koskaan väittänyt, että ketterässä ohjelmistokehityksessä ei tarvitsisi suunnitella, määritellä ja testata ohjelmaa [3]. Kyse on vain siitä, että ketterässä ohjelmistokehityksessä sitä tulisi tehdä jatkuvasti, eikä vain painottaen projektin alkupäätä. Samoin kukaan ei tietääkseni ole väittänyt, että perinteisessä projektimallissa ei saa palata bumerangina vaiheissa taaksepäin.
”In the 1980s and early 1990s, there was a widespread view that the best way to achieve better software was through careful project planning, formalized quality assurance, the use of analysis and design methods supported by CASE tools, and controlled and rigorous software development processes. This view came from the software engineering community that was responsible for developing large, longlived software systems such as aerospace and government systems.
This software was developed by large teams working for different companies. Teams were often geographically dispersed and worked on the software for long periods of time. An example of this type of software is the control systems for a modern aircraft, which might take up to 10 years from initial specification to deployment. These plandriven approaches involve a significant overhead in planning, designing, and documenting the system. This overhead is justified when the work of multiple development teams has to be coordinated, when the system is a critical system, and when many different people will be involved in maintaining the software over its lifetime.” [12]
Hyvin suunniteltu on puoliksi tehtynä
Iso osa ohjelmoinnista on vain perinteistä iffittelyä eli suomeksi jossittelua, johon moni ohjelmoija kompastuu nokkeluuttaan, kun tekevät liian moni-mutkaisia kikkareita. Ehtolauseiden ongelma on siinä, että se edellyttää valtavaa haara- taikka polkukattavaa testausta joko manuaalisesti debuggerin kanssa tai sitten automatisoiduilla yksikkötesteillä.
Näitä asioita voidaan mallintaa perinteisellä vuokaaviolla, joka on ajalta ennen ohjelmistoalaa. Jos jotain ei vuokaaviolta löydy testauksessa, niin ohjelmaa ei oteta tuotantoon. Näin hieman pelkistäen, ohjelmien testaus on oma laaja kokonaisuutensa.
Miksi näin ei sitten aina tehdä koko ohjelmalle? Kyse on hyvin suurelta osin siitä, että kattavan vuokaavion piirtäminen ja automaatiotestien tekeminen vievät valtavasti aikaa. Kyse ei ole siitä, ettäkö ei olisi olemassa menetelmiä niiden tekemiseen. Vielä kun tähän lisätään kattava määrittelytiedosto, niin ajankäytöllisesti ei enää ehditä kehittämään ohjelmaa. [12]
Yksi iso ongelma perinteisessä projektimallissa on jatkuvasti päivitettävät suunnitelmat. Puhumattakaan odotettavista muutoksista asiakkaan tarpeeseen, jota asiakas itsekään ei yleensä tiedä, vaan olettaa ohjelmistokehittäjien tietävän. Kuvassa 1. hahmoteltuna ongelma visuaaliseen muotoon.
Projektimallin speksaus rajoittaa ohjelmointia, ketterässä kehityksessä on perimmiltään ihan eri filosofia. Projektimalli sopii hyvin esim. Olkiluoto 3 – ydinvoimalahankkeeseen tai muihin rakennusprojekteihin, joissa halutaan minimoida rakennusaika eri toimijoiden kesken. Ohjelmointi ei ole mitään pikakirjoittamiskilpailua, vaan muistuttaa enemmänkin blogikirjoittamista.
Asia ymmärrettiin kunnolla vasta vuosituhannen vaihteen IT-kuplan aikaan, kun sijoittajien rahat olivat loppu ja ei tullut mitään tulosta. Oli pakko keksiä jokin muu parempi tapa tehdä ohjelmia, kehittää kokonaan uusi ajatusmalli tyhjästä. Yhteiskuntia, ohjelmia ja muita vastaavia monimutkaisia järjestelmiä ei vain osata kehittää ylhäältä alaspäin johdetulla viisivuotissuunnitelmalla. Moni on varmasti sitä mieltä, että teoriassa asiat voivat toimia optimaalisesti, mutta käytännössä asiat ovat niin kaaottisia, ettei kukaan osaa niitä kaikkia käsitellä helposti.
Työajanseuranta
Työajanseuranta on alasta riippumatta hyvin ärsyttävää. Jokaisella alalla varmasti hyvin ymmärretään, että ihminen ei paljoa ehdi tai pysy tekemään työpäivän aikana. Tätä varten ennen teollistumista haalittiin viholliskansoista orjia, jotka tekivät raskaita töitä. Nykyään jopa kaupan kassat korvataan automatisoiduilla järjestelmillä. Myös tietojärjestelmissä ihminen on suurin pullonkaula, eikä ohjelmointi ole tähän mitenkään poikkeus.
”You should plan on working 60 hours per week. The first 40 are for your employer. The remaining 20 are for you. During this remaining 20 hours you should be reading, practicing, learning, and otherwise enhancing your career.” [7]
Ohjelmoijan odotettava työajankesto on kaikista vaihtoehdoista mahdollisimman pessimistinen arvio. Sen jälkeen kyseisen arvion saa kertoa piillä. Tämä on odotettavissa oleva työaika. Tämän voisi myös sanoa niin, että työajasta vain 15 % kuluu ohjelmointiin. Ajankäytön ymmärtäminen on monelle todella vaikeaa, että miten paljon kaikenlaista on ja miten vähän saa aikaan.
Asiaa voidaan lähteä myös LoC-käsitteestä eli koodiriveistä. Jos ohjelmoijat kehittävät ohjelmaa kovalla tasaisella 100 rivin päivävauhdilla ja vuodessa on 200 työpäivää. Kun ohjelman koko on 100K riviä koodia, niin työaikaa ohjelman kehittämiseen kuluu 5 vuotta. Vastaava ohjelma 40K koodirivisenä 50 rivin päivävauhdilla valmistuisi vuoden etuajassa. Näin yhtenä perinteisenä tapana arvioida työaikaa, käytännössä ohjelma kasvaa 1 riviä päivässä projektin loppulla. Vertailuksi Lidlin SAP-pohjainen ERP maksoi 500 M€, työstettiin 7 vuotta ja tulos oli 0 riviä koodia valmiina [4]. Tämä jos mikä vakuuttaa itseni suunnitelmatalouden toimattomuudesta nykymenetelmin.
”I remember feeling so good about myself for the long hours I was working. I remember feeling dedicated. I remember thinking that working at 3 am is what serious professionals do. How wrong I was!” [7]
Koodirivien laskenta on monien mielestä erittäin huono tapa tehdä työajan seurantaan, mutta oikein käytettynä kuitenkin paras tunnettu menetelmä. Esimerkiksi ammattikorkeakoulun opinnäytetyöni oli alle 10K riviä C#-koodia, jota myöhemmin laajensin mm. maanjäristyslaskemilla. Koodirivien arviointi vaatii vahvaa ymmärrystä ohjelmoinnista, joten ehkä sen takia turvaudutaan mm. tuntikirjanpitoon.
Tunteja seurataan myös laskutuksen takia, usein ohjelmia myydään joko kiinteähintaisina projekteina taikka sitten tunteina. Kyse on tästä markkinataloudesta, jonka opit eivät erityisen hyvin sovellu immateriaalisten ohjelmien myymiseen. Tämä herkästi johtaa samanlaisiin ongelmiin kuin suunnitelmatalouden tuotesuunnitelussa.
Hyvä koodi
Itse aikoinaan kun ohjelmointia aloitin, niin olin hyvin huolissani omasta osaamisestani. Jotenkin kuvittelin, että ohjelmoinnissa olisi jokin ns. viisasten kivi, jolla kaikki asiat ratkeaa. Kuitenkin asioita ja tapoja on oppinut enemmän ja enemmän, eikä vielä sitä kaiken kullaksi muuttavaa juttua ole tullut vastaan. Ei niin kaavioista, speksauksesta, työkaluista, olio-ohjelmoinnista, opeista, sertifikaateista kuin muistakaan alaan liittyvistä asioita saanut kaiken tekevää. Olen kuitenkin saanut huomata, että olen oppinut aiempaan nähden. Yleensä vaihtoehtojen hyvät ja huonot puolet oppii tiedostamaan, jolloin osaa valikoida tilanteeseen paremman vaihtoehdon.
”We are uncovering better ways of developing
software by doing it and helping others do it.” [3]
Olen ymmärtänyt, että ykkösien ja nollien oikein järjestelyä voi tehdä monella tavalla. Mikään niistä tavoista ei välttämättä ole täysin oikea tai väärä. Jos on rajapinta ulkopuoliselle taholle, portti tai toisen ohjelmoijan tekemä kirjasto, niin se pakottaa tekemään asiat samoin. Tällöin on hyvä, jos asiasta on dokumentaatiota, koska itse ei voi asiaa ratkaista haluamallaan tavalla.
Hyvä koodi on kuitenkin arvokasta, jota en itsekään aina ole ymmärtänyt [9]. En ole aina tiennyt mitä on ERP eli tuotannonohjausjärjestelmä, mutta olen niitä ohjelmoinut. Usein tulee vähäteltyä oman koodinsa arvoa, ei ymmärrä sen olevan valtavien rahasummien arvoista. Yksi Like-nappi voi olla Facebookille miljardien dollarien arvoinen, se tuo käyttäjille valtavasti hyötyä. Samoin Googlen hakukoneen etusivulle ei ole paljon muuta sisältöä kuin vain yksi tekstikenttä, mutta todennäköisesti silti se on paljon parempi kuin mikään muu monimutkaisempi ratkaisu. Koodin arvo on laskennallisesti tulo käyttöasteesta ja loppukäyttäjän siitä saamasta lisähyödystä. Käyttämätön ja asiakasta hyödyttämätön koodi on arvotonta.
Aivan samoin kuin koodirivien määrän laskeminen on ongelmallista työajan seurantana, niin ihan samoin koodin arvon laskeminen työtunteina on typerää. Usein yksinkertaisempi voi olla jopa arvokkaampi, siinä on vähemmän hukkaa ja turhaa roskaa. Etenkin käytettävyyden kannalta yksinkertainen ja selkeä on usein parempi, myös ohjelmakoodin ylläpidettävyyden kannalta yksinkertainen ja selkeä on yleensä parempi. Perinteisen mallin mukaisesti loppuvaiheessa huomatun asian korjaaminen voi olla työmääränä 50 – 200 kertaa isompi kuin projektin alkuvaiheessa [2]. Siis alkuperäisen yhden työpäivän työstä tulee loppuvaiheessa jopa yhden työvuoden lisätyö. Ratkaisuna tähän yritettiin siirtää suunnittelua mahdollisimman etupainotteiseksi. Oikeampi ratkaisu oli lisätä iteraatiota, eikä yrittää saavuttaa ”hole-in-one”.
Testaus
Ohjelmointi itsessään ei ole paljoa muuttunut 50 vuoden aikana. Ohjelmat perustuvat samalle strukturaaliselle paradigmalle, jossa konekieliset hyppylauseet on korvattu ennakolta sovituilla ehtolauseilla ja silmukoilla. Jos hypätää taaksepäin, niin on silmukka. Vastaavasti koodissa hypätään eteenpäin, kun ehtolause ei ole loogisesti totta. Muuten koodia mennä riveittäin eteenpäin Yksinkertainen perusidea, joka ei ole muuttunut paljoakaan, ohjelmointi on ihan samanlaista nykyään perusperiaatteiltaan kuin ennemminkin.
Strukturaalinen/proseduraalinen ohjelmointiparadigma on jopa uusin lajissaan, olio-ohjelmointi ja funktionaalinen ohjelmointi ovat sitä vanhenmpia paradigmoja. Olio-ohjelmointi kuitenkin saavutti valtavaa suosiota 1990-luvulla C++:n myötä. Samoin Lispin seuraaja Clojure on hyvin vahvasti esillä etenkin jouhtuen rinnakkaisuuden merkityksen lisääntymisestä, joskaan ei tähän asti koskaan ole ollut erityisen suosittu tapa tehdä ohjelmia. Ajatusmallina funktionaalinen ohjelmointi on kaikista vanhin eli ensimmäinen paradigmoista. Myös Microsofti on kehittänyt F#-ohjelmointikielen, joka on funktionaalinen ohjelmointikieli. Myös ihana C-kieli eli ”rakenteellinen konekieli” käyttää hyvin vahvasta strukturaalisesta periaatteesta huolimatta funktioita osana koodin structurointia/encapsulointia [14], joten melkein kaikki ohjelmointikielet käyttävät kaikkia paradigmoja mahdollisimman paljon hyödyksi.
”If I took a computer programmer from 1966 forward in time to 2016 and put her in front of my MacBook running IntelliJ and showed her Java, she might need 24 hours to recover from the shock. But then she would be able to write the code. Java just isn’t that different from C, or even from Fortran.” [8]
Miten mordernin kannettavan esittelisi ohjelmoijalle, joka on tehnyt ohjelmia aikana ennen mikropiirejä: ”Tässä kannettavassa on triljoonan tavun SSD-asema massatiedolle, 16 miljardin tavun keskusmuisti muuttujille ja ohjelmakoodille, välimuistia miljoonia tavuja ja sitten rekistereitä 16 kappaletta 64 bittisiin eli 18 446 744 073 709 551 616 kokonaislukuun asti. Lisäksi suorittaa useampaa säiettä kerralla, kun ei ole muuta käyttöä miljerdeille transistoreille keksitty.”
Moni asia on kuitenkin muuttunut valtavasti, nykyinen ohjelmistokehitys ei kuitenkaan ole samanlaista kuin aiemmin. Työkalut ja menetelmät ovat muuttuneet valtavasti. Tämä on kuitenkin yksi ketterän kehityksen periaatteista, usko tekniikoihin ja menetelmiin ei ole syy tai ratkaisu paremmalle ohjelmistokehitykselle. Ohjelmointi ei edes ole muuttunut juurikaan, ohjelmat vain ovat suurempia kuin koskaan aiemmin.
”And if I transported you back to 1966 and showed you how to write and edit PDP-8 code by punching paper tape on a 10 character per second teletype, you might need 24 hours to recover from the disappointment. But then you would be able to write the code. The code just hasn’t changed that much.” [8]
Tämä tuo erittäin paljon haastetta testaukselle. Aiemmin testauksen rajoitteena oli ohjelmien ja laitteiden suorituskyky. Nyt potentiaalia ja mahdollisuuksia on paljon enemmän kuin koskaan aiemmin. Ollaan tultu siihen pisteeseen, että edes laitteiden kehityksen jatkuva pienentyminen kohtaa fyysiset rajat. Seuraavassa videossa olevan raketin ohjausyksikössä ei ollut yhtäkään transistoria, mutta silti se voitiin toteuttaa.
Testaus on todella vaikeaa tehdä kattavasti, ohjelman haarautuminen johtaa ääretöntä lähentelevään määrään testejä koodin täydellisesesti kattavassa testauksessa. Rivikattavan testauksen voi saavuttaa, sitä yleensä pidetään miniminä, jonka saavuttaminen ei pitäisi olla mitenkään mahdotonta. Jokainen ohjelmaan kuuluva koodirivi tulisi testata.
Ongelma testauksessa myös on se, että milloin testi on ok. Ohjelmakoodi voi olla validia, ilman sitä se ei edes käänny [14]. Ajon aikana ohjelma kaatuu, niin silloin se ei toimi. Nämä asiat voidaan helposti testata. Näitä feilauksia tulee jatkuvasti, se on ihan normaali osa ohjelmakehitystä. Ohjelman todistaminen toimivaksi on jopa mahdollista, mutta ohjelman toimimattomuuden todistaminen on vaikeampaa.
Kuitenkin kun urallaan tähtää Britanniaan, niin voi osua Kuuhun. Iteäni Wernher von Braun on toiminut tietynlaisena idolinani omassa elämässäni. En ole koskaan kokenut suomalaista yhteiskuntaa omakseni, vaan olen halunnut muuttaa mieluummin Alankomaihin tai Belgiaan – eettisesti kolme-neljä sukupolvea suomalaista yhteiskuntaa edellä olevaan yhteiskuntaan [16]. Suomessa parasta on koulutusjärjestelmä, jota nykyiset hallituspuolueet romuttavat. Kokoomusta itse luulin sivistyspuolueeksi, mutta se on ehkä kaikista pahin junttipuolue.
”Wernher Magnus Maximilian Freiherr von Braun (March 23, 1912 – June 16, 1977) was a German (and, later, American) aerospace engineer and space architect. He was the leading figure in the development of rocket technology in Germany and the father of rocket technology and space science in the United States.” [13]
Mielestäni Warner von Braun toimii hyvänä motivaattorina omalle uralle, hän on aloittanut koko uransa tyhjästä pienestä rakettiharrastelusta. Vaikka Suomessa ei ole itselleni mitään syytä olla, tai ei ole mitään syytä tukea tätä yhteiskuntajärjestelmää, niin silti kannattaa tähdätä korkealle ja yrittää eteenpäin, kun ei muuta voi. Humanismi, aatteet ja yhteiskuntajärjestelmät muuttuvat, mannertevälisen ohjuksen tekniikka säilyy. Eikö ole valtavaa ammattillista ylpeyttä pointtaava referenssi, että omana pomona on ollut seuraavanlainen kotoa kadulle heitetty tuleva poliitikko, jonka opiskelupaikka evättiin tuntemattoman(?) juutalaisen toimesta, jonka kohtalo oli todistaa miljoonien juutalaisten näännytettiin hengiltä rangaistuksena virheestä. Kuitenkin on silti tullut hyvin toimeen hänen kanssaan ketterillä menetelmillä, vaikka oli pitkävihainen persoona? ”Sinähän halusit huippuälykkään pomon [17]?” [15, 21]
Hitler oli paljon edellä aikaansa. Hän käytti älykkyyttään ja lahjojaan politiikan popularisointiin. Ehkä hänellä olisi ollut parempaa annettavaa taiteessa, ehkä ei. Ehkä hän oli vain monta sukupolvea muita edellä.
https://www.youtube.com/watch?v=lkqtQ61k58E
https://www.youtube.com/watch?v=oliOWcS8254
Edellisten videoiden tapahtumat jakavat hyvin vahvasti ihmisten mielipiteitä, eikä niistä useinkaan osata keskustella asiallisesti, vaikka koulutettuna ihmisisenä ainakin minun pitäisi kyetä siihen [24]. Ei kannata tehdä niin kuin minä; että menee sönköttämään syntyperäisellä – joskin belgiassa asuneelle – huonolla englannilla sitä, että miksi Suomi oli sodassa Venäjään vastaan. Sama kuin menisi arabeille puhumaan olutharrastuksistaan.
Seuraavassa videossa on ranskalaisten näkemys lastenohjelmassa vajaan sadan vuoden eli 3 – 4 sukupolven takaisiin tapahtumiin. Kuka lukee kirjoja, Hitlerin Taisteluani? Amerikkalaisen selostajan juttua äänestä päätellen leikattu ydinpommin kohdalta, muutenkin tätä sarjaa vähä sensuroitu. Viimeistä jaksoa en muista nähneeni lapsena Suomessa, hebreankielisessä oli sensuroitu pois ristiä näyttävä kohta. Protip: Seuraavan jakson lopun katsomisen jälkeen on hyvä katsoa koko jakso läpi uudestaan kokonaan.
https://youtu.be/yTdXWT8llIQ?t=1205
Käytettävyys on myös yksi iso osa testausta. Tämä osio on ehkäpä vaikeinta, kun ohjelmistokehittäjät itse hallitsevat oman ohjelman toiminnan ja tulevat sokeiksi käytettävyydelle. Tyypillinen sanonta ohjelmistoalalla on: ”Se ei ole bugi, se on ominaisuus.” Toisen henkilön näkymys on todella tärkeää, jotta tietää milloin ohjelma ei toimi oikein.
Principles behind the Agile Manifesto
We follow these principles:Our highest priority is to satisfy the customer
through early and continuous delivery
of valuable software.
Welcome changing requirements, even late in
development. Agile processes harness change for
the customer’s competitive advantage.
Deliver working software frequently, from a
couple of weeks to a couple of months, with a
preference to the shorter timescale.
Business people and developers must work
together daily throughout the project.
Build projects around motivated individuals.
Give them the environment and support they need,
and trust them to get the job done.
The most efficient and effective method of
conveying information to and within a development
team is face-to-face conversation.
Working software is the primary measure of progress.
Agile processes promote sustainable development.
The sponsors, developers, and users should be able
to maintain a constant pace indefinitely.
Continuous attention to technical excellence
and good design enhances agility.
Simplicity–the art of maximizing the amount
of work not done–is essential.
The best architectures, requirements, and designs
emerge from self-organizing teams.
At regular intervals, the team reflects on how
to become more effective, then tunes and adjusts
its behavior accordingly. [5]
Seuraavat kaksi 1930-luvun opetusvideota antavat mielestäni hyvän kuvan, että minkälaista ketterän kehityksen tulisi olla. On myös tullut selväksi, että ohjelmistoprojektien hallinnan tulee sopeutua tosimaailmaan, kun sitä ei voi muuttaa. Sen lisäksi että videot muistuttavat tyypillistä onnistunutta ohjelmistokehitystä; ketteryyden nimenomaan kuuluu olla tällaista.
Olisi hyvä, jos nykyaikana tehtäisiin vastaava ketterän ohjelmistokehityksen opettamiseksi. Jousituksen kehittäminen tyhjästä on niin monimutkainen asia, että se on hyvin verrannollinen tyypilliseen ohjelmistokehityksen haastavuuteen. Tyypillisesti ohjelmoitavat ohjelmat ovat aivan eri alaa kuin oma koulutus, joten myös sikäli kuvastaa täydellisesti ohjelmistokehitystä.
https://www.youtube.com/watch?v=8PQAWYvDKVg
https://www.youtube.com/watch?v=GW__Gzkk4G0
Jos seuraavia videoita katsoo, niin varmasti herää ajatuksia. Itse pidän seuraavan videon yksinkertaisesta ja hauskasta tavasta kertoa rungon suunnittelusta. Toisessa videossa korisuunnitteluun osallistunut sotilaskapteeni laittaa itsensä testiin. Aiheeseen liittyen mm. CAD eli tietokoneavusteinen suunnittelu on tehnyt jotain hyvääkin korisuunntteluun liittyen. Pakko myös sanoa, että kolmannen videon 1950-luvun auto on paljon tyylikkäämpi kuin uudempi. Nykyään kori ja runko ovat sama asia, kun suunnittelutavat ovat kehittyneet.
https://www.youtube.com/watch?v=ktU_nLgfRkU
https://youtu.be/Wh2PSkCCa8s?t=8m23s
Ohjelmistokehityksen tulisi edetä samoin kuin auto iteroi omia reittejään. Jousitusjärjestelmä on kuin projektinhallinta. Kukaan ei voi etukäteen tietää, että minkälainen matka tulee olemaan, eikä näin saisi ajatellekaan. Ohjelmistoa kehittävät ihmiset, joten ohjelmistokehityksen tulee mukautua vallitseviin olosuhteisiin. Ei kukaan syntyessäänkään tiedä oman elämänsä polkuja, samoin ei vuosia kestävän ohjelmistokehityksen alkuvaiheessa voida tietää tulevaa via dolo rosoa.
Ohjelmistoa voi olla kehittämässä harjoittelija, joskus sitä voi olla kehittämässä iso lauma ohjelmistokehittäjiä. Esimerkiksi Facebookin alku oli opiskelijoiden sivustossa, jossa haluttiin stalkata opiskelijanaisia. Samaa järjestelmää tiedustelupalvelut stasista alkaen ovat yrittäneet kehittää projektina, mutta ei ole onnistunut. Nyt Facebookia kehittää valtava miljardien dollarien kehitysorganisaatio. Järjestelmä on uskomattoman yksinkertainen, kavereiden lisääminen on monimutkaisin asia kyseisessä palvelussa. Moni olisi voinut kuvitella, että tietokantojen ja järjestelmien suorituskyky ei koskaan voisi riittää miljardien ihmisten kattavaan tietojärjestelmään, mutta niin se vain toteutui PHP-kielellä opiskelijoiden tekemänä.
Ohjelmistoarkkitehtuuri
Ehkäpä yksi vähemmän hyvin tiedossa oleva asia aloitteleville ohjelmoijille on ohjelmiston arkkitehtuuri. Tämä on asia, johon itse kohtasin ensimmäistä isompaa ohjelmaani eli Siilomitoitusohjelmaa tehdessäni.
Minä sain hyvän neuvon Ohjelmointiputkan irkkikanavalta, kun asian kysyin omin sanoin. Neuvo oli: encapsuloi koodia, jolloin sen rakennetta voi myöhemmin itse tai joku muu muokata eli refactoroida. Mielestäni tämä neuvo oli hyvin tärkeä, itsestäänselvyys kokeneemmille.
Ohjelma siis pitää jakaa jotenkin pienempiin osiin: funktioihin, luokkiin ja muihin osiin. Näillä osilla ei ole nykyisen käsitykseni mukaan niinkään merkitystä, kunhan vain ohjelman pilkkoo luettavaksi.
Itse ihmettelin sitä, mutta nykyään se on yhtä itsestään selvää kuin artikkelin jakaminen lukuihin, kappaleisiin, virkkeisiin ja lauseisiin. Sitä vain pitää tehdä, rutiiniksi se tulee kokemuksesta.
Arkkitehtuurin kasvaessa tulee vain lisäkerroksia. Kun pohja ja pienet palat ovat helpommin pureksittavia, niin voi muokata arkkitehtuuria. Seuraavassa videossa oikea kaupunkisunnittelija konsultoi peliä SimCity 2000.
Moni ohjelmistoprojekti epäonnistuu kuin edellisessä pelissä moni pelaaja. Jos aluksi ei nimeä muuttujia kuvaavasti ja muutenkin tee pieniä perusteita koodissa hyvin, niin siitä seuraavat ongelmat voivat tulla vastaan vuosien päästä liian isona muurina – projektin kaatavina.
Siisti koodari
Erittäin stereotypisena clean coderina pidän Absentilla työskennellyttä Esko Jokista, joka on minua eniten ystävällisesti alaan avustanut työkaverini. Jotenkin ikimuistoiseksi käsitteeksi jäi Hubba Bubba ja seuraava kappale vahvistaa sitä, vaikken tiedä mistä se johtuu.
Näkemys alasta ei välttämättä ole lopullinen, vaan on muuttunut ja odotettavasti muuttuu vastaisuudessa. Itse vahvalla teknillisellä koulutus- ja työtaustallani voin yhtyä siihen näkemykseen, että ohjelmointia tulisi opettaa mieluummin taidekoulussa kuin teknillisessä yliopistossa. Muutos olisi niin monimutkainen, iso ja haastava jo kulttuurillisesti, että se tulisi tehdä ketterästi projekti-mallin sijaan, jotta muutos voitaisiin toteuttaa onnistuneesti.
Naisia pidettiin hyvinä ohjelmoijina, heillä nähtiin olevan paljon oikeita ominaisuuksia alaan liittyen. Ehkä se näkemys oli oikea, miehet ovat pilanneet ohjelmistokehityksen. Kuvan 4. mukaisesti on olemassa hyviä naisia ohjelmoijina, mutta liian vähän.
Ohjelmointi ei ole niin teknistä kuin itse luulin nuorempana, kun unelmoin saavani työnimikkeekseni: ”ohjelmoija”. Unelmani toteutui, nykyään en pidä omaa unelmaani mitenkään yliampuvana. Lapsena monilla vain on heikko itsetunto, pelkäsin osoittaa omaa osaamistaan ja turhaan salaili kiinnostuksiaan. Toivottavasti viimeistä ei moni muu ohjelmoinnista kiinnostunut tekisi peruskoulussa.
Aivan samoin kuin ihmiskielien opettelussa luulin, että en ymmärtänyt jotain oikein kielen logiikasta, niin sama ilmiö toistuu itselläni ohjelmoinnissa jatkuvasti ilmeisempänä. Mielestäni pidän sitä merkkinä siitä, että ymmärtää käytetyn asian rajoitteet. Aina ei ole niin väliä, että mitä tekee, vaan että miten tekee/sanoo/kirjoittaa/koodaa.
Tulevaisuus kautta historian
Tässä blogiartikkelissani käsittelin hyvin monipuolisesti projektin ohjelmistokehityksen hallintaa. Minä kirjoitan blogiani ketterästi, olen niin jo tehnyt kaksi vuotta. Alkujaan työttömänä tätä blogiani aloittaessani mietin, että mihin tämä kaikki johtaa. En vain kyennyt hahmottamaan sitä, joten päätin suosiolla mennä ketterällä menetelmällä, aloittaen kertomaan Rooman valtakunnan Leipää ja Sirkuhupeja -filosofiasta [10]. Mielestäni se oli hyvä alku blogilleni, sisältäen todella paljon sitä, jota itse ajattelin blogini sisältävän.
Miten siis mielestäni ohjelmistokehitystä tulisi opettaa? Koska mussutan ja kritisoin, niin minä koen velvollisuudeksi selittää paremman mallin myös siihen. Perinteinen projektimalli on todella hyvä tapa opettaa teoriassa, joskin se on käytännössä virheellinen. Tämä on todella pelottavaa, kun ajattelee, että on aikoinaan opetettu väärää tapaa vain sen takia, että ei osattu tai haluttu kertoa muuta.
Mielestäni oikea tapa olisi se, että ohjelmistoalan opiskelijat laitettaisiin tekemään projektia eri alan opiskelijoiden kanssa, kuten vaikkapa helpompina vaihtoehtoina rakennus- tai konealan insinööriopiskelijoiden kanssa. Nämä projektit voisivat kestää vuosia, jolloin tulisi todellista kuvaa ohjelmistoalan projekteista/prosesseista. Voisivat tutkijoiden kammioissa loikoilevat professoritkin hahmottaa, että mitä todellinen miljoonan koodirivin ohjelmistoprojekti on kampusalueen ulkopuolella. Näin opetuksen taso nousisi ketterän kehityksen myötä oppilaitoksissa. Kuvassa 7. ohjelmistokehitys esiteltynä ei-projekti -mallilla.
On myös hyvä ymmärtää, että ohjelmakoodi ei yksinkertaisesti ole suoraan kierrätettävää eri projektien välillä, ellei sitä ole tehty sellaiseksi. Tälläinen koodi on geneeristä koodia, joka voi olla kirjasto. Tällöin se soveltuu tiettyyn moneen yleiseen tarkoitukseen hyvin, mutta ei tiettyyn haluttuun tarkoitukseen. Olen kuvaillut sitä seuraavalla itse keksimälläni Kuvalla 7. Yksinkertaisuus on tapa tehdä asia helpoksi ja nopeaksi. Geneerisyys on tapa tehdä asia moneen tilanteeseen sopivaksi. Toiminallisuus on tapa tehdä ohjelma kattavasti. Näitä kaikkia ei voi helposti saavuttaa, joskaan en väitä sen olevan mahdotonta esim. neuroverkoilla. Unix, Paint ja Passeli ovat kaikki lähellä keskusta ja täydellisesti(?) onnistuneita, mutta silti täysin erillään toisistaan omissa optimaalisissa kategorioissaan.
Mitä sitten on tulevaisuus, niin en osaa vastata. Itse olen hyvin tuore tapaus ohjelmistoalalla, joka itsessään on hyvin tuore ala. Mahdollisesti itselläni on paljon annettavaa, jotain aiemmin huomaamatonta. Ehkä minusta voi vielä tulla tekniikan tohtori, ehkä ei. Itse luotan jatkuvaan kehitykseen, samaan vahvuuteen kuin 390 jkr. Vegetius totesi Rooman valtakunnan vahvuudeksi.
”We find that the Romans owed the conquest of the world to no other cause than continual military training, exact observance of discipline in their camps and unwearied cultivation of the other arts of war.” – Vegetius, Länsi-Rooma, 390 jkr. [11]
Syyllisten etsintä
Projekteilla on tyypillistä ajautua tilanteeseen, jossa ollaan napit vastakkain. Perinteisellä vesiputousmallilla tilanne on katastrofaalinen, etenkin kun myyjänä on ollut liian vuolas puhuja.
Olen henkilökohtaisesti kuullut yhden Suomen isoimman ohjelmistotalon harjoittelijoilla teetetyn tuotteen perimmäiset ongelmat, kun ihmettelin sen käsittämättömän naurettavia puutteita mm. sisäänkirjautumis-näkymässä. Ketterässä menetelmässä ei ole mitään salattavaa asiakkaalta, vaan työt ovat sovitusti aina valmiita ja käytössä. Epäonnistumisen pelkoa ei pitäisi olla, tilanne on juridisesti huomattavati helpompi pelastaa. Tämä jos minkä pitäisi olla sekä asiakkaan, että kaikkien etu. ”kaikkea sanomaasi <määrittelemääsi> voidaan käyttää oikeudessa sinua vastaan.”
Mielestäni aikalaisen dokumentaation sana painaa niin paljon, että jopa jälkeläisten analyysit historiasta jäävät jälkeen. Itse vertaisin ohjelmistokehittäjän työtä Rooman valtakunnan legionalaiseen, molemmat arvostettuja henkilöitä, kykeneviä toimimaan tilanteen mukaan parhaimmalla mahdollisella tavalla. Parhaansa tekee, niin se riittää: luotto siihen on täydellistä. Sodat ovat hyvin ja kattavasti dokumentoituja, kuten seuraavasta videosta voi huomata.
Rooma oli vahva suurvalta, joka perustui moniin yksinkertaisiin vahvuuksiin. Kristityt kritisoivat kyseistä järjestelmää, mutta silti eivät koskaan kyenneet selittämään sen hajoamista, saati sitten Rooman valtakunnan vahvuuksia. Valtakunta perustui yleisesti hyviksi todetuille yksinkertaisille periaatteille, ei projektimalliin. Ketterä ohjelmisokehitys on kuin Vegetiuksen oppien lukemista; virheistä ja onnistumisista oppimista ilman parempaa tietoa. Ketteryys on siis mielestäni hieman sama kuin yritys & erehdys -menetelmä. [11]
”We cannot now expect to find a man to teach what he never learned himself. The only method, therefore, that remains of recovering the ancient customs is by books, and by consulting the old historians. But they are of little service to us in this respect, as they only relate the exploits and events of wars, and take no notice of the objects of our present enquiries, which they considered as universally known.” – Vegetius, Länsi-Rooma, 390 jkr. [11]
FURTHERIA
Suomen paras räp-artisti Pyhimys on omien sanojensa mukaan osoittanut huipputason älykkyyttä Mensan testissä eli fluidia älykkyyttä mittaavassa kuviopäättelytestissä. [18] Sinällään se ei ole mitenkään hätkähdyttävää [20]. Kieltolakeja eli päihteiden muuttamista rikolliseksi ei uskoakseni voi moni muu kannattaa kuin tavalla tai toisella tyhmät ja rikolliset, joskaan en itse kannata mm. kannabiksen suoranaista laillistamista.
”Mensan toiminnan tarkoituksena on älykkyyden tunnistaminen ja kehittäminen ihmisyyden hyväksi, älykkyystutkimuksen tukeminen sekä älyllisen ja sosiaalisen ympäristön tarjoaminen jäsenilleen.” [19]
Ollut taas puhetta Suomen rikkomasta vapaan liikkuvuuden -sopimuksesta. Eikö YLE voisi vain myöntää, että Suomi selvästi rikkoo EU:n kanssa tehtyä sopimusta. Kyse on rahasta ja protectionalismista, jossa ylläpidetään myyttiä suomalaisten huonoudesta muihin kansoihin nähden alkoholinkulutuksen suhteen. Vaihteeksi Belgian Brysselissä osataan paremmin tehdä päätöksiä kuin Suomessa, yksi syy miksi itseäni ärsyttää olla Suomessa. [22, 23]
Eikö poliittiset päättäjät pysty antamaan yhtään parempaa kuvaa Suomesta ulkomaille, tai edes omaan maahan? ”Suomalaiset eivät ole alkoholikansaa ollenkaan. Näytetään niille siellä Brysselissä, pysytään lujana!” Että morjes vaan taas. Älkääkö tehkö niin kuin minä, että tilaan pahvilaatikollisen jotain kirsikkaolutta Belgiasta, se kirsikka-colalle maistuva olut on sentään yksi parhaimpia siitä hedelmäsarjasta [25].
Eiköhän kohta tämä artikkelin Definiton of Done täyty, kun on jo yli 200 versiota versiohallinnassa? Ei tämä yhtään paremmaksi muutu isommaksi kasvattamalla, päinvastoin.
Aina pitää olla uusia haasteita, jotta elämä pysyy mielekkäänä. Ehkä samoin kuin ihmisille yleensäkin keksitään elämään tarkoitusta, jotta eivät ryhtyisi mellakoimaan. Kansa siis tarvitsee leipää ja sirkushupeja [0]. Töistä saa leipää, vapaa-ajalla sitten on sirkushupeja. Itse olen löytänyt omat uusimmat sirkushupini suorittamalla Microsoftin sertifikaatteja.
Elämäni ensimmäinen sertifikaatti
Ensimmäiseksi sertifikaatiksekseni valitsin HTML-kurssin. Tämä varmasti on itselleni erittäin tärkeä. Minä myös tiedostan, että WEB-ohjelmointi ei ole minulle erityisen vahvasti hallussa. Olen itse kokenut tästä suurta huolta, kun itse koen opiskeluaikoinani olleeni vahvimmillaan nimenomaan matalan tason ohjelmoinnissa ja sulautetuissa järjestelmissä.
Nuorena oman ohjelmointiharrastukseni aloitin C-kielellä. Siis aikana, jolloin C++ ilman olio-ohjelmointia oli vielä C-kieltä. String-muuttujatyyppi oli jo silloin olemassa, joskaan en sitä käyttänyt opetellessani ohjelmoinnin perusteita itsenäisesti [13]. En siis ihan hirveän niin wanha ole vielä, että kokeneemman väite olisi ollut täysin validi aikoinaan [13]. Täten myös HTML-standardi on oletettavasti kehittynyt valtavasti 90-luvulta [4].
Mitä siis kurssista opin? Itse uskaltaisin väittää, että kurssi ei ole ihan huuhata ja rahastusta. Ensinnäkin se erottelee täydet huuhaatyypit pois. Nyt myös sain mustaa valkoiselle, että CSS ei ole itselläni aivan täysin hallussa. Minun siis kannattaisi panostaa enemmän verkkosivujen stailaustekniikoihin, jos haluan kehittää itseäni. Kuvassa 1. on tarkemmin eroteltuna oma osaamiseni tentin perusteella.
Sertifikaatin suorittaminen oli iso kynnys. Kokonaisuutena se ei DI-tutkinnon pohjalta ollut mitenkään hämmästyttävän haastava [14]. Kun on oppinut teknillisen yliopiston opetusmenetelmiin, niin kurssi oli jopa suhteellisen lepi. Parasta oli, että tentin pystyi suorittamaan omassa kodissaan. Ärsyttävintä oli, että ennen tenttiä piti viisi minuuttia puida omaa puhelintani jollekin intoilevalle valvojalle. Vein makuuhuoneeseen, niin tuli mussutusta. Toin sen testipaikalle, niin tuli lisää mussutusta. Lopulta sain aloittaa tentin, kun piilotin puhelimeni sohvani taakse.
https://www.youtube.com/watch?v=RI9XxzY7ePk
Opetusmateriaali oli erinomaista, valmentavaa tietoa oli tarjolla enemmän kuin tarpeeksi. Kuvassa 2. on Exam-Labin kysymyksiä [10]. Osa kysymyksistä oli jopa lähes oikeita tenttikysymyksiä. Hyvien tapojen mukaisesti kaikilla pitää olla samat mahdollisuudet, eikä tietoa saa pimittää.
Erittäin tyytyväinen olen esimerkiksi, että TTY:n tietoteekkarikilta tarjosi vanhat tentit kaikille opetusmateriaalina [1]. Tällöin kukaan ties mikä salaseuralainen ei voinut saada sen parempia mahdollisuuksia kuin kukaan muukaan opiskelija. Itse toivoisin standardoituja testejä myös Suomen peruskouluun.
Sertifikaattien potentiaali
Ohjelmistoala on sikäli haastava, että useinkaan työhaastattelijat eivät tiedä riittävästi tekniikoista, jotta osaisivat tunnistaa ihmisten osaamisen. Se ei ole yllättävää, kun edes peruskoulu ei kykene tunnistamaan ihmisten lahjakkuuksia erityisen hyvin. 165 euroa ei useimmille ole kova hinta siitä, että voi osoittaa oman osaamisensa alalle riittäväksi.
Ohjelmistoalalla on kuitenkin monenlaista koodaria. Usein edes työpaikan johtajat eivät ole täysin perillä, että minkälaisia osaajia omat alaisensa ovat. Itsekin joutunut joskus selaamaan koodia, jossa ~70 % koodiriveistä ovat echoa, jonka lisäksi toiminnallisuus oli echostuksen koostuvia if-lauseita. On melkoisen karua ymmärtää, että on melkein 20 vuotta aikaa, kun itse on kirjoittanut vastaavanlaista koodia [2].
”Unlike most other browsers currently in use, IE6 does not fully nor properly support CSS version 2, which makes it difficult for web developers to ensure compatibility with the browser without degrading the experience for users of more modern browsers. Developers often have to resort to strategies such as CSS hacks, conditional comments, or other forms of browser sniffing to make their websites work in IE6.” Wikipedia
Todellinen ymmärrys vaatii kuvan 4. mukaisesti valtavaa ymmärrystä selaimen ja tentattavien tekniikoiden syvällisestä toiminnasta, jotta ymmärtää tekniikoiden mahdollisuudet. Tätä varten ovat kehittyneet mm. jQuery-kirjasto luomaamaan yhteisen rajapinnan erilaisten selainversioiden JavaScriptin yhteensopivuusongelmien korjaamiseksi. On hyvä kuitenkin silti ymmärtää, että miten kyseisen kirjaston alla toiminnallisuus tapahtuu.
Tapahtumakäsittelijät tyypillisesti on tehty osoittimen avulla, jossa tapahtuma ja tapahtumakäsittelijä on liitetty toisiinsa. Nimettömän funktion kerrottiin tekevän sama asia ilman osoitinta. Vasta tämän esimerkin jälkeen ymmärsin, että mitä ovat JavaScriptin nimettömät funktiot, joilla oikosuljetaan koodia. Kyseessä on ilmeisesti vastaava toimenpide, jossa funktio saadaan liikutettua toisen funktion sisälle. Sen lisäksi myös JavaScriptissä kaikki on puurakenteessa olevia oliota, jonka paljastaminen auttoi todella paljon ymmärtämään kyseistä ohjelmointikieltä. Nämä ovat asioita, joita ei välttämättä osaa päätellä itsekseen.
Usein vitsaillaan ohjelmistoalalla rekrytointihenkilöstön pätevyydestä. On jopa huhuja, että työnhakuilmoituksessa edellytetään hakijalta aivan käsittämättömiä asioita; kuten vankkaa osaamista jostain tekniikan uusimmasta versiosta x vuosia y, vaikka kyseinen tekniikka on niin uusi, ettei kenelläkään voi olla niin pitkää kokemusta. Esimerkiksi edellytetään vähintään viiden vuoden kokemusta alemman abstraktiotason Q# 2-ohjelmointikielen soveltamisesta pilvipalveluihin ja Big Dataan [16].
Ohjelmistoala on elänyt kriisissä 60-luvulta. Iso osa projekteista epäonnistuu, kaikki on jatkuvassa kaaoksessa. Se on siis normaali tila, jossa henkiöstön mahdollisimman korkea pätevyys on kuitenkin itsessään hyvä asia. HTML, JavaScript ja CSS on todennäköisesti lähes kaikkien ohjelmistoasiantuntijoiden mielestä erittäin tärkeitä WEB-kehityksessä käyttöjärjestelmästä riippumatta. Todennäköisesti useimmat myös yhtyvät siihen, että sertifikaatin testissä 150 minuutin aikana kysyttävät 50 kysymystä testaavat todellista osaamista hyvin.
Gatesin Microsoft on hieno firma
Suomessa usein suhtautuminen Microsoftia kohtaan on melkoisen kriittistä. Mielestäni se ei sinällään ole yllättävää, kun maassamme on hyvin vahva Linux-historia, joka luonnollisesti vaikuttaa. Itsekin tietysti toivoisin, että meidän oman maamme ohjelmisto-osaaminen saisi mahdollisimman hyvää vaikutusta maailmalla. Vahvin huippu on toiminut koko ohjelmistoalan historian San Franciscon Piilaaksossa – Kaliforniassa.
”There are two major products that came out of Berkeley: LSD and UNIX. We don’t believe this to be a coincidence.” –Jeremy S. Anderson
Suomessa kaikki ei ole aina sujunut täydellisesti, kuten kävin Linux-pohjaisen Nokian puhelimen kanssa, jonka Nokian omistajat hylkäsivät valitsemalla Elopin Nokian toimitusjohtajaksi [20]. Elop on omassa Microsofissaan taas paremmassa virassa, Nokia on tuhkana. Vika ei ollut Microsoftissa eikä Elopissa, Nokian osakkaiden omistajat olivat syyllisiä Suomen suurimman veronmaksajan tuhoamisesta. Valitettavasti tyhmästä päästä kärsii koko ruumis. [3]
Omasta mielestäni Bill Gates on oikein fiksu mies, joka on paljon tehnyt hyvää ohjelmistoalalla ja myös muutenkin. Kuvassa 5. on kuvankaappaus Bill Gatesin viestistä LinkedIn:stä, jossa seuraan häntä [5]. Gates on kaupallistanut ja ”tuonut tietokoneen jokaiselle pöydälle.” Hän on myös hyvin eettinen ja vastaa monilta arvoiltaan itseäni. Olen myös lukenut peruskouluaikana hänen kirjansa ’Valtatie tulevaisuuteen’. Seuraan myös hänen blogiaan [6].
Microsoftin tyyli on aina ollut hyvin yksinkertaista ja käyttäjille arvoa tuovaa. Tämä tyyli heillä on ollut kautta historian, jonka itse olen yrityksen toimintamallia ymmärtänyt. Kun Apple Machintoshia luodessaan yritti täydellisyyttä, niin Microsoft teki vastaavat asiakkaan tarpeita vastaavan järjestelmän erittäin edulliseen hintaan. Microsoft on myös aina ollut yritys, joka on arvostanut muita yrityksiä ja ohjelmistokehittäjiä. Yritys on aina ollut hyvin ahne toimija, mutta silti on tarjonnut mahdollisuuden menestyä heidän järjestelmiä käyttämällä.
Yleensä menestyjän tunnistaa samoista ominaisuuksista, jotka näkyvät erittäin hyvin Bill Gatesin tyylistä [7]. Usein älykkäät menestyjät ymmärtävät hyvin, että fiksut ja osaavat ihmiset ovat tärkeitä ihmisiä muutenkin kuin vain suorittavina henkilöinä. He tiedostavat asiat paljon laajemmin kuin vain oman etunsa kautta. Gatesi lukemassani ’Valtatie tulevaisuuteen’-kirjassaan oli nuorena ihmetellyt, että miksi hän sai aikoinaan Inteliltä kaikki pyytämänsä aineiston prosessoriin liittyen ollessaan nuori. Hän ei itse sitä enää ihmetellyt ollessaan Microsoftin toimitusjohtajana.
Kohti seuraavaa sertifikaattia
Seuraavaksi tarkoituksena on suorittaa itselleni HTML-sertifikaattia tutumpi C#-sertifikaatti. Tämä ei ole edes välttämätön, jotta voisin suorittaa sertifikaatin WEB-kehityksestä. Kuitenkin kyseinen asia on niin tuttu, kun olen kyseistä ohjelmointikieltä kymmenen vuotta käyttänyt. C# oli pääasiallinen opetuskieleni ollessani Seinäjoen Ammattikorkeakoulussa opiskelemassa. Kuvassa 6. on nykyinen suositeltu sertifikaattipolkuni.
Microsoftin sertifikaatit ovat yleisesti hyvin tunnettuja, ehkäpä kaikista tunnetuimpia ohjelmistoalan sertifikaatteja. On kuitenkin olemassa lukuisia erilaisia ohjelmistoalan sertifikaatteja myöntäviä tahoja, kuten mm. Oraclen MySQL-sertifikaatti, joka voisi olla hyväksi itselleni suorittaa [8]. Erityisesti kuitenkin houkuttaa C-kielen sertifikaatti [14, 19]. Kaikkia sertifikaatteja ei tietenkään tarvitse, mutta joitain on hyvä käydä, jotta osoittaa oman soveltuvuutensa ohjelmistoalalle.
Itse olen myös suunnitellut muuttavani ulkomaille. Olen hieman miettinyt esimerkiksi muuttavani Alankomaihin tai Belgiaan, jos saan riittävästi referenssiä omasta pätevyydestäni. Ulkomailla ei välttämättä paljoakaan anneta TTY:n DI-tutkinnolle arvostusta, ammattikorkeakoulutuksesta puhumattakaan. Itsehän suoritin DI-tutkinnon ilman kandi- ja ylioppilastaustaa. Täten sertifikaattien suorittaminen houkuttaa. Tietysti olisi myös hyvä sitten realistisesti ymmärtää, että mitä hyvää ja huonoa maassamme on.
Oma blogini on siirtynyt OVH:n alaisuuteen Nettihotellin toiminnasta. Tämä olisi pitänyt jo tehdä useita kuukausia aiemmin, mutta en vain ole saanut tehdyksi. OVH on tunnettu ranskalaisesta palvelukulttuuristaan, joka edellyttää ammattitason osaamista palvelinten ylläpidosta [1, 3, 4, 8]. Samalla päivitin WordPressin ulkoasun 2018 vuodelle. Erilaisiin kulttuureihin on hyvä tutustua, jotta tietää sitten hyvät ja huonot puolet, sekä miten ne vastaavat värittyneitä ennakkoluuloja.
Päämääränä tuntematonta
Maailma on ihmeellinen paikka, jota ei pystytä täydellisesti laskemaan. Vaikka pystytäänkin monia asioita laskemaan, niin asiat ovat niin kaaottisia, että niiden täydellinen ymmärtäminen on lähes mahdotonta. Tästä hyvänä esimerkkinä on Mandelbrot eli fractaalit, joiden näkemiseen tarvitaan erittän paljon raskasta ja päättymätöntä imaginäärilukujen laskentaa. [2]
Laskentateho nykyajan mikropiireihin pohjautuvilla piiprosessoreilla on kehittynyt erinomaisesti. Omassa kehitysfilosofiassaan luultavasti ovat saavuttaneet huippunsa. Valmistusteknologia on jäänyt 14 nm johdinleveydelle, 10 nm viivaleveys on viivästynyt prosessorin valmisarkkitehtuurina. Kellotaajuudet eivät myöskään ole enää nousseet merkittävästi gigahertin rajapyykin jälkeen. Intelin Xeon Phi on rinnakkaisessa laskennassa aivan huippua, mutta ei tällä hetkellä valitettavasti tue virtualisointia. [11]
Edellisen videon pohjalta tulee usein vastaan tämä seuraava video, jolla hahmotetaan tunnetun maailmankaikkauden mittaluokkaa. Toistaiseksi Google on tehnyt viimeisimmän näyttävän videon.
Kotikoneeni saavuttaa VPS:n n. 70 ms aikana ja webhotelliin 250 ms aikana, kun liikenne menee puhelmeni WLAN-hotspotin läpi. Tosin tätä blogiani en ole sijoittanut kyseiselle virtuaalipalvelimelleni, kun en luota omiin näppäilyihini niin paljoa [5, 6]. Halvalla saa, niin voi ostaa vähän ylimääräistä.
PING irc.psychz.net (172.107.98.84) 56(84) bytes of data.
64 bytes from irc.psychz.net (172.107.98.84): icmp_seq=1 ttl=52 time=16.2 ms
64 bytes from irc.psychz.net (172.107.98.84): icmp_seq=2 ttl=52 time=16.2 ms
64 bytes from irc.psychz.net (172.107.98.84): icmp_seq=3 ttl=52 time=16.1 ms
64 bytes from irc.psychz.net (172.107.98.84): icmp_seq=4 ttl=52 time=16.3 ms
64 bytes from irc.psychz.net (172.107.98.84): icmp_seq=5 ttl=52 time=16.2 ms
^C
--- irc.psychz.net ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4006ms
rtt min/avg/max/mdev = 16.144/16.234/16.341/0.130 ms
Pinging tuomasliikala.com [79.137.86.122] with 32 bytes of data:
Reply from 79.137.86.122: bytes=32 time=84ms TTL=49
Reply from 79.137.86.122: bytes=32 time=73ms TTL=49
Reply from 79.137.86.122: bytes=32 time=66ms TTL=49
Reply from 79.137.86.122: bytes=32 time=76ms TTL=49
Ping statistics for 79.137.86.122:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 66ms, Maximum = 84ms, Average = 74ms
C:\Users\Tuppu>ping tuppu.fi
Pinging tuppu.fi [137.74.48.119] with 32 bytes of data:
Reply from 137.74.48.119: bytes=32 time=686ms TTL=53
Reply from 137.74.48.119: bytes=32 time=245ms TTL=53
Reply from 137.74.48.119: bytes=32 time=246ms TTL=53
Reply from 137.74.48.119: bytes=32 time=166ms TTL=53
Ping statistics for 137.74.48.119:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 166ms, Maximum = 686ms, Average = 335ms
Valitettavasti irkkiin ei pääse kunnolla suomalaisille palvelimille, joten pitää etsiä jokin Ranskaa lähempänä oleva palvelin. Alankomaat on mukava tietoverkostojen keskittymä, joten sinne pääsee 16 ms:n viiveellä ranskalaiselta VPS-palvelimeltani. Maa on myös monessa asiassa edelläkävijä, kuten mm. mielenterveyspalveluissa [7].
12:06 -!- ___ _
12:06 -!- |_ _|_ _ _____(_)
12:06 -!- | || '_(_-<_-< |
12:06 -!- |___|_| /__/__/_|
12:06 -!- Irssi v1.0.2-1+deb9u3 - http://www.irssi.org
12:06 -!- Irssi: Looking up irc.psychz.net
12:06 -!- Irssi: Connecting to irc.psychz.net [172.107.98.84] port 6667
12:06 -!- Irssi: Connection to irc.psychz.net established
12:06 -!- Please wait while we process your connection.
12:06 -!- Welcome to the Internet Relay Network tuppu!~tuppu@122.ip-79-137-86.eu
12:06 -!- Your host is irc.psychz.net, running version 2.11.2p3
12:06 -!- This server was created Sun Apr 15 2018 at 18:55:01 CEST
12:06 -!- irc.psychz.net 2.11.2p3 aoOirw abeiIklmnoOpqrRstv
12:06 -!- RFC2812 PREFIX=(ov)@+ CHANTYPES=#&!+ MODES=3 CHANLIMIT=#&!+:45 NICKLEN=15 TOPICLEN=255 KICKLEN=255 MAXLIST=beIR:64 CHANNELLEN=50 IDCHAN=!:5
CHANMODES=beIR,k,l,imnpstaqr are supported by this server
12:06 -!- PENALTY FNC EXCEPTS=e INVEX=I CASEMAPPING=ascii NETWORK=IRCnet are supported by this server
12:06 -!- 0PNPAF7YJ your unique ID
12:06 -!- There are 31714 users and 1 services on 25 servers
12:06 -!- 71 operators online
12:06 -!- 2 unknown connections
12:06 -!- 17333 channels formed
12:06 -!- I have 410 users, 0 services and 1 servers
12:06 -!- 410 3494 Current local users 410, max 3494
12:06 -!- 31714 36159 Current global users 31714, max 36159
12:06 -!- - irc.psychz.net Message of the Day -
12:06 -!- - 1/8/2018 16:49
12:06 -!- -
12:06 -!- - This server is provided by
12:06 -!- - _
12:06 -!- - _ __ ___ _ _ ___| |__ ____
12:06 -!- - | '_ \/ __| | | |/ __| '_ \|_ /
12:06 -!- - | |_) \__ \ |_| | (__| | | |/ /
12:06 -!- - | .__/|___/\__, |\___|_| |_/___|
12:06 -!- - |_| |___/
12:06 -!- - networks
12:06 -!- -
12:06 -!- - [https://www.psychz.net]
12:06 -!- - __ *
12:06 -!- - \ \_____
12:06 -!- - ###[==_____>
12:06 -!- - /_/ __ *
12:06 -!- - \ \_____
12:06 -!- - ###[==_____>
12:06 -!- - /_/
12:06 -!- - *
12:06 -!- - * Host..........: irc.psychz.net
12:06 -!- - * Ports.........: 6661 - 6669, 7000
12:06 -!- - * Type..........: Open
12:06 -!- - * Location......: Amsterdam, NL
12:06 -!- - ___
12:06 -!- - * ,o88888
12:06 -!- - ,o8888888'
12:06 -!- - ,:o:o:oooo. ,8O88Pd8888"
12:06 -!- - ,.::.::o:ooooOoOoO. ,oO8O8Pd888'"
12:06 -!- - ,.:.::o:ooOoOoOO8O8OOo.8OOPd8O8O"
12:06 -!- - , ..:.::o:ooOoOOOO8OOOOo.FdO8O8"
12:06 -!- - * , ..:.::o:ooOoOO8O888O8O,COCOO"
12:06 -!- - , . ..:.::o:ooOoOOOO8OOOOCOCO"
12:06 -!- - . ..:.::o:ooOoOoOO8O8OCCCC"o
12:06 -!- - . ..:.::o:ooooOoCoCCC"o:o
12:06 -!- - . ..:.::o:o:,cooooCo"oo:o:
12:06 -!- - ` . . ..:.:cocoooo"'o:o:::'
12:06 -!- - .` . ..::ccccoc"'o:o:o:::'
12:06 -!- - :.:. ,c:cccc"':.:.:.:.:.' *
12:06 -!- - ..:.:"'`::::c:"'..:.:.:.:.:.'
12:06 -!- - ...:.'.:.::::"' . . . . .'
12:06 -!- - .. . ....:."' ` . . . ''
12:06 -!- - . . . ...."'
12:06 -!- - .. . ."' *
12:06 -!- - .
12:06 -!- -
12:06 -!- - If you require any assistance regarding this server
12:06 -!- - or have questions, please /join #psychz or contact
12:06 -!- - the below staff.
12:06 -!- -
12:06 -!- - [SERVER STAFF]=-
12:06 -!- -
12:06 -!- - [Administrator] - sps
12:06 -!- -
12:06 -!- - [Operator(s)] - ente
12:06 -!- - - wanderer
12:06 -!- - - phil
12:06 -!- -
12:06 -!- - -------------------------------------------------------
12:06 -!- - [RULES]=-
12:06 -!- -
12:06 -!- - 1. We scan for open proxies on connect.
12:06 -!- - If you do not wish to be scanned,
12:06 -!- - please do not connect to this server.
12:06 -!- -
12:06 -!- - 2. No spamming or advertising allowed.
12:06 -!- -
12:06 -!- - 3. Do not try to impersonate or chase nicknames.
12:06 -!- -
12:06 -!- - 4. General limits :
12:06 -!- -
12:06 -!- - 4a. 3 clients per person/ident
12:06 -!- - 4b. 3 clients per host (without ident)
12:06 -!- - 4c. 20 clients per /24 in IPv4
12:06 -!- -
12:06 -!- - 5. If your IP range offers services to other people
12:06 -!- - (Shell providers) you must let us know.
12:06 -!- -
12:06 -!- - 6. If we notice excessive (>5) connections on different
12:06 -!- - subnets. You may be banned.
12:06 -!- -
12:06 -!- - 7. No harrassing users. Treat others respectfully as
12:06 -!- - you'd expect it equally yourself.
12:06 -!- -
12:06 -!- - 8. REMEMBER, IRC IS A PRIVILEGE AND NOT A RIGHT.
12:06 -!- -
12:06 -!- - 9. Breaking these rules will result in a ban
12:06 -!- - on ALL open servers.
12:06 -!- -
12:06 -!- - Thank you for choosing IRCnet, hope you enjoy your stay.
Oman elimistön tunteminen
DNA-testien hinnat ovat laskeneet vuosien aikana, että jo koko genomin kartoitus on varsin edullista. Dante Labs tarjoaa tällä hetkellä ehkä edullisimman täyden genomin kartoituksen. Täydessäkin geomin kartoituksessa on eroja, että miten kattavasti se suoritetaan. Oma nykyinen kartoitettu genomini on otettu huonolaatuisella hutaisemalla tehty kartoitus. [9, 10, 11]
”A genome is all the genetic information of an organism. For example, the human genome is analogous to the instructions stored in a cookbook. Just as a cookbook gives the instructions needed to make a range of meals including a holiday feast or a summer picnic, the human genome contains all the instructions needed to make the full range of human cell types including muscle cells and neurons.
The book (genome) would contain 23 chapters (chromosomes);
Each chapter contains 48 to 250 million letters (A,C,G,T) without spaces;
Hence, the book contains over 3.2 billion letters total;
The book contains approximately 20,000 different recipes (genes), which together make up less than 2% of the letters in the book;
Most cells carry two copies of the book;
These books fit into a cell nucleus the size of a pinpoint;
In meiosis, the genetic material of gametes is divided in half to create egg and sperm cells, which have only one copy of the book;” [13]
Keittokirja-esimerkki ei varmasti ole edes ihan hatusta heitetty juttu, vaan hyvin tarkkaan mietitty vertauskuva perimän toiminnasta. Ravitsemuksella on tutkimuksen mukaan erittäin vahva vaikutus geenien aktiivisuuteen, joka heijastuu elimistön yleiseen toimintaan. [14, 15]
Pitäisikö ensin kurkata jääkaappiin vai keittokirjaan? Itselläni tuntuu jääkaapissa olevan aika heikot lähtöaineet, keittokirjakin vähän hukassa. Siinä vaiheessa kun iho kalpenee ja hiukset lähtee päästä, niin on ehkä hyvä miettiä omaa ruokavaliota. Lihaksi nyt itselläni ainakaan ole koskaan ollutkaan. Ei siis mitään hätää, geenit hoitaa. Nyt kun saa olla töissäkin, niin on varaa jo syödä hedelmiä ja muutenkin terveellistä ruokaa.
Terveellisestä ravitsemuksesta on ollut tietoa vuosikymmeniä, vuosisatoja ja vuosituhansia, mutta silti monet syövät ravintoköyhästi. Mahdollisesti suurelta osin kyse on taloudellinen, ettei köyhillä ole varaa kuin vain pikaruokaan. Samoin ajankäytöllisesti eivät ehdi valmistamaan terveellistä ruokaa, vaan valitsevat ravintoköyhää valmisruokaa. [19, 20, 21, 22]
”Jatkuva matala-asteinen inflammaatio ei näy ulospäin eikä oireile kipuna, mutta sen arvioidaan olevan melkein kaikkien länsimaiden kroonisten tautien osatekijä (mm. syöpä, diabetes, lihavuus, Alzheimerin tauti, sepelvaltimotauti ja aivoinfarktit).” [18]
Tuli taas katsottua, että minkälaisen auton sitä haluaisi. Itse haluaisin Lotus Elise 220 Sport -auton, mutta se maksaa uutena ikävät 70 k€, joka on itselleni liikaa. Käytettynäkin niitä on, mutta autossa pitäisi olla Toyotan moottori, Lotuksen omalla moottorilla varustetut pienemmät mallit eivät ole oikein itseäni kiinnostavia. Valitettavasti myös GE-moottoria on vain Britannian ja Amerikan markkinoille. [1, 2]
Toyotan tuotantojärjestelmä
Toyotan historia on kangasteollisuudessa. Toyotan autoteollisuuden aloittanut johtaja kävi amerikassa katsomassa kyseisen maan autoteollisuutta. Tästä näkemästään tuotantotavasta järkyttyneenä Toyota päätti tehdä asiat paremmin.
Laatukolmio
Toyota ymmärsi hyvin, että mitä tarvitaan toiminnan tehostamiseen. Kuitenkin Toyotan tuotomenetelmät tulivat maailmankuuluksi vasta, kun he ymmärsivät laadun merkityksen yhtenä kilpailevana tekijänä hinnan ja määrän ohessa. William Edwards Deming on tullut tunnetuksi tästä Japania valistaneesta työstään toisen maailmansodan jälkeen. [3]
Laadun tilastointi ei ole siis mitenkään uusi keksintö. Kuuden sigman eli keskihajonnan periaate on peräisin 1920-luvulta, jonka periaate otettiin Motorolalla käyttöön 1980-luvulla. Ehkä oleellisempaa oli, että tätä mallia kehitettiin osaksi teollisuuden talousajattelua. [5]
Jatkuva kehittyminen
Itsekin olen omassa elämässäni kuvitellut, että joskus hyötyisin sulautettujen opiskelusta. Nyttemmin olen tullut siihen näkökulmaan, että yksi teollisuustaloutta opettanut kurssi saattoi olla ammattikorkeakoulussa erittäin tärkeä. Tuotannon ohjauksessa ei liikaa käytetä sulautettuja tekniikoita apuna, enemmälle varmasti olisi tarvetta. [6, 7]
Mikä on viisauden alku? Miten viisauttaan voisi kehittää? Nämä ovat kysymyksiä, joita itse olen toisinaan pohtinut. On melko huonosti tietoa siitä, että millä prosessilla viisauttaa tulisi kehittää. Koulussa tätä opetettiin mielestäni melko huonosti, paremminkin olisi voinut opettaa. Ulkolukeminen on mielestä vain rajoittunutta viisautta, viisautta on myös laaja-alaisemmin.
Tiedän vain sen, etten tiedä mitään. (Sokrates) [1]
Oman käsitykseni mukaan viisaus alkaa siitä, että myöntää oman tietämättömyytensä. Edes omasta olemassa-olostaan ei voi olla täysin varma. Kun tämän vanhan filosofisen havainnon myöntää, niin on valmis paljon paremmin hyväksymään ja omaksumaan uutta tietoa.
Tiede elää hyvin
Usein tiedemaailmassa käy niin, että tutkimuksen alkuperäinen tutkimus ja lopputulokset eivät sovi yhteen. Tällöin tutkimus voi olla erittäin onnistunut. Tieteellisesti ei tietenkään saisi olla alkuolettamuksia, joten tutkimustulos on jopa kiinnostava, jos se ei vastaa odotusta.
Juuri on uutisoitu myös YLE:llä uusimmasta tiedosta, jonka mukaan Alzheimerin taustalla olisi Herpes-virus. Tutkijat olivat alkujaan selvittämässä geneettisiä eroja kuolleiden aivoista, kun tekivät tämän sairauden luonnetta uuteen valoon tuovan havainnon. [2]
Nyt kun on ollut Pride-viikko meneillään, niin se on yksi teema, joka helposti tuo ennakkoluulot ja jäykistyneet kannat pintaan. Tiede-lehti on uutisoinut perinteisestä kyselyihin perustuneesta tutkimuksesta, joka osoitettiin toistokokeen avulla virheelliseksi. Tutkimus oli arvostetun auktoriteetin suorittama, mutta tulokset olivat väärin. [3]
Tiede on siis tapa käsitellä asioita, joka on osoittautunut olevansa kaikista luotettavin tunnettu menetelmä. Tieteellisessä tutkimuksessa hyvin vahva auktoriteetti voidaan saada kiinni vääryydestä, jos tutkimus on suoritettu muuten tieteellisesti validisti. Jos tutkimus ei ole validia, niin sen voi jättää omaan arvoonsa.
Tietysti tulokset ovat sellaisia kuin tutkimuksen lähtökohdat ovat. Itsekin olen laboratoriossa toistanut fysiikan mittauksilla, että vanhat klassisen fysiikan kokeet pitävät yhä paikkansa. Silti tarkemmilla ja äärimmäisissä olosuhteissa ne eivät välttämättä toimi, tunnetusti newtonilaisella fysiikalla on rajansa. Sen takia tarvitaan lisätutkimusta, tiede kehittyy.
Itse nuorempana selasin aktiivisesti Tiede-foorumia. Tälläkin hetkellä on käynnissä aktiivinen keskustelu mm. tuulivoimasta. Keskustelu on omasta mielestäni sopivan rentoa, mutta olen jo omaksunut aivan riiittävästi näitä keskustelutekniikoita. [4, 5]
Yhteenveto
Omalta osaltani pyrin tällä blogilla tekemään maailmasta paremman paikan muille. Itse en ole omassa elämässäni päässyt kehittämään tiedettä, mutta arvostan heitä, joilla on siihen mahdollisuus. Toivottavasti tulevat sukupolvet saavat paremman maailman kuin mitä itse sain. Paljon on epäkohtia Suomessa, mihin tulisi tehdä muutos tutkimustasolla. Omia lapsia minulle ei tule, mutta toivottavasti muitten lapsiin pystyn vaikuttamaan, että maailman kiertokulun virheet katoavat.
Suomi on itsenäisyyden aikana jo sadan vuoden aikana kehittynyt valtavasti. Ennen sitä aikaa suomaassa elämä on ollut todella karua. Edes tiilisiä salaojaputkia ei ollut ennen 1850-lukua, nälänhätää ja ulkovaltojen vääryyksiä silti riitti. [6]
Jotain prootakin maailmassa
Maailma on monella tavalla karu paikka, mutta myös monet asiat ovat menneet paremmaksi. Tietysti kaikki ei aina parane, joka voi johtua monesta tekijästä. Itseäni vaivaa, että ei enää mitään seuraavan kaltaisia hyviä musiikkeja tule jostain syystä vastaa.
Jos jotain elämänsä aikana pitää vielä kokea, niin pitäisi kuulla oikea Roland MT-32 -äänikortti. Vielä parempaa, jos voisi pelata Transport Tycoonia sillä. Hinta tällä hetkellä käytettynä on n. 300 euroa, jota en mielelläni itse maksaisi 80-luvun audiotekniikasta [7]. Helpompaa ja edullisempaa vain kuunnella Kohina-nettiradiosta retromusiikit [8].
Tulevaisuuden maailma
Itselläni on vahva usko siihen, että tulevaisuudessa ihmisen ja robotin välillä nähdään suuri valtataistelu. Nykyinen Homo Sapiens ei ole ikuisesti hallitseva otus tuntemassamme maailmassa.
Itse toivon, että kukaan sukupolvi ei koskaan kuvittelisi, että poliisit ovat sen kummempia kuin vain ihmisiä. Eritiysesti ihmisiä, joita kiinnostaa kaikki epäilyttävä toiminta ja asiat. On täysin vastuutonta, että kansalaisille opetetaan jotain muuta näkemystä. Eikä toivottavasti tulevatkaan sukupolvet luule muuta. Valitettavasti se systeemi on vain paras tunnettu vaihtoehto hallitsevalle väkivaltakoneistolle. Ranskan vallankumouksessa tapahtui muutos, armeija ei enää ylläpitänyt yhteiskuntarauhaa. Hyvä niin, kolmivaltajako on erinomainen asia!
Kauan on pohdittu, että mikä on ollut Rooman romahduksen syy. Tähän on ollut valtavasti erilaisia selityksiä, kuten myös minä olen miettinyt asiaa. Aikalaisten mukaan ongelma oli hyvin erilainen kuin mitä myöhemmin on ajateltu. [4]
Aikalaisten mukaan Roomalaiset olivat laiskoja, barbaarit saivat liikaa valtaa ja ihmiset olivat kiinnostunete kelloilla koristelluista pelleistä. Itse olen myös sitä asiaa miettinyt. [2, 3]
Nyt asiaan on 2K vuoden odotuksen jälkeen saatu vihdoin selitys. Tiede-lehden mukaan Rooma kaatui rahapulaan! Itsekin olen ollut aktiivinen kirjoittaja tiede-foorumilla nikillä Tuppu L 2.0 ja myös nikillä Tuppu L ennen sitä. [1]
Pro & Con – edistyksellinen ja vakaa
Itse olen pitkään ihaillut latinan kieltä, joskaan en ole sitä opiskellut. Mikä olisikaan parempi asia kuin kieli, joka on täysin geneerinen ja kaiken elämässä selittävä, johon vain erityisen sivistyneillä on oikeus? TTY:lla opiskeluideni aikainen paras kaverini Masi Kajander meinaa, että kyseessä on kuollut kieli. Olen myös vuosia ihaillut Viznutin hienoja demoja wanhalla raudalla, josta hyvä esimerkki on seuraava demo.
Historian paras peli
Jos joku ei tiedä, että mikä on historian paras tietokonepeli, niin on hyvä katsoa seuraava video. Ainoastaan shakki on parempi peli, jos lautapelit lasketaan.
Roomalaiset kehittivät taisteluvarusteitaan ja -tekniikoita jatkuvasti. Sotavarustelu ei ole päättynyt vielä nykyäänkään. Sota on kehittänyt tekniikkaa valtavasti. Esimerkiksi Internet on kehitetty alkujaan armeijan viestintätarpeisiin.
Barbaarikansasta ainoastaan gallialaiset eli nykyiset Belgian alueen kansalaiset olivat niitä, joita Julius Caesar arvosti. Heidän taktiikkansa taistelussa, diplomatia ja stategiointi oli vakuuttavaa sivistyneen Italian alueella.
Itseänikin kiinnostanut larppaus siitä asti, kun näin rengashaarniskojen kasaamisohjeita. En ole kuitenkaan itse koskaan aloittanut harrastusta vakavammin. Seuraavalla hyvin kuvattuna Rooman raskaan jalkaväen taktiikoita.
Rome Total War -pelin parhaimmat puolet tulevat esille pelatessa kampanjaa. Tällöin toimitaan perinteisellä vuoropohjaisella strategialla lautapelien tyyliin.
YHTEENVETO
Ehkä helpoimmalla pääsee vain käyttämällä päihteitä, eikä miettimällä turhia? Kavereiden mukaan belgialainen Hoegaarden on hyvä, itse tykkään myös mm. Leffenistä, vaikak ei olekaan munkkien luostarissa panemaa. Muitakin hyviä oluita ja päihteitä on olemassa. Sellaiset belgialaiset 10 prosenttiset luostariolut ovat hyviä latinankielen opiskelun ohessa. [5]
Ehkä aikansa ja rahansa voi myös käyttää asevarusteluun. Pohjois-Korea esittelee seuraavalla videolla tykistöänsä. Pohjois-Korean tykistö on ollut jo pitkään suunnattu Etelä-Korean pääkaupunkiin. Nyt kun Yhdysvaltoihin on varttu omat 100 kt-ydinkärjellä varustettu mannertenvälinen ohjus, niin Pohjois-Korea on taas esillä mediassa. Jännityksellä odotetaan, että koska kehittävät sukellusveneestä laukaistavan ydinohjuksen.
Usein sitä tulee kaupassa käytyä ja katseltua valikoimaa. On melkoisen selvää, että kaupankäynti on useimmiten huijausta [7]. Tämä korostuu etenkin silloin, kun ostaa suurelta valmistajalta jotain. Tietysti toisaalta silloin saa sitä mitä tilaa. Ohjelmistoalalla tämä varmasti erottuu erityisen hyvin. Pienet yritykset eivät useinkaankaan osaa laskuttaa samoin kuin monet isot ohjelmistotalot. [1]
Itsekin nykyään nautin Microsoftin tuotteilla ohjelmoimisesta. Itse oikeasti pidän siitä, että asiat onnistuu ja toimii. Valitettavasti tiedän, että tämänkin kääntöpuolena on se, että järjestelmät ovat erittäin kalliita ja vaativat täydellistä sitoitumista yhden yrityksen ohjelmistoihin. Tämä itseäni vaivaa enite. Onneksi Microsoftikin on siirtynyt aiempaa enemmän Linuxiin mm. Azuren osalta. [2]
Pyyttoni lautasella
Mitä itse katsot kun käyt kaupassa? Luultavasti katsot enimmäisenä hintaa, kuten useimmat muutkin kuluttajat. Valitettavasti itse olen samanlainen. On todella vaikea tehdä päätöksiä muuta kuin hinnan ja mielikuvan perusteella. Vaikka tiedänkin fakta, niin en sitä välttämättä ymmärrä, että minkälainen saatana olen kuluttajana. Tästä hyvä esimerkki kuvassa 1.
Miten siis itse toimisit, jos tekisit ruokaa, jota haluaisit syödä. Tekisitkö itse ruokaa, jossa on suurin osa painosta sokeria? Tarjoaisitko itse sellaista ruokaa toiselle? Miksi meidän markkinataloutemma sitten toimii näin?
Mielestäni markkinataloudessa on tietty ongelma. Vaikkakin markkinatalous on suunnitelmatalouteen nähden sikäli hyvä, että markkinataloudessa halutaan tuottaa tuotteita, joita muut haluavat, niin silti se ei toimi täydellisesti. Mielestäni markkinatalouden tulisi olla sellaista, jossa tuotettaisiin asioita, tuotteita ja palveluita, joita haluaisi itsekin kuluttaa.
Itse ostin jokin aika sitten lähellä valmistettua Talk-murua, jonka lisäksi kauramaitoa tämän rinnalle kuten Kuvasta 2. näkyy. Näissä speksit näyttävät olevan kunnossa kuin Neuvostoliiton sotakalustossa. Hyvää on, en sitä kiellä. Jokainen kuluttaja voi siis tehdä itse omat valintansa. Itse kuitenkin olen vahavasti kannattanut suomalaisen maatalouden kehittämistä [6].
Markkinatalous on valitettavasti paras järjestelmä, jonka me tunnemme. Niin mieletön kuin se onkin. Kultakantaan pohjautunut Isaac Newtonin ideoima talousmalli on vielä itselleni selvästi ymmärrettävä. Olisi vaikea kuvitella, että meillä töissä tuotettaisiin ohjelmisto leipomolle, joka sitten antaisi korvaukseksi kampaviinereitä tuotteestamme. Tätäkään kultakanta-mallia ei täysin vielä ymmärretty Newtonin aikana 300 vuotta sitten, joten ehkä tämä ”Velka on pääoman esiaste”-talous on sitten ihan ok. Itse opiskelin hervannassa teekkareiden ja muiden juoppojen keskellä TTY:lla, joten silloin ei voi paljoa odottaakaan minkäänlaista ymmärrystä taloudesta, kun koulutus on 100 % teknistä. [4]
Kaikki tai mikään ei ole täydellistä
Aina kaikilla asioilla on omat puolensa. Ei kaiken tarvitse olla täydellistä, eikä oikein mikään ehkä sellaista edes ole. Kaikissa asioissa on aina oma hyvät ja huonot puolensa.
Niin paljon kuin maailmaa on yritettykin ymmärtää, niin hyvin paljon on vielä epäselvää. Paljon jo tiedetään ihmisen elimistössä olevia molekyylejä, mutta silti paljon kokonaisuudesta on hakusessa. Onneksi siis meillä riittää vielä tekemistä. Kaikista kamalinta on sellainen työ, kun ei tiedä, että mitä pitäisi tehdä. Ehkä aina ei tarvitse vain uurtaa, vaan joskus voi otaa kevyemmin, eikä ottaa liian vakavasti. Voi vaikka Belgiasta tilat tonttu olutta tai sitten pienellä punaisella elefantilla varustettua olutta kuten kuvassa 3. on.
Elämä menee nopeasti, vuodet juokevat. Itsekin aina mietin, että mitä seuraavaksi. Tätä mietin niin lapsena, nuorena kuin aikuisenakin. Pian olen sitten siinä tilanteessa, että pitää jo hämmentyä, että miten aika on rientänyt. Paljon on tullut tehtyä, paljon on jäänyt tekemättä. Toivottavasti pahaa en olisi liikaa tehnyt, vaan minusta olisi hyötyä ollut muille.
Harva asian on muuttanut länsimaista filosofista kehitystä niin paljon kuin Isaac Newtonin kirjoittama kirja Luonnontieteen matemaattisista perusteista [1]. Kyseisen henkilön saavutuksiin kuuluu myös Britannian käytännössä kultakantaan siirtyminen vuonna 1717, joka on taloudellisesti iso uudistus aiempaan nähden [11]. [13]
“There is only one good, knowledge, and one evil, ignorance.” –Sokrates
Vaikutus yhteiskuntaan
Newtonin elämästä 1600-luvulta kesti hyvin kauan, että ihmisten ajatusmaailma muuttui keskiaikaisesta nykyiseen suuntaansa. Mahdollisesti tämä ajatukseni on omasta mielestänikin vain illuusio. Kesti osittain oman aikansa, että ensin ajatusmaailma ihmisillä muuttui, että voitiin keskittyä täysimittaisesti uuden teknillis-luonnontieteellisen filosofian harjoittamiseen. Toisaalta ehkä syy ja seuraus eivät ole niin selvät tässä asiassa, vaan ne kehittyivät yhdessä.
Moni varmasti hämmästyi 1800-luvulla siitä mahdollisuudesta, että esimerkiksi siltoja voitiin mallintaa matemaattisesti Newtonin elämäntyön kehittymisen pohjalta [5]. Insinöörien statistiikan harjoittelussa rakennetaan siltoja spagetista [10]. Toisaalta itse olen tehnyt oman opinnäytetyöni pohjautuen 1895 vuonna julkaistuun analyyttiseen siilojen lujuuslaskentamenetelmään. Tästä työstäni olen todella kiitollinen, että Koparilla sain niin hienoon saavutukseen perustuvan ohjelman tehdä. [6, 9]
”A professional engineer is competent by virtue of his/her fundamental education and training to apply the scientific method and outlook to the analysis and solution of engineering problems. He/she is able to assume personal responsibility for the development and application of engineering science and knowledge, notably in research, design, construction, manufacturing, superintending, managing and in the education of the engineer. His/her work is predominantly intellectual and varied and not of a routine mental or physical character. It requires the exercise of original thought and judgement and the ability to supervise the technical and administrative work of others. His/her education will have been such as to make him/her capable of closely and continuously following progress in his/her branch of engineering science by consulting newly published works on a worldwide basis, assimilating such information and applying it independently. He/she is thus placed in a position to make contributions to the development of engineering science or its applications. His/her education and training will have been such that he/she will have acquired a broad and general appreciation of the engineering sciences as well as thorough insight into the special features of his/her own branch. In due time he/she will be able to give authoritative technical advice and to assume responsibility for the direction of important tasks in his/her branch.” [3]
Täsmällinen kirjoittaminen on ollut erittäin vanha asia, jota on kehitetty antiikin ajoilta asti. Minun mielestäni onkin harmi, että latina vanhana, täsmällisenä ja yleiskäyttöisenä sivistyskielenä on jäänyt historiaan. Toisaalta ihmisille puhekielenä käytetty kieli on kuitenkin luonnollisempi asia. Suomalaisen näkökulmasta tätä hyötyä ei tule, vaan englanti on hyvin sekava ja monitulkintainen kirjoituskielenä.
Kirjoittamisen rakenne on kehittynyt niin, että se palvelee maailmankuvan kehittymistä parempaan suuntaan. Tämä kirjoitusrakenne tunnetaan nimellä IMRAD. Itsekin olen siihen standardoituun kirjoitusmalliin oppinut korkeakouluissa. [7, 8]
1900-luvun tekninen kehitys
Jos jostain tieteellisesti 1900-luku muistetaan, niin yksi merkittävä asia on tieteellisen tiedon soveltaminen käytäntöön. Paljon on väittelyä 1900-luvun merkittävimmästä keksinnöstä, mutta tekninen vallankumouksen eteneminen on yleisesti lähes kiistaton voittaja vuosisadan merkittävimmäksi saavutukseksi.
Tekniikan kehitystä on melkein mahdoton käsittää, samoin kuin keksintöjen merkittävyyttä jälkikäteen. Jopa itselleni on erittäin vaikea ymmärtää, että miten merkittävä asia on ollut sosiaalinen media ihmisten kommunikaatiossa.
https://www.youtube.com/watch?v=MR-FYCQFV4k
Moni tekniikka kuitenkin tuo omat varjopuolensa. Näiden seurauksena jopa monet hyvät keksinnöt, kuten DDT on kielletty. Joskin taustalla on myös ollut keksintöjen väärinkäyttö, eikä keksintöjen huonous sinällään. Massatuotanto on mahdollistanut monien luonnonvarojen kohtuuttoman ja tarpeettoman kulutuksen, kuten on käynyt esimerkiksi muovin kanssa.
https://www.youtube.com/watch?v=4fZMoyQl1Ts
Usein monet unohtavat sellaisenkin asian, kuin logistiikan valtavan kehittymisen. Prot ja Conit siinäkin on kuitenkin taustalla. Nykyään ruokaa tuodaan ymppäri maailmaa lentoliikenteellä, eikä se ole energiataloudellisesti järkevää. Tämä kuitenkin luo uudet haasteet muillekin aloille, kuten markkinoiden ohjauksen parempaan hallintaan tieteellisin menetelmin. [2]
Lessons learned: tulosten yleistä evaluointia käsiteltävästä asiasta onnistumisien ja epäonnistumisien pohjalta. [6]
Maakuntavaalit: Vuonna 2018 ensimmäistä kertaa järjestettävät alueuudistuksen mukaiset aluevaalit. [7]
Johdanto
Omassa elämässäni alkaa taas uusi vaihe, kun tulee ajankohtaiseksi muutto Alajärvelle. Tämä ei ole kuitenkaan ensimmäinen kerta kun tarvitsee muuttaa, mutta toivottavasti ei myöskään viimeinen. Elämän uudet vaiheet tulee nähdä kuin ohjelmien versionumerot: alkaa uusi luku elämässäni.
1. Uusi luku elämässä
Minun kirjoituksistani on kirjoittajana jo useita erilaisia versioita, on tullut työstettyä elämässään omia pohdistojaan monille erilasille foorumeille ja alustoille. Itse koen sen tavan omakseni, jotta saan jäsennettyä elämääni ja maailmankuvaani. Uskon, että kun asioita pakostakin joutuu työstämään, niin silloin oppii huomaamattakin uutta itsestään ja muusta maailmasta.
En ole täysin varma itsekään, että monennessako versiossa jo tällä hetkellä menen, olen nykyistä blogiani työstänyt hyvin ketterällä menetelmällä. En kuitenkaan usko, että versionumerolla on niinkään suurta merkitystä. Tärkeämpää on se, että miten paljon niiden aikana on oppinut uutta. Itse olen blogissani tähän asti painottanut huomattavasti enemmän määrällistä kuin laadullista kirjoittamista.
Iso asia omassa elmässäni on se, että osallistun syksyllä maakuntavaaleihin, sitten kun tai jos ne järjestetään. Itse jatkan perinteiseen malliini Vihreän liiton jäsenenä [9]. En tiedä paljonko saan ääniä, tai voisinko jossain muussa puolueessa saada enemmän kannatusta. En ole niin miettinyt asiaa siltä kannalta, vaan itse koen omat asiani tärkeäksi. TEK:n mukaan teekkarit ovat yleisesti hyvin ympäristömyönteisiä ihmisiä [4].
2. Muutto Alajärvelle
Alajärvi on itselleni varsin vierasta seutua, en ole siellä itse asunut aiemmin kuin vain Lehtimäen alueella. Olen jopa hieman jännitynyt, että mitä odottamatonta elämäni mahtaa siellä edes olla. Odotuksia on, mutta myös hieman epäilyksiä. Aina kaikki ei mene niin hyvin kuin voisi odottaa.
Onneksi aina pääsee kuitenkin liikkumaan helposti ympäri Suomea, asuinpaikka ei loppujen lopuksi sido kovinkaan paljoa. Tärkeintä on miettiä asuinpaikallaan sitä, että miten paljon kuluu vapaa-aikaa liikkumiseen suhteessa kustannuksiin.
2.1. Pros – hyvät jutut
Uskoisin, että Alajärvi on asuinpaikkana hyvin mainio. Kyseisessä paikkakunnassa on kaikki kaupungin peruspalvelut. En suoranaisesti osaa sanoa mitään asiaa, joka alueelta puuttuisi.
Sain oman asuntoni erittäin hyvältä ja keskeiseltä paikalta. alkujaankin ajattelin, että työmatkan tulee olla mahdollisimman lyhyt. Asunnot ovat myös varsin edullisia koko kaupungissa, joten ei ole edes erityisen hyvää syytä muuttaa keskustaa kauemmaksi.
Oma kotini on nyt työpaikan vieressä. Tässä on myös baari lähellä, jonka lisäksi aivan vieressä on myös paikallinen kebabbila. Kaikkialle tarvittaviin palveluihin ja paikkoihin pääsee kävellen.
2.2. Cons – kolikon kääntöpuoli
Alue on jossain määrin vähemmän vetovoimainen tällä hetkellä kuin esim. Seinäjoki. Väestöstä 0.4 % eli muutaman kymmentä henkeä muuttaa vuodessa pois. Syitä voi olla useita, mutta suurena tekijänä on varmasti alueen yli 10 % työttömyys. Täten on hienoa, että itse saa olla töissä. [5]
Harmikseen saa huomata, että Alajärveltä Seinäjoelle että Peräseinäjoelle on yli tunnin ajomatka [0]. Useimmille muille paikkakunnilla on vielä sitäkin pidempi matka. Täten tulee itse keksiä itselleen jotain tekemistä vapaa-ajalle. Ainakin hyvän oloinen Bar Kupperi on, jos ei muuta tekemistä keksi [1].
3. Töihin Japolle
Melkein aina olen töihin päässyt, vähemmän elämässäni on tarvinnut työttömänä olla. On sitten kyse ollut kesälomista tai opiskelulaitosten välisestä ajasta, niin on monenlaista työpaikkaa sopinut niiden väliin.
Nykyiseen työpaikkaani olisin päässyt ennen kuin menin TTY:lle opiskelemaan. Valitettavasti menin mieluumin yhteen toiseen lähempänä olleeseen työpaikkaa, joka ei ollut omaa alaani. En osannut arvata, että työllistyisin Etelä-Pohjanmaalla. Tämä hyvänä osoituksena siitä, että omaa elämäänsä ei voi helposti ennustaa, eikä se mene kuten voisi ennustaa. Ikinä ei tiedä, jos vaikka Absentille palaisin takaisin töihin kehittämään hyviä järjestelmiä [8].
Japo on merkittävä vaikuttaja Alajärvellä. Kyseinen yritys tuntuu olevan mukana kaikessa mahdollisessa paikallisessa toiminnassa. Kuvassa 2. on JAPO:n uusi Euronics-myymälä. Ylipäätänsä yrityksen toimialue kattaa melkein kaiken mahdollisen elektroniikkamyynnistä, verkkojen kautta ohjelmistotuotantoon. [2]
Itselleni on tietysti suuret odotukset sen suhteen, että miten asiat etenevät uudella työpaikalla. Olen saanut hyvin järjesteltyä omassa elämässäni kaikki niin, että pystyn aloittamaan puhtaalta pöydältä asiani. Tiedä jo etukäteen, että haasteita tulee ottaa vastaan. Tiedän myös sen, että paljon hyvääkin tulee. Kehittyminen ja oppiminen on kuitenkin jatkuvaa. Aina tulee myös suorittaa ns. lessons learned.
Yhteenveto
Paljon on uutta opittavaa, jonka takia tarvitaan lisäselvittämistä. Tulokset ovat kuitenkin toistaiseksi erinomaisia.