Karir pemrograman. Bab 1. Program Pertama

Karir pemrograman. Bab 1. Program PertamaPara maos Habr ingkang minulya, kula aturaken dhumateng panjenengan sedaya serangkaian tulisan ingkang badhe kula aturaken dados buku. Aku pengin nyelidiki masa lalu lan nyritakake babagan carane aku dadi pangembang lan terus dadi siji.

Babagan prasyarat kanggo mlebu IT, dalan nyoba lan kesalahan, sinau mandiri lan naif bocah. Aku bakal miwiti crita saka kanak-kanak lan mungkasi karo dina iki. Muga-muga buku iki bisa migunani kanggo wong sing lagi sinau babagan spesialisasi IT.
Lan wong-wong sing wis kerja ing IT mbokmenawa bakal nggambar paralel karo dalane dhewe.

Ing buku iki, sampeyan bakal nemokake referensi babagan literatur sing wis dakwaca, pengalaman komunikasi karo wong-wong sing aku liwati nalika sinau, nggarap lan ngluncurake wiwitan.
Wiwit saka guru universitas nganti investor usaha gedhe lan pemilik perusahaan multi-yuta dolar.
Ing dina iki, 3.5 bab buku wis siyap, saka 8-10 bisa. Yen bab pisanan nemokake respon positif saka pamirsa, aku bakal nerbitake kabeh buku.

Babagan aku

Aku dudu John Carmack, Nikolai Durov utawa Richard Matthew Stallman. Aku ora kerja ing perusahaan kayata Yandex, VKontakte utawa Mail.ru.
Sanajan aku duwe pengalaman kerja ing perusahaan gedhe, sing mesthi dakcritakake. Nanging aku titik ora dadi luwih ing jeneng amba, nanging ing sajarah banget dalan kanggo dadi pangembang, lan luwih, ing kamenangan lan asor sing dumadi sak 12-taun karir ing pembangunan komersial. Mesthi, sawetara saka sampeyan duwe pengalaman luwih akeh babagan IT. Nanging aku percaya yen drama lan kamenangan sing kedadeyan sajrone karirku saiki kudu digambarake. Ana akeh acara, lan kabeh macem-macem.

Sapa aku saiki minangka pangembang
- Melu luwih saka 70 proyek komersial, akeh sing ditulis saka awal
- Ing rolas proyek kita dhewe: open-source, startups
- 12 taun ing IT. 17 taun ago - wrote program pisanan
- Wong sing Paling Berharga Microsoft 2016
- Microsoft Certified Professional
- Certified Scrum Master
- Aku duwe printah apik saka C # / C ++ / Java / Python / JS
- Gaji - 6000-9000 $ / sasi. gumantung ing momotan
β€” Papan utama kerjaku saiki yaiku ijol-ijolan freelance Upwork. Liwat iku aku kerja kanggo perusahaan sing ngurusi NLP/AI/ML. Nduwe basis 1 yuta pangguna
- Rilis 3 aplikasi ing AppStore lan GooglePlay
- Aku nyiapake kanggo nemokake perusahaan IT dhewe ing sekitar proyek sing saiki lagi dikembangake

Saliyane pangembangan, aku nulis artikel kanggo blog populer, mulang teknologi anyar, lan ngomong ing konferensi. Aku santai ing klub fitness lan karo kulawarga.

Mekaten bokmenawi bab kula salebeting tema buku punika. Sabanjure critaku.

crita. Miwiti.

Aku pisanan sinau apa komputer nalika umur 7 taun. Aku mung miwiti kelas siji lan ing kelas seni diwenehi PR kanggo nggawe komputer saka karton, karet busa lan pulpen felt-tip. Mesthine wong tuwaku nulungi aku. Ibu sinau ing universitas teknis ing awal 80s lan ngerti langsung apa komputer. Sajrone latihan, dheweke malah bisa ngetokake kartu pukulan lan diunggahake menyang mesin Soviet raksasa sing manggoni bagean gedhe saka ruangan latihan.

Kita ngrampungake PR kanthi kelas 5 amarga kita nindakake kabeh kanthi sregep. Kita nemokake lembaran karton A4 sing kandel. Lingkaran dipotong saka dolanan lawas saka karet busa, lan antarmuka pangguna digambar nganggo pulpen felt-tip. Piranti kita mung duwe sawetara tombol, nanging aku lan ibuku menehi fungsi sing dibutuhake, lan sajrone pawulangan aku nuduhake marang guru carane kanthi mencet tombol "On", bolam lampu bakal sumunar ing pojok layar, ” sinambi nggambar bunder abang nganggo pulpen.

