codingPath - 7

Елдар Құдайбергенов • 10.03.2024

Бұл codingPath сериясындағы жетінші пост болса да, түпнұсқасы осы блогқа жарияланып отырған бірінші пост. Енді қазақ тіліндегі блогым осында болады. Бұл блогтың негізі Eleventy. Енді yeldar.org-тағы қазақша мәтіндерімді осында көшіремін, ал ол ағылшынша болады.


Кез келген істі үйренгенде (мысалы, бағдарламалауды үйренгенде) біз бәрін бірден іліп кете алмаймыз. Бұл obviously ой сияқты, бірақ бұл концепцияны түсіну, қабылдау жаңаны үйренгендегі фрустрацияны азайтады. Жалпы жаңаны үйренгенде бастапқыда дым түсінбеу қалыпты нәрсе. Бәрін бірден біліп, аспаннан салбырап әлі ешкім түскен жоқ. Бәрі нөлден бастайды, жетістікке жеткендер - сол жолды тастамағандар.

Тіпті былай айтуға да болады: сіз басында ештеңе түсінбеуіңіз де керек. Бастапқыда дым түсінбеу болмаса -  сіз жаңа ештеңе үйреніп жатқан жоқсыз. Сондықтан жаңа нәрсені бірден түсінбеу - бұл қайғыратын емес, қуантарлық жайт. Демек сіз әзірге білмейтін, жаңа нәрсені үйреніп жатырсыз деген сөз. Түсініп, меңгеріп алудың басты талабы - оқу жолын тастамау. Иә, біреу тез үйренеді, ал біреу оған қарағанда баяу. Бұл істе ең бастысы жылдамдық емес, тұрақтылық. Бір күнді бес сағат оқығанша, бес күн бойы бір сағаттан оқығын тиімдірек болады.

Басында тұрақтылық деген оңай. Кейін барып сіз өзіңіздің саяхатыңызда үстіртке жетесіз. Одан екінің бірі аман-есен, оқыған нәрсесін тастамай өте алмайды. "Үстірт" кезеңінің ең басты сипаты мынандай: қанша оқысаңыз да прогресс жоқ сияқты болып көрінеді. Бірақ бұл жалған. Негізінде прогресс бар, бірақ ол бастапқыдағыдай көлемді емес, өте ұсақ. Қанша ұсақ болса да - прогресс бар. Ең бастысы осы.

Бұл ойымның дәлелі: мен қазір осыдан бір жыл бұрын түсінбек түгілі, ойламаған нәрселермен жұмыс істей аламын. Егер ең алғаш рет кездескенде түсінбей, содан ары оқуды жалғастырмасам менің білімім сол деңгейде қала берер еді.

Алдында мынандай жағдай болды. Қазір оқып жүрген кітапта алдымнан екі жаттығу шықты. Біріншісін оңай жасап тастадым, ал екіншісін жасау үшін ойланып, қосымша іздену керек еді. Оның алдында 2 сағаттай сабақ оқып отырған мен ол жаттығуды "сосын" жасай салғым келді. "Мен ол жаттығуды шамамен қалай жасау керектігін, оның шамамен жауабы қандай екенін жалпы білемін. Демек жасамаса да болатын шығар?" деп ойладым. Ойым кішкене анандай болса да, оны ақтап әлекпін. "Бұл оңай нәрсені істеп уақыт кетінгенше, одан да ары қарай кітапты оқи берейін де..." деген ойлар бойымды ала бастады.

Кенет үйге Роза келді де, менің жаттығуды жасаудан қашу процесімді үзіп жіберді. Арады екі сағаттай уақыт өтті. Бұл аралықта кодиң туралы мүлде ойлаған жоқпын. Роза екеуіміз шай-тамақ іштік, әңгіме соқтық (бұл күндіз еді, бала бақшада болған). Сөйтіп бағана үзіліп қалған процесіме кешке таман қайта оралдым. Осы уақыт ішінде бағана қашқақтаған жаттығуға тәбетім ашылғанын байқадым. Оны жақсылап жасағым келіп, іске асыға кірісіп кеттім де, жаттығуды жасап жасап тастадым. Осындай "шаршау" кезеңдерінде үзіліс алу керек екен. Бастаған істі тастамау деген күнде 8 сағат қадалып отыру деген сөз емес.


Негізгі оқу жолым The Odin Project болса да, қазір ол жолды паузаға қойып, Ruby туралы кітапты оқып жүрмін. Өйткені (1) кітаптағы ақпарат, ол жердегі әдістер жақсы өтіп жатыр, (2) TON-да ары қарай Ruby on Rails-ті таңдайтын болдым, (3) кітаптың қосымша видеосабақтары бар - оларды TON сабақтарымен қатар қарамақшымын.

Жалпы алғанда осы кезден бастап ары қарай бағдарламалауды өздігімнен үйрену жолым былай болады:

Ruby кітап → TOP JavaScript Basics → TOP Ruby on Rails → ??? → PROFIT!