Programmering karriere. Kapitel 1. Første program

Programmering karriere. Kapitel 1. Første programKære læsere af Habr, jeg præsenterer for jeres opmærksomhed en række indlæg, som jeg i fremtiden planlægger at kombinere til en bog. Jeg ville dykke ned i fortiden og fortælle min historie om, hvordan jeg blev udvikler og fortsætter med at være det.

Om forudsætningerne for at komme ind på IT, forsøgets og fejlens vej, selvlæring og barnlig naivitet. Jeg vil starte min historie fra den tidlige barndom og afslutte den med i dag. Jeg håber, at denne bog vil være særlig nyttig for dem, der netop læser til et IT-speciale.
Og dem, der allerede arbejder med IT, vil nok drage paralleller med deres egen vej.

I denne bog finder du referencer til den litteratur, jeg har læst, oplevelsen af ​​at kommunikere med mennesker, som jeg krydsede veje med, mens jeg studerede, arbejdede og startede en startup.
Fra universitetslærere til store ventureinvestorer og ejere af multi-million dollar virksomheder.
Fra i dag er 3.5 kapitel af bogen klar, ud af 8-10 mulige. Hvis de første kapitler finder en positiv respons fra publikum, vil jeg udgive hele bogen.

Om Mig

Jeg er ikke John Carmack, Nikolai Durov eller Richard Matthew Stallman. Jeg arbejdede ikke i virksomheder som Yandex, VKontakte eller Mail.ru.
Selvom jeg havde erfaring med at arbejde i en stor virksomhed, som jeg helt sikkert vil fortælle dig om. Men jeg tror, ​​at pointen ikke så meget ligger i det store navn, men i selve historien om vejen til at blive udvikler, og videre i de sejre og nederlag, der skete i løbet af min 12-årige karriere inden for kommerciel udvikling. Nogle af jer har selvfølgelig meget mere erfaring indenfor IT. Men jeg mener, at de dramaer og sejre, der har fundet sted i min nuværende karriere, er værd at beskrive. Der var mange arrangementer, og de var allesammen forskelligartede.

Hvem er jeg i dag som udvikler
— Deltog i mere end 70 kommercielle projekter, hvoraf mange skrev fra bunden
— I et dusin af vores egne projekter: open source, startups
— 12 år i IT. 17 år siden - skrev det første program
Microsofts mest værdifulde person 2016
— Microsoft Certified Professional
— Certificeret Scrum Master
— Jeg har en god kommando af C#/C++/Java/Python/JS
— Løn — 6000-9000 $/måned. afhængig af belastning
— Min primære arbejdsplads i dag er freelancebørsen Upwork. Gennem det arbejder jeg for en virksomhed, der beskæftiger sig med NLP/AI/ML. Har en base på 1 million brugere
— Udgivet 3 applikationer i AppStore og GooglePlay
- Jeg forbereder mig på at stifte mit eget it-firma omkring det projekt, jeg er i gang med at udvikle

Udover udvikling skriver jeg artikler til populære blogs, underviser i nye teknologier og taler ved konferencer. Jeg slapper af i fitnessklubben og med min familie.

Det handler nok om mig, hvad bogens tema angår. Næste er min historie.

Historie. Start.

Jeg lærte først, hvad en computer er, da jeg var 7 år gammel. Jeg er lige startet i første klasse, og i kunstklassen fik vi lektier med at lave en computer af pap, skumgummi og tusch. Selvfølgelig hjalp mine forældre mig. Mor studerede på et teknisk universitet i begyndelsen af ​​80'erne og vidste på egen hånd, hvad en computer var. I løbet af træningen lykkedes det hende endda at stanse hulkort og indlæse dem i den gigantiske sovjetiske maskine, der optog brorparten af ​​træningslokalet.

