reede, 28. aprill 2017

Veebilehe kasutatavus (usability)

Mis on veebilehe kasutatavus - see on veebilehe kasutuslihtsus ja -meeldivus ning selle kasutamaõppimise kergus [1]. Veebileht peab olema külastaja jaoks ülesehitatud lihtsasti navigeeritavalt ja sisutekstid üheselt arusaadavalt. Nende kriteeriumite täitmisel võib veebilehe nimetada kasutatavuseks.Peamised kriteeriumid kasutatavusele on [1]:
  • õpitavus - kui kiiresti saab kasutaja objekti esmakordsel kasutamisel selgeks peamised funktsioonid?
  • tõhusus - kui kiiresti saab kasutaja vajalikud toimingud tehtud, kui objekti kasutamine on selgeks õpitud?
  • meeldejäävus - kui kiiresti suudab kasutaja vajalikud oskused meelde tuletada, kui mõnda aega ei ole objekti kasutatud?
  • vead (tegelikult veakindlus) - kui palju kasutaja objekti kasutamisel vigu teeb, kui tõsised need on ja kui raske on neid parandada?
  • rahulolu - kui meeldiv on kasutuskogemus?
Selle teema raames tahan tuua kaks näidet: kuidas veebileht ei tohi välja nägema ja kuidas ta peab välja nägema.
Esimene veebileht on väga raskesti tajutav ja arusaadav: http://www.arngren.net/. See on norra analoog Amazonile. Navigatsiooni mõiste siin puudub, see pärast on informatsiooni kättesaadavus on raskendatud. Inimese aju ei suuda tajuda nii palju pilte, reeglite järgi tohib panna 5 kuni 9 objekti lehele (reegel 7±2). Samas kui vähese kogemusega kasutaja sattub sellele veebilehele ta ei hakkagi seal midagi otsima, lihtsalt paneb internetti kinni ja kogu lugu, ehk selline veebileht ei ole õpitav, tõhus ega meeldejääv. Veebilehe külastamisel alati saavad tekkida vead, kas või näiteks klõps valele lingile. Ja kohe kindlasti saab väita, et selline veebileht ei jäta rahuolu külastamisest.
Teine näide on hea veebilehe kohta: http://swimbi.com/. Siin ei ole liiga palju gif-animatsioone, navigatsioon on lihtne, mis on peamiseks reegliks veebilehe hea tajutavusele. Sattudes sellisele lehele ei teki raskisi kasutamisega, ehk see on väga õpitav, tõhus ja meeldejääv. Ainukeseks puuduseks võib siin mainida rippmenüüde olemasolu - reeglite järgi tuleb neid vältida, kuid samas selle lehe kasutamine on lihtsustatud tänu rippmenüüle.
Nii et navigatsiooni osas peamised reeglid on [2]:
  • kasuta menüüdes otsitavaid märksõnu
  • menüü linkide arv piira maksimaalselt 7-ni
  • lisa olulised lingid ja info nii lehe osas kui navigatsiooni osas algusesse
  • väldi rippmenüüsid
Nälja pärast toon ühe näide veebilehest, kus rikutakse kõikvõimalikud veebidisaini ja kasutatavuse reeglid ja põhimõtted: http://www.theworldsworstwebsiteever.com


kolmapäev, 19. aprill 2017

Arendus- ja ärimudelid

Selle nädala teema raames vaatlen üht tarkvara arendus- ja üht ärimudelit konkreetse projekti näitel.
Selleks et saavutada edu tarkvara arendamisel tuleb kõigepealt otsustada mis arendusmudel sobib etteantud projektile. Arendusmudeleid on palju: siia kuuluvad kose-, V-, sammsammuline, interaktiivne, spiraal-, kiirarenduse ja ka teised mudelid. Nende eelised ja puudused on vaadeldud nädalateemas "Arendus- ja ärimudelid" [1].
Selles ajaveebiartiklis kirjeldan ma sellist arengumudelit nagu Scrum. Scrumi iseloomustavad järgmised põhimõtted [2]:

  • Empiirilisus - scrum kasutab "jälgi ja muutu" tsüklit, mis võimaldab uutele situatsioonidele reaalajas vastu tulla.
  • Väljatulek - scrum ei nõua eri detaile ette disainida, alguses ei pruugi kogu vajalik info olemas olla.
  • Ajastus - tavaliselt jagatakse kogu protsessi kahe kuni nelja nädala pikkusteks osadeks. Selle ajavahemiku vältel toodetakse valmis väärtus.
  • Prioritiseerimine - täidetakse kõigepealt kliendi jaoks tähtsamad detailid.
  • Iseeneslik organiseeritus - väikestel töögruppidel võimaldatakse kogu protsessi iseseisvalt juhtida ja pidevalt oma koostööd parandada.
