Proqramlaşdırma haqqında bilməli olduğunuz 38 yanlış fikir

İnformasiya texnologiyaları hələ də çoxlu stereotiplərlə, yanlış fikirlərlə doludur. Bunu ölkəmizdə daha da aydın hiss etmək olur. “Mən proqramçıyam” deyən kimi “Facebook-un parolunu qıra bilirsən?”, “komputerim donur, format edərsən?”, “televizorun pultunu düzəldərsən?!” və başqa bu kimi sualları ilə üzbəüz qalırsan. Bunlardan əlavə proqramlaşdırma sahəsinə yeni başlamaq istəyənlərə və ya İT-dən uzaq şəxslərə bu sahə “çox çətindir” deyirlər, müxtəlif fikirlərlə qorxudurlar. Buna görə də, ən çox yayılan yanlış fikirləri, mifləri bir yerə yığıb, nəyin doğru, nəyin yanlış olduğunu izah etməyə çalışacam.

Mündəricat

Proqramlaşdırma haqqında ümumi miflər

1. Çox ağıllı olmaq lazımdır

Bu ən çox yayılmış miflərdəndir, proqramlaşdırmaya yeni başlamaq istəyənlərin çoxunda qorxu yaradır. Buna görə də çoxları özlərini proqramçı olmaq üçün kifayət qədər ağıllı hesab etmir. Lakin ilk baxışda göründüyü kimi, proqramlaşdırma öyrənmək elə də çətin deyil.

Proqramçılar – komputer proqramları, veb saytlar, oyunlar və mobil tətbiqlər yaratmaq üçün ehtirasları olan adi insanlardır. Kod yazmağa başlamaq üçün dahi olmaq lazım deyil. İntizamın, motivasiyanın, maraq və həvəsin olması kifayətdir. Əgər yeniliklərə açıq və öyrəndiklərinizi praktikada tətbiq etməyə hazırsızsa, proqramlaşdırmanı rahat öyrənəcəksiniz.

Əlbəttə, yalnız çox ağıllı insanların həll edə biləcəyi həqiqətən çətin tapşırıqlar var. Lakin belə ağıllı olmaq məcbur deyil, istisnadır.

2. Riyaziyyatı yaxşı bilmək lazımdır

“Proqramlaşdırmanı öyrənmək, güclü riyazi biliklər tələb edir?”. CodeBit-ə müraciət edən şəxslərin əksəriyyəti məndən bu sualı soruşurlar. Lakin proqramlaşdırmada müvəffəqiyyətli olmaq, birbaşa riyazi savaddan asılı deyil. Yaxşı riyaziyyat biliyinin olması həmişə üstünlükdür, lakin başlamaq üçün məktəb bilikləri də kifayət edir.

Formal olaraq, proqramlaşdırma – komputer üçün əmrlərin, təlimatların yazılmasıdır. Bunu tortun hazırlanması üçün resept kimi fikirləşin. İnqridientlərin çəkisini ölçmək, kalorini hesablamaq, yumru və ya düzbucaqlı formaya salmaq, əməliyyatlar ardıcıllığını düzgün etmək lazımdır. Bunun üçün isə ali riyaziyyat, inteqral və ya mürəkkəb düsturlar istifadə etmirik.

Əlbəttə, riyaziyyatın çox böyük rol oynadığı sahələr var. Məsələn, oyunlarının yaradılması üçün ən azı minimal səviyyədə triqonometriya, matrislərlə işləmək və fizika bilmək lazımdır. Hazırda hamının daimi eşitdiyi süni intellekt, maşın öyrənməsi (bax: machine learning), verilənlər elmi (bax: data science) və onların alt bölmələri riyaziyyat tələb edən sahələrdəndir.
Bundan başqa, bir çox problemi daha asan həll etmək üçün, üçüncü tərəf kitabxanalar (third-party libraries) və pluginlər-dən istifadə edə bilərsiz. Riyaziyyat və ya fizika ilə bağlı əlavə məlumatlara ehtiyacınız varsa, xarici təlim, təhsil ala və ya kitablar oxuya bilərsiz.

3. Proqramlaşdırma “komputer xəstələri” üçündür

Kinolarda proqramçılar iri eynəklə bir neçə monitora baxan, uzun saç-saqqallı biri kimi təsvir edilir. Buna görə də insanlar proqramlaşdırmaya başlayanda eyni olacağını düşünürlər, qadınlar isə bu sahəyə elə də maraqlı olmurlar. Əslində isə bu sadəcə stereotipdir.

Proqramçılar bütün günü komputer arxasında oturmurlar, onların da əlavə hobbi və məşğuliyyətləri var. Onların arasında musiqiçilər, rəqqaslar, idmançılar var. Buna görə proqramçıların digər peşələrdəki işçilərdən fərqli olduğuna inanmaq üçün heç bir səbəb yoxdur.

