Proqramlaşdırma karyerası. Fəsil 2. Məktəb və ya özünütəhsil

Hekayənin davamı "Proqramçı Karyera".

2001-ci il idi. Ən maraqlı əməliyyat sisteminin buraxıldığı il - Windows XP. Rsdn.ru nə vaxt ortaya çıxdı? C# və .NET Framework-ün doğulduğu il. Minilliyin birinci ili. Və yeni avadanlıqların gücündə eksponensial artım ili: Pentium IV, 256 mb ram.

9-cu sinfi bitirdikdən və proqramlaşdırmaya olan tükənməz həvəsimi görəndən sonra valideynlərim məni kollecdə Proqramlaşdırma ixtisasına köçürmək qərarına gəldilər. İnanırdılar ki, belə olsa, daha yaxşı olar və məni orada öyrədəcəklər. Kollec sözü, yeri gəlmişkən, sənaye şəhərciyinin kənarındakı bu müəssisəyə yaraşmırdı. Bu, fasadında dəbdə olan “kollec” sözü olan etiket asmayan digər texnikumlardan heç bir fərqi olmayan adi texnikum idi.
Yaxşı. Valideynlərimə qarşı çıxmadım və onların qərarına etiraz etmədim. Hər halda özümütəhsillə məşğul idim və düşünürdüm ki, bu yeni yerdə mənə əlavə biliklər verəcəklər.


Həmin yay kollecə getməzdən əvvəl jurnalda dərc olunan bütün mümkün texnologiyaları hərtərəfli öyrənməyə başladım. "Haker". Parça-parça oxudum və yenidən oxudum. Əsl hakerlərlə müsahibələri və onların məsləhətlərini xüsusilə bəyəndim.
Sərin hakerlərin əksəriyyəti Linux-da idi. Və Mazda (Windows) lamerlər üçün idi. Jurnalı oxuyan hər kəs oradakı yazıların üslubunu xatırlayır. Buna görə də, kövrək zehnimdə iki fikir öz aralarında mübarizə aparırdı - Windows-u tərk etmək və ya soyuqqanlı olmaq və sırf Linux-a bağlı qalmaq.
Hacker jurnalının hər yeni buraxılışı mənə diski formatlaşdırmaq və Linux Red Hat 7 və ya Windows Me quraşdırmaq üçün yeni səbəb verdi. Əlbəttə, mənim heç bir təlim vektorum yox idi və jurnallarda və ya “Hakerlərin sirləri” kimi pirat CD-lərdə oxuduqlarımı etdim. "Windows XP aka tutuquşu" ruhunda yeni bir yeniləmədən sonra paralel olaraq iki əməliyyat sisteminin quraşdırılması da silindi - bu evdar qadınlar üçündür. Əgər ciddi işlər görmək istəyirsinizsə, Linux konsolundan gözləriniz bağlı işləməlisiniz”. Əlbəttə ki, mən sistemləri sındırmaq, şəbəkənin necə işlədiyini başa düşmək və o dövrdə ən güclü Anonim olmaq istəyirdim.

Disk heç bir təəssüflənmədən formatlaşdırıldı və onun üzərində Unix-ə bənzər sistemin paylama dəsti quraşdırıldı. Hə hə. Mən bir dəfə konsoldan yalnız FreeBSD 4.3 istifadə edən əsl hakerlə müsahibəni oxudum. Eyni zamanda o, bankların və dövlət sistemlərinin sındırılmasına görə məsuliyyət daşıyırdı. Başa ildırım vurdu və mən 5 dəfə əsas sistem kimi BSD ƏS quraşdırdım. Problem onda idi ki, quraşdırmadan sonra orada çılpaq konsoldan başqa heç nə yox idi. Hətta səs. KDE2-ni quraşdırmaq və səsi açmaq üçün qavalla çox rəqs etmək və bir neçə konfiqurasiyanı düzəltmək lazım idi.

Proqramlaşdırma karyerası. Fəsil 2. Məktəb və ya özünütəhsil
FreeBSD 4.3 paylanması ən çox haker əməliyyat sistemidir

Ədəbiyyat haqqında

