Järjekorras üheteistkümnes ITSPEA lugemine on tarkvara arendus- ja ärimudelite teemal. Douglas Crockford on oma raamatus “Javascript: The Good Parts” kirjutanud, et arvutiprogrammid on kõige keerulisemad asjad, mida inimene on loonud ja küllap see on tõsi. Sestap ei saa vähegi keerukamate ja mahukamate tarkvaraprojektide tegemisse lihtsalt “sisse sukelduda”. Arendus vajab mingisugust mudelit ehk arendusmudelit. Ajamahukad tarkvaraprojektid võivad osutuda finantsiliselt kulukateks. Seetõttu on vaja arendusmudeli kõrvale ärimudelit. Seekordse ajaveebi kirjutise raames analüüsin üht arendus- ja üht ärimudelit mõne konkreetse projekti näitel.

Vaba tarkvara “turu” arendusmudel

Eric S. Raymond’i (ESR) essee “The Cathedral and the Bazaar” toob välja kaks küllaltki vastandlikku lähenemist (põhiliselt vaba) tarkvara arendusele. Siinkohal ma käsitlen “Bazaar”-i ehk eesti keeles “turu” poolt. Selle kohaselt on tarkvara lähtekood avalik ning selle arendamine toimub kõikide huviliste silma all.

“Turu” lähenemisest rääkides ei saa mööda hiilida sellisest kuulsast projektist nagu Linus Torvaldsi loodud kernelist ehk tuumast Linux (v0.02 nägi ilmavalgust aastal 1991). ESRi sõnul on just Linus Torvalds “turu” lähenemise välja töötaja. Üheks suureks Linuxi edu põhjuseks on just asjaolu, et see on olnud juba algusest peale nö avalikkuse ühine projekt. Torvalds võttis Linuxi versiooni 0.12 juures kasutusele litsentsi GPLv2, kaotades seeläbi ära klausli, mis keelas Linuxi levitamise raha eest. ESR sõnastas Linuse seaduse, mis (minu tõlgenduses) seisneb selles, et ükski programmiviga (bugid) ei jää varju, kui sellel hoiavad pilku peal piisaval hulgal silmapaare. Linuse seaduse vastu räägib kahjuks OpenSSLi puudutava Heartbleed turvaveaga juhtunu — viidatud artikkel toob välja, et Google’l võttis antud turvavea avastamine aega kaks aastat, samas kui Apple ja Microsofti suletud lähtekoodiga toodetest leiab Google pidevalt turvavigu (võib-olla on OpenSSL lihtsalt turvalisemalt arendatud, who knows). Aga üldiselt võib öelda, et protsessid, mille abil Linuxit arendatakse, on selle edu saladus.

Järgmise näite toon teisest — front end veebiraamistike — valdkonnast. Seda turgu valitsevad kolm suurt “tegijat”: Angular, React ja Vue. Angular’i arenduse taga on Google ja React’i taga Facebook. Vue on selles suhtes erand, sest sel pole ühegi suurkorporatsiooni niivõrd otsest tuge taga, vaid seda arendab kogukond eesotsas Evan You’ga (kes on Patreonis üsnagi kõrgelt toetatud). See on ka üheks põhjuseks, miks Wikimedia Foundation on otsustanud just selle veebiraamistiku kasuks MediaWiki tulevasel refaktoreerimisel. “Turu” juurde tagasi tulles — Vue’l (nagu ka Angular’il ja React’il) on selged juhised selle kohta, kuidas on võimalik projektis kaasa lüüa. Aga jällegi, Vue’l puudub otsene sõltuvus ühest suurkorporatsioonist, ja sestap on potentsiaalselt vähem takistusi kaasalööjate panuse realiseerumiseks.

Jaosvara ärimudel

Jeff Atwood viitab oma blogipostituses “You Don’t Need Millions of Dollars” raamatule “Masters of Doom”, mis räägib loo kuidas John Carmack ja John Romero lõid ikoonilised arvutimängud Wolfenstein 3D, Doom ja Quake. Jaosvara ehk shareware ärimudel leidis esmast kasutust rakendusprogrammi PC-Talk juures, mille kirjutas ajakirja PC World asutaja Andrew Fluegelman aastal 1982. Ta tegi selle programmi avalikkusele online‘s tasuta kättesaadavaks ja lisas sisuliselt, et kui teile meeldib, siis võite tänu avaldada tšekkidega. Ja programmi kasutajad olid tõepoolest tänulikud. Küllaltki varsti pidi Fluegelman palkama meeskonna, kelle ülesandeks sai laekunud tšekkide ülelugemine. Hilisema aja, üheksakümnendate teises poole eduloo näide on Winamp. Enamusel siiski nii edukalt ei läinud ega lähe. Enamasti tuleb leppida märksa tagasihoidlikuma sissetulekuga.

Viidatud raamat toob välja, et arvutimängude puhul eelnevalt kirjeldatud jaosvara lähenemine ei toiminud. Inimesed ei olnud nõus vabatahtlikult maksma arvutimängu eest, kui nad said selle täisversiooni kätte. Raamatus mainitud Scott Miller (arvutimänge tootva Apogee Software rajaja) tuli välja ideega limiteerida jaosvarana jagatavaid arvutimänge — näiteks anti vabalt jaosvarana välja üks osa mängust, teised kaks tuli osta. Nii oli lugu näiteks Duke Nukem I kolme episoodiga. Atwood toob paralleeli mängudele rakendatud toonaste jaosvara praktikate ja tänapäevase äppide-sisese ostudega (in-app purchases).

Kokkuvõte

Eelnevas kirjutasin vaba tarkvara arendusmudeli “turu” variandist ning jaosvara ärimudelist. Nendel on selged erinevused, aga arvan, et üks aspekt on ühine — edu tagab informatsiooni vaba levik. “Turu” peal on liikvel avatud lähtekood ja arendusalased arutelud. Jaosvara puhul lubatakse vabalt levitada teatud (või ka täielikku) versiooni tarkvarast.