Dasturchi bo’lish uchun nimadan boshlash kerak? Python tilni o’rganish uchun nima qilish kerak?

Dasturchi bo’lish uchun nimadan boshlash kerak? Python tilni o’rganish uchun nima qilish kerak?

Khamidulla

Menga sarlavhadagi savol bilan juda koʻp sohaga yangi kirib kelayotgan odamlar maslahat soʻrab murojaat qilishadi. Bu haqida keyinchalik blog postimda aytib oʻtaman deb vaʼda bergandim soʻraganlarga. Bugun oʻsha vaʼdani ustidan chiqish vaqti keldi.

Avallo u yoki bu dasturlash tilini oʻrganishdan oldin meni oldimga maslahat soʻrab kelgan barchadan Ingliz tili bilim darajasini soʻrayman. Va Ingliz tilini bilmasa xar doim Ingliz tilini oʻrganishni maslahat beraman. Hikoyamni shu joyida meni bilan boʻlib oʻtgan qiziq dialogni keltirmoqchiman:

- Python dasturlash tilini o’rganishni nimadan boshlasam bo’ladi? - talaba

- Ingliz tilini qay darajada bilasiz? - men

- Ingliz tilini bilmayman - talaba

- Unda Ingliz tilini o’rganing - men

- Oldingi yili kelganimda ham xuddi shunday javob bergandingiz - talaba

- Keyingi yili kelsangiz ham shunday javob beraman - men

Koʻrib turganingizdek Ingliz tilini bilmaganlar uchun men beradigan javob bitta. Ha albatta siz Ingliz tilini bilmasdan ham dasturchi boʻlishingiz mumkin. Buni inkor etmayman. Lekin quyidagi jadvalga eʼtibor bering:

Internetda maʼlumotlarning 60% - Inglizi tilida. Yani siz koʻrgan online kurslar, siz oʻqigan kitoblarning aksariyati Ingliz tilini bilishni talab qiladi. Albatta boshqa tillarda ham bor. Lekin hozirgi zamonda dasturlash tillarida va texnologiyalarda juda koʻp oʻzgarishlar aynan Ingliz tilida chop etiladi.

Bundan tashqari oʻzim guvohi boʻlgan hodisalardan yana birida ham ishga topshirgan ikkita bilim bir xil kandidatdan Ingliz tilini yaxshiroq biladigani ishga olingan. Outsource yoki freelance uchun ishlaydigan, yoki chet el korxonalarni umuman gapirmayman. Ularda Ingliz tilini bilmasangiz ishga kirishni oʻzi qiyin.

Ahvol tang boʻlsa-chi? Pul topish kerak boʻlsa nima qilaman? — deb soʻrashingiz mumkin. Bilsangiz Rus tilida bor materiallardan foydalaning. Oʻzbek tilida materiallar boʻlsa ulardan foydalaning. X dasturlash tilini dokumentatsiyasini google translate orqali oʻqing. Topgan pulingizdan bir qismini Ingliz tilini va oʻz bilimingizni oshirish uchun investitsiya qiling. Shu erda ham oʻzim guvohi boʻlgan bir hodisani aytmoqchiman. SuperDispatch ga 2020 yili kelganimda bosh dizayner boʻlib ishlaydigan Nodir Khalilov Ingliz tilida yaxshi gapirmas edilar. Lekin mana ikki yil oʻtib bu yili qilgan prezentatsiyalarida toʻliq Ingliz tilida boʻldi. Bu darajaga yetishish uchun ancha mehnat qilib harakat qildilar. Kompaniyada ishlayapman oylik olyapman deb oʻsishdan toʻxtab qolmadilar. Bu darajaga qanday erishganlarini oʻzlaridan ham soʻrab koʻring kanallarida.

Ingliz tilini bilish qanchalar muhimligini davom ettiradigan boʻlsam atrofimda talaygina misollar bor lekin bugungi mavzu boshqa edi. Shunga Ingliz tilini bilish qanchalar muhimligiga shu erda yakun yasab maslahatimni ikkinchi bosqichiga oʻtsak.

