2018 yilda kodlashni o'rganing, yollaning va yo'l davomida quvnoq bo'ling

BU MAQOLANING 2019 YILGA TA'SIR qilingan versiyasi mavjud. O'qishni o'rniga bu erga bosing!

O'tgan yili men virusli xabar yuborganman, unda sizga 2017 yilda qanday qilib veb-dasturchi bo'lish bo'yicha bosqichma-bosqich ko'rsatmalar berilgan. O'shandan beri ko'p narsa o'zgardi va men vaqtni isrof qilmaslik tarafdori bo'lganim sababli siz bilan baham ko'rmoqchi edim. yangilangan maqola, chunki bir nechta o'zgarishlar mavjud. Men ham bu usulni avvalgisidan ko'ra kengroq qildim. Agar siz 2018 yilda kodlashni o'rganishni xohlasangiz, siz quyidagi choralarni ko'rishingiz kerak. Ishni boshlashimiz kerakmi?

P.S. Bu ikki qismli seriyaning 1 qismi.

Agar siz to'liq boshlang'ich, kichik dasturchi bo'lsangiz yoki ushbu sohaga qiziqsangiz, ushbu xabar siz uchun. Agar siz tajribali dasturchi bo'lsangiz, bu erda ba'zi foydali havolalarni topishingiz mumkin, chunki men sizning mahoratingizni to'ldirish uchun eng yaxshi manbalarni sanab o'taman. Sizga qanday qilib sizga foydali bo'lishi mumkin bo'lgan dasturiy ta'minotni katta ishlab chiqaruvchisi bo'lish haqida post yozdim.

Agar siz ushbu xabarni juda uzoq vaqt topsangiz, siz 5 oydan o'tib, qadam-qadam bo'limidan boshlashingiz mumkin. Ammo siz mening his-tuyg'ularimni ranjitasiz ... bilasizmi, siz shu ayb bilan yashay olasiz.

Ok siz hali ham shu yerdasiz. Ajoyib! Men sizga allaqachon yoqaman. Davom eting ...

Onlayn kurslar va asosan bepul vositalardan foydalanib, siz qimmatbaho mahoratga ega bo'lasiz, bu sizga ajoyib sohada ishlashga imkon beradi, bu sizga ajoyib, mashaqqatli va dunyo bo'ylab harakatlanishning ko'p imkoniyatlari bilan yordam beradi (keyinchalik bu haqda). 2018-yilda texnik savodli odamlarning ish joylari aqldan ozgan kabi o'sib borayotganini ko'rasiz. Birinchi navbatda bu sohaga kirishim. Men o'z hayotimni nazorat qilishni va qanday ish bilan shug'ullanishimni aniq bilishni xohlardim. Bugungi kunga qadar, men sizning maqsadingiz bo'lsa, bu eng yaxshi soha ekanligi haqida o'z so'zlarim bilan turibman.

Muhim eslatma: Xabar ishlab chiquvchiga aylanish uchun nima qilish kerakligi haqida asta-sekin ko'rsatma kabi ko'rinishi mumkin, ammo agar siz diqqat bilan qarasangiz, har qanday o'rganishga murojaat qilishingiz mumkin bo'lgan strategiya.

Nega kodlash kerak?

Dasturchi bo'lish uchun qadamlar qo'yishdan oldin, avval nima uchun bu yo'ldan borishni xohlashingiz haqida o'ylab ko'rishimiz kerak. Hayotingizning muhim vaqtini talab qiladigan har bir qaror asosli bo'lishi kerak. Vaqt, biz uchun eng muhim manba:

A. Siz oziq-ovqat tarmog'ining yuqori qismida juda muhim rollarda bo'lish uchun mahoratga talab yuqori bo'lgan va ko'plab imkoniyatlarga ega bo'lgan sohada ishlashni xohlaysiz.

B. Siz manzilingiz mustaqil bo'lishni yaxshi ko'rasiz. Siz dunyoning istalgan burchagiga borishga va baribir osonlikcha ish topishga imkon beradigan mahoratni xohlaysiz. Agar ertaga Islandiyaga ko'chib o'tishga qaror qilsangiz, ish topishda muammolar bo'lmaydi.