Pertemuan sabanjure karo teknologi komputer kedadeyan ing umur sing padha. Ing akhir minggu, aku kerep dolan karo simbahku, sing banjur adol macem-macem sampah lan uga gelem tuku dhuwit. Jam tangan lawas, samovar, boiler, lencana, pedhang prajurit abad kaping 13 lan liya-liyane. Ing antarane macem-macem iki, ana wong sing nggawa komputer sing mbukak saka TV lan perekam audio. Untunge mbah putri duwe loro. digawe Soviet, mesthi. TV Electron kanthi wolung tombol kanggo ngganti saluran. Lan Vega loro-kaset tape recorder, kang malah bisa ngrekam maneh kaset audio.
Karir pemrograman. Bab 1. Program Pertama
Komputer Soviet "Poisk" lan periferal: TV "Elektron", tape recorder "Vega" lan kaset audio nganggo basa BASIC

Kita wiwit ngerti carane kabeh sistem iki bisa digunakake. Klebu karo komputer ana saperangan kaset audio, instruksi manual banget worn lan brosur liyane kanthi judhul "Basa Pemrograman BASIC". Sanajan isih cilik, aku nyoba melu aktif ing proses nyambungake kabel menyang tape recorder lan TV. Banjur kita nglebokake salah sawijining kaset menyang kompartemen tape recorder, menet tombol "Maju" (yaiku, miwiti puter maneh), lan ing layar TV ana pseudo-grafis teks lan garis-garis sing ora bisa dingerteni.

Unit sirah dhewe katon kaya mesin tik, mung rada kuning lan bobote katon. Kanthi kasenengan bocah, aku menet kabeh tombol, ora weruh asil sing nyata, lan mlayu lan mlaku-mlaku. Sanajan ana ing ngarepku manual babagan basa BASIC kanthi conto program sing, amarga umurku, aku ora bisa nulis ulang.

Saka kenangan cilik, aku mesthi kelingan kabeh gadget sing dituku wong tuwa kanggo aku, wis kerja bareng karo sedulur liyane. Rattle pisanan yaiku game kondhang "Wolf Catches Eggs". Aku rampung cukup cepet, weruh kartun dawa-ngenteni ing mburi lan wanted soko liyane. Banjur ana Tetris. Nalika iku regane 1,000,000 kupon. Ya, ing Ukraina ing awal 90s, lan aku diwenehi yuta kanggo sukses akademisi. Pantes kroso kaya millionaire, Aku dhawuh game liyane Komplek iki kanggo tuwane, ngendi padha kudu bener ngatur tokoh saka macem-macem wangun tiba saka ndhuwur. Ing dina tuku, Tetris ora bisa dikendhaleni dening wong tuwaku, sing ora bisa nyingkirake suwene rong dina.

Karir pemrograman. Bab 1. Program Pertama
Misuwur "Wolf nyekel endhog lan Tetris"

Banjur ana konsol game. Kulawargane manggon ing omah cilik, ing kamar sebelahe pakdhe lan bulikku. Pakdheku minangka pilot militer, dheweke ngliwati titik panas, mula sanajan ora sopan, dheweke pancen ulet lan wedi banget, sawise nyata.
operasi militèr. Kaya akeh wong ing taun 90-an, pamane mlebu bisnis lan entuk penghasilan sing apik. Dadi TV impor, VCR, banjur set-top box Subor (mirip karo Dendy) katon ing kamare. Ambegan aku nonton dheweke main Super Mario, TopGun, Terminator lan game liyane. Lan nalika dheweke nyerahke joystick menyang tanganku, rasa senengku ora ana watese.

Karir pemrograman. Bab 1. Program Pertama
Konsol wolung bit "Syubor" lan "Super Mario" legendaris

Ya, kaya bocah-bocah biasa sing tuwuh ing taun nineties, sedina muput ing plataran. Salah siji dolanan bal pionir, utawa badminton, utawa menek wit ing taman, ing ngendi akeh woh-wohan sing tuwuh.
Nanging produk anyar iki, nalika sampeyan bisa ngontrol Mario, mlumpat liwat alangan lan nyimpen putri, ana kaping pirang-pirang luwih menarik saka buff sembarang wong wuta, ladushka lan klasik. Mulane, ndeleng kapentingan asli ing awalan, wong tuwaku menehi tugas sinau tabel perkalian. Banjur padha bakal nepaki impenku. Padha mulang dheweke ing kelas loro, lan aku mung rampung pisanan. Nanging, ngandika lan rampung.

