neljapäev, 25. aprill 2019

Arendus- ja ärimudel (ITSPEA XI nädal)

    Arendusmudeleid on piisavalt palju, et igaüks leiaks oma. Samas iga arendusmudel ei sobi igale projektile ja vastupidi. Samas on kuulda ka erinevate arendusmudelite pooldajate hääli, milline see kõige parem mudel ikka oleks ja sobib igasse projekti kõige paremini. Kuid erinevate arendusmudelite headesse ja vigadesse ei taha ma sukelduda. Kui kedagi huvitab täpsemalt, millised erinevad arendusmudelid on ja mis on nende head ja vead, võib näiteks guugeldada "tarkvara arendusmudelid" või "sdlc methodologies".
    Mina räägiks oma kogemusest, ühest arendusmudeli kujunemise loost. Kui mina projekti jõudsin, siis oli kosemudelist juba loobutud ja terve asutus üritas üle minna agiilsele scrum mudelile. Kose mudeli järgi oli valminud analüüs ja disain, et siis dokumentatsioon oli olemas. Meeskonna liikmete nimetusi muudeti, tähtsaim muutus ehk oli projektijuht -> scrummaster, kes pidi seda läbi vedama hakkama. Algus oli keeruline, sest reaalset kogemust scrum'ga kellegil varasemalt polnud olnud. Eks siis otsisid kõik internetist, mis leida oli ja kujundasid oma arvamuse sellest ja hakati sellega tegelema. Aga nagu hiljem ühel koolitusel teada sain, siis selliseid asju, mis me tegime nimetatakse ka scrum-but'ideks. Et protsess on muidu scrum, aga mitte päris, et osasid asju teeme, aga osasid mitte. Näiteks võib tuua, et sprinti koostasid väike seltskond meeskonnast ja sprinti võeti arendusi nii kuidas mõte oli. Tavaline oli, et sprindi ajal töid ei lõpetatud või osadel sai otsa. Retrosid ei tehtud.
Kõik ei osalenud stand-up'idel või kui osalesid võisid need venida pikemateks aruteludeks. Esimene deploy live'sse tehti ca 4 kuu pärast, ehk siis 8 sprinti ja ca 100 muudatust. Ja siis hakkas juhtuma, kuna see oli suhteliselt ebõnnestunud ja ka scrummaster oli saanud piisavalt koolitust, siis hakati reegleid rohkem jälgima ja mitte ainult reeglite pärast vaid pika peale said meeskonna liikmed ka aru, miks miski vajalik võib olla. Sprindi planeerimisel osalesid kõik võrdsetel alustel ja said sõna kaasa öelda, stand-up'ide vajalikkusest saadi aru ja pigem oli erand kui reegel, et keegi puudus. Retrodel sai öelda, mis hästi, mis halvasti. Tooteomanik suhtles rohkem kliendiga. Ja üritati iga sprindi lõpuks ikka midagi toodangusse ka anda ja kuna väiksemad tükid olid, siis oli ka vigu vähem. Kõik olid rahul. Aga see kõik oli hästi lühidalt, sest algusest kuni enam vähem ideaalseks scrum tiimiks saamiseks läks ca. 1.5 aastat aega, aga kahjuks, siis sai minu jaoks see projekt läbi ja järgmist alustades tundus nagu oleks kõik uuesti peaaegu alguses. Aga eks iga uus projekt vajabki sisse elamist.
    Nagu arendusmudeleid, nii on ka ärimudeleid IT-vallas palju ja erinevaid. Eks igaüks mõtle, kuidas leivale ka vorsti saada ja võimalusi selleks on välja mitmeid. Mõeldes Freemium'ile ja JetBrains toodangule, eriti PyCharm Community versioonile mis on tasuta, mida ma olen aastaid kasutanud ilma mõtlematagi Professional versiooni peale. Olen täiesti hakkama saanud ilma profi versioonis olevatele lisadeta, kuigi vahest kirudes ja proovimata profi proovi aega. Nüüd, kus ma olen saanud tänu õppimisele kasutada educational versiooni, mis peaks olema lähedane profi omale, peab mõtlema selle peale kuidas profi oma saada. Kas nüüd just isiklikuks tarbimiseks, aga töö juures võiks küll juba profi oma olla, ilma võlts häbelikuseta et saab hakkama küll. Samas sellise ärimudeli miinuseks tooks kohe ära, et kuna tasuta versioon on täiesti asjalik, et siis profi proovi versioon jäigi minust puutumata. Et kui tasuta versiooni poleks olnud, oleks kasutanud profi proovi versiooni ja seda varem kasutama hakanud.