C. Siz 2003 va 2018 yillar o'rtasidagi farqni va o'sha 15 yil ichida qanday texnologik taraqqiyotga erishganimizni payqadingiz. Siz dunyoga ta'sir ko'rsatadigan sohada etakchi bo'lishni xohlaysiz.

D. So'nggi ikki yil ichida eng katta sanoat o'sishi cryptocurrency (Bitcoin) va sun'iy intellekt (Machine Learning) makonida bo'ldi. Biz har kuni texnologiya bilan aloqa qilamiz va siz tuproqda qolib ketmaslikni xohlaysiz, chunki bu narsalar bizning kelajagimizni o'z zimmasiga oladi. Siz bu ko'nikmalarni anglamoqchi va bilishni xohlaysiz.

E. Siz o'zgarish yaxshi deb o'ylaysiz va o'rganish hech qachon to'xtamasligi kerak. Xo'sh, nega yangi narsa qilmaysiz?

Ammo menda kompyuter fanlari darajasi yo'q va hatto Internet qanday ishlashini ham bilmayman! Xavotir olmang, biz buni sizning foydangizga ishlatamiz. O'qishni davom ettiring ...

Yangi martaba yo'nalishini tanlashda ba'zi yaxshi / yaxshi narsalar bo'lishi kerak:

1. Keyingi 10+ yil uchun tegishli bo'lishi kerak. Ushbu mahorat kelajakda sizning ishingiz xavfsizligini kafolatlaydigan ko'p yillar davomida qadrlanishi kerak.

2. Ushbu ko'nikmaga ega bo'lgan odamlar uchun talab taklifdan yuqori bo'lishi kerak. Sohada malakali ishchilar soni qancha kam bo'lsa, ish va siz ishlayotgan kompaniyalar ustidan shuncha ko'p nazoratga ega bo'lishingiz mumkin.

3. Tarmoqdagi yillaridan qat'iy nazar yuqori maoshga ega bo'lish qobiliyati. Siz munosib hayot kechirmaguningizcha ko'p yillar davomida korporativ narvonga ko'tarilishni xohlamaysiz.

4. Universitetning ixtisoslik ma'lumotini talab qilmaydigan soha. Siz pul ishlashni boshlashdan oldin keyingi 4 yilni qarzga botib, magistrlik dasturiga borishni xohlamaysiz. Va ha, menimcha, qimmat kodlash bootcampiga borishdan ko'ra yaxshiroq alternativalar mavjud.

5. Qisqa vaqt ichida ushbu sohadagi eng yaxshi ijrochilarni topish imkoniyati. Kichik tajriba hali ham sizni ish bilan ta'minlay oladimi? Siz bu sohada katta yoki mutaxassis deb hisoblanishingiz uchun bo'sh joyni imkon qadar tezroq yopishingiz mumkinmi?

6. Bu kelajakda nima bo'lishidan qat'i nazar, sizga ko'p martaba tanlash imkoniyatini beradigan asos bilimlarini shakllantirishga imkon berishi kerak. Masalan, kodlashni o'rganib, siz taqsimlangan dasturlar, blockchain va bulutli hisoblash kabi yangi paydo bo'lgan texnologiyalarni yaxshiroq tushunishingiz va keyingi qaysi sohaga o'tishni tanlashingiz mumkin.

7. Xursand bo'ling. Eng muhimi. O'zingizni uzoq vaqt davomida haftasiga 40 soat shunday qilayotganingizni ko'ryapsizmi?

Kodlash mening tajribamdagi yuqoridagi fikrlarning har biriga to'g'ri keladi. Sizning kilometringiz boshqacha bo'lishi mumkin. Mening eng sevimli kitoblarimdan biri shunday yaxshi deb nomlanganki, ular sizni e'tiborsiz qoldirolmaydi. Bu erda ular ehtiros afsona ekanligini ta'kidlashadi. Siz sayohatga kirishga kirishmasligingiz kerak, chunki siz sayohatga "ishtiyoqli" emassiz. Ko'pchilik kurashni va mahoratni egallash uchun ko'p mehnat qilish orqali ishtiyoqni topadi. Odamlar sizning qimmatbaho qobiliyatingizni tan olishni boshlaganlaridan so'ng, siz ushbu ko'nikmalarga bo'lgan hurmatni his eta olasiz, shu bilan siz o'zingiz qilayotgan ishtiyoqni rivojlantirasiz.

