Liiketoiminta ∪ ohjelmointi

Ajatusleikki: mitä jos nykyisiä ohjelmointikieliä ja ohjelmointimalleja ei enää huomenna olisikaan olemassa? Asiakkaan liiketoiminta on kuitenkin digitalisoitava. Mistä lähtisimme liikkeelle? Minkälaisia rakennuspalikoita haluaisimme? Kaipaisimmeko “edesmenneitä” tapoja vai osaisimmeko ajatella ihan uudesta perspektiivistä?

Jatka lukemista

Ensiluokkaisia verkkopalveluita

Projekti on saatettu onnistuneesti valmiiksi, mutta se ei tarkoita, että sen voi työntää sivuun ja unohtaa. Verkkopalvelua täytyy myös ylläpitää. Mahdollinen toteutusvaiheessa otettu tekninen velka kannattaa mitä pikimmiten maksaa takaisin. Käytetyt komponentit kannattaa tietoturvasyistä päivittää, ja ajan saatossa löytyvät haavoittuvuudet paikata. Tämä vaatii ohjelmistokehittäjän sekä palvelinylläpitäjän tai DevOps-tiimin työtä.

Jatka lukemista

Inferiöörejä verkkopalveluita

Ihmisillä on ikävä tapa tarrautua omistamiinsa asioihin. Joskus it-projektista tulee kuin oma lapsi, jota on vuosien varrella kasvatettu ja johon on investoitu merkittävä määrä rahaa. Tappiokammon takia huonossa tilassa olevasta projektista voi olla yllättävän vaikea luopua, varsinkin jos siihen on kulutettu paljon rahaa ja rakkautta.

Jatka lukemista

Keskinkertaisia verkkopalveluita

Ohjelmistokehittäjä haluaa kirjoittaa nokkelaa ja täsmällistä koodia, joka mielellään täyttää alalla hyväksi havaitut kriteerit ja noudattaa niin sanottuja parhaita toimintatapoja. Ulkoasun suunnittelija ja taittaja pyrkivät kauniiseen ja vaikuttavaan lopputulokseen; viilaavat värejä ja pyöristävät pikseleitä. Liiketoiminta tahtoo ne hienoimmat toiminnallisuudet, joilla voitetaan kilpailijat tai päästään ainakin tasoihin. Yleisesti ottaen ohjelmistoprojektin omistaja tai rahoittaja haluaa lähtökohtaisesti rahoilleen vastinetta.

Jatka lukemista

Valekoodarit

Ohjelmointi on helppoa. Siihen pystyy kuka tahansa. Tämä on alamme hieno puoli mutta samalla kirous. “Oppeja” tuntematon ohjelmistokehittäjä (valekoodari) voi rakentaa ulkoisesti hyvältä näyttävän palvelun ja saada asioita nopeasti aikaan. Konepellin alla saattaa kuitenkin vaania kamaluuksia. Ongelmat ilmenevät ajan kanssa: kehitys hidastuu, bugit lisääntyvät jatkuvasti, palvelu kärsii suorituskykyongelmista ja niin edelleen.

Jatka lukemista

Automatisoidut testit vs. kliksuttelu

Kliksuttelet verkkopalvelusi toiminnot ennen julkaisua ja varmuuden vuoksi sen jälkeen. Julkaisuprosessi on stressaava ja kallis operaatio. Kliksuttelemalla tehty testaus on rasittavaa, muttei kuitenkaan riittävän kattavaa tai hyödyllistä.

Jatka lukemista

Epähaurasta ohjelmistoa

Olen viime aikoina lukenut Nassim Talebin mainiota kirjaa Antifragile, joka tuo esille uuden käsitteen nimeltä “epähauras”. Käsitteelle ei ole olemassa muuta englanninkielistä sanaa, kuten ei myöskään suomenkielistä. Käyttäkäämme siis termin “antifragile” suoraa suomennosta “epähauras”. Ihmisiltä kysyttäessä hauraan vastakohtaa, ovat yleiset vastaukset “kestävä”, “sitkeä” tai “robusti”. Mutta siinä missä haittavaikutukset vaikuttavat hauraaseen negatiivisesti, robusti kestää niitä, ja epähauras hyötyy niistä.

Jatka lukemista

Google taulukkolaskennan käyttöesimerkki Google mapsissa

Jatkoa aikaisempaan: Googlen taulukkolaskennan käyttö sovelluksen backendinä

Jatka lukemista

Googlen taulukkolaskennan käyttö sovelluksen backendinä

MVP-ajatteluun kuuluu epäolennaisten asioiden karsiminen, jotta päästäisiin mahdollimman nopeasti ja edullisesti itse päämäärään.

Jatka lukemista

Avoin lähdekoodi: mitä ja miksi

Avoimella lähdekoodilla (open source) tarkoitetaan sitä, että ohjelmiston tai kirjaston lähdekoodi on julkisesti saatavilla ja sitä saa hyödyntää kuka tahansa tarkoituksesta riippumatta.

Jatka lukemista