Ivan Shkodkin

Jag heter Ivan Shkodkin. Jag arbetar och lever som programmerare och nu har jag en paus. Och som väntat, under sådana pauser dyker olika tankar upp.

Till exempel: att veta vilket programmeringsspråk du skriver på kan jag säga: var du kom ifrån, hur länge du gick, hur mycket ditt språk gjorde dig upprörd och glad, var du kommer att hamna. Jag minns mycket väl mitt första programmeringsspråk vid 4 års ålder: det var en hammare. Jag minns hur jag använde en hammare för att förvandla höjdmätarcylindern på ett stridsflygplan till en kub (min farfar tog den från någonstans från ett militärt flygfält i närheten).

1. Starta

Hammaren var ett magiskt redskap. Jag kan programmera vilket objekt som helst till en kub eller ett plan. Jag kunde utföra mirakel genom att slå spikar och krossa glas. Grannarna runt omkring ropade:
- Lugna ner din pojke! Det finns ingen frid från hans upprördheter!
Men min mamma svarade mig alltid:
- Son, om du tar upp en hammare, hamra spiken ända upp till huvudet!
Och jag gjorde mål!

Det är dags att gå till skolan. Jag hade tur: i vår stad fanns det en underbar skola som hade en dataklubb. Det fanns BCs och Corvettes där, det fanns ett lokalt nätverk och en Robotron-100-skrivare. Men som alltid var skolan dyr och att ta sig dit var inte lätt. På något sätt kom jag dit. Redan från 1 september satte jag mig hos bookmakern. Där träffade jag "Schoolgirl". Jag har stött på olika språk i mitt liv, men jag kommer aldrig att glömma det här. Jag lärde "Schoolgirl" att blinka på skärmen, och hon lärde mig cykler. Jag lärde "Schoolgirl" att säga "Hej, värld!", och hon lärde mig konsolinmatning. Men det fanns också otäcka barn. Deras föräldrar var utomlands och köpte en Apple Lisa 2 till dem. De behandlade alla arrogant, såg ner på alla andra. Och en dag skrev någon från klassen ett lysande program som, som svar på att skriva in ett namn, visade frasen: "Skriv kod, Vanya! Skriva!" och jag träffades av blixten. Från det ögonblicket, oavsett vad jag gjorde, skrev jag kod.

Jag skrev kod i huvudet när jag gick till och kom från skolan. Jag skrev kod när jag gick till affären, tog ut soporna eller dammsög mattan. Jag gjorde det här hela tiden. Till och med traditionella mormödrar vid ingången, när jag gick förbi dem, anmärkte klokt: "Och den här killen vet hur man skriver kod!"

Skolan flög förbi snabbt, i ett andetag, och på sista året tog föräldrarna med sig en IBM XT till en av våra huvudämnen. Snabbhet, förbättrad grafikprestanda. Och Adlib-ljudkortet på ISA-bussen... Jag insåg att den här maskinen skulle ta över världen. När jag kom till mina föräldrar sa jag bestämt att jag skulle jobba på sommaren, göra vad jag ville, men jag behövde den här bilen. Mina föräldrar var rädda av min upphetsning, men de bestämde med rätta att jag skulle få en chans och lovade att lägga till en del av pengarna, även med tanke på att det var det häftiga 90-talet.

Slutproven blev godkända, och eftersom mina föräldrar var mer än vanliga människor, hade jag inte så mycket val: jag var tvungen att gå till universitetet. Jag klarade antagningsprovet utan att gå några förberedande kurser och hittade på något sätt direkt in på datavetenskapsavdelningen. Där upptäckte jag Modula-2. Jag började delta i institutets programmeringsteam, där jag visade goda resultat. Vårt lag vann finalen i ministertävlingen. Och till och med dekanus, snyftande av lycka, som alltid var indignerad över att det inte fanns några monader, stängningar och lambdas i modulen, vände sig till lagtränaren i tårar, och sa: "Jaha, vad fort den här jäveln springer!"

Universitetet flög förbi som en dag. Och redan sex månader före examen började ebenholtshandlare anlända till avdelningen en efter en. De såg till allt, nosade runt, valde de högst uppsatta eleverna. Och så, dagen då jag fick mitt diplom, kommer en sådan respektabel man fram till mig, ger mig ett visitkort och frågar:
– Son, har du redan tänkt på din framtid?

På visitkortet stod det "Galera Production Limited." En nöjd chef i en hyfsad jacka, ett hus över vänster axel, en lyxbil bakom hans högra, och bara ett telefonnummer. Jag tänkte, varför inte pourquois?