Siz buni o'zingiz baholamoqchisiz va u sizga mos keladigan narsa ekanligini ko'rmoqchimisiz.

Hali men bilanmi? Men sizni qo'rqitmadimmi? Mayli, keyin davom etamiz ...

MUHIM NAZARNI O'QING: yodda tutingki, dastlabki 2 oyda siz o'zingizni engib bo'lmaydigan toqqa chiqayotgan kabi his qilasiz. Qilgan har bir darsingiz, darsingiz yoki darsingiz sizni dunyoda bu narsani bilmaydigan yagona odam kabi his qilishingizga yordam beradi. Bardam bo'l. Siz u erga borasiz va vaqt o'tishi bilan siz ko'proq "AHA!" Daqiqalariga ega bo'lasiz. Biz buni Magostor sindromi deb ataymiz: bu erda siz bu ma'lumotni bilmaydigan va siz o'zingizni shubha ostiga olgan odam kabi his qilasiz. Biron bir yangi narsani o'rganganimizda, barchamiz shu kabi his etayotganimizga amin bo'ling.

Siz nimani o'rganasiz, yaxshi dasturchi bo'lish shunchaki hujjatlar to'plamini yodlab olishni anglatmaydi. Sizga mavjud bo'lgan barcha vositalardan foydalangan holda muammolarni qanday hal qilishni o'rganish haqida. Bu muammoni hal qilish va bilishni bilmaslik holatidan chiqish haqida.

Siz kimsiz va nega sizni tinglashim kerak?

Voy, siz to'g'ridan-to'g'ri, lekin menimcha bu adolatli savol. Birinchidan, men har xil joylarda, shu qatorda Silikon vodiysida eng yaxshi texnologiya kompaniyalarida ishlagan katta dasturiy ta'minot ishlab chiquvchisiman. Men kariyeramda juda omadli edim va boshqalarga dasturiy ta'minot bo'yicha ko'nikmalarni o'rgatish uchun 2018 yillarning barchasini olib boryapman. Ammo men kompyuter ustasi bo'lib tug'ilmaganman. Men informatika fanini tugatmadim.

P.S. Bu qism men haqimda, shuning uchun sizga umuman ahamiyat bermasangiz, ushbu qismni o'tkazib yuboring. Oxir-oqibat men uni engaman.

Hammasi ko'p yillar oldin boshlangan ... Men martaba o'zgarishini xohladim va o'zimga kompyuter dasturlarini o'rgatishga qaror qildim.

Birinchi oyni biron bir dars yoki kitoblardan qochdim. Buning o'rniga men bu oyni o'rganish va yollash uchun eng yaxshi usulni ko'rib chiqdim. Men samarali bo'lishni, vaqtimni behuda sarflamaslikni va eskirgan texnologiyalarni o'rganishni yoki bir oydan keyin unutadigan narsalarni o'rganishni xohlardim. Men boshqa odamlarning tajribalarini o'rganib chiqdim, ish joylariga yozilganlarni ko'rib chiqdim, tuzilgan dasturchilar bilan suhbatlashdim, onlayn kurslarni ko'rib chiqdim, botcamplarni ko'rib chiqdim va hatto futuristlarning 20 yil ichida biz texnologiyada qanday bo'lishimiz haqidagi maqolalarini o'qib chiqdim. Shunga asoslanib, men o'zim uchun samaradorlikka yo'naltirilgan o'quv dasturini yaratdim: Qisqa vaqt ichida ishga joylashish uchun juda muhim miqdordagi o'qish.

Agar siz Tim Ferrissning asarlarini men kabi yaxshi ko'rsangiz, buni yaxshi ko'rasiz. O'quv dasturi eng kam ishlarni bajarishga qaratilgan emas. Buning o'rniga, u eng maqbul usulda ishlash uchun eng muhim narsalarda chindan ham qattiq ishlashga qaratilgan. Bu yalang'och minimal ish qilish va yosh dasturchi sifatida yollanish degani emas. Agar siz astoydil ishlay olsangiz va ishlab chiquvchi oralig'ida to'g'ridan-to'g'ri sakrab chiziqni o'tkazib yuborsangiz, bu yaxshi natija. Baxtimizga, men allaqachon hamma narsani sinab ko'rdim.

