Logo
    main-post-cover

    Proqramçı: Son 3 ay ərzində öyrəndiklərim (İKİNCİ HİSSƏ)

    Elm & Texnologiya
    13.11.2017
    Emil
    Birinci hissədən sonra istədiyim müzakirələr yaranmadı,amma yenə də ikinci hissəni yazmaq lazımdır. Zatən başlanğıcın zəif qarşılacağını bilirdim. Təəsüf ki, bizdə nə formalaşmış ekosistem var, nə community nə də ki oxuyub, inkişaf etmək istəyən proqramçılar. Çoxlarının YouTube vasitəsi ilə, türk proqramçılarının dərsləri köməyi ilə sahə barədə öyrəndiklərini bilirik.
    Üstəlik maraqlı bir tendensiya yaranıb. Proqramçılıq barədə az-maz öyrənib, “hello world”-dan o qədər də uzağa gedə bilməyənlər bacarıqları vasitəsi ilə gəlir qazana bilmədiklərini görüb, səbəbkar kimi ekosistemi görüb, gedib özlərinə kurs açırlar. Və bununla cılız olan bilik bazalarının “qırıntılarını” başqalarına ötürməyə çalışırlar. Və təbii ki, baha qiymətə. Birdə onların arasında hərdən sertifikatlılar olur.
    Guya o kağız parçasının böyük bir əhəmiyyəti varmış kimi sinələrinə döyə-döyə “mənim sertifikatım var, düzdür, iş tapa bilmirəm, amma yenə də gəl məndən öyrən. Mən sənə sertifikat qazanmağın yollarını öyrədəcəyəm” deyib, gələcək üçün “boya və kağız nədir bilib, amma rəsm çəkə bilməyən” proqramçılar yetişdirirlər. Yaxşı, bu qədər agitasiya yetər. Keçək məqələnin ikinci hissəsinə.
    MSSQL:
    Microsoft”un həmişə kəsat məhsul təqdim etdiyini və təklif etdiyi həllərin heç bir cəhətdən öndəgedən olmadığını bilirik. Nə sürət, nə təhlükəsizlik, nə optimallıq, nə rahatlıq, nədəki qiymət. Alternativ məhsul və şirkətlərlə yaxından-uzaqdan tanış olanlar bunu bir fakt kimi artıq çoxdan qəbul ediblər.
    Lakin təəsüflər olsun ki, “Microsoft” rəqiblərlə müqaisədə daha çox B2B B2G görüşlər edir. Beləliklə aşağı keyfiyyəti olan məhsullarını yüksək keyfiyyətli texniki dəstək vasitəsi ilə sırıyır. Və nəticə də göz qabağındadır. Bizim ölkədə ən lazımlı proqram təminatları ya ləng işləyirlər, ya interfeysləri geridə qalıb yada ki, heç kəs bu proqramın necə işlədiyini anlamır.
    Bunların başlıca səbəbkarı Microsoftdur. Hə, məni tanıyanlar mənim bu şirkətə necə nifrət etdiyimi çox gözəl bilirlər. Amma bu məqalədə mən boş nifrət yox, əsaslanmış tənqid təqdim edəcəyəm. İlk öncə MSSQL ilə işlədiyim vaxt yazdığım postu sizə təqdim edirəm.
    Bu post artıq bu məhsul barədə yetəri məlumat verir. Amma əlavələr etməsəm olmaz. Əvvəla onu deyim ki, MSSQL pulsuz deyil. Bəli-bəli. Hamımızın sevdiyi və mükəmməl işləyən MySQL-in bu bərbad rəqibi özündən istifadəyə görə ödəniş tələb edir. Amma təbii ki, mən bir “nəyin nə olduğunu bilən” proqramçı kimi bu alətə görə pul ödəməmişəm.
    Yox, pirat proqram təminatı istifadə etdiyimi sanmayın. Mən piratçılığa qarşıyam və əgər məhsul mənə lazımdırsa mən onun xərcini ödəməyə hazıram. Hazırki məsələdə isə, “Microsoft” öz MSSQL proqramını müəyyən müddətə test eləmək üçün pulsuz verir. Mən bu müddət ərzində təklifdən yararlandım və məhsulun ödənişə laiq olmadığını (özüm üçün) təsdiqlətdim.
    Yenə də vurğulayıram, “Microsoft” qəliz və zəif məhsul hazırlayıb, support ilə məsələni “malalamağı” sevir. Odur ki, əgər siz proqramçılıqdan daha çox texniki dəstək ilə söhbətləşməyi və öz işinizin başqaları tərəfindən görülməsini istəyirsinizsə buyurub MSSQL-i test edə bilərsiz. Əks halda bu gərəksiz vaxt itkisidir, MySQL-a çata bilməz.
    MySQL Workbench:
    Bu, MySQL bazanı idarə etmək üçün rəsmi alətdir. Çox rahat və geniş funksionaldır. Amma mən Workbench-i buna görə yükləməmişəm. MSSQL .bak faylından başqa bir eksport imkanı vermir. Bak faylını da elə ancaq MSSQL özü oxuya bilir. Mənə isə SQL fayl lazım idi ki, bazanı MSSQL-dən MySQL-ə keçirə bilim. Və Bunun üçün MySQL Workbench-i tapdım. Mükəmməl bir alətdir. İşlək bazanı qeyd edirsiz, cədvəlləri seçirsiz,və alət özü bazanı köçürür. Eksport və qoşulma imkanları genişdir. Yəni, bu alətin adını hardasa qeyd edin, lazım ola bilər.
    Python:

    Bu dil barədə çox yazmayacam. Zatən öyrəndiyimdə o qədərdə çox deyil. Sadəcə bir həll yaratmalı idim və araşdırmalardan sonra belə nəticəyə gəldim ki, bu həlli Python-da yaratmaq olar. Amma həmin zaman bu dil barədə heçnə bilmirdim. Yəni həqiqətən yekə boş bir sıfır. Buna baxmayaraq 4-5 saat ərzində mənə lazım olan skripti yaza bildim. Bununla onu demək istəyirəm ki, Python həqiqətəndə çox asandır.
    Ümumiyyətlə Python öyrəşdiyim dillər kimi deyil. Bilirəm bu sözüm pythonçuların xoşuna gəlməyəcək, amma yenədə deyəcəyəm: “Python o qədər asan idi ki, onunla işləyərkən mən heç özümü proqramçı hiss eləmədim”.
    Bir az açıqlayacağam. Metafora ilə izah edim, anlayacaqsız. Uşaqlığınızı xatırlayın. Bir var sən torpaqdan ev düzəldirsən. Səliqə ilə. Quma biraz su qatırsan ki palçıq kimi olsun. Amma nə çox sulu, nədə çox quru. Əsas odur yapışsın. Sonra onu doldurursan formanın içinə. Əlinlə basırsan, boşluq varsa palçıqdan biraz da doldurursan. Sonra bu formalardan kərpic formasında qum ilə yavaş-yavaş bu evi tikirsən. Hərdən də səliqə ilə evin kənarlarını hamarladırsan. Gözləyirsən qurusun. Başa düşdüz də? Yəni əməlli başlı “baş sındırırsan”. Hələ üstəlik hər tərəfin palçıq olur.
    İndi keçək Python ilə nümunəyə. Vedrənin içində hazır konstruktorlar var. Çıxartdın, bir-birinə keçirtdin və budur. Ev hazırdır. (3 cümləyə)

    Yəni Python-da faktiki olaraq heçnə düşünmək lazım deyil. Lazım olan hissələri import edirsiz, və bunu kiçik funksiyalar ilə bərkidirsiniz. Bu qədər asan. Yəqin eşitmisiniz. Son zamanlarda yaman tez-tez agitasiya edirlər. Python-da ‘;’ işarəsinə ehtiyyac yoxdur. Bəli-bəli. Nöqtə-vergül lazım deyil. Amma heçkəs Python-da “tabların” və boşluqların nə qədər əhəmiyyətli olması barədə danışmır.  Yəni təsəvvür edirsiz? Hardasa bircə probel artıq vurmusunuz və bütün skript buna görə işləmir. Yəni “yenə də qaqa özün bilən məsləhətdi, amma o dilin probel problemi var”.
    TensorFlow:

    Maschine Learning” sözünü yəqin eşitmisiniz. Bizim dildə necə səsləndiyini bilmirəm. Hələlik deyək “Maşın özünüöyrənməsi”. Bu süni zəkanın əsaslarından biridir. Proqram təminatının nəisə öyrənə bilmə qabiliyyəti - özünü təkmilləşdirmə bacarığı. Yadınızdadır necə Terminator gülümsəməyi öyrənirdi? Baxın onun kimi bir bacarıq.
    TensorFlow “maşın özünüöyrədilməsi” üçün “Google” tərəfindən yaradılmış bir opensource sistemdir. TensorFlow yüksək miqyaslanabilən bir sistemdir. Nitqi anlamaqdan tutmuş gördüyünü oxuya bilmə bacarığına qədər. Həmçinin o yığcamdır. Nəhəng serverlərdən tutmuş smartfonlara qədər hər yerdə istifadə etmək olar.
     Bu barədə çox danışa bilməyəcəyəm. Çünkü bilik dərəcəm həqiqətən azdır. Amma bunada pozitiv yöndən baxa bilərik. Deməli sistem istifadə üçün asandır ki, mən çox az biliklə ondan yararlana bildim. Axtarsanız bu neyron barədə çoxlu məqalələr, video dərslər, təlimatlar tapa bilərsiniz. Son olaraq onu deyə bilərəm ki, əgər neyron yönündə nəsə yaratmaq istəyirsinizsə TensorFlow sizə yardımçı olacaqdır.

    Bu da son. Ümid edirəm bu hissə də ən azından birinci məqalə qədər maraqlı oldu. Daha ətraflı və böyük məqalə görmək istəyənlərə bircə “siz də yazın” deyə bilərəm. Mənim məqsədim ilk addımı edib bu tip məqalələri geniş auditoriya qarşısına çıxartmaq idi. Məqsədim maraqlandırma və motivasiya yaratmaq idi. Ümid edirəm kolleqalarım da hərdən terminalı, alqoritmi İDE-nı kənara qoyub, word-u açıb yazacaq məqalə üçün mövzu tapacaqlar.
    Paylaş
    Bənzər xəbərlər