PS! Tänu ITSPEA ühele eelnevate nädalate õppematerjalidele, hakkasin alles nüüd mõtlema, kas PyCharm Community Edition'it võib tööl kasutada, aga vist ikka võib.

neljapäev, 18. aprill 2019

Häkker või mitte häkker (ITSPEA X nädal)

    Kes on häkker? Mis teha, et selleks saada? Minu, esimesed teadmised häkkeritest on olnud alati, et see on selline tüüp, kes oskab mängleva kergusega erinevatesse (info)süsteemidesse sisse murda ja teha seal, mida soovib. Pangad, (riigi)asutused, valgusfoorid, elektrijaamad, Pentagon jne. Olen isegi OWASP  haavatusi katsetanud ja proovinud, arvamisega, et see on üks häkkimiseks vajalikke oskusi. Igaks juhuks mainin, et see kõik toimus vastavates keskkondades ja testimise eesmärgil, kuidas rakendus neile vastu peab. Eric S. Raymond'i (ESR) poolt kirjutatud ja Kaido Kikkas'e poolt eestindatud kirjatüki "Kuidas saada häkkeriks" järgi nii see päris pole.
    Üldiselt ma selle kirjatüki vastu väga ei vaidlekski. Inimesel oma ideed, arvamused ja teadmised mis ta on kirja pannud. Paljutki on sellist, mis on huvitav lugeda, teadmiseks võtta ja tegeleda. Esimene, mis minu maailama pilti avardas oli nö. head ja pahad. Arvan, et enamus inimesi, arvavad nagu minagi arvasin, et häkkerid ongi need, kes korraldavad rünnakuid. ESR'i arvates see nii päris pole, et kräkkerid on hoopis need, kes pahandusi korraldavad. Samas kerge googeldamine "häkkerid ründasid" ja "kräkkerid ründasid" annab praegu eesti vastete puhul seisu 28600 vs.1890 häkkerite kasuks. Polegi, siis imestada, et häkkereid pahadeks peetakse ja kräkkeritest vähemus vaid teab. Või oleneb kõik hoopis häkkeri kaabudest  (värvilisemad kaabud) ja kräkkerid jäetakse kõrvale kuna maailm ei saagi olla ainult must ja valge/hea ja paha. Kuid see selleks.
    ESR järgi on ikka häkker hea ja kräkker on see pahalane. Häkkeriks saamiseks  annab ta nii mõningaid nõuandeid/soovitusi/reegleid kuidas peaks suhtuma, mida peaks oskama ja kuidas häkkeri staatus välja teenida. Oskuste juures ma väga ei peatuks, sest kui inimesel on olemas soov, siis oskused on omandatavad. Olgu need progemis, unixi kasutamise, veebi või inglise keele oskus, mis ESR arvates on vajalik. Kui on aega ja tahtmist, siis on see saavutatav. Staatuse saavutamine tingimused on, minu arust, seotud otseselt oskustega, aga samas vajalike oskustega ja soovist teha midagi kogukonna heaks. Sest ilma vajalike oskusteta väga tarkvara ei kirjuta, testi või silu, olgu see avatud või mitte. Ilma oskusteta võib jääda hätta ka kasulikku teabe jagamisel ja infra hooldamisel. Samas häkkeri kultuuri saaks ka teenida ilma oskusteta, lihtsalt soovitamise ja idee levitamisega, aga ainult sellega vist paguneid ei teeni.
    Kui oskused on arendatav, siis suhtumine on inimese loomuses ja seda õppida on võimalik, kuid raskem. Endale isiklikult meeldivad need mõtted, et üht sama probleemi ei tuleks lahendada rohkem kui korra ja sellega minu arust seotud, et igavus on kurjast. Nende mõtetega olen täiesti nõus ja olen ka üritanud niimoodi käituda, teadmata, et see on üks häkkerite eeldustest, aga loomulikult ise enda väikeses maailmas. Ja kindlasti  olen nõus sellega, et ainult suhtumisega ilma oskusteta kaugele ei jõua. Minu eriline austus kuulub neile, kes tõesti lahendavad probleeme ja otsivad, mida lahendada. Eriti just suuremas pildis, kui ainult enda omi. Tunne on, et enamus inimesi ootavad lahendusi, kui neid ise lahendada. Küsimust ainult tekitab minu jaoks, ESR väide, et '"Vabadus on hea". Kui vabadus on hea, miks siis erinevad nõuded ja reeglid. Üks asi on jah, vabaduses seista vastu autoritaarsusele, aga samamoodi on vabaduse piiramine ka allutamine inimesi teatud reeglitele, et sobitada neid nö. väljavalitud häkkerite seltskonda.