Kompüter əldə edən kimi proqramlaşdırma ilə bağlı kitablar almağa başladım. Birincisi "Turbo Pascal 7.0" üçün bələdçi idi. Bu təəccüblü deyil, çünki mən artıq proqramlaşdırma kurslarından bir az Paskal dilini bilirdim və özüm öyrənməyə davam edə bilərdim. Problem onda idi ki, hakerlər Paskalda yazmırlar. Sonra Perl dili dəbdə idi və ya daha soyuqqanlı uşaqlar üçün C/C++ idi. Ən azından jurnalda belə yazmışdılar. Sona qədər oxuduğum ilk kitab Kerniqan və Riçinin “C Proqramlaşdırma Dili” idi. Yeri gəlmişkən, mən Linux mühitində oxumuşam
və kodu yazmaq üçün gcc və KDE-nin daxili redaktorundan istifadə etdi.

Bu kitabdan sonra UNIX Ensiklopediyası alınıb. Çəkisi 3 kiloqram idi və A3 vərəqlərində çap olunub.
Kitabın ön tərəfində çəngəlli cizgi filmi şeytanının tammetrajlı təsviri var idi və o, Ukraynada 125 qrivnaya başa gəlirdi (bu, 25-ci ildə təxminən 2001 dollardır). Kitabı almaq üçün məktəbli dostumdan borc götürdüm, qalanını isə valideynlərim əlavə etdi. Sonra mən həvəslə Unix əmrlərini, vim və emacs redaktorunu, fayl sisteminin strukturunu və konfiqurasiya fayllarının daxili hissələrini öyrənməyə başladım. Demək olar ki, ensiklopediyanın 700 səhifəsi yeyildi və mən öz arzuma - Kul-Hatzker olmağa bir addım yaxınlaşdım.

Proqramlaşdırma karyerası. Fəsil 2. Məktəb və ya özünütəhsil
UNIX Ensiklopediyası - Oxuduğum ilk kitablardan biri

Sevimli nənəm və babamın mənə verdiyi bütün pulları kitablara xərcləmişəm. Növbəti kitab 21 Gündə C++ idi. Adı çox cəlbedici idi və ona görə də yüksək keyfiyyətli başqa kitablara baxmadım. Buna baxmayaraq, təxminən bu 3 həftə ərzində bütün mənbələr kitabdan köçürüldü və mən artıq C++ dilində bir şeyi başa düşdüm. Baxmayaraq ki, mən bu siyahılarda yazılanları daha çox başa düşmədim. Amma irəliləyiş var idi.

Məndən hansı kitabın karyeranıza daha çox təsir etdiyini soruşsanız, tərəddüd etmədən cavab verərdim - "Proqramlaşdırma sənəti" - D. Knuth. Bu, beynin yenidən qurulması idi. Bu kitabın əlimə necə gəldiyini dəqiq deyə bilmərəm, amma gələcək karyerama ən böyük təsiri oldu.

Proqramlaşdırma karyerası. Fəsil 2. Məktəb və ya özünütəhsil
Proqramlaşdırma sənəti - mütləq oxuyun

Kitabları əsasən yalnız bazar günləri açıq olan radio bazarından alırdım. Səhər yeməyində daha bir neçə onlarla qrivna qənaət edərək, C++ və ya Perl üzrə yeni kitaba getdim. Seçim olduqca böyük idi, amma mentorum yox idi, ona görə də hər şeyi öyrəndim. Satıcıdan mənə proqramlaşdırma ilə bağlı nəsə tövsiyə etməsini xahiş etdim. Və yadımdadır, o, rəfdən “Proqramlaşdırma sənəti”ni götürmüşdü. Birinci cild". Kitabdan aydın şəkildə artıq istifadə olunub. Qapağın küncləri əyilmişdi və arxa tərəfində böyük bir cızıq göründü, Bill Qeytsin rəyini tam olaraq tərk etdiyi yerdə: "Əgər bu kitabı oxuyursansa, mütləq mənə CV-ni göndərməlisən" və onun imzası ilə. Mən Qeyts haqqında jurnallardan bilirdim və bütün Hakerlərin onu tənqid etməsinə baxmayaraq, ona CV göndərməyin yaxşı olacağını düşündüm. Kitabın qiyməti 72 UAH. ($15) və mən tez yeni materialı öyrənmək üçün tramvayla evə qaçdım.