Ora mungkin mikir babagan motivasi sing luwih kuat tinimbang duwe konsol game dhewe. Lan sajrone seminggu aku gampang mangsuli pitakon "pitu sanga", "enem telu" lan liya-liyane. Tes kasebut lulus lan dheweke tuku hadiah sing dikarepake. Nalika sampeyan bakal sinau luwih lanjut, konsol lan game komputer nduweni peran penting kanggo nggawe aku kasengsem ing program.

Mangkene kedadeyane saben taun. Generasi sabanjure konsol game wis metu. Pisanan Sega 16-bit, banjur Panasonic, banjur Sony PlayStation. Game minangka hiburan nalika aku apik. Nalika ana sawetara jenis masalah ing sekolah utawa ing ngarep, padha njupuk adoh joysticks lan, mesthi, aku ora bisa muter. Lan mesthi, nyekel wayahe nalika bali saka sekolah, lan bapakmu durung bali saka karya kanggo Occupy TV, uga jenis luck. Dadi mokal kanggo ngomong sing aku iki madat gambling utawa ngginakaken kabeh dina muter game. Ora ana kesempatan kuwi. Aku luwih seneng nginep sedina muput ing plataran, ing ngendi aku uga bisa nemokake apa-apa
menarik. Contone, game rampung alam bΓ©bas - shootouts online. Saiki sampeyan ora bakal weruh kaya iki ing plataran, nanging nalika iku perang nyata. Paintball mung dolanan bocah dibandhingake karo pembantaian sing disebabake. Ana balon udara
diisi peluru plastik kandhel. Lan wis dijupuk wong liya ing sawetara titik-kosong, kang ninggalake bruise ing setengah lengen utawa weteng. Semono uga kita urip.

Karir pemrograman. Bab 1. Program Pertama
Pistol dolanan wiwit cilik

Iku ora bakal salah kanggo sebutno film "Hackers". Iki dirilis mung ing taun 1995, dibintangi Angelina Jolie, 20 taun. Ngomong yen film kasebut nggawe kesan sing kuat kanggo aku, ora ana sing ngomong. Sawise kabeh, pikirane bocah-bocah ngerteni kabeh kanthi nilai nominal.
Lan carane wong-wong iki misuwur ngresiki ATM, mateni lampu lalu lintas lan muter listrik ing saindhenging kutha - kanggo kula iku sihir. Banjur aku mikir yen bakal kelangan dadi omnipotent kaya para Peretas.
Sawetara taun sabanjure, aku tuku saben edisi majalah Hacker lan nyoba hack Pentagon, sanajan aku durung duwe Internet.

Karir pemrograman. Bab 1. Program Pertama
Pahlawanku saka film "Hackers"

A panemuan nyata kanggo kula ana PC nyata, karo monitor lamp 15-inch lan unit sistem adhedhasar prosesor Intel Pentium II. Mesthi, iku dituku dening pamane, sing ing pungkasan taun nineties wis munggah cukup dhuwur kanggo saged.
dolanan kuwi. Sepisanan padha nguripake game kanggo kula, iku ora banget macem. Nanging ing sawijining dina, dina pangadilan teka, lintang-lintang padha sejajar lan kita teka kanggo ngunjungi pamane, sing ora ana ing omah. Aku takon:
β€” Apa aku bisa nguripake komputer?
"Ya, apa wae sing dikarepake karo dheweke," wangsulane bibi sing ditresnani.

Mesthi, aku nindakake apa sing dakkarepake karo dheweke. Ana macem-macem lambang ing desktop Windows 98. WinRar, Word, FAR, Klondike, game. Sawise ngeklik kabeh lambang, perhatianku fokus ing FAR Manager. Katon kaya layar biru sing ora bisa dingerteni, nanging kanthi dhaptar dawa (file) sing bisa diluncurake. Kanthi ngeklik saben siji, aku entuk efek saka kedadeyan kasebut. Ana sing nyambut gawe, ana sing ora. Sawise sawetara wektu, aku nyadari yen file sing diakhiri ".exe" paling menarik. Dheweke miwiti macem-macem gambar kelangan sing uga bisa diklik. Dadi aku bisa uga mbukak kabeh file exe sing kasedhiya ing komputer pamane, banjur dheweke meh ora narik kuping saka dolanan sing paling menarik lan nggawa aku menyang omah.