Qeyd: “komputer xəstələri” söz birləşməsi üçün daha yaxşı təklifləri şərhlərdə yaza bilərsiz.

4. Proqramlaşdırma darıxdırıcıdır

İşə qarşı maraq, o işə göstərdiyin münasibətdən asılıdır. Proqramlaşdırma üzrə həvəsli olan insanlar onu darıxdırıcı və cansıxıcı saymırlar. Yoxsa nəyə görə insan illərlə eyni işlə məşğul olsun? Bu hər bir işə aiddir: hər kəs özünə maraqlı və ya sıxıcı olan işi özü təyin edir.

Proqramlaşdırmada sizə maraqlı olan sahəni seçə bilərsiz: mobil telefonlar üçün tətbiqlər yaza, müxtəlif tipli veb saytlar hazırlaya, əməliyyatları avtomatlaşdırmaq üçün qurğulara proqram təminatları yarada bilərsiz və s.

Proqramlaşdırma bacarıqları kənd təsərrüfatından başlamış, raket istehsalına qədər çox fərqli sahələrdə işləməyə imkan verir. Həmçinin, sizin hazırladığınız proqramların dünya üzrə milyonlarla istifadəçisinin olması mümkündür. Sizcə bu necə maraqsız ola bilər?!

5. İnsanlarla ünsiyyət qurmağı dayandıracaqsız

Digər çox yayılmış miflərdən biri də – proqramçıların günün böyük hissəsini komputer arxasında, insanlardan uzaq keçirməsidir. Əslində isə proqramçılar müxtəlif seminar, konfranslarda iştirak edir, tez-tez tanımadıqları insanlarla kiçik məclislər təşkil edərək texnologiya, maraqlı yeniliklər haqqında danışırlar. Digər peşə sahələrində belə hallar nadirən olur.
Mənim cavanlığımın misalında bunun şahidi ola bilərsiz =)
Baku GTUG (Google Technology User Group), Tural Bədirxanlı ilə görüş, International PHP Conference in Tbilisi, Baku Tech Talks, Django weekend, Seedstars, SUPproqramçılarla ad günüm və hələ paylaşmadığım bir çox tədbirdən şəkillər.

Bloqosfer 2011
Məni şəkildə tapın =)

6. Çoxlu kod əzbərləmək lazımdır

Xarici dildə normal başa düşmək üçün ən azı 2000 söz bilmək lazımdır. Proqramlaşdırma dillərinin əksəriyyətində isə sintaksis çox oxşayır və daimi istifadə etdikcə lazım olan 50-60 metod, funksiyanı avtomatik əzbərləmiş olursuz. Hətta yadda saxlaya bilməsəniz, internetdən və ya rəsmi dokumentasiyaya baxaraq xatırlaya bilərsiz. Ümumiyyətlə, hər kodu yadda saxlamaq lazım deyil. Onsuz da zamanla istifadə etmədiyiniz kodları unudacaqsız. Hətta tanınmış proqramçılar da, bəzən ən sadə alqoritmləri belə yadda saxlaya bilmədiklərini etiraf edirlər.

Kod yazmaq üçün istifadə olunan IDE, code editor-lar hazır şəkildə ipuclarını verirlər. Sizə sadəcə olaraq lazım olan kodu seçirsiz

7. Bütün alqoritmləri bilmək lazımdır

Alqoritmlər proqramlaşdırmanın əsasıdır. Bəziləri sadə, bəzilərini isə anlamaq üçün xüsusi bilik tələb edir. Ancaq onları əzbər bilməyə ehtiyac yoxdur. Proqramlaşdırmada bir tapşırığı müxtəlif alqoritmlərlə və fərqli variantlarda yazmaq mümkündür. Hər bir variantın isə üstün və mənfi cəhətləri olur.

Müasir proqramlaşdırmada daimi təkrarlanan əməliyyatları azaltmaq üçün yeni alətlər, kitabxanalar yaradılır. Bu da öz növbəsində proqram təminatlarının yaradılması müddətini azaldır, proqramçıları rutin işlərdən azad edir. Artıq proqramçılar həqiqətən lazım olan işlərlə məşğul olur, gündəlik istifadə olunan alqoritmlərə əlavə vaxt sərf etmirlər. Buna baxmayaraq, alqoritmik həllərin, bilklərin öyrənilməsi vacib məqamlardandır.

8. Çoxlu kod yazmağa səbrim çatmır