Garchi men haqiqatan ham o'qish o'rniga o'qishimni rejalashtirishga bir oy vaqt sarflagan bo'lsam ham, kelajakda bu foyda keltirdi, chunki men ko'r ko'rmadim. Qayerga ketayotganimni bilardim va marraga yetib boradigan xaritam bor edi. Siz ham shunday qilasiz.

Ha, men siz qaerda edingiz va nima kerakligini bilaman. Ishimni boshlaganimda, menga nimalar kerakligini aytib beradigan biron bir narsa bo'lsa edi. Shuningdek, men ko'plab darsliklarni juda ko'p texnik ma'lumotlarga ega bo'lgan odamlar tomonidan o'qiganman, ammo yangi boshlovchilarga to'g'ri o'rgata olmagan holda topdim. Bu vaqtga qadar ruxsat etilgan har bir video, darslik va darslarni o'qib chiqdim va o'rganib chiqdim.

O'shandan beri men Fortune500 texnologiya kompaniyalari bilan maslahatlashdim, kodlash bo'yicha seminarlarni o'tkazdim, nashr etilgan texnologik kitoblar bo'yicha maslahatlashdim va texnik muzokaralar olib bordim. Men hozir birovga ishlashim shart bo'lmagan vaziyatdaman. Men bu karerani yaxshi ko'raman va ko'p odamlar bundan zavq olishlari va bundan foyda olishlari mumkin deb o'ylayman. Shunday qilib, men bu sakrashni xohlaganlarga yordam berish vazifasini bajaraman.

Mayli, bu so'nggi jumboq juda keskin edi ...

Biz qaysi tilni o'rganamiz?

Ha, bu erda.

Quyidagi sabablarga ko'ra siz Javascript ninjasiga aylanasiz:

→ Javascript hamma joyda. Veb-sayt yoki ilovaga ega bo'lgan har bir kompaniyaga Javascript bilimi bor odam kerak. Ushbu til bir tonna ish joyiga yuboriladigan talab (agar menga ishonmasangiz, LinkedIn-da o'zingizning mintaqangizda Javascript-ni qidiring).

→ Node.js-ning ishlatilishi bilan siz Javascript-dan foydalanib to'liq stack dasturini yaratishingiz mumkin (english = siz o'zingizning butun loyihangizni yaratish uchun javascript-dan foydalanishingiz mumkin). Elektron, React Native va boshqa ko'plab vositalardan foydalangan holda Javascript sizga ish stolini, mobil ilovalarni, veb-dasturlarni va hatto VR-ilovalarni yaratishga imkon beradi. Jonny-Fivega o'xshash narsalarni ishlatib, robotlarni boshqarishingiz mumkin. Siz o'zingizning blockchain -ingizni qurishingiz mumkin. Lisk, platforma kabi ethereum javascript-dan foydalanadi.

→ Agar siz birinchi fikrni o'qimagan bo'lsangiz va boshqa narsa haqida o'ylayotgan bo'lsangiz, yana bir bor aytib o'tishga ijozat bering: Javascript mutaxassislariga bo'lgan sanoat talabi katta. Ish beruvchilar ish takliflari uchun haftasiga bir necha marta yollash va rahbarlar bilan bog'lanishlari juda kam uchraydi.

→ Javascript hamjamiyati tez sur'atlar bilan o'sib bormoqda. Jamiyatda juda ko'p yangi o'zgarishlar mavjud. Ba'zi odamlar Javascript charchoqlari haqida shikoyat qilmoqdalar, chunki har kuni tobora ko'proq yangi vositalar ishlab chiqilmoqda. Biroq, biz buni o'z foydamiz uchun ishlatishimiz mumkin. Siz ushbu yangi texnologiyalarni ko'p yillar davomida ushbu sohada ishlagan odamlar bilan bir vaqtda o'rgangan bo'lar edingiz.

Menga ishoning, bu juda katta talabga ega bo'lgan ajoyib jamoadir. Agar menga ishonmasangiz, bu erda dasturchilar ko'nikmalarining tahlili juda qiziq.