Üheks edukaks näiteks, mis kasutas Scrum arendusmudelit võib nimetada Spotify projekti https://www.spotify.com/ee/. Spotify on üks maailma populaarseim legaalne muusikalevitaja, mis võimaldab ligipääsu enam kui 20 miljonile muusikapalale [3]. Mis võimaldas selle projekti edu saavutada? On teada kolm peamist põhjust [4, 5]:
  • Nad rangelt jälgivad agiilset mudelit, selleks on leitud kollektiivi maailma juhtivad agiilse mudeli koolitajad.
  • Töö on jagatud väikeste sõltumatu gruppide vahel. Iga meeskond on täiesti autonoomne ja keskendub konkreetsele Spotify funktsioonile. Selline lähenemisviis võimaldab kiiret väljatöötamist ja tarkvara uuendust ilma katkestuseta.
  • Tekivad töötõrked likvideeritakse koheselt. Kui tööprotsess aeglustub, siis vaadatakse ümber töögruppide jaotust ja tehakse parandusmeetmed.
Eespool nimetatud põhjused annavad Spotify tarkvarale prioriteedi teiste korporatsioonide  (Google, Amazon, Apple) tarkvara suhtes.

Kui rääkida Spotify ärilisesest kontseptsioonist, siis siin on tegemist pigem freemium ärivaraliste ärimudeliga, ehk pakutakse nii tasuta teenust kui ka selle suuremate võimalustega tasulist versiooni. Spotify kasutajad võivad valida endale sobiva variandi: tasuta, unlimited või premium versiooni. Kahe viimase versiooni kuutasu on vastavalt 3,49 ja 6,99. Põhiline vahe tasuta versiooniga on see, et ei ole vaja taluda mitte ühtegi reklaami ega ootamisaega [3]

reede, 14. aprill 2017

Kuidas saada häkkeriks

Lugesin ühe huvitava artikli, mille autoriks on Eric S. Raymond - Kuidas saada häkkeriks [1] (How To Become A Hacker) [2]. Artiklis on toodud peamised punktid, kes ja kuidas saab saada tõeliseks häkkeriks. Lühidalt konspekteerin need ka siia ajaveebi.
Häkkerite maailmas on oma kultuur, ehk omad eesmärgid ja väärtused. Nende peamised laused on:

  • Maailm on täis imelisi probleeme, mis ootavad lahendamist
  • Ühtegi probleemi ei tuleks lahendada kaks korda
  • Igavus ja nüridus on kurjast
  • Vabadus on hea
  • Suhtumine ei asenda kompetentsi
Kui vaadata need eespool toodud väljendid, siis juba nende põhjal tekib arusaam, et häkkerite kogukond on organiseeritud ja suures koostöös, ehk erinevate probleemide lahendused jagatakse teistega selleks ei mitte kulutada liiga palju aega topelttöö tegemiseks. Häkkerid ei allu igasuguste sunnitud tegevuste täitmisele, kuna see jällegi mõttetu aega kulutamine ja ei ole otstarbekas, võrreldes tegevustega, milles häkker on ise huvitatud ja mille täitmisele ta hea meelega pühendab ennast. Igaüks leiab huvipakutava probleemi enda jaoks. Häkkerite kogukonnas hinnatakse intellekti ja originaalsust.
Suhtumine ei asenda kompetentsi, ehk et olla tõeliseks häkkeriks kindlasti on vaja ka kogemust ja oskust. Peamised asjad, mis tuleb õppida on:
  • Programmerimine
  • Avatud lähtekoodiga operatsiooni süsteemi kasutamine
  • Veebi kasutamine ja HTMLi kirjutamine
  • Inglise keel
Siin pean kindlasti suured tänusõnad ütlema IT kolledžile, õppimisprogrammi koostajatele ja õppejõududele. IT programmerimise suunda valinud inimesed kõike neid eespool nimetatud asju õpivad kolledžis või vähemalt nendele antakse võimalust õppida. Potentsiaalselt saan mina ka saada häkkeriks, kui pühendan sellele rohkem aega ja energiat. 
Peale IT-maailma kuuluvate nimekirjale on ka olemas täitsa inimlikud nõuded või pigem soovitused, nimelt:
  • Valda hästi oma emakeelt, väldi veade tekkimist
  • Loe ulmet
  • Tegele võistluskunstidega
  • Uuri mõnd meditatsioonitehnikat
  • Arenda välja analüütiline muusikakuulamise oskus
  • Arenda ennast oskust hinnata sõnamänge ja andekaid kilde