Nə qədər dərin və əsas şeyləri oxudum, təbii ki, 15 yaşında anlaya bilmədim. Ancaq hər bir məşqi başa çatdırmaq üçün səylə çalışdım. Bir dəfə mən hətta çətinlik dərəcəsi 25 və ya 30 olan problemi düzgün həll edə bildim. Bu, riyazi induksiyaya aid bir fəsil idi. Məktəb riyaziyyatını sevməsəm də, yaxşı qavramasam da, həsirdən keçdim. Knutun təhlili - Mən saatlarla oturdum.
Sonrakı, ikinci fəsildə məlumat strukturları var idi. Bu şəkillər və əlaqəli siyahıların, ikili ağacların, yığınların və növbələrin şəkilləri hələ də gözümün qabağındadır. Kommersiya inkişafı sahəsində 12 illik karyeramda mən ən ümumi məqsədli dillərdən istifadə etmişəm.
Bunlar C/C++, C#, Java, Python, JavaScript, Delphi-dir. Dilin necə adlandırılmasından asılı olmayaraq, onun standart kitabxanasında Donald Knutun üç cildlik kitabında təsvir etdiyi məlumat strukturları və alqoritmlər var idi. Buna görə də yeni bir şey öyrənmək çox vaxt tələb etmir.

Birinci cild kifayət qədər tez yeyildi. Knutun kitabında verilən alqoritmləri C dilinə yenidən yazdım.Həmişə nəticə vermədi, amma daha çox məşq etdikcə, bir o qədər aydınlıq gəldi. Qeyrətin əskikliyi yox idi. Birinci cildi bitirdikdən sonra tərəddüd etmədən ikinci və üçüncü cildi almağa qaçdım. İkincisini hələlik bir kənara qoydum, üçüncüsünü (Çeşidləmə və Axtarış) hərtərəfli götürdüm.
Bütün notebooku necə doldurduğumu, çeşidləmə və axtarış alqoritmlərini “şərh etdiyimi” yaxşı xatırlayıram. Məlumat strukturlarında olduğu kimi, ikili axtarış və sürətli çeşidləmə də Knuthun üçüncü cildində sxematik şəkildə necə göründüyünü xatırlayaraq, ildırım sürəti ilə beynimdə vizuallaşdırılır.
Hər yerdə qamçı oxunurdu. Hətta yaxınlıqda kompüter olmadan dənizə gedəndə də alqoritmləri dəftərə yazdım və onların arasından rəqəmlərin ardıcıllığını keçirdim. Heapsort mənimsəmək üçün nə qədər əziyyət çəkdiyimi hələ də xatırlayıram, amma buna dəyərdi.

Mənə güclü təsir edən növbəti kitab “Əjdahanın kitabı” oldu. O, həmçinin “Tərtibçilər: Prinsiplər, Texnologiyalar, Alətlər” - A. Aho, R. Seti. Ondan əvvəl C++ dilində qabaqcıl tapşırıqları olan Herbert Schiltd idi. Nöqtələrin birləşdiyi yer budur.
Schildt sayəsində mən parser və dil tərcüməçiləri yazmağı öyrəndim. Və sonra Əjdaha Kitabı məni öz C++ kompilyatorumu yazmağa sövq etdi.

Proqramlaşdırma karyerası. Fəsil 2. Məktəb və ya özünütəhsil
Əjdaha kitabı

O vaxta qədər mənə modemlə işləyən İnternet bağlantısı verilmişdi və mən çox vaxt proqramçılar üçün ən populyar saytda - rsdn.ru-da keçirdim. Orada C++ üstünlük təşkil edirdi və hər bir peşəkar mənim həll edə bilmədiyim suallara cavab verə bilərdi. Bu məni incitdi və mən başa düşdüm
ki, mən bu saqqallı uşaqlardan uzağam, ona görə də “From and To”nun üstünlüklərini öyrənməliyəm. Bu motivasiya məni ilk ciddi layihəmə - 1998-ci il C++ standartının öz tərtibçisimə apardı. Daha ətraflı tarix və mənbələri bu yazıda tapa bilərsiniz habr.com/en/post/322656.