Jabber kifoya, boshlaylik. Quyida siz vaqtingizdan unumli foydalanishingiz uchun eng yaxshi deb hisoblaydigan narsalar topasiz. 5 oyning oxiriga kelib, siz birinchi haqiqiy bo'lmagan kirish darajasidagi dastlabki dasturiy ishingizni topshirishingiz kerak. O'tkazgichlar yo'q. Faqat siz va qat'iyligingiz.

5 oy, bosqichma-bosqich

Biz 2018 yilda eng ko'p ishlaydigan va talab qilinadigan ko'nikmalarga e'tibor qaratamiz. PHP yoki jQuery kabi eskirgan texnologiyalarga vaqt yo'q. Ularda hech qanday yomon narsa yo'q va men to'liq hurmat qilaman, lekin yillar davomida olgan ba'zi elektron pochta xabarlariga asoslanib, ko'p odamlar moliyaviy ehtiyojga ega va ularni qo'llab-quvvatlashlari kerak bo'lgan oilalari bor. Ular uchun vaqt juda muhim va ular imkon qadar tezroq ishga joylashishni xohlashadi.

Birinchi oy: Katta rasm

Javob beradigan katta savol: Kompyuterlar, Internet va veb-saytlar qanday ishlaydi? Qanday qilib veb-saytni yaratishim mumkin?

  • Feynman texnikasini tushunib oling, shunda siz qisqa muddatli xotiradan foydalanishning o'rniga keyingi 5 oy davomida haqiqatan ham o'rganasiz.
  • Internet qanday ishlaydi: bu LearnCode.academy-dan va undan keyin esaостondan.
  • Kompyuter fanining eng yaxshi sharhi: Crash Course Computer Science
  • Ushbu Garvard kursini youtube-da tomosha qiling. Bu, ehtimol, eng yaxshi kompyuter fanlari o'qituvchisidan olingan sof oltin. Mashqlarni bajarishga hojat yo'q.
  • Buyruq satridan qanday foydalanish kerak: bu Zed Shaw tomonidan.
  • Qanday qilib veb-saytni yaratish / domenga ega bo'lish / uni yaratish va ishlamoq kerak: LearnCode.academy video.
  • Qanday qilib HTML, CSS va Javascript bir-biriga mos keladi: Veb-ishlab chiqish bo'yicha FrontendMasters kursi. Faqat Javascript-dagi bo'limni o'z ichiga oladi.
  • Bootstrap yordamida veb-saytlar yaratishni o'rganing. Buni boshlang, so'ng Bootstrap 4 hujjatlariga o'ting va u erda ko'rgan tarkibiy qismlarni namunaviy veb-saytga qo'shing. O'zingiz CSS yozishga qarshi bo'lgan afzalliklarni tushunib oling.
  • Bepul mavzular va shablonlarni ishlatib veb-saytlarni yaratish uchun shablonlarni qanday ishlatishni tushuning.
  • Agar vaqtingiz bo'lsa, freeCodeCamp-da HTML va CSS bo'limlarida bir nechta kurslarni qilishingiz mumkin.

Ikkinchi oy: Javascript

Javob beradigan katta savol: Qanday qilib javascript mashinalari o'zingiz xohlagan narsani qiladi?

  • Keyingi oylarda sizning asosiy diqqat markazingiz shu erda bo'ladi. Javascript qanday muammoni hal qiladi? Javascript-da veb-saytingizni ma'lum bir tarzda o'zini tutish uchun kichik dasturlarni yozishni boshlang. Ushbu til veb-saytlaringizni shunchaki chiroyli ko'rinishdan boshqa narsalarni qilishga majbur qiladi. Ushbu ikkita kursdan boshlang: bitta va ikkita
  • Badiiy Javascript kitobini o'qing.
  • DOM manipulyatsiyasi haqida bilib oling.
  • Dasturlash haqida ushbu ajoyib maqolani o'qing.
  • Javascript yozish uchun qanday qilib Chrome dasturiy ta'minotidan foydalanishingiz mumkinligini bilib oling. Ushbu CodeSchool kursini bajaring (faqat konsol bo'limi). Keyin javascript fayllarini ishga tushirish uchun html-ga