Hot or not? Aikamatka ohjelmointikielien maailmaan
Terrrvetuloa matkapahoinvoinnittomalle avaruuslennolle ohjelmointikielien maailmaan! Kapteeneina toimivat Rakettitieteen konsultit Aleksandr ”Aleksi” Koltsoff ja Sergey Alto. Matkan aikana pääsette nauttimaan ohjelmointikielien nostalgisista, kuumista ja futuristisista käänteistä. Mikä kieli on menneen talven lumia, mikä jyllää nyt ja mikä valtaa huomisen markkinat?
Toivotamme nautinnollista matkaa!
COBOL-vanhus köpöttelee menemään, vaikka ikätoverit kuihtuvat
IT-konsulttimaailmassa usein parjattu COBOL nousee matkan kapteenikaksikon puheissa esiin, sillä se on pysynyt yllättävän pitkään pinnalla. Ja pysyy edelleen, vaikka sen aikalaiset, kuten BASIC sekä monet muut kuin OOP-kielet, ovat jo pitkälti siirtyneet iästä ikuisuuteen nykypäivän tarvetta vastaamattomien vaatimustasojen vuoksi.
60-vuotias seniorikieli COBOL on suoraan sanottuna hieman tyhmä tapaus. On ollut sitä jo alusta asti, koska se on tehty bisnesihmisille ja oletettu, että he eivät osaa monimutkaisia asioita.
Hölmöydestään huolimatta COBOL on toiminut lukuisten bisneskriittisten järjestelmien alustana ja sen osaajia etsitään edelleen ympäri maailmaa. Sitä tosin ei kouluteta enää missään.
”Nyt jos joku IT-alaa harkitseva ihminen miettii, mitä lähtisi tekemään, niin en varsinaisesti voi kenellekään COBOLia suositella. Kuitenkin jos on hyvä siinä hommassa, niin kyllä sillä puolella vielä riittää kaikennäköistä tekemistä”, Koltsoff sanoo.
Kuuminta hottia just nyt
Rust siellä, Rust täällä. Miksi kaikki puhuvat nyt tästä ruosteesta?
Ohjelmoinnissa ollaan ylipäätään liukumassa pois muistivaarallisista kielistä, kuten C++:ta, enemmän kohti ympäristöä, jossa kehittäjän ei tarvitse olla enää kaikkitietävä ja -ymmärtävä jumala, vaan hän voi luottaa kääntäjän huomaavan ongelmat. Tämä vaatii muutosta, jossa ajatellaan asiat muistiturvallisuus eikä tekeminen edellä.
”C++:aa käytetään kuitenkin edelleen paljon suorituskykykriittisissä sovelluksissa. Sitten kun siellä on bugeja, ne ovat yleensä hyvin kriittisiä. Kaikki työkalut, joilla saadaan vähennettyä bugeja, ovat periaatteessa hyvä asia. Ja Rust on kieli siihen”, Koltsoff sanoo, mutta toteaa samaan hengenvetoon, ettei usko Rustin kuitenkaan korvaavan korkeamman tason kieliä, kuten Javascriptiä tai Kotlinia.
Ja nyt kun Kotlinin makuun päästiin, niin jatketaan sillä.
”Mielestäni Kotlin on yksi kuumimmista kielistä tällä hetkellä, koska Google tukee sitä aktiivisesti ja kehittäjänä on JetBrains – yksi tärkeimmistä devaustyökalujen kehittäjistä tänä päivänä. Lisäksi Kotlinilla on yhteensopivuus Java-koodin kanssa, jonka avulla se voidaan tuoda pala palalta olemassa oleviin Java-projekteihin. JetBrainsin toteuttama aktiivinen tutkimus- ja kehitysstrategia on tuonut devaajille monia käyttöskenaarioita, kuten monitasoisia sovelluksia, palvelimettomia sovelluksia ja niin edelleen”, Alto kehaisee.
Mihin kieleen kannattaa panostaa?
Jaaha, kaivetaanpas kristallipallo esiin ja tiiraillaan hieman tulevaan. Mitä kuplii pinnan alla? Mikä vyöryy seuraavaksi kentälle?
”Jos ajattelemme mobiilipuolta, Flutterilla on hyvät mahdollisuudet olla käänteentekijä. Se on luotettava ja Dart-syntaksi on lähellä JavaScriptiä. Se taas auttaa siinä, ettei siirtyminen ole devaajille niin vaikeaa. Sen markkinaosuus epäilemättä kasvaa”, Alto uumoilee.
Jos molempia rakettitieteilijöitä uskoo – niin kuin sopia saattaa – on Machine Learning, eli härmäksi muotoiltuna koneoppiminen, ja sitä kautta saatava valmis koodi lyömässä läpi ennemmin tai myöhemmin.
”Koneoppimisratkaisut auttavat tunnistamaan vakavia ongelmia varhaisessa vaiheessa tai luomaan monimutkaisia tietomalleja suurella tarkkuudella, joten se on varmasti trendi tulevina vuosina”, Alto sanoo.
Koltsoff on samoilla linjoilla, joskin hieman epäilee, osataanko niistä repiä kaikki hyöty irti.
”Tekoälyssä ja koneoppimisessa on niin kova hype, että niitä varmasti tulee tyrkylle. Koska niitä on tulossa kaikkialle, on ihan sama, mitä tehdään. Mutta sitä ei välttämättä ole mietitty loppuun asti, mitä ne vaativat ja millä tavalla niitä voisi hyödyntää nimenomaan tehokkaasti.”
”Vaikka ei hurahtaisi siihen kokonaan, niin ainakin on hyvä olla sillä tasolla, että tietää, mitkä ne työkalut siellä ovat ja mitkä helpot ongelmat on ratkaistavissa”, Koltsoff sanoo.
Mieli epäkunnossa, kieli solmussa
Olipa kieli sitten Rust, COBOL tai norja, ei kaikkea kapasiteettia ja osaamista saa millään revittyä irti, mikäli näppäimistön takana vireysmittari huutaa punaista. Mieli kun on ohjelmoinnin tärkein kieli.
IT-ala on siitä anteeksiantamaton, että harvassa paikassa tehdään vuosikausia putkeen asioita samalla tavalla. Aktiivinen uuden opettelu on kuormittavaa missä työssä tahansa. ATK:n parissa siihen täytyy tottua normaalia enemmän.
”Hyvin paljon on siitä kiinni, kokeeko kehittäjä uuden pakkopullana. On ehkä vaikeampi innostua uusista jutuista, ellei heti ensimmäisestä päivästä näe, että tämä on oikeasti kova juttu ja helpottaa elämääni. Eikä sillä tavalla, että hitto, en osaa tätä asiaa ollenkaan”, Koltsoff sanoo.
”Sen jälkeen, kun kymmenen vuotta on koodannut toivottavasti vähän erilaisissa projekteissa, huomaa, että ohjelmointikielellä ei loppupeleissä ole niin paljon merkitystä. Ongelmanratkaisu- ja hahmotuskyky ovat paljon tärkeämpiä. Näitä asioita toivoisin ihmisille opetettavan, mutta valitettavasti ne jokaisen täytyy itse löytää.”
Olemme laskeutuneet.
Rakettitiede juhlii tänä vuonna 10-vuotissynttäreitään katseet tiukasti horisontissa. Jotta tulevat vuosikymmenetkin tuottavat asiakkaillemme tehokasta työntövoimaa vaativaan ohjelmistokehitykseen, halusimme yhdessä Mielenterveyden keskusliiton kanssa pohtia, mitä voisimme tehdä alalla paremmin. Päätimme aloittaa lähtölaskennan kohti mielenterveysmyönteisempää huomista ja lähdimme matkalle etsimään keinoja organisaatiokulttuurien ja työntekijöiden jaksamisen kehittämiseen.
Osta vastahuollettu ja katsastettu konsultti!
Lue myös:
Rakettitiede väittää: tulevaisuuden ohjelmistokieli on mieli
Diablogi: devaajan viiden tähden Mieli-menu
IT-johtajat äänessä: miten ihmisiä johdetaan tänään?
Bugaava Mieli on IT-alan mörkö – johtamisen merkitys henkilöstön työssäjaksamiseen
Rakettitieteilijöiden 10 käskyä laadukkaan kooditulevaisuuden puolesta