Professional proqramlar, on-yüz minlərlə sətir koddan ibarət olurlar. Bu isə yeni başlayanların bəzilərini qorxudur. Yuxarıda qeyd etdiyim kimi, proqramçılar bəzi işlər üçün adətən hazır həllərdən, eyni kod hissələrindən istifadə edirlər. Bunu xarici dil ilə müqayisə etsək: deyilənlərin 80%-ni anlamaq üçün 2000 söz (dildə olan 50.000 sözü bilməyə ehtiyac yoxdur) bilmək kifayətdir. Müxtəlif söz və ifadələri birləşdirərək hər kəslə danışa bilərsiniz. Proqramlaşdırmada da bənzər prinsipdir. Müəyyən kod həllərini bilməklə çoxlu sayda fərqli tapşırıqlara tətbiq edə bilərsiz.

Əlbəttə ki, yeni başlayarkən dəqiq işləyən böyük bir proqram yazmaq qeyri-mümkündür. Amma bacarıqlarınızı inkişaf etdirməklə bir gündə yazdığınız kodu artıq bir neçə saata yaza bilərsiz. Bir qədər praktika etdikdən sonra 10.000 sətir kod sizin üçün uşaq oyunu olacaq.

9. Güclü komputer lazımdır

Yeni başlayanlar proqramlaşdırma üçün güclü bir komputer və bir neçə monitorun lazım olduğunu düşünürlər. Bu belə deyil. Başlanğıc üçün adi komputer(2-3 RAM və i3 prosessor) də kifayət edir. Həmçinin, böyük ekrana və bir neçə monitora da ehtiyac yoxdur.

Silikon Vadisi” serialından Gilfoyle və 7 monitoru

10. Kodları anlamaq çox çətindir

İlk baxışdan kodlar çox mürəkkəb və anlaşılmaz görünür. Onda Çin heroqliflərinə baxaq. Bilməyən şəxs onların içərisində yalnız işarələr görür, lakin dünyada 1,3 milyard insan asanlıqla Çin yazılarını oxuyur, yazır və anlaya bilir. Kodlar isə heroqliflərdən və digər xarici dillərdən daha sadədir. Bu dili eşitməyə və tələffüz etməyə ehtiyac yoxdur. Proqramlaşdırma dilləri baza üçün adətən əsas 50-100 metod, funksiyadan ibarət olur.

11. Veb sayt yaratdım, artıq “proqramistəm”

Veb saytların yaradılması dolayısı ilə HTML, CSS və ya ümumiyyətlə, proqramlaşdırma əsaslarını bilmək tələb etmir. Hazır şablon və sistemlərlə hər kəs sayt hazırlaya bilər. Lakin professional web proqramçılar müxtəlif texnologiyalar və proqramlaşdırma dillərini sərbəst şəkildə bilirlər. Web proqramlaşdırma kurslarının şüarlarına zidd olaraq 1-2 ay ərzində bu cür biliklərə sahib olmaq mümkün deyil, hələ digər mifik öyrənmə müddətlərini demirəm. CodeBit-də proqramlaşdırma və veb saytların yaradılmasının əsasları minimum 6 ay(3 ay frontend və 3 ay backend) davam edir.

HTML, CSS, PHP, JavaScript, verilənlər bazası, client-server texnologiyaları, SQL, Apache, NGINX, versiya nəzarət sistemləri web proqramçının gündəlik qarşılaşdığı texnologiyaların cəmi bir hissəsidir. Ancaq qorxmayın: bir az çalışqanlıq və həvəs göstərməklə funksional veb saytlar yaratmağı öyrənə bilərsiz.

12. Proqramçılar hər şeyi sıfırdan yazırlar

Əgər proqramçılar bütün kodları sıfırdan yazsaydılar, biz bu qədər müxtəlif və faydalı proqramlar görməzdik. Müasir proqramlar yüz minlərlə kod sətrindən ibarətdir və onların əksəriyyəti daha əvvəl digər proqramçılar tərəfindən yazılmışdır. Proqramçılar tez-tez üçüncü tərəf kitabxanalar və digər layihələr üçün yazdıqları kodu istifadə edirlər. Bu, oyunlar, əməliyyat sistemləri daxil olmaqla, böyük proqramların yaradılmasını asanlaşdırır və sürətləndirir.

Proqramlaşdırma öyrənməklə bağlı miflər

13. Kurs bitdikdən sonra öyrənmək də bitir

Kursda proqramlaşdırma dilini öyrənməklə iş bitmir. Dilin əsas sintaksisini öyrənmək çətin deyil, praktikada necə istifadə etmək çətindir. Öyrənmə prosesi heç vaxt dayanmır: öyrənməyi dayandırsanız, bir müddət sonra öyrəndiklərinizi də unutmuş olacaqsız. Bunun üçün öyrəndiklərinizi praktiki məşğələlərlə gücləndirmək lazımdır. Buna görə də CodeBit-də veb proqramlaşdırma dərsləri 85% praktikadan ibarətdir. Xarici dillərin öyrənilməsində olduğu kimi, uzunmüddətli fasilələr də öyrənmə nəticəsinə mənfi təsir göstərir.