Vi afsluttede vores lektier med karakteren 5, fordi vi gjorde alting flittigt. Vi fandt et tykt ark A4-pap. Der blev skåret cirkler ud af gammelt legetøj fra skumgummi, og brugerfladen blev tegnet med tusch. Vores enhed havde kun et par knapper, men min mor og jeg tildelte dem den nødvendige funktionalitet, og i løbet af lektionen viste jeg læreren, hvordan en pære ville lyse op i hjørnet af "skærmen ved at trykke på "On"-knappen. ” mens man samtidig tegner en rød cirkel med en tusch.

Mit næste møde med computerteknologi skete omkring samme alder. I weekenden besøgte jeg ofte mine bedsteforældre, som til gengæld solgte diverse skrammel og også gerne købte det for skillinger. Gamle ure, samovarer, kedler, badges, sværd fra 13-tallets krigere og meget mere. Blandt alle disse forskellige ting, bragte nogen ham en computer, der kørte fra et tv og en lydoptager. Heldigvis havde min bedstemor begge dele. Sovjetisk fremstillet, selvfølgelig. TV-elektron med otte knapper til at skifte kanal. Og en Vega to-kassette båndoptager, som endda kunne genoptage lydbånd.
Programmering karriere. Kapitel 1. Første program
Sovjetisk computer "Poisk" og periferiudstyr: TV "Electron", båndoptager "Vega" og lydkassette med BASIC sprog

Vi begyndte at finde ud af, hvordan hele dette system fungerer. Med computeren fulgte et par lydkassetter, en meget slidt brugsanvisning og endnu en brochure med titlen "BASIC Programming Language". På trods af min barndom forsøgte jeg at deltage aktivt i processen med at forbinde ledninger til båndoptageren og tv'et. Derefter indsatte vi en af ​​kassetterne i båndoptagerrummet, trykkede på "Forward"-knappen (dvs. start afspilning), og en uforståelig pseudo-grafik af tekst og bindestreger dukkede op på tv-skærmen.

Selve hovedenheden lignede en skrivemaskine, kun ret gulnet og af mærkbar vægt. Med et barns begejstring trykkede jeg på alle taster, så ingen håndgribelige resultater og løb og gik en tur. Selvom jeg allerede dengang havde en manual på BASIC-sproget foran mig med eksempler på programmer, som jeg på grund af min alder simpelthen ikke kunne omskrive.

Fra barndomsminder husker jeg bestemt alle de gadgets, som mine forældre købte til mig, efter at have trænet med andre slægtninge. Den første ranglen var det velkendte spil "Wolf Catches Eggs". Jeg blev færdig ret hurtigt, så den længe ventede tegneserie til sidst og ville have noget mere. Så var der Tetris. På det tidspunkt var det 1,000,000 kuponer værd. Ja, det var i Ukraine i begyndelsen af ​​90'erne, og jeg fik en million for min akademiske succes. Fortjent at føle mig som en millionær, bestilte jeg dette mere komplekse spil til mine forældre, hvor de skulle arrangere figurer med forskellige former, der falder fra oven, korrekt. På købsdagen blev Tetris ukontrolleret taget fra mig af mine forældre, som selv ikke kunne slippe af med det i to dage.

Programmering karriere. Kapitel 1. Første program
Berømte "Ulv fanger æg og Tetris"

Så var der spillekonsoller. Vores familie boede i et lille hus, hvor min onkel og moster også boede i naboværelset. Min onkel var militærpilot, han gik gennem hot spots, så på trods af sin beskedenhed var han meget ihærdig og var bange for lidt, efter ægte
militære operationer. Ligesom mange mennesker i 90'erne, gik min onkel i forretning og havde en ret god indkomst. Så et importeret tv, en videobåndoptager og så en Subor set-top-boks (analog med Dendy) dukkede op på hans værelse. Det tog pusten fra mig at se ham spille Super Mario, TopGun, Terminator og andre spil. Og da han gav joysticket i mine hænder, kendte min lykke ingen grænser.

Programmering karriere. Kapitel 1. Første program
Otte-bit konsol "Syubor" og den legendariske "Super Mario"