Artikli lugedes leidsin ma huvitava seost minu tuttavatega, kes on head programmeerijad. Ehk enamus nendest tegelevad artiklis mainitud hobidega, kuulavad erilist muusikat. Nendele on omane eespool nimetatud huvid. Võib olla neid praegu eristab häkkeritest ainult see, et neid pole veel keegi häkkeritest nimetanud hakkeriks.
Minu jaoks on eesmärk saada häkkeriks on täitsa aktsepteeritav, vähemalt seepärast et need inimesed on väga haritud, huvitava maailma vaadega ja ka tihti enesekindlad. Nii et ma jätkan jälgima Ericu juhised ja vaatan, mis sellest tuleb.

Tuntud IT-juhid

Selle nädala teemaks osutus "IT juhtimine ja riskihaldus" ning ülesandeks oli kirjutada kahest tuntud IT-juhist. Tegelikult oli huvitav lugeda kuulsate inimeste eluloost, kuidas nendel õnnestus saavutada suurt edu, see motiveerib ka ennast liikuda edasi ja püstitada suuremaid eesmärke.

Esimeseks tegelaseks valisin mina Jack Dorsey [1], kes edukalt lõi kaks startupi: Twitter ehk mikro-blogimise süsteemi ja Square - seade, mis võimaldab krediitkardiga maksmist mobiiltelefonis.
Jack Dorsey kirjeldab kõige pealt soov ületada takistusi ning ellu viia oma unistusi. Sellised isikliku tunnused tulenevad juba lapsepõlvest. Enne kooli minekut temal olid kõneprobleemid, ta kogeles. Selleks, et lahti saada sellest ebameelduvast haigusest, läks ta oraatorite klubi. Alguses oli raske ja ei tulnud nii hästi välja, kuid lõppude lõpuks hakkas ta isegi auhindeid võitma oraatorite konkurssides.
Twitteri beta-versioon sai valmis kahe nädala jooksul, siis kui firma, kus töötas Jack oli pankroti äärel. Arvatakse, et selline idee võis sündida juba lapsepõlves, siis kui Jack jälgis kuidas taksojuhid jagasid omavahel lühidad sõnumid, et ütelda, kus nad asuvad ja mida sellel hetkel teevad. Jack ise vastab nii: "An idea that can change the course of the company can came from anywhere."
Teine edukas startup on Square. Selle süsteemi loomisele lükkas teda ühe tuttava juhtum. See inimine võis ära müüa oma uhke toode hea summa eest, kuid seda ei juhtunud, kuna ei olnud võimalus maksta krediitkaardiga. Nüüd Square on laialt kasutusel Ameerikas.
Jack Dorsey kolm põhiprintsiipi on lihtsus, lühidus ja oskus. Teda kui IT-junina kirjeldab selge pildi nägemine, kuhu ta tahab jõuda ja suutmine vedada sinna kogu meeskonda, samas võib teda nimetada arengumootoriks, kes suudab olla innovaatilises maailmas alati ees [2].

Järgmisena tahaks kindlasti mainida Larry Page [3]. Ta sai laialdast tunnustust kui üks Google ettevõtte asutajatest. Google korporatsioon sai alguse tema ideest luua uue otsingu strateegiat Interneti võrgus. 
Larry elu oli juba sünnist seotud IT-ga, kuna isa oli informaatika professor ning ema magistrigraadiga samuti andis loengud ülikoolis. Larry Page saab iseloomustada kui hullu energiaga isikut, kes ei mõtle kasu saamisest. Ta on pideva arengu eest. Aktiivselt osaleb konverentsidel ja foorumitel teaduse, äri ja tehnoloogia teemadel.
IT-juhina ta on kõigepealt liider, arengumootor, kuid samas ka ülemus, kes vahel peab ka vaimu kasutada. Tänu aktiivsele sotsiaalsele elule võib teda peeta ka teavitajaks/suhtlejaks, kes levib infot vastavalt saajate rollidele.

Kokkuvõtteks tahan öelda, et tõeline IT-juht ja ka muus valdkonnas juht on see, kes alati seisab esimeses positsioonis, jõuab kaasaegselt teha otsustusi ja olla näitena oma töögrupile.