Karir pemrograman. Bab 1. Program Pertama
Manager FAR padha

Banjur ana klub komputer. Aku lan kancaku kerep lunga menyang kono kanggo muter Counter Strike lan Quake online, sing ora bisa ditindakake ing omah. Aku kerep njaluk ganti marang wong tuwaku supaya aku bisa main ing klub nganti setengah jam. Ningali mripatku, kaya kucing saka Shrek, dheweke menehi kontrak liyane sing duwe bathi. Aku rampung taun sekolah tanpa biji C, lan padha tuku kula komputer. Kontrak kasebut ditandatangani ing awal taun, ing wulan September, lan PC sing dikarepake bakal teka ing wulan Juni, tundhuk karo perjanjian kasebut.
Aku nyoba sing paling apik. Aku malah ngedol Sony Playstation sing daktresnani amarga emosi supaya ora keganggu sinau. Senadyan aku dadi murid, kelas 9 iku penting kanggo aku. Irung getih, aku mung kudu entuk biji sing apik.

Wis ing musim semi, ngarepake tuku PC, bisa uga kedadeyan sing paling penting ing uripku. Aku nyoba mikir maju, lan ing sawijining dina, aku matur marang bapakku:
- Bapak, aku ora ngerti carane nggunakake komputer. Ayo daftar kursus

Ora let suwe diomongke. Sawise mbukak koran kanthi pariwara, bapake nemokake blok sing ditulis ing cetakan cilik kanthi judhul "Kursus Komputer". Aku nelpon guru lan sawetara dina mengko aku wis ing kursus iki. Kursus kasebut ditindakake ing sisih liya kutha, ing bangunan panel Khrushchev lawas, ing lantai katelu. Ing siji kamar ana telung PC ing saurutan, lan sing pengin sinau padha bener dilatih ing.

Aku kelingan pelajaran pertamaku. Windows 98 njupuk wektu suwe kanggo mbukak, banjur guru njupuk lantai:
- Dadi. Sadurunge sampeyan desktop Windows. Isine lambang program. Ing sisih ngisor ana tombol Mulai. Eling! Kabeh karya diwiwiti kanthi tombol Start. Klik karo tombol mouse kiwa.
Dheweke nerusake.
- Kene - sampeyan ndeleng program diinstal. Kalkulator, Notepad, Word, Excel. Sampeyan uga bisa mateni komputer kanthi ngeklik tombol "Pateni". Cobanen.
Pungkasane dheweke pindhah menyang bagean sing luwih angel kanggoku nalika iku.
"Ing desktop," ujare guru, sampeyan uga bisa ndeleng program sing bisa diluncurake kanthi ngeklik kaping pindho.
- Dobel!? - Carane iki ing umum?
- Ayo jajal. Bukak Notepad kanthi ngeklik kaping pindho nganggo tombol mouse kiwa.

Ya, schaass. Sing paling angel ing wektu kasebut yaiku nyekel mouse ing sak panggonan lan kanthi cepet klik kaping pindho. Ing klik kaping pindho, mouse twitched sethitik lan trabasan bebarengan karo. Nanging isih, aku bisa ngatasi tugas sing ora bisa ditindakake sajrone pelajaran.
Banjur ana latihan ing Word lan Excel. Sawijining dina, dheweke mung ngidini aku ndeleng gambar alam lan monumen arsitektur. Iku kegiatan paling menarik ing memori. Luwih nyenengake tinimbang sinau babagan ngowahi format teks ing Word.

Ing jejere PC, siswa liyane padha sinau. Kaping pirang-pirang aku nemoni wong lanang sing nulis program, nalika ngrembug babagan proses iki. Iki uga kasengsem karo aku. Kelingan film Hacker lan kesel karo MS Office, aku njaluk ditransfer menyang kursus
pemrograman. Kaya kabeh acara penting ing urip, iki kedaden spontan, metu saka kapentingan.