PS! Olles lugenud ESR poolt loodud kirjatükki aastate jooksul rohkem kui ühe korra, siis kuigi algus on meeldiv ja huvitav ja edasi mõtlema panev, siis olgugi, et ESR võib olla tark ja professionaalne ja häkker ja hinnatud jne. siis alati jõudes KKK sektsiooni, siis mõningates vastustes läbi kumav üleolevus ja ülbus nullib suht paljut.
PPS! Nende reeglite alustel mina ei ole häkker :)
   

neljapäev, 11. aprill 2019

Tuntud IT-juhide juhitüüpe (ITSPEA IX nädal)

    Kahjuks ise ühtegi tuntud IT-juhti ei tunne isiklikult, eriti neid välismaa omasid, et päris täpselt oskaks kirjeldada, millist juhitüüpi nad on. Vaevalt Bill Gates, Elon Musk, Mark Zuckerberg jne. mu pärimistele vastaks ja ennast iseloomustaksid. Samas isiku enda iseloomustus, päris seda õiget pilti ehk ei annaks ka ja nende alluvatelt iseloomustuse küsimine tunduks suurema uurimistööna mida 12,5 tunniga läbi ei vii. Seega tuleb kuidagi teist moodi mõne tuntud IT juhi juhi tüüp ära määratleda, kasutades kirjutatud, joonistatut ja filmitud materjali.
    Esiteks katsuks ära kategoriseerida Elon Muski juhitüübi. Kas nüüd päris IT juht, aga kuna tänapäeval on ka paljudel asjadel IT sees, eriti veel tema poolt kureeritutes, siis arvan, et ta sobib IT juhi kategooriasse küll. Oma teadmiste põhjal tema kohta võiks ta määratleda juhiks (leader). Seda just nii tema enda hämmastavate ideede ja ka julguse poolest teiste julgeid ideid ellu viia ning suuta kaasata inimesi nende osalt ulmeliste ideede ellu viimiseks. Näiteks, kui teised autotootjad mõtlesid elektriautodest, kui "maantemuhu" vähe vanemast vennast, siis tema kaasabil loodud töötavaid Teslasid võib täitsa päris autodeks pidada. Kuigi sellised autod pole odavad ja ka toodang käib üle kivide ja kändude, siis lihtsalt, et ta suudab raamist väljas mõelda ja mitte leppida sellega, et elektriauto peab olema väike "punn" ja ka kaasata teisi selle loomiseks võiks olla põhjus, et ta on juhi tüüpi. Või siis tema "kosmoseprogramm", ma usun, et päris raske võis olla "maha müüa" ideed, et erafirma võiks kosmose lende korraldada. Kuna kosmose lennu temaatikaga olid seni tegelenud valdavald mõned üksikud suurriigid ja kosmose unistused nõuavad palju raha... väga palju raha... väga väga palju raha... siis erafirmadele võis see tunduda ulmeline sellega tegeleda. Aga näe, kui uskuda ja teha, siis on võimalik. Huviga saab oodata ka hyperloop'i tulevikku. Kuigi arvatavasti ta ise kõigega ei tegele, siis tundub, et põhimootor on Elon Musk ikkagist, seega julgen arvata et ta on hea juht.
    Mõtlesin, et üks kirjeldatavatest IT-juhtidest võiks eestlane olla. Isiklik suhe nendega pole parem kui välismaa omadega, no ei tunne ühtki isiklikult. Kuigi, ehk oleks lihtsam neile löögile pääseda, aga mitte kell 00:30 öösel. Ja esmapilgul tundub mulle, et enamus tuntud on "lihtsalt" suuremate IT-ettevõtete juhid, kindlasti tublid inimesed, mingite tublide juhi omadustega, aga hangetel odavama hinnaga mingite IT-süsteemide töö tegemise võitmine ei tundu midagi erilist, millega üht teisest eristada. Kui keegi on mulle silma jäänud ja muljet avaldanud, siis oleks see Markus Villig, Taxify/Bolt asutaja ja juht. Päris täpselt ei oskagi tema juhitüüpi määratleda, võib olla isegi kõigist midagi, natuke juhti, natuke arengumootorit, natuke ülemust janatuke midagi veel. Aga midagi peab olema, et nii noore mehena ja suht lühikese ajaga (minu arust 5 aastat sellise tulemuse jaoks on lühike aeg) luua selline ettevõte ja seda juhtida nii, et see silma paistab. Eriti alal, kus ka konkurents on kõva ja ka riikide seadustega vaja piike murda.

PS! Veel üks filmi soovitus - Whiplash (2014) -eriskummalisest juhtimise stiilist ja juhist, kas see on halb või hea ei oskagi öelda, peab vist ise ka VEEL ühekorra vaatama :)