2. Galär

Så fort jag passerade tröskeln till köket attackerade produktchefen mig omedelbart:
-Varför står du här, noob? Jag betalar dig mormor! Nåväl, låt oss gå och göra lite bus snabbare!

Jag tyckte att det inte var en bra idé - jag hade inte tid att skaffa ett jobb och första dagen blev jag utropad.

Vi hade ett stort öppet utrymme. Till höger om mig satt en mörkhyad kille från samma provins. Han hälsade mig först:
— Hej, jag heter Sanya Banin. Och alla kallar mig Banya.
"Hej, jag heter Ivan Shkodkin, och alla kallar mig Ivan Shkodkin," svarade jag.
Vi såg dock ut som två idioter, eftersom vi hade varsitt märke hängande på bröstet. Galley företagsetik, för fan.

Dagen började med ett rally. Vi memorerade ramsor, sjöng dumma sånger, upprepade alla möjliga skräp om och om igen och svarade på alla frågor: "Ja, jag förstår, jag ska göra det." Vid något tillfälle trodde jag att det här faktiskt inte var ett så dåligt ställe: kakor, te, sportevenemang. Du behöver bara göra allt som begärs av dig i tid och i tid. En dag gav vår chef oss i uppdrag att optimera byggtiden för ett projekt. Jag tänkte på något sätt inte så mycket på hur jag skulle göra det snabbt. Bara ett par skript, parallellisering och ansluten Banis maskin. Projektet gick ihop många gånger snabbare, vilket jag direkt rapporterade till senioren.
-Är du en idiot? Tror du att vi själva inte har kommit på hur man gör det här snabbare? Ja, vi kommer alla att få sparken! Tja, jag tog omedelbart isär klustret och återgick till det tidigare schemat!
Tydligen skrämde jag den chefen verkligen, för jag flyttades direkt till en annan avdelning. På kvällen, medan jag drack öl och äppel-druvjuice på ett kafé, berättade jag om detta för mina kollegor.
— Jag förflyttas från test till produktion. Det här är ett helt annat land. — Det var dödstyst i salen... Någon från salen sa:
— Lyssna på mitt goda råd: när du rullar ut distributionen till produktion, var inte en hjälte. Säg bara att du är en utvecklare, inte en teknisk supportspecialist.
Kvällen avslutades i tystnad.

3. Produkt

Redan första dagen var det varmt på produktavdelningen. Nästa stora utplacering var precis redo. Banya och jag kom till den nya chefen, och han började genast lära oss om livet:
- Så, pojkar. Jag har bara 2 regler på min avdelning. Först. Kör tester när det är möjligt. Modulär, integration, vad som helst!
Då brister hans assistent ut och skriker att alla servrar är överbelastade och fler måste skäras. Chefen gav order om att köpa servrar i Amazonas moln, men att inte snåla.
När jag tittade på honom sa jag till Bana med låg röst: "Det ser ut som om vår chef är smart."
Chefen svarade omedelbart och återkom till oss:
– Ja, jag har 2 regler på min avdelning. Det första är tester. Och för det andra, försök inte ens göra något dumt, som att skriva en funktion själv eller utföra aggressiv optimering. Jag kommer att strypa er båda med mina egna händer.

Det jag gillade med produktionen var att det alltid fanns något att göra. Chefen hade alltid en känsla av att några buggar märktes i programvaran. Han sa hela tiden:
- Sluta, alla. Titta på stockarna!
Det var vad vi gjorde. De bästa killarna och tjejerna i landet jobbade på vår avdelning. Banya från Arzamas, Kolya från Chernyakhovsk, Lera från... Jag kommer inte ihåg var Lera kom ifrån.

Och nu har releasedagen kommit.
Plötsligt började alla supporttelefoner ringa. Arga kommentarer på supportforumet exploderade med kraft av granater. Recensioner i fackpressen var som bomber. Det var ett helvete.

Vi fixade buggar som galningar, tillbringade 4 timmar på natten på kontoret, fixade fel i omgångar, gjorde vad vi kunde. Chefen hade skägg, ögonen och kinderna buktade, och det fick vi också. Efter att ha rullat ut ett paket med plåster kunde vi äntligen andas ut.

Nyår