Məktəb və ya öz-özünə təhsil

Ancaq gəlin IDE-dən kənar reallığa qayıdaq. Baxmayaraq ki, o vaxta qədər getdikcə real həyatdan uzaqlaşıb virtual həyatda batırdım, amma yaşım və ümumiyyətlə qəbul olunmuş normalar məni kollecə getməyə məcbur etdi. Əsl işgəncə idi. Bu müəssisədə nə işlə məşğul olduğum və bu məlumatı niyə dinlədiyim barədə heç bir fikrim yox idi. Başımda tamamilə fərqli prioritetlər var idi. Visual Studio 6.0 öyrənmək, WinApi və Delphi 6 ilə cəhd etmək.
Ümumi mənzərəni başa düşməsəm də, atdığım hər addımda mənə sevinməyə imkan verən gözəl sayt, firststeps.ru. Məsələn, eyni texnologiyada MFC və ya ActiveX.
Bəs kollec? Bu vaxt itkisi idi. Ümumiyyətlə, təhsil mövzusuna toxunsaq, zəif oxumuşam. 6-cı sinfə qədər əlaçı idim, sonra C qiymətləri düşdü və 8-9-cu sinfə qədər tez-tez dərsləri buraxdım, bunun üçün valideynlərimdən illüziya kəmərləri aldım.
Ona görə də kollecə gələndə də həvəs az idi.
- Proqramlaşdırma haradadır? Özümə sual verdim. Amma ilin birinci yarısında orada olmayıb. Amma MS-DOS və Office ilə informatika, eləcə də ümumi təhsil fənləri var idi.

Üstəlik, qapalı bir xasiyyətim var idi və çox təvazökar idim. Bu yeni rəngarəng ekipaj açıq şəkildə inam yaratmadı. Və qarşılıqlı idi. Buna görə də müxtəlif istehzalar özünü çox gözlətmədi. Mən buna uzun müddət dözdüm, dözə bilmədim və sinifdə cinayətkarlardan birinin üzünə yumruq vurdum. Bəli, o, masasına uçdu. Atamın sayəsində - uşaqlıqdan mənə döyüşməyi öyrətdi və həqiqətən istəsəm, fiziki güc tətbiq edə bilərdim. Ancaq bu, çox nadir hallarda baş verdi; daha tez-tez maksimum qaynama nöqtəsini gözləyərək istehzaya dözdüm.
Yeri gəlmişkən, baş verənlərdən çox çaşmış, lakin yenə də öz üstünlüyünü hiss edən cinayətkar məni qisas döyüşünə çağırdı. Artıq təhsil ocağının arxasındakı boş sahədə.
Bu, məktəbdə olduğu kimi uşaqların yumruq atması deyildi. Burnu sınmış, qanı çox olan nəcib bir mahaç var idi. Oğlan da utancaq oğlan deyildi və qarmaqları və üst qatlarını məharətlə çatdırırdı. Hamı sağ qaldı və o vaxtdan bəri heç kim mənə sataşmadı.
bu "proqramçılar üçün kollecdə". Tezliklə ora getmək həvəsim tamamilə itdi. Ona görə də ora getməyi dayandırdım və valideynlərimin heç bir təhdidinin mənə təsiri olmadı. Hansısa möcüzə ilə mənim kollecdə qalmağım məktəbin 10-cu sinfinə hesablanıb və mənim 11-ci sinfə getmək hüququm olub.