Agar siz Ingliz tilini yaxshi bilsangiz men sizga kitob oʻqishni maslahat beraman. YouTubedan videolar, online kurslar, internetdagi maqolalar va hokazolarni bor lekin men aynan kitob oʻqib oʻrganganman. Oʻqiganda ham yaxshi yozilgan kitob oʻqish kerak.

Meni maslahatim Python ni endi o’rganmoqchi bo’lganlar uchun quyidagicha:

  • Birinchi boʻlib Manning Press dan chiqqan “The Quick Python Book” iloji boʻlsa soʻngi nashrini topib oʻqing. Bu kitobda barcha kerakli maʼlumotlar sistematik ketma ketlikda berilgan.
  • Soʻngra esa Oʻreilly nashriyotidan chiqqan “Python Cookbook” ni qarab chiqing. Oʻreilly dan chiqqan barcha Cookbook lar kundalik ishda as qotadigan tayyor retseptlardan iborat. Kitobni muqovadan muqovagacha oʻqish shart emas. Shunchaki oʻzingizga qiziq boʻlgan joyini oʻqing.
  • Xoʻp siz tilni oʻrgandingiz endi yozgan dasturingizni test qilishni ham bilishingiz kerak. Yaxshi kompaniyalarda testsiz dastur yozilmaydi. Buning uchun siz Python dasturlash tili uchun de-facto ishlatiladigan kutubxonalardan bir boʻlgan Pytestni bilishingiz kerak. Pytestni va pytest CLI tool ni ishlatish uchun The Pragmatic Programmers nashriyotidan chiqqan “Python Testing with pytest” kitobni oʻqishni maslahat beraman.

Junior dasturchini ham Junior dasturchidan farqi bor. Shunga qolgan kitoblar Python ga tegishli emas lekin yaxshi dasturchi boʻlish uchun oʻqish majburiy deb oʻylagan kitoblarim quyidagilardan iborat.

  • Yaxshi dastur yozish uchun Pearson nashiriyotidan chiqqan Robert Martinni (Bob amaki) “Clean Code” kitobini maslahat bergan boʻlardim. (Bu kitobdagi ayrim mavzularni oʻz blogimda yoritish maqsadim bor.) Bu kitobda dasturlashga kirib kelgan odamlarni qanday qilib toza/yaxshi dastur yozish boʻyicha aksariyat savollariga javob berilgan deb hisoblayman. Vaqt boʻlsa shu nashriyot va shu avtordan “Clean Coder” ni ham oʻqishni maslahat beraman.
  • Bundan tashqari hozirda aksariyat (MAANG kompaniyalarida boshqacha boʻlishi mumkin) kompaniyalarda Git ni bilish talab qilinadi. Men intervyu olgan odamlar orasida “men git ni bilaman” deb, savol berganda uyalib qolganlar ancha boʻlgan. Shuning uchun quyidagi Oʻrelly nashriyotidan chiqqan “Version control with Git” kitobni maslahat beraman.
  • Yana boshqa kitoblarni ham yozgan bo’lardim lekin qolganlari operatsion tizimga bog’liq yoki ishga bog’liq. Ammo *inux da ishlaydiganlar uchun bitta qo’shimcha maslaxatim BASH CLI bo’yicha istalgan kitobni o’qing. Men quyidagi kitobni o’qiganman:

Yuqorida keltirilgan kitoblar royhati umumiy bo’lganligi bois, to’liq emas. Sizning bilimingiz va kelgusida nima ish qilmoqchi bo’lishingizga qarab boshqa adabiyotlarni ham tavsiya qilgan bo’lardim.

Bundan tashqari Python tili boʻyicha, pytest boʻyicha, git boʻyicha va hokazo boʻyicha dokumentatsiylarani oʻqish shart. Kitob oʻqidim boʻldi emas. Kitob ketma ket sistematik bilim olish uchungina kerak.

Postimni shu yerigacha oʻqiganlarga rahmat va kelasi blog postlarda koʻrishguncha deb qolaman.

Report Page