Kartupeļi un Blockchain jeb kas kopīgs IT un kartupeļiem?
Šī gada 20. — 22. septembrī organizējam WindHackers CultHack hakatonu jeb IT biznesa ideju konkursu. Saņemam daudz jautājumu par šo pasākumu, un viens no tiem — vai šis pasākums ir paredzēts tikai programmētājiem? Atbilde — jebkurš, kam ir interese, drosme un vēlme 48 stundu laikā pārbaudīt sevi un savu biznesa ideju, var piedalīties.
Šajā pasākuma kopā sanāk gan programmētāji, gan dizaineri, kā arī cilvēki ar mārketinga un pārdošanas prasmēm, lai kopā strādātu pie jaunas idejas, tomēr izpratne par informācijas tehnoloģijām un ar IT saistītiem terminiem noteikti palīdzēs, jo hakatona ietvaros tiek izstrādāta ideja, kuras neatņemama sastāvdaļa ir informācijas tehnoloģijas.

Nejauši internetā atradu Oleksandr Krakovetskyi rakstu "ІТ термины на примере процесса выращивания картошки", kas publicēts habr.ru. Ar laipnu autora atļauju iztulkojām šo rakstu un publicējam te. Droši varat sūtīt arī savas IT terminu versijas!

Kas kopīgs IT un kartupeļiem?

Nesen man tika jautāts, ar ko atšķiras С# no C++. Rezultātā radās ideja paskaidrot IT terminus, izmantojot kartupeļu audzēšanas piemēru.

Iedomājieties, ka jums ir nepieciešams iestādīt kartupeļus. Jums ir daudz dažādu variantu, kā to izdarīt. Jūs varat atrast cilvēku ar traktoru, kurš atbrauks un jūsu vietā iestādīs kartupeļus. Jūs varat atrast arī cilvēkus, kuri kontrolēs visu procesu. Viņi atbrauks paši ar saviem kartupeļiem.

Tas ir outsourcing.

Jūs varat atrast cilvēku, kurš, izmantojot jūsu traktoru, iestādīs kartupeļus.

Tas ir out-staffing.

Jūs varat atrast cilvēku, kurš atbrauks, piedāvās dažus traktoru modeļus, optimālo traktorista darba režīmu, izmērīs laukus, ieteiks, kā rīkoties, bet kartupeļus nestādīs. Toties jūs zināsiet, kā visu realizēt.

Tas ir R&D, jeb zinātniski-pētnieciskais darbs.

Jūs varat pasaukt kaimiņu Jāni un viņš jums iestādīs kartupeļus par noteiktu samaksu.

Tas ir freelance.

Jūs varat pasaukt visus radiniekus, draugus un kaimiņus un kopīgiem spēkiem iestādīt kartupeļus.

Tas ir crowd sourcing.

Jūs varat apstaigāt visus savus draugus, kaimiņus, radiniekus un pastāstīt tiem, ka jūs labāk par visiem zināt, kā jāstāda kartupeļi, bet jums ir nepieciešamas finanses. Jūs apsolāt, ka pirmos pabarosiet ar kartupeļiem tos, kuri ir palīdzējuši.

Tas ir crowdfunding.

Jūs varat paņemt arklu, dažus spaiņus, kartupeļus, grāmatu "Kā iestādīt kartupeļus" un iestādīt kartupeļus saviem spēkiem. Bet, ja jums gadījumā vajadzēs iestādīt citu kartupeļu šķirni, tad jums vajadzēs pārrakt visu lauku vēlreiz. Risks: naktī var ielavīties kaimiņš un izrakt jūs iestādītos kartupeļus.

Tā ir projekta izstrādāšana, izmantojot Wordpress.

Jūs varat paņemt lāpstu un iestādīt kartupeļus laukā, kurš jau ir ar mēslojumu, ir izrakti grāvji un ir iespraustas norādes, kādā kārtībā jāstāda kartupeļi.

Tā ir programmēšana ar .NET/C#.

Jūs sākumā pats izgatavojat lāpstu, tad spaiņus, pētāt augsnes sastāvu, tad pats skaitāt kartupeļus. Pēc tam nepieciešams izrakt tik bedrīšu, cik jums ir kartupeļu. Tad pakāpeniski nepieciešams aizpildīt visas bedrītes ar kartupeļiem. Ja izlaidīsiet kādu bedrīti, jums iespers zibens.

Tā programmēšana ar C++.