14. Proqramçı olmaq üçün universitet bitirmək lazımdır

Bu mövzu həmişə müzakirə olunur və fərqli düşünənlər çoxdur. Kimin nə düşünməsindən asılı olmayaraq, proqramçı olmaq üçün universiteti bitirmək vacib deyil. Bunu öz tanışlarımdan, tələbələrimdən, özümün və dünya təcrübəsinə əsasən deyirəm. Universitet oxumağın ziyanı yoxdur, lakin VACİB deyil. Lazımlı məlumatların çoxu internetdə – online dərslərdə, kitablarda, forumlarda, tematik saytlarda var. Bu mənbələrdən istifadə etməklə universitetdə keçiləndən daha artıq biliyi, daha qısa müddətdə öyrənmək olar. Hətta evdən çıxmağa belə ehtiyacınız yoxdur. Əlbəttə ki, köhnə sistemin tərəfdarları “baza bilikləri və riyaziyyatı universitetdə öyrənmək daha yaxşıdır” deyəcəklər. Amma daha əvvəl qeyd etdiyim kimi, proqramlaşdırmaya başlamaq üçün inteqral hesablamağa ehtiyac yoxdur.

4 il sərf etmək əvəzinə, daha qısa müddətə kursda və ya fərdi müəllimlə nəzəriyyə və praktika yığaraq öyrənmə prosesini sürətləndirə bilərsiz. Şirkət və müəssisələr komandalarında diplomlu bir mütəxəssis görmək istəsə də, işini bilən təcrübəli amma diplomsuz mütəxəssisdən imtina etmirlər.

15. Əvvəlcə dilin sintaksisini öyrənmək lazımdır

Sintaksis – proqramlaşdırma dilinin qaydalarıdır. Əlbəttə ki, sintaksisi bilmək proqramlaşdırma dilinin bütün imkanlarından istifadə etməyə şərait yaradır, amma onu bütünlüklə bilmək vacib deyil. Dilin əsas konstruksiyaları sadə proqramlar yazmaq üçün kifayətdir. İstənilən zaman dil haqqında biliklərinizi artıra bilərsiniz. Təcrübə göstərir ki, illər boyu kod yazmaq da dilin bütün özəlliklərinizi biləcəyinizə zəmanət vermir. Proqramlaşdırma dilləri sürətli şəkildə inkişaf edir, yeni xüsusiyyətlər, funksionallıqlar əlavə olunur.

16. Proqramçı olmaq asandır

Proqramçı dedikdə peşəkar, işini bilən və bu işə ürəkdən həvəslə çalışan şəxsləri nəzərdə tuturam. Belə mütəxəssis olmaq üçün isə hər kəsin iradəsi, səbri, biliyi çatmaya bilər. Bir proqramlaşdırma dilini bilmək də “proqramçıyam” demək deyil. Proqramçı olmaq üçün bir çox: komanda ilə işləmək, tapşırıqların struktrunu hazırlamaq, dokumentasiya yazmaq, kodu test etmək və s. kimi bacarıqlar tələb edir. Əsl peşəkar proqramçı olmaq üçün vaxt, əzmkarlıq tələb edən bir çox texnologiya və metodikaları da bilmək lazımdır. İstənilən peşədə olduğu kimi davamiyyət, intizamlılıq, motivasiya sizin əsas köməkçiləriniz olacaq.

17. Öyrənmək çox vaxt tələb edir

Başlayandan 2-3 dərs sonra ilk kodlarınızı yaza bilərsiniz. Əlbəttə ki, bu kodlar ilə pul qazanmaq mümkün olmayacaq, amma sadə problemlərinizi həll edə bilərsiz. Aydındır ki, dərhal ağır, yuxarı səviyyəli proqramlar yaza bilməyəcəksiz, ancaq bunun üçün illər deyil, aylar ərzində öyrənə biləcəksiz. Proqramlaşdırma öyrənməyə çox vaxt və səy göstərsəniz, daha qısa vaxta uğur qazana bilərsiz. Universitetdəki kimi 4-6 il oxumağa vaxt sərf etməyə ehtiyac qalmayacaq.

18. Ən yaxşı proqramlaşdırma kursunu və ya dərsliyini axtarıram

Online minlərlə, offline isə Bakıda onlarla kurs var. Bu resursların hər biri fərqli şəkildə öyrədir və hər birinin öz metodikası var. Amma yaxşı kurs, müəllim və ya kitab yoxdur, özünüz üçün uyğun olan kurs, müəllim və ya kitab var. Bir neçə resursdan qeydiyyatdan keçin, kitablara baxın, video dərslər izləyin, offline proqramlaşdırma kursları haqqında məlumat əldə edin, sınaq dərslərinə yazılın və sonra sizə ən uyğun olan təlim formatını seçin. Yəqin ki, bir neçə yol olacaq: online kurslar + kitab və ya fərdi müəllim + xüsusi saytlarda problemlərin həlli və s. Əsas odur ki, daha az reklamlara inanıb, daha doğru seçim, daha çox cəhd və praktika edəsiz.