Varje kommande nyår delades priser ut på galleriet. Och de straffade. Märkligt nog belönades jag med en ganska anständig bonus. Det fanns en stor festsal, den Viktigaste ringde alla på listan och räckte dem kuvert. Min tur kom, jag skakade Sams hand och han ställde en fråga till mig:
– De säger att din bugg magiskt räddade hela molnet från ett totalt fall? Jag skulle vilja se din kod...
Skit. Vem har sagt detta till honom?! Jag öppnar surfplattan och visar den här platsen. På vilket hövdingen reagerar med vidgade ögon och anmärker: "Nå, son... Ja, du är en bedragare...". De säger att denna glitch räddade företaget tiotals miljoner rubel, åtminstone ökade företaget sin rörelsevinst.
Vid utgången möttes jag av vår chef, all övervuxen, full och ovårdad.
— Gav de dig en bonus? Du? Kosyachnik? Oberonschik? För dig som inte har läst Code Perfect av Steve McConnell?
- Ja det gjorde dem.
– Ja, det här är bara utmärkt!
Och den förstummade kocken började falla på sidan. Han blev ägare till en guldmedalj.

Vad ska man göra? Jag tog honom i axeln och gick till ett kafé för programmerare i närheten. Alla typer av människor var redan där, skrek och skrek, redo att fira nyår om ett par timmar. Av någon anledning hade vi två inte kul. Stressen och det hårda arbetet jag utstod påverkade varje del av min kropp. Vi satt vid ett bord med vackra unga damer och en konversation började sakta.

Ung kvinna:
— Killar, vad programmerar ni på?
"Jag älskar FreePascal," chef
"Och jag är på Oberon," sa jag.

Den andra tjejen tittade på mig som om jag var en idiot.
-Är du tillräcklig? Det finns inte ens generika där?! Det finns inga strängar som en inbyggd typ?! Vad är det för fel på dig?

Chefen ställde sig upp och vände sig mot mig: ”Låt oss gå och hämta lite luft. Det är lite kvavt här."
Vi bestämde oss för att inte återvända till kaféet. Nyårssnön föll lätt och sällan från ovan, fyrverkerier sköt i fjärran och glädjerop hördes.

- Tja, varför sa du till henne att du programmerar på Oberon?
– Du själv, Alexander Nikolaevich, startade det först. Hela rummet berättades om FreePascal...
Chefen fortsatte att filosofera men på ett löst ämne:
- Nej, hörde du? Agile detta, agile det, agile kommer att släppa dig! Du hörde?! SLÄPP! Agile hjälper inte alls. Så kyss mig på min håriga gamla rumpa!

I allmänhet gillade han inte när FreePascal kallades "pascakal", precis som jag inte gjorde när de sa om Oberon att hans tåg hade gått.

4. Eget företag

Vid något tillfälle bestämde jag mig för att det var värt att organisera mitt eget företag med något enkelt namn.

Jag försökte vinna anbud, delta i tävlingar, men på något sätt fungerade inte allt. Det visar sig att det inte alls är lätt att vara ledare. Och jag började redan tänka att byssan var en varm plats.

Och så får jag reda på att den tidigare chefen har gått i pension från företagslivet. Jag berättade för honom, visade honom om min idé, han ryckte till och sa:
- Lando. Förvänta dig bara inte att jag ska kalla dig chef!
- Ja chefen! - Jag svarade.
Och det gick bra. Han visste många saker som jag inte visste. För att inte säga att vi tjänade en miljon, men vi började tjäna något. Men det slutade ändå illa. På grund av den förbannade Obama sjönk rubelns växelkurs, priserna steg, en kris kom och uppgången från knäna fullbordades. Företagets verksamhet fick avbrytas, chefen gick till en annan galär. Det är synd, men vad var planerna...

5. Gardin

Jag hittade en gång min dotter titta på en YouTube-kanal tillägnad Component Pascal. Presentatören förklarade tydligt hur man arbetar med utökningsbara register, överordnade metoder och slutförande av procedurer. Vid 14 år gammal uppfattar hon lugnt saker som hon själv växte upp till bara på college. Hennes hammare är mycket mer skicklig, kraftfull och lätt. Hennes generation kommer att slå spikar mycket skickligare än min. Jag trodde att om ytterligare 20 år kommer techno-jävla på ämnet goroutiner kontra trådar i Erlang att verka löjligt och naivt. Eller så kanske de inte gör det.

Eh... jag ska slå på mitt ZX-Spectrum!)

Bulle för stämningen: music.yandex.ru/album/3175/track/10216

PS Stort tack till Robert Zemeckis och hans team för inspirationen.

Källa: www.habr.com

Lägg en kommentar