Ja, som alle almindelige børn, der voksede op i halvfemserne, tilbragte jeg hele dagen i gården. Enten spille pionerbold, eller badminton, eller klatre i træer i haven, hvor der voksede mange forskellige frugter.
Men dette nye produkt, hvor du kan styre Mario, hoppe over forhindringer og redde prinsessen, var mange gange mere interessant end nogen blind mands buff, ladushka og klassikere. Derfor, da mine forældre så min oprigtige interesse for præfikser, gav mine forældre mig til opgave at lære multiplikationstabellen. Så vil de opfylde min drøm. De underviser hende i anden klasse, og jeg er lige blevet færdig med den første. Men sagt og gjort.

Det var umuligt at tænke på en stærkere motivation end at have sin egen spillekonsol. Og inden for en uge svarede jeg let på spørgsmålene "syv ni", "seks tre" og lignende. Testen blev bestået, og de købte mig den eftertragtede gave. Som du vil lære videre, spillede konsoller og computerspil en væsentlig rolle i at få mig til at interessere mig for programmering.

Sådan gik det år efter år. Den næste generation af spillekonsoller var på vej. Først Sega 16-bit, så Panasonic, så Sony PlayStation. Spil var min underholdning, da jeg var god. Når der var et eller andet problem i skolen eller derhjemme, tog de mine joysticks fra mig, og jeg kunne selvfølgelig ikke spille. Og selvfølgelig var det også en slags held at fange det øjeblik, hvor du vendte tilbage fra skole, og din far endnu ikke var vendt tilbage fra arbejde for at besætte tv'et. Så det er umuligt at sige, at jeg var ludoman eller brugte hele dagen på at spille spil. Der var ingen sådan mulighed. Jeg brugte hellere hele dagen i gården, hvor jeg også kunne finde noget
interessant. For eksempel et helt vildt spil - luftskud. Nu om dage vil man ikke se sådan noget i gårdhaverne, men dengang var det en rigtig krig. Paintball er bare en barneleg i forhold til det blodbad, vi forårsagede. Der var luftballoner
fyldt med tætte plastikkugler. Og efter at have skudt en anden fyr på kort afstand, efterlod han et blåt mærke på halvdelen af ​​sin arm eller mave. Sådan levede vi.

Programmering karriere. Kapitel 1. Første program
Legetøjspistol fra barndommen

Det ville ikke være forkert at nævne filmen "Hackers". Den blev udgivet i 1995 med den 20-årige Angelina Jolie i hovedrollen. At sige, at filmen gjorde et stærkt indtryk på mig, er at sige ingenting. Når alt kommer til alt, opfatter børns tænkning alt for pålydende.
Og hvordan disse fyre berømt rensede pengeautomater, slukkede trafiklys og legede med elektricitet i hele byen - for mig var det magi. Så gik tanken op for mig, at det ville være fedt at blive lige så almægtig som hackerne.
Et par år senere købte jeg hvert nummer af magasinet Hacker og forsøgte at hacke Pentagon, selvom jeg ikke havde internettet endnu.

Programmering karriere. Kapitel 1. Første program
Mine helte fra filmen "Hackers"

En rigtig opdagelse for mig var en rigtig pc med en 15-tommer lampeskærm og en systemenhed baseret på en Intel Pentium II-processor. Det blev selvfølgelig købt af hans onkel, som i slutningen af ​​halvfemserne var steget højt nok til at have råd til
sådan legetøj. Første gang de tændte et spil for mig, var det ikke så spændende. Men en dag kom dommens dag, stjernerne passede, og vi kom for at besøge vores onkel, som ikke var hjemme. Jeg spurgte:
— Kan jeg tænde for computeren?
"Ja, gør hvad du vil med ham," svarede den kærlige tante.

Selvfølgelig gjorde jeg, hvad jeg ville med ham. Der var forskellige ikoner på Windows 98-skrivebordet. WinRar, Word, FAR, Klondike, spil. Efter at have klikket på alle ikonerne, fokuserede min opmærksomhed på FAR Manager. Det ligner en uforståelig blå skærm, men med en lang liste (af filer), der kan startes. Ved at klikke på hver enkelt efter tur fangede jeg effekten af ​​det, der skete. Nogle virkede, nogle gjorde ikke. Efter et stykke tid indså jeg, at filer, der ender på ".exe" er de mest interessante. De lancerer forskellige fede billeder, som du også kan klikke på. Så jeg lancerede nok alle de tilgængelige exe-filer på min onkels computer, og så trak de mig knap i ørerne fra det superinteressante legetøj og tog mig med hjem.