19. Proqramlaşdırma öyrənəcəyəm, qısa müddətdə tətbiq/sayt yaradacam və varlanacam

Varlı olmaq əla hədəfdir və proqramlaşdırma bu hədəfə çatmaqda kömək edə bilər. Amma qısa müddətə varlanacağınızı, pul qazanmağı unudun!. Bill Geyts, Mark Zuckerberg, Pavel Durov və ya Sergey Brin – bir gündə milyarder olmayıblar. Onlar illərlə təhsil alıb və çox çalışaraq hazırki vəziyyətə çatıblar.

2 həftəlik tədrisdən sonra mobil tətbiq və ya vebsayt hazırlayıb, varlanmaq deyə bir düstur, formul yoxdur. Proqramlaşdırma tez və asan pul qazanmaq istəyənlər üçün deyil. Buna baxmayaraq, proqramlaşdırma həm karyera inkişafı, həm də öz biznesinizi yaratmaq üçün böyük imkanlar açır.

20. Çətin proqramlaşdırma dili ilə öyrənməyə başlamaq lazımdır

Birinci sinifdə heç kəs sizə inteqral öyrətmir. Hətta vurma-bölməni belə, bir müddət sonra öyrədirlər. Proqramlaşdırmada da eynilə belədir. Motivasiyanı saxlamaq və qısa zamanda nəticə əldə etmək istəyirsinizsə, JavaScript kimi sadə dillərlə başlayın. Proqramlaşdırma üzrə baza bilikləri öyrənəndən sonra, digər dillərə asanlıqla keçə bilərsiz.

21. Bütün proqramlaşdırma kursları eynidır

Xeyr, bütün kurslar fərqlidir, hətta tədris planındakı dərslər eyni olsa da. Kurslarda dərslər müxtəlif tədris metodlarından və materiallarından istifadə edən müxtəlif müəllimlər tərəfindən tədris olunur. Pis və ya yaxşı kurs yoxdur, sadəcə sizin üçün doğru olan kursu seçməlisiniz. Bunun üçün isə kursları araşdırmaq, ətraflı məlumat toplamanız lazımdır.
CodeBit olaraq seçiminizi daha da dəqiqləşdirmək üçün ödənişsiz sınaq dərsinə yazılmağı təklif edirik.

22. Proqramçı olmaq üçün gündə 30 dəqiqə sərf etmək kifayətdir

Təəssüf ki, bu kifayət deyil, hətta gündə 2 saat belə azdır. Bu templə tam öyrənmə müddətiniz uzana və çətin proyektlər etmək üçün uyğun səviyyəyə çatmaq daha çox vaxt tələb edə bilər.

Hobbi deyil, işində peşəkar olmağı qarşınıza məqsəd qoymusunuzsa, proqramlaşdırmanı həyat tərzinizə çevirməlisiz. CodeBit-ə müraciət edənlər üçün gündəlik minimum 3 saat, ortalama isə 5-6 saat kod yazmağa vaxt ayırmağı tövsiyyə edirəm.

Sağolsun “Facebook Memories” keçmişdə yazdıqlarımızı xatırladır. Vaxtilə mənim gündəlik hədəfim minimum 5-6 saat kod yazmaq idi, imkan düşdükcə də 7-9 saat məşğul olmağa çalışırdım. Buna görə də bu facebook post-dan 1 ay sonra, 2012-ci il mart ayında 3-cü kurs tələbəsi kimi yarımştat (part-time) iş tapmışdım. Sıfırdan online dərslərlə 3 ay öyrənərək iş tapmaq yaxşı göstəricidir. Nəzərə alsaq ki, online öyrənmək kursda öyrənməkdən daha çətindir. Qısa müddətə nəticə əldə etmək üçün gərək çox çalışasınız. Qeyd: İngilis dili biliklərinizi və stereotipləri də qıraraq daimi inkişaf etdirməyə çalışın.

Murad Mustafayev 2012 facebook post
2012-ci il yazdığım Facebook postu.
İndi oxuyanda adama gülməli gəlir =)

Proqramlaşdırmada məhdudiyyətlərlə bağlı miflər

23. Proqramlaşdırma öyrənmək üçün yaşım çoxdur, artıq gecdir

Proqramlaşdırma öyrənmək üçün nə yaşlı, nə də gəncsiz. Bu yalnız proqramlaşdırmaya aid deyil. İstənilən sahəni öyrənmək və uğur qazanmaq yaşla məhdudlaşmır. Öyrənmək arzusu və bu bilikləri praktikada tətbiq etmək istəyi yaşdan asılı olmayan amildir. Hər yaşda xarici dil öyrənə biləcəyiniz kimi, hər yaşda proqramlaşdırmanı da öyrənə bilərsiniz.