Jūs varat atnākt pie pagasta priekšsēdētāja un izstāstīt tam, cik perfekti jūs pārzināt visu kartupeļu stādīšanas procesu, taču šogad jūs tos nestādīsiet. Bet ar 100% pārliecību sakāt, ka darīsiet to nākamgad. Un tas būs reāli forši, un raža būs 10 reizes lielāka nekā kaimiņam. Tāpēc jums tagad nepieciešama nauda, lāpstas, traktors, traktorists (labāk divi), sekretāre, pieci cilvēki, kas raks kartupeļus.

Tā ir Startup prezentācija (pitch) investoriem.

Jūsu vecvectēvs stādīja kartupeļus, jūsu vectēvs stādīja kartupeļus, jūsu tēvs stādīja kartupeļus. Jūs arī turpināt stādīt kartupeļus.

Tā ir produkta attīstība un uzturēšana.

Kad izrokat kartupeļus, jūs laiku pa laikam izrokat tos kartupeļus, kurus ir stādījis jūsu tēvs un vectēvs.

Tas ir legacy code.

8:00 no rīta jūs ar savu draugu, tēvu un kaimiņu sanākat kopā laukā, lai apspriestu progresu kartupeļu stādīšanā. Jūs paziņojat, ka visu laiku stādāt kartupeļus — vakar, šodien un stādīsiet rīt, jums nekādu problēmu. Kas var iztraucēt jums darīt šo darbu?… Odi, kas visu laiku kož. Bet tas neradīs negatīvu ietekmi uz darba ātrumu, kvalitāti un ražu. Pēc tam visi ņem lāpstas un turpina stādīt kartupeļus.
Tas ir scrum meeting.

Jūs iestādījāt kartupeļus. Pēc neilga laika kartupeļi sāka dīgt. Jūsu kartupeļos sāk parādīties kolorādo vaboles. Jūs tās sākat iznīcināt, lasīt un dedzināt. Lielāko daļu no tām jums izdodas iznīcināt, bet pēc neilga laika tās vietām parādās atkal.

Tā ir programmas koda kļūdu labošana (debugging un bug fixing).

Jūs iestādījāt kartupeļus. Uz lauka atnāca jūsu tēvs un pateica, ka kartupeļi iestādīti šķībi un jūs aizmirsāt atstāt vietu bietēm, tāpēc jums ir jāpārstāda daļa no kartupeļiem. Pēc divām dienām, kad jūs pabeidzat darbu, atnāk jūsu vectēvs un saka, ka dziļums, kādā jūs iestādījāt kartupeļus, ir nepietiekams, un tāpēc jums jāpārstāda visus kartupeļus par 5 centimetriem dziļāk. Tajā laikā pats viņš iet dzert alu ar jūsu tēvu un kaimiņu Jāni.

Tas ir Team Lead, Project Manager un refactoring.

Jūs vēlaties nedaudz piepelnīties. Jūs ejat pie kaimiņa Jāņa un sakāt, ka gribat viņam palīdzēt stādīt kartupeļus. Kaimiņš lūdz jums parādīt vislielākos kartupeļus, kurus jūs esat izaudzējis pagājušogad, kā arī nosaukt to kaimiņu vārdus, kuriem iepriekš esat palīdzējis stādīt kartupeļus. Kaimiņš jautā, kāpēc esat atnācis stādīt kartupeļus tieši pie viņa un sagaida atbildi, ka jūs visu mūžu esat sapņojis stādīt kartupeļus tieši viņa laukā. Tad jūs palūgs paskaidrot, kāda ir starpība starp grābekli un dārza šķērēm, pastāstīt, ar kādiem visskābākajiem grābekļiem esat strādājis, kā arī detalizēti aprakstīt siena sagataves procesu un to, kā iztīrīt aku. Tikai pēc tam, kad kaimiņa māte apstiprinās, ka pazīst jūs, jums iedos pašu sliktāko lāpstu un jūs sāksiet stādīt kartupeļus.
Tā ir Startup tikšanās ar korporatīvo klientu par sadarbību.

Jūs atnākat pie kaimiņa Jāņa un paņemat viņa pagrabā kartupeļus, lai iestādītu tos savā laukā. Apsolāt, ka tad kad jūsu kartupeļi izaugs, daļu jūs atgriezīsiet atpakaļ un nākamgad palīdzēsiet ar stādīšanu. Jūs, protams, neko nedarāt un pēc gada atkal ejat pie kaimiņa, lai paņemtu pagrabā nedaudz kartupeļu.

Tas ir atvērtā koda (open source) programmatūras izmantošana.

Jūsu ciemā ir liels lauks, kur cilvēki izmet savus kartupeļus un dažreiz arī citus dārzeņus. Kāds izmet sapuvušus kartupeļus, kāds — labus. Tāpēc jūs izlemjat nestādīt savus kartupeļus, bet tā vietā ejat uz šo lauku lasīt izmestos kartupeļus.

