Ohjelmointityön uudet haasteet - toteutuvatko nämä ennusteet?

Ennustaminen on tunnetusti melkein mahdotonta, etenkin oikeaan osuvien ennusteiden laatiminen. Lyhyen aikavälin sääennusteet ehkä onnistuvat kohtuullisesti, mutta muut ennusteet? Ihmisen luoma maailma on liian monimutkainen ja markkinat toimivat kaikesta mallintamisesta huolimatta omalla arvaamattomalla tavallaan. Ohjelmistotyön menetelmät, työkalut ja tekniikat eivät ole poikkeus.

Tietotekniikasta useita kirjoja kirjoittanut Peter Wayner on joka tapauksessa Infoworld-lehdessä uskaltautunut ohjelmistotyön oraakkeliksi. Ennustus innosti myös blogin kirjoittajaa laatimaan omia kommentteja Waynerin listaan. Siksi kannattaa alla olevan tiivistelmän jälkeen lukea myös Waynerin alkuperäinen artikkeli, jos haluaa tarkistaa, mitä hän todella tarkoitti.

Mitä mieltä itse olet näistä kehityssuunnista ja niiden merkityksestä?
  1. Grafiikkaprosessoreiden ohjelmoinnista tullaan puhumaan yhtä lailla kuin ennen tietokoneiden keskusyksiköistä. Grafiikkaprosessoreita osataan ja kannattaa käyttää tehojensa puolesta myös moniin muihin laskentaintensiivisiin sovelluksiin kuin pelkkään grafiikan nopeuttamiseen.
  2. Tietokannoista tulee älykkäämpiä datan analysointityökaluja. Big data ja liiketoiminnan analytiikka sujuu jatkossa yhä useammin suoraan tietokannassa. Tietokannat antavat itse yhä tarkempia tietoja, mitä aineistoja ne ylläpitävät ja minkälaisia piirteitä aineistoissa on, ilman että niitä tarvitsee aina erikseen "käskyttää" eli ohjelmoida. 
  3. JavaScriptiä - jolla tunnetusti ei ole mitään tekemistä Javan kanssa - tullaan käyttämään kaikkialla. Kannattaa seurata mihin esimerkiksi HTML5, Chrome OS ja Chromebookit  pystyvät.
  4. Android, ja sen myötä Linux, tulee kaikkiin laitteisiin. Nikonin kamerassa voit käyttää Instagramia, koska itse kamera on Android-laite. Saattaa käydä niin, että Android-sovellukset tulevat myös PC:issä syrjäyttämään nykyiset Windowsin appsit ja työpöytäohjelmat.
  5.  Esineiden internet tuo mukanaan lisää mitä erilaisimpia järjestelmäalustoja ja etenkin sovellusrajapintoja. Kun kaikki esineet ja laitteet kytketään toisiinsa, on järkevien ohjelmointirajapintojen (API) toteutuksessa ja valinnassa työmaata tuhansille ja taas tuhansille ohjelmoijille. 
  6. Avoimen lähdekoodin sovelluksien ansaintamallit kehittyvät. Jos lähdekoodi on ilmaista, jollakin tavalla ohjelmien tekijöidenkin pitää elää. Lopputuloksena me saamme jatkossakin nauttia edullisista ohjelmista, mutta maksaa jonkin verran sovellusten tuesta tai lisäarvollisista ominaisuuksista, jotka eivät välttämättä ole avointa lähdekoodia. 
  7. Web-sovellusten oma koodaus korvautuu johtavien julkaisuympäristöjen (CMS) omilla laajennuksilla ja moduuleilla. Valitse Drupal, Wordpress tai Joomla ja toteuta web-unelmasi kustannustehokkaasti.
  8. Vähemmän isoja ohjelmistoja, enemmän isoja ohjelmistoalustoja joihin saa runsaasti lisäominaisuuksia, pikkuohjelmistoja ja laajennuksia. Google Worksin laajennukset tai Chrome Storen sovellukset kertovat hyvin, miten ohjelmistomarkkinat muotouvat uudella tavalla. Iso järjestelmäalusta, johon tulee käytännössä joka päivä uusia laajennuksia, appseja ja "plugareita". 
  9. Komentorivit eivät katoa mihinkään. Mikä onkaan tehokkaampaa ohjelmointia kuin kirjoittaa haluttu käsky editorilla muutamalla merkillä. Komentorivit ja tekstieditorit ovat elossa vielä 2020-luvullakin.
  10. Ohjelmointi tulee olemaan yhtä vaikeaa ja harvojen ammatti kuin ennenkin. Ohjelmointia on yritetty tehdä helpommaksi viimeiset 50 vuotta siinä onnistumatta. Ohjelmointityökalujen yksinkertaistaminen ei paranna tilannetta - todellinen ohjelmointityö vaatii jatkossakin lahjoja ja ammattitaitoa.
  11. Ohjelmistotyön ulkoistaminen ja itse tehtävät sovellukset pysyvät pattitilanteessa. Molempien ratkaisumallien tekniikat ja prosessit kehittyvät. Molemmilla tulee olemaan hyvät ja huonot puolensa myös jatkossa.
  12. Yritysten johto ei jatkossakaan ymmärrä ohjelmistoammattilaisten kompetensseja ja itse ohjelmistotyön luonnetta. Kannattaa unohtaa fantasiat lapsineroista, jotka ohjelmoivat uuden ihmesovelluksen muutamassa päivässä. Järkevä tavoite, järkevä aikataulu ja pätevä toteutustiimi, jossa on kokemusta mukana voi saada jotakin hyödyllistäkin aikaan.