CodeBit-ə müraciət etmiş ən yaşlı tələbənin 41 yaşı olub. Digərləri bu yaşda həyatdan ümidlərini itirəndə, digərləri yeni səhifə açmağa çalışır. Yaş bəhanələrindən mümkün qədər uzaq olmaq lazımdır. İstək və məqsəd olduqca istənilən sahədə, istənilən yaşda uğur əldə etmək mümkündür

24. O, proqramlaşdırma öyrənmək üçün çox balacadır, gəncdir

Çox vaxt valideynlər uşağın proqramlaşdırma öyrənməyə uyğun olma vaxtını yaşa görə təyin edirlər. Əlbəttə, uşaqların və yetkinlərin tədris metodikalarında fərqlər var, ancaq yaş proqramlaşdırmağa başlamağa mane olmamalıdır. Necə ki, uşaqlar az yaşdan şahmata, üzgüçülüyə, futbola başlayırsa, proqramlaşdırmada da bunu tətbiq etmək olar.
8-9 yaşından sonra uşaqlar proqramlaşdırmanın əsas konsepsiyalarını yaxşı başa düşürlər. Onlar üçün ilk proqramlaşdırma dili kimi Scratch daha uyğundur.

Scratch proqramlaşdırma dili saytında tapşırıq həlli

25. Proqramlaşdırma qadınlar üçün deyil

İT sahələri üzrə kişilər üstünlük təşkil etsə də, bu qadınların proqramlaşdırma öyrənməyinə mane olmamalıdır. Hətta dünyanın ilk proqramçısı Ada Lovelace qadın olub. Marissa Mayer – Google-un 21-ci işçisi və ilk qadın proqramçısı idi.

Sadəcə kişilər parfümeriya sahəsi ilə maraqlanmadığı kimi, qadınlar da İT sahəsinə maraq göstərmirlər. Bu peşənin mürəkkəbliyi ilə deyil, əksinə, sosial-iqtisadi təzyiq və qadınların şəxsi maraqları ilə bağlıdır. Bir qadının proqramçı olmaması üçün heç bir obyektiv səbəb yoxdur. Kişi və qadınlarda proqramlaşdırma üzrə seçim və karyera yolları tamamilə eynidır.

Proqramçıların bacarıqları haqqında miflər

26. Bütün proqramçılar hakerdir

Əksərən proqramçıları hakerlərlə müqayisə edirlər. Haker-cinayətkarlar resurslara icazəsiz giriş əldə etməyə, adi proqramçılar isə məlumatların təhlükəsizliyini müdafiə etməyə çalışırlar. Həmçinin, proqramçılar Facebook, Instagram hesablarını sındıran “hakerlər” deyil və bu işlə də məşğul olmurlar.

27. Bütün proqramçılar texnika təmir etməyi bacarmalıdır

Əgər siz proqramçısınızsa, qohumlarınız, qonşularınız və dostlarınız belə sizin telefon, komputer, televizor kimi cihazların təmirini bildiyinizi düşünəcəklər. Printerin sazlanması, komputer formatı və yenisinin alınması deyiləndə siz yada düşəcəksiz.

Proqramçıya – komputer də daxil olmaqla, texnikanı anlamaq məcbur deyil. Komputerə olan maraq proqramçıda sərt diskin dəyişdirilməsi, komputer formatı, proqramların komputerə quraşdırılması kimi bacarıqların yaranmasına səbəb olur, amma bu proqramçıların əsas işi deyil. Proqramçı kod yazaraq proqramları yaradır, texnika təmiri üzrə mütəxəssislər isə onları bərpa edir.

Proqramlaşdırma dilləri və alətləri haqqında miflər

28. Bir proqramlaşdırma dili digərindən daha yaxşıdır

Proqramçılar öz istifadə etdikləri proqramlaşdırma dilini tərifləməyi sevirlər. Buna görə də tez-tez həmin dilin digərindən daha yaxşı olduğunu iddia edirlər. Lakin hər dil müəyyən bir məqsədə xidmət edir və bir dilin başqa birindən yaxşı olduğunu iddia etmək doğru deyil. İtalyan və fransız dilinin hansının daha yaxşı olduğunu soruşsanız, cavab olduğunuz ölkəyə görə dəyişəcək. Proqramlaşdırmada da buna bənzər vəziyyətdir.