Tas ir StackOwerflow.com.

Visa jūsu ģimene stāda ciemā kartupeļus. Tikmēr Jūs staigājat pa tirgu un stāstāt visiem, ka jums ir radinieki, kuri var kvalitatīvi un ātri iestādīt kartupeļus, kurus vēlāk varētu pārdot šajā tirgū.

Tas ir pārdevējs, kas pārdod savu komandu (offshore/outsource team).

Jūs vienkārši gribat iestādīt kartupeļus vienatnē. Bet laukā jums traucē simtiem nepazīstamu cilvēku. Tie nepalīdz jums stādīt kartupeļus, bet uzmanīgi novēro procesu. Pēc tam, kad jūs ierokat bedrē kartupeli, visi sāk ierakstīt bloknotos bedrīšu daudzumu, rindu daudzumu un pasaulē atlikušo kartupeļu skaitu. Tad apmainās savā starpā ar bloknotiem un skrien pie jūsu kaimiņa, kurš arī stāda kartupeļus. Neviens no novērotājiem netic jums, ka jūs tikko iestādījāt kartupeļus, tiklīdz nepārrakstīs visu informāciju no citiem bloknotiem.


Tas ir blockchain.

Jūs drukājat 1000 fotogrāfijas ar kartupeļiem. Katru fotogrāfiju pārdodat savam kaimiņam par 1 dolāru un stāstāt, ka stādīt reālos kartupeļus — tas ir pagājušais gadsimts un pavisam drīz reālie kartupeļi nevienam nebūs vairs vajadzīgi — visi ēdīs kartupeļu fotogrāfijas. Līdz ar to, ka izdrukāt jaunas fotogrāfijas nākotnē nebūs vairs iespējams, un šīm fotogrāfijām pieaugs cena. Tā kā reāli kartupeļi ir visiem, bet fotogrāfiju nav nevienam, kaimiņi ar lielāko prieku pērk fotogrāfijas, bet vakariņās joprojām vāra reālos kartupeļus. Tajā pat laikā blakus ciemā citi cilvēki pārdod citas fotogrāfijas ar kartupeļiem un iedrošina, ka tikai šīs fotogrāfijas būs vērtīgas pēc 10 gadiem.

Tas ir bitcoin.

Jums ir 10 hektāri ar kartupeļiem. Jūs sākat tos izrakt. Bet jūs interesē ne visi kartupeļi, bet tikai tie, kuriem ir kvadrāta forma, kuri ir zaļā krāsā un ir līdzīga Mikimausam. Pēc tā, kad ir izrakti visi kartupeļi, jūs paņemat sev tos 10, kas atbilst jūsu kritērijiem un ejat mājās.

Tā ir DataMining/BigData jeb informācijas meklēšana lielos datu masīvos.

Jūs dzīvojat ciemā, kur jau 20 gadus neviens nav stādījis kartupeļus. Bet jūs esat pārliecināts, ka kaut kur tie ir. Tāpēc jūs ņemat lāpstu un sākat rakt visu pēc kārtas — laukus, dārzus, pļavas, mežus un pat ezerus. Pēc kāda laika, neatlaidīga darba rezultātā jums beidzot paveicas, un jūs tik tiešām atrodat kartupeļus. Pēc neilga laika jau viss ciems sāk meklēt kartupeļus un rakt visu pēc kārtas.

Tas ir cryptocoin mining.

Kartupeļi var daudz pastāstīt par to, kas tos ir stādījis. Piemēram, vai tos ir izaudzējis krietns saimnieks, ar ko tie ir mēsloti, kādus instrumentus izmantojis, vai tos ir audzējis pats saviem spēkiem, vai arī vienkārši nozadzis no kaimiņa, kā arī to, cik skaista viņam ir sieva. Aiz ciema ir vieta, uz kurieni visiem jānes savu kartupeļu paraugi, lai varētu to novērtēt. Bet ar laiku šī vieta ir kļuvusi par izgāztuvi. Kāds vispār ir atteicies nest kartupeļus, kāds ir atnesis sapuvušus, bet kāds saka, ka viņam kartupeļi esot, bet atsakās tos rādīt. Daži cilvēki ir nolīguši apsargus un sāka pieprasīt naudu no katra, kas vēlas apskatīties kartupeļus. Ar laiku, lai atrastu konkrētā cilvēka kartupeļus, jāpārrok kaudzi gružu.

Tas ir Open Data.