Hər şey yaxşı olardı, amma 11-ci sinif kollecdən çox da yaxşı olmadığı ortaya çıxdı. Doğma məktəbimə qayıtdım, birinci sinifdən oxuduğum bəzi tanıdığım oğlanlarla görüşdüm və doğma şəhərimdə hər şeyin yaxşı olacağına ümid etdim. Yalnız bir nüans var idi: uşaqlar ibtidai məktəbdə dostluq etdiyim oğlanlardan daha çox seriallardakı quldurlara oxşayırdılar. Hamı əzələ kütləsi qazanmaq üçün idman zalına axışırdı. Mən bambuka oxşayırdım. İncə və çox nazik. Təbii ki, belə bir zorakı sinif yoldaşı məni bir sol əli ilə bağlaya bilərdi.
Bu zaman keçdikcə baş verməyə başladı. Burada mənim döyüş bacarığım artıq heç bir təsir göstərmirdi. Bir vaxtlar doğma sinfimdə olan oğlanlar üçün çəki dərəcələri çox fərqli idi. Həm də təfəkkürümün özəllikləri özünü hiss etdirdi.

Fikirlərimi başıma qoymadan mən də məktəbi tərk etdim. Özümü rahat hiss etdiyim yer otağımın qapısı bağlı olan kompüter monitorunun qarşısında idi. Məntiqli idi və intuitiv olaraq mən doğru şeyi etdiyimi hiss etdim. Bu məktəb isə faydasız fəaliyyətdir, hətta hər keçən gün daha da təkmilləşən bu rişxəndlərə dözmək... Bu qədər, bəs etdim.
Sinifdəki növbəti münaqişədən sonra, baş rolda mənimlə birlikdə məktəbi tərk etdim və bir daha ora getmədim.
Təxminən 3 ay evdə oturdum, boş vaxtlarımı C++/WinAPI/MFC və rsdn.ru öyrənməyə sərf etdim.
Sonda məktəb direktoru dözməyib evə zəng vurub.
- “Denis, oxumağı düşünürsən? Yoxsa gedəcəksən? Qərar ver. Heç kim səni tənbəllikdə qoymayacaq”. - direktor dedi
"Mən gedəcəm" deyə əminliklə cavab verdim.

Və yenə eyni hekayə. Məktəbi bitirməyə yarım il qalmışdı. Məni qabıqsız qoyma. Valideynlərim məndən əl çəkdilər və dedilər ki, gedib direktorla özüm danışım. Məktəb direktorunun yanına gəldim. İçəri girən kimi qışqırdı ki, papağımı çıxarım. Sonra sərt şəkildə soruşdu: "Səninlə nə edim?" Açığı, mən özüm nə edəcəyimi bilmirdim. Mən hazırkı vəziyyətdən çox razı qaldım. Nəhayət o, söz aldı:
- “Onda bunu edək. Axşam məktəbinin direktoru ilə müqavilə bağlayacağam, sən ora gedəsən”.
- "Bəli"

Axşam məktəbi isə mənim kimi fristaylçılar üçün əsl cənnət idi. İstəsən get, ya da getmə. Sinifdə 45 nəfər var idi, onlardan yalnız 6-7 nəfəri dərsə gəldi. Siyahıdakı hər kəsin sağ və eyni zamanda azad olduğuna əmin deyiləm. Çünki yalnız mənim yanımda sinif yoldaşları başqasının motosikletini oğurladılar. Amma fakt fakt olaraq qaldı. Proqramlaşdırma bacarıqlarımı qeyri-məhdud şəkildə təkmilləşdirə və həqiqətən ehtiyacım olanda məktəbə gedə bilərdim. Mən onu bitirdim və buraxılış imtahanlarımı verdim. Çox şey tələb etmədilər, hətta məzuniyyət mərasimimiz də oldu. Məzuniyyət özü ayrı bir nağıldır. Yadımdadır ki, yerli quldurlar və sinif yoldaşları saatımı götürdülər. Və soyadımı eşidən kimi şəhadətnamələrin təqdimatı zamanı sənədi götürmək üçün çapa atdım və bir daha problemə düşməmək üçün məktəbdən güllə kimi uçdum.

Qarşıdan yay gəlirdi. Donald Knuth qoltuğunun altında çimərlikdə, dənizdə, günəşdə və öz böyük layihəsini yazmaq üçün taleyüklü qərarla (tərtibçi).
Davam etmək üçün ...

Mənbə: www.habr.com

Добавить комментарий