Yeni başlayanlar üçün daha rahat dillər var – məsələn, JavaScript. Amma bir qədər çətin Java, C# və ya C++ ilə də başlaya bilərsiniz. Bəzi dillər qurğu təminatı (hardware), bəziləri riyazi hesablamalar, bəziləri veb üçün daha yaxşıdır. Buna əsasən, vəziyyətdən asılı olaraq müəyyən bir proqramlaşdırma dilinin tapşırıq çərçivəsində daha yaxşı seçim olduğunu söyləmək olar. Adətən, tapşırıqların həlli üçün bir neçə dil istifadə edilir. Dillər isə birlikdə işləyərək bir-birlərini tamamlayırlar.

29. Bütün proqramlaşdırma dilləri eynidır

Adətən, bütün proqramlaşdırma dillərinin eyni problemi həll etdiyini düşünürlər. Ancaq bu həmişə belə deyil. Müxtəlif problemləri həll etmək üçün müxtəlif proqramlaşdırma dilləri istifadə olunur. Python tədris və məlumatların emalı üçün, PHP veb saytların yaradılması üçün, JavaScript veb saytlara dinamiklik qatmaq üçün, C++ performansın vacib olduğu qəliz proqram təminatları üçün, Swift iOS-a tətbiqlərin yazılması üçün istifadə olunur. PHP veb saytların yaradılması üçün ən populyar dildir. Gördüyünüz kimi, müxtəlif dillər müxtəlif tapşırıqları həll etmək üçün yararlıdır və peşəkar proqramçılar bunların bir neçəsini bilirlər.

30. Gənc proqramlaşdırma dillərini öyrənmək lazımdır

C dili 1972, C++ 1985, JavaScript və PHP isə 1995-ci ildə yaranıb. Ancaq bu onların köhnəlmiş və ya yeni yaranan dillərdən pis olması demək deyil. Proqramlaşdırma dilləri daim yenilənir, onlara yeni sintaktik konstruksiyalar əlavə olunur, kitabxanalar genişləndirilir. Bunu avtomobil kimi təsəvvür edin: Mercedes 92 il əvvəl (1926) yaradılmışdır, lakin hər il yeni modellər buraxılır.

Sadəcə olaraq, sizin tətbiq etmək istədiyiniz sahəyə uyğun dili öyrənmək lazımdır. Proqramlaşdırma öyrənmək üçün JavaScript, veb saytlar hazırlamaq üçün PHP, mobil tətbiqlər üçün Swift (iOS), Kotlin və ya Java (Android) öyrənə bilərsiz.

31. Əsl proqramçılar C/C++ ilə kod yazır

Əsl sürücülər də yalnız mexaniki sürət qutulu maşın sürürlər və həftədə bir dəfə qarajda avtomobilin mühərrikini söküb-yığırlar. Əlbəttə ki, bu belə deyil. “Əsl əjdaha” proqramçıları bəzi proqramlaşdırma dillərini lazımsız sayırlar. Məsələn, uzun müddət PHP-ni belə hesab edirdilər, indilərdə isə JavaScript-i server-side dil kimi zəif hesab edirlər. Buna baxmayaraq, PHP Facebook (HHVM), Vkontakte, Wikipedia və milyonlarla digər saytların yazıldığı güclü və məşhur bir dildir. Hazırda PHP 7.3.x versiyası ilə ən sürətli dillərdən biridir. Bəzi benchmark testlərə baxa bilərsiz: digər dillər ilə müqayisəversiyaları arasında müqayisə.

Zəif və ya güclü dil yoxdur, xüsusi problemlərin həlli üçün daha uyğun dil var. Qalan hər söz boş danışıqdan başqa bir şey deyil.

32. HTML və CSS öyrənmişəm, artıq “proqramistəm”

Təəssüf ki, HTML və CSS proqramlaşdırma dilləri deyil. Amma bu onların web proqramlaşdırmada vacibliyinə təsir göstərmir. Bütün web saytların əsas görünüş və strukturu bu ikisinə bağlıdır.
Web proqramçı HTML və CSS-si ən azı baza səviyyəsində bilməlidir. Yeni web proqramlaşdırmaya başlayanlar üçün isə HTML və CSS öyrənmək rahatdır.

33. Professional proqramçı olmaq üçün bir proqramlaşdırma dili bilmək kifayətdir

Professional proqramçılar bir neçə dil və müxtəlif köməkçi texnologiyalar bilirlər. Bunlardan başqa, proqramçı yalnız proqramları yazmağı (kodlaşdırma) deyil, dokumentasiya və testlər yazma qabiliyyətinə, böyük tapşırıqları kiçik hissələrə bölmək, komanda işi və s. kimi çoxlu bacarıqlara malik olmalıdır. Kiçik bir veb saytı hazırlamaq üçün HTML, CSS, JavaScript, PHP və ya başqa bir server-side dili bilmək lazımdır. Bir tərəfdən, peşəkar proqramçıya bir dil bilməsi kifayət deyil. Digər tərəfdən isə, bir dili yaxşı biləndən sonra digər dilləri öyrənmək çox rahatdır.