Jūs izrokat daudz kartupeļu. Pie jums ir atbraucis pagasta priekšsēdētājs un izsniedzis dokumentu, kurā ir norādīts, cik kartupeļu jūs esat izracis. Bet, lai izlasītu šo dokumentu, jums jābrauc atpakaļ pie pagasta priekšsēdētāja, jo viņš ir vienīgais ciemā, kas māk lasīt. Citi kaimiņi var redzēt dokumentu, bet neviens nesaprot, kas tur ir rakstīts.

Tas ir hasing, hash function.

Jums ir instrukcija, kā pareizi stādīt kartupeļus. Tajā ir aprakstīts, kā izrakt bedrītes, cik dziļām tām jābūt un kādā veidā tos ir jāliek bedrītēs. Jūs sākat stādīt kartupeļus. Pēc katra iestādīta kartupeļa jūsu tēvs pārbauda, vai esat sekojis pareizi instrukcijai. Ja kaut kas ir pārkāpts vai nav ievērots, jums ir jāizrok kartupelis, tad jāizrok jauna bedre un jāsāk process no sākuma.

Tas ir test-driven development vai TDD.

Jūsu kaimiņi rok kartupeļus. Kāds jau ir ienesis izraktos kartupeļus pagrabā, bet kāds ir izracis, bet vēl nav salasījis — tie joprojām guļ laukā. Bet kāds pat vēl nav sācis rakt. Jūsu uzdevums — iegūt pilnīgu visu šo kartupeļu kopiju, kas ir pagrabā, uz lauka un pat to, kuri vēl nav izrakti. Papildus jums vajag identificēt katru kartupeli — kas to ir izaudzējis, no kāda konkrēti lauka tas ir novākts, un kādas šķirnes. Šis uzdevums ir jāpaveic tādā veidā, lai neviens no kaimiņiem neuzzinātu, ka jūs esat izveidojis viņu kartupeļu kopijas un glabājat tās savā pagrabā.

Tas ir data scraping vai data parsing.

Jūs atnākat uz lauka un redzat, ka kartupeļus stāda roboti. Optimālais kartupeļu izmērs, bedrīšu dziļums un iestādīšanas ātrums ir izskaitļots reālajā laikā, ņemot vērā tādus rādītājus, kā vēja ātrums, gaisa mitrums, temperatūra, kartupeļu cena pasaules tirgū un Kartupeļi Inc. akcijas cena Ņujorkas biržā.

Tas ir Artificial Intelligence jeb mākslīgais intelekts.

Jums vajag iestādīt kartupeļus, bet neviens no jūsu ģimenes locekļiem nezina, kā to darīt. Tāpēc jūs ejat pie kaimiņa un skatāties, kā viņš to dara. Pēc neilga laika visi stāda kartupeļus kā jūsu kaimiņš.

Tas ir Machine Learning.

Jūs izrakāt kartupeļus un novietojāt tos pagrabā — katru šķiru atsevišķi. Ja kļūdas dēļ jūsu kartupeļi nokļūst nepareizajā plauktā, atskrien jūsu vectēvs un sāk sist jūs ar nūju.

Tā ir Realtion (SQL) datu bāze.

Jūs varat nešķirot kartupeļus un mest visus vienā kaudzē.

Tā ir NoSql datu bāze.

Jūs sametat kartupeļus nevis pagrabā, bet aiznesat uz bēniņiem, kur tos savieto plauktos. Kas nesalien — daļu aiznes uz pagrabu, daļu — uz jūsu kaimiņu pagrabu.

Tas ir Cloud storage jeb mākoņpakalpojums

Jums ir kartupeļi. Tā vietā, lai tos stādītu, jūs no dažādiem materiāliem, kas ir pie rokas, izveidojat kaut ko līdzīgu kartupeļiem. Tie ir kā kartupeļi, bet ēst tos nedrīkst.

Tā ir 3D drukāšana.

Kartupeļu iestādīšanas procesā jūs pierakstāt ciema GPS koordinātes, jūsu lauka koordinātes, un, visbeidzot, konkrētās bedrītes koordinātes, tādā veidā gūstot unikālu atrašanās identifikatoru, ar kura palīdzību var viegli noskaidrot, kur ir iestādīts konkrētais kartupelis.

Ceru, ka izdevās izskaidrot vismaz dažus IT terminus. :) Ja jums ir vēl kāds IT un startup vides termins, kuru var izskaidrot, izmantojot ar kartupeļiem saistītu piemēru, droši rakstiet komentāros.

Vēlies izaicināt sevi un savu biznesa ideju, tad droši piesakies WindHackers CultHack Hackathon, kas norisināsies šī gada 20. — 22. septembrī Liepājā. Vairāk informācijas: www.windhackers.com
16.03.2018