Aku teka ing pawulangan programming pisanan karo ibu. Aku ora kelingan kok. Ketoke dheweke kudu rembugan kanggo kursus anyar lan nggawe pembayaran. Ing njaba wis musim semi, wis peteng. We lelungan liwat kabeh kutha kanthi minibus-Gazelle menyang pinggiran, tekan kondhang
panel Khrushchev, munggah menyang lantai lan supaya kita mlebu.
Padha lungguh kula mudhun ing komputer pungkasan lan mbukak program karo layar rampung biru lan huruf kuning.
- Iki Turbo Pascal. Guru menehi komentar babagan tumindake.
- Deleng, kene aku nulis dokumentasi babagan cara kerjane. Waca lan delengen.
Ing ngarepku ana kanvas kuning, teks sing ora bisa dingerteni. Aku nyoba kanggo nemokake soko kanggo aku, nanging aku ora bisa. grammar Chinese lan iku.
Pungkasane, sawise sawetara wektu, pimpinan kursus menehi kertas A4 sing dicithak. Ana sawetara bab aneh sing ditulis ing, sing sadurunge wis dakdeleng ing monitor wong lanang saka kursus program.
- Tulis maneh apa sing ditulis ing kene. Pak guru dhawuh banjur lunga.
Aku miwiti nulis:
program Summa;

Aku nulis, bebarengan nggoleki aksara Inggris ing keyboard. Ing Word, paling ora aku dilatih ing basa Rusia, nanging ing kene aku kudu sinau huruf liyane. Program kasebut diketik nganggo driji siji, nanging kanthi ati-ati.
wiwitan, pungkasan, var, integer - Apa iki? Senajan aku sinau basa Inggris saka kelas siji lan ngerti makna akeh tembung, aku ora bisa nyambung kabeh bebarengan. Kaya bruwang sing wis dilatih numpak sepedha, aku terus pedal. Akhire ana sing akrab:
writeln('Ketik angka pertama');
Banjur- writeln('Ketik angka kedua');
Banjur- writeln('Hasil = ',c);
Karir pemrograman. Bab 1. Program Pertama
Program Turbo Pascal sing pisanan

Phew, aku nulis. Aku njupuk tangan saka keyboard lan ngenteni guru katon kanggo instruksi luwih. Akhire teka liwat, mentas layar lan marang kula pencet tombol F9.
"Saiki program kasebut disusun lan dipriksa manawa ana kesalahan," ujare guru
Ora ana kesalahane. Banjur ngandika pencet Ctrl + F9, kang aku uga kudu nerangake langkah dening langkah kanggo pisanan. Sing kudu ditindakake yaiku terus Ctrl, banjur pencet F9. Layar dadi ireng lan pesen sing aku ngerti pungkasane katon ing layar: "Ketik nomer pisanan."
Didhawuhi guru kula mlebet 7. Banjur nomer loro. Aku ngetik 3 banjur pencet Ketik.

Baris 'Asil = 10' katon ing layar kanthi kacepetan kilat. Iku euforia lan aku durung tau ngalami kaya iku sadurunge ing gesang kawula. Kaya-kaya kabeh Semesta mbukak sadurunge aku lan aku nemokake dhewe ing sawetara portal. Anget ngliwati awakku, eseman katon ing raiku, lan ing endi wae ing alam bawah sadar aku ngerti - sing iki mine. Banget intuisi, ing tingkat emosi, aku wiwit aran potensial gedhe tenan ing kothak buzzing ngisor meja. Ana akeh perkara sing bisa ditindakake kanthi tangan sampeyan dhewe, lan dheweke bakal nindakake!
Sing iki sawetara jenis sihir. Iku pancene ngluwihi pangertenku carane sing kuning, ora dingerteni teks ing layar biru dadi program trep lan dingerteni. Kang uga counts dhewe! Sing nggumunake aku dudu pitungan dhewe, nanging kasunyatan manawa hieroglif sing ditulis dadi kalkulator. Ana longkangan antarane rong acara iki ing wektu. Nanging kanthi intuisi aku rumangsa manawa piranti keras iki bisa nindakake apa wae.

Meh kabeh dalan mulih ing minibus, aku rumangsa kaya ana ing angkasa. Gambar iki kanthi tulisan "Hasil" muter-muter ing sirahku, kepiye kedadeyane, apa maneh sing bisa ditindakake mesin iki, aku bisa nulis apa wae tanpa kertas. A ewu pitakonan sing kasengsem kula, bungah lan inspirasi kula ing wektu sing padha. Aku umur 14 taun. Dina iku profesi milih aku.

Terus ...

Source: www.habr.com

Add a comment