Proqramçının karyera və qazancları haqqında miflər

34. Qısa müddətə çoxlu pul qazanacam

Peşəkar proqramçılar digər sahələrin işçilərinə görə adətən daha çox qazanırlar. Amma bu vəziyyət hər proqramlaşdırmaya başlayan üçün belə olacaq mənasına gəlmir. Aylıq ortalama 800-1200 AZN və daha artıq qazanmaq mümkündür, lakin bu dərhal baş vermir. Belə əmək haqqı üçün bir neçə il vaxt lazım ola bilər. Proqramçının əmək haqqı bacarıqları, təcrübə və portfelindən(portfolio) asılıdır, ancaq yeni başlayanda isə bunların heç biri olmur. Ona görə daha çox təcrübə qazanmaq üçün müxtəlif çətinlikli proyektlər etmək lazımdır.

35. Çox gec pul qazanacam

Yeni başlayanların əksəriyyəti yalnız professional olandan sonra pul qazana biləcəklərini düşünürlər. Ancaq bu tam olaraq belə deyil. Təcrübəli proqramçılar yaxşı qazanırlar, amma bu yeni başlayanların illərlə pul qazanmağa cəhd etməməsi anlamına da gəlmir.

Bəzən peşəkar proqramçılar üçün maraqsız, xırda freelance proyektlər olur. Belə fürsətlər yeni başlayanların özlərini sınamaq və ilk gəlirlərini qazanmaq üçün yaxşı təcrübədir. Zamanla bacarıqlarınız, təcrübəniz və portfolio-nuz böyüdükcə, daha mürəkkəb layihələr götürərək, daha çox pul qazana bilərsiniz. Alternativ variant kimi təcrübəçi (stajor) ya da kiçik proqramçı (junior) kimi iş tapıb, real layihələr üzərində işləyə və öyrənə bilərsiniz.

36. Qısa zamanda tez iş tapacam, çünki, proqramçılara təlabat yüksəkdir

Həqiqətən də yerli və xarici bazarda proqramçılara çox böyük tələbat var, lakin bu yeni başlayanlara tam olaraq aid deyil. Əksər şirkətlər minimum 2-3 il təcrübəsi olan proqramçılar axtarır. Buna görə variantlardan biri orta və ya böyük bir şirkətdə təcrübə keçmək və ya kiçik bir şirkətdə junior proqramçı olmaqdır.

Mən vaxtilə (2012-2013) bu yollardan keçmişəm. Lakin hazırda daha fərqli bir variantın tərəfdarıyam – özünüz və ya hansısa startup üçün müxtəlif tipli proyektlərdə çalışaraq yaxşı təcrübə toplamaq, sonra isə orta və ya yuxarı maaşa işlərə müraciət etmək. Hazırda texniki heyəti savadlı olan şirkətlər illərə görə deyil, görülən proyektlərin təcrübəsinə görə işçiləri qəbul edirlər.

37. Şirkətlər özləri məni tapacaq

Bir çox tələbə universitet və kurslardan məzun olarkən şirkətlərin onları tapacağına, yaxşı şərtlərlə işə qəbul ediləcəklərini gözləyirlər. Onlar gözləyən müddətdə digərləri biliklərini artırır, şirkətlərə CV göndərir, şəxsi veb saytlarını yaradır, GitHub layihələrinə qoşulurlar. GitHub – proqramçıların şəxsi mənbə kodlarını digər proqramçılarla paylaşdığı sosial şəbəkədir. Siz hər hansı bir layihəyə qoşula və onu təkmilləşdirə bilərsiniz. Şirkətlər bu cür kadrları yüksək qiymətləndirirlər.

Ən yaxşı universiteti və ya ən bahalı kursu bitirsəniz belə, iş axtarışında daim aktiv olmalısınız, yeni cəhdləri, axtarışları dayandırmamalısız.

38. Proqramlaşdırma bilikləri yalnız proqramçılar üçün lazımdır

Hazırki müasir dövrdə proqramlaşdırma haqqında minimum anlayışın olması belə çox vacibdir. Biznesdə, şəxsi işlərdə, qeyri-İT peşələrdə (marketoloq, satıcı və s.) proqramlaşdırma, ümumilikdə İT bilikərin olması həmişə xüsusi üstünlükdür. Bu işəqəbuldan, gündəlik şəxsi işlərin avtomatlaşdırılmasına kimi hər bir sahədə köməyinizə gələcək biliklər deməkdir.


Ümid edirəm ki, məqalə faydalı oldu. Əgər elədirsə, maraqlı olan dostlarınızla paylaşmağı unutmayın.

14 Şərhlər

Şərh yazın

Your email address will not be published. Required fields are marked *