Programmering karriere. Kapitel 1. Første program
Samme FAR Manager

Så var der computerklubber. Min ven og jeg tog ofte dertil for at spille Counter Strike og Quake online, hvilket vi ikke kunne gøre derhjemme. Jeg bad ofte mine forældre om skifte, så jeg kunne spille i klubben i en halv time. Da de så mine øjne, som katten fra Shrek, tilbød de mig endnu en lukrativ kontrakt. Jeg afslutter skoleåret uden C-karakterer, og de køber en computer til mig. Kontrakten blev underskrevet i begyndelsen af ​​året, i september, og den eftertragtede pc skulle ankomme allerede i juni, forudsat at aftalerne blev overholdt.
Jeg prøvede mit bedste. Jeg solgte endda min elskede Sony Playstation af følelser for at blive mindre distraheret fra mine studier. Selvom jeg var halvdårlig elev, var 9. klasse vigtig for mig. For helvede, jeg skulle bare have gode karakterer.

Allerede i foråret, i forventning om købet af en pc, skete nok den mest betydningsfulde begivenhed i mit liv. Jeg prøver at tænke fremad, og så en skønne dag sagde jeg til min far:
- Far, jeg ved ikke, hvordan man bruger en computer. Lad os tilmelde os kurser

Ikke før sagt end gjort. Efter at have åbnet avisen med annoncer fandt faderen en blok skrevet med småt med overskriften "Computer kurser". Jeg ringede til lærerne og et par dage senere var jeg allerede på disse kurser. Kurserne fandt sted på den anden side af byen, i en gammel panelbygning i Khrusjtjov på tredje sal. I det ene rum var der tre pc'er på række, og dem, der ville studere, blev faktisk trænet på dem.

Jeg husker min første lektion. Windows 98 tog lang tid at indlæse, så tog læreren ordet:
- Altså. Før du er en Windows-skrivebord. Den indeholder programikoner. Nederst er knappen Start. Husk! Alt arbejde begynder med Start-knappen. Klik på den med venstre museknap.
Han fortsatte.
- Her - ser du installerede programmer. Lommeregner, Notesblok, Word, Excel. Du kan også slukke for din computer ved at klikke på knappen "Luk ned". Prøv det.
Til sidst gik han videre til den sværere del for mig på det tidspunkt.
"På skrivebordet," sagde læreren, kan du også se programmer, der kan startes ved at dobbeltklikke.
- Dobbelt!? - Hvordan er det generelt?
- Lad os prøve. Start Notesblok ved at dobbeltklikke på den med venstre museknap.

Ja, schaass. Det sværeste i det øjeblik var at holde musen ét sted og samtidig hurtigt klikke to gange. Ved det andet klik rykkede musen lidt og genvejen med. Men alligevel lykkedes det mig at overkomme sådan en uoverkommelig opgave i løbet af lektionen.
Så var der træning i Word og Excel. En dag lod de mig simpelthen se billeder af natur og arkitektoniske monumenter igennem. Det var den mest interessante aktivitet i min hukommelse. Meget sjovere end at lære at formatere tekst i Word.

Ved siden af ​​min pc studerede andre studerende. Et par gange stødte jeg på fyre, der skrev programmer, mens de ophidset diskuterede denne proces. Dette interesserede mig også. Da jeg huskede filmen Hackers og var træt af MS Office, bad jeg om at blive overført til kurser
programmering. Som alle væsentlige begivenheder i livet skete dette spontant, af interesse.

Jeg ankom til min første programmeringslektion med min mor. Jeg husker ikke hvorfor. Tilsyneladende skulle hun forhandle sig til nye kurser og betale. Det var forår udenfor, det var allerede mørkt. Vi rejste gennem hele byen med minibus-Gazelle til udkanten, nåede den berygtede
panel Khrusjtjov, gik op på gulvet og lukkede os ind.
De satte mig ved slutcomputeren og åbnede et program med en helt blå skærm og gule bogstaver.
- Det her er Turbo Pascal. Læreren kommenterede hans handling.
- Se, her har jeg skrevet dokumentation for, hvordan det fungerer. Læs den og tag et kig.
Foran mig lå et lærred af gul, helt uforståelig tekst. Jeg prøvede at finde ud af noget selv, men jeg kunne ikke. Kinesisk grammatik og det er det.
Til sidst, efter noget tid, gav kursuslederen mig et trykt A4-papir. Der stod en eller anden mærkelig ting på den, som jeg tidligere havde set på monitorerne til fyrene fra programmeringskurser.
- Omskriv det, der står her. Læreren kommanderede og gik.
Jeg begyndte at skrive:
program Summa;

Jeg skrev og ledte samtidig efter engelske bogstaver på tastaturet. I Word trænede jeg i hvert fald russisk, men her skal jeg lære andre bogstaver. Programmet blev skrevet med én finger, men meget omhyggeligt.
begynde, ende, var, heltal - Hvad er dette? Selvom jeg studerede engelsk fra første klasse og kendte betydningen af ​​mange ord, kunne jeg ikke forbinde det hele. Som en trænet bjørn på en cykel fortsatte jeg med at træde i pedalerne. Endelig noget bekendt:
writeln('Indtast første tal');
Derefter - writeln('Indtast andet tal');
Derefter - writeln('Resultat = ',c);
Programmering karriere. Kapitel 1. Første program
Det allerførste Turbo Pascal-program

Puha, jeg skrev det. Jeg tog mine hænder fra tastaturet og ventede på, at guruen dukkede op for at få yderligere instruktioner. Til sidst kom han hen, scannede skærmen og bad mig trykke på F9-tasten.
"Nu er programmet kompileret og tjekket for fejl," sagde guruen
Der var ingen fejl. Så sagde han, at han skulle trykke på Ctrl+F9, hvilket jeg også skulle forklare trin for trin for første gang. Det du skal gøre er at holde Ctrl nede og derefter trykke på F9. Skærmen blev sort, og en besked, som jeg forstod, dukkede endelig op på den: "Indtast det første tal."
På lærerens kommando indtastede jeg 7. Derefter det andet tal. Jeg indtaster 3 og trykker på Enter.

Linjen 'Resultat = 10' vises på skærmen med lynets hast. Det var eufori, og jeg havde aldrig oplevet noget lignende før i mit liv. Det var, som om hele universet åbnede sig for mig, og jeg befandt mig i en form for portal. Varmen gik gennem min krop, et smil dukkede op på mit ansigt, og et sted meget dybt i underbevidstheden indså jeg - at dette er mit. Meget intuitivt, på et følelsesmæssigt plan, begyndte jeg at mærke det enorme potentiale i denne summende kasse under bordet. Der er så mange ting, du kan gøre med dine egne hænder, og hun vil gøre det!
At dette er en slags magi. Det var fuldstændig over min fatteevne, hvordan den gule, uforståelige tekst på en blå skærm blev til et praktisk og forståeligt program. Hvilket også tæller sig selv! Det, der overraskede mig, var ikke selve regnestykket, men det faktum, at de skrevne hieroglyffer blev til en lommeregner. Der var et hul mellem disse to begivenheder på det tidspunkt. Men intuitivt følte jeg, at dette stykke hardware kunne næsten alt.

Næsten hele vejen hjem i minibussen følte jeg, at jeg var i rummet. Dette billede med inskriptionen "Resultat" snurrede i mit hoved, hvordan skete det, hvad kan denne maskine ellers, kan jeg skrive noget selv uden et stykke papir. Tusind spørgsmål, der interesserede mig, begejstrede og inspirerede mig på samme tid. Jeg var 14 år gammel. Den dag valgte faget mig.

Fortsættes ...

Kilde: www.habr.com

Tilføj en kommentar