Savollar… Qachon? Qanday qilib?

Savollar… Qachon? Qanday qilib?

Savollar... Qachon? Qanday qilib?

Salom blogdoshlar. Opennetdagi maqolalar bilan tanishib chiqish jarayonida menda bir savol tug’ilib qoldi. IT dunyosi, IT sohasi, IT texnologiyalar, IT bilan bog’liq fanlar yil sayin emas, soat sayin rivojlanib bormoqda. Buyilgi o’rganganlarimiz keyingi yilda deyarli eskirmoqda. Bu yil yaratilgan mahsulotni keyingi yilgacha takomillashtirish zarur. Aniq bo’lib qoldiki sohaning chegarasi yo’q, bitta mutaxassis sohadagi 2-3 ta yo’nalishni o’rganib borishi qiyin bo’lib bormoqda.
Masalan C/C++ da dasturlovchi ma’lumotlar bazasi yoki tarmoq texnologiyalari yoyinki bizga oddiygina ko’ringan PHP ni mukammal o’rganib, ulardan foydalangan holda yetuk mahsulot yarata olishi mumkin emasligi aniq bo’lib bormoqda. Bu fikrimni noto’g’ri deydigan o’quvchi izoh qoldirishi mumkin va quyidagilar haqida o’qib, izlanib ko’rsin:

  • Ma’limotlar bazasi: NoSql, Cassandra, MongoDb, BigTable
  • Cloud Computing, Distributed and Parallel Computing
  • Amazon Web Services, SalesForce, SaaS, PaaS
  • Node.js, Dart, Rust, FireFox OS
  • Self Driving Cars, 3D Printers, Google Glass, Smart Home.

… bularni ancha davom ettirish mumkin.

Balkim, 3-4 ta yo’nalishni baravar olib borish mumkin dersiz, ha mumkin, lekin professional darajada emas. Shunday vaziyatda Saidolim aka etgan yetuk mahsulotni yetishtira olamizmi? Umuman olganda savol:
Shunchalik tez o’sayotgan IT sohasi yoniga yurtimiz mutaxasislari qachon yetib borishadi (IT — ko’p qavatli bino, soat sayin yangi qavatlar qurilmoqda, biz qachon eng yuqorigi qavatlarga yetib boramiz)? Buning uchun mutaxassis, uning mehnatidan foydalanayotgan kompaniya yoki davlat idorasi nimalarga etibor berishi kerak, chunki yurtimizda soha rivojidan hamma ham birdek manfaatdor. Balki «gektar-gektar hosilni yig’ishtirib olishda ishchi kuchi yetishmayotgandir»? Qachongacha 6-8 yil oldingi (zo’r kelsa 2-3 yil oldingi) texnologiyalar bilan ish yuritamiz? IT maydonida dasturchi/mutaxassis «universal soldat» singari ishlay olmaydiku? Hozirda yangi bilimlarni hazm qilishda kim qanchalik yutuqlarga erishmoqda, va qanday qilib? Savollarni cheki yo’qdek. Menimcha bu savollarga optimistik javob berishni foydasi yo’q, chunki tashqaridan kimdir kelib, aravani tortishmaydi.

Bu savollar bo’yicha mulohazalaringiz bilan o’rtoqlashasiz degan umiddaman.

Bildirilgan fikrlar:

shranet

Manimcha hali tepaga chiqishimiz qiyinroq. Chunki bizni IT bozorimizda yangi texnologiyalarga talab juda kam deyarli yo’q.

Epikur

Birinchi o’rinda «kliyentning» hohishi/talabi bo’ladi. Bu talablardan kelib chiqqan holda siz har tomonlama emas, aynan bir yo’nalishdagi texnologiyani o’rganishingiz kerak. Boshlang’ich ma’lumotlarni maktabdan (kollej, institut, univerdan va boshq.) olasiz, lekin bu degani emaski, siz ham fizikadan ham kimyodan, ham adabiyot megamiya bo’lib yetishganingizni, to’g’rimi? Maktabdan keyin siz ma’lum bir yo’nalishga qaratilgan kollejga kirasiz, kollejdan keyin univerga…

«Universal soldat» bo’lishingiz bu sizning hohishingiz, sizda tanlash uchun doimo imkon bor.

Aniq bo’lib qoldiki sohaning chegarasi yo’q, bitta mutaxassis sohadagi 2-3 ta yo’nalishni o’rganib borishi qiyin bo’lib bormoqda

2-3 ta sohani o’rganish shart emas. Masalan, mikrokontrollerlarni dasturlashda ma’lumotlar bazasi mukammal bilish kerak emas, ma’lumotlar bazasi admini dasturlashni bilishi shart emas, Android platformasi koderlari DirectX 11 ni bilishi kerak emas va hokazo.

Umuman, IT sohada universallik doimo ham yaxshi bo’lavermaydi.

P.S.: C/C++ da dasturlovchi ma’lumotlar bazasi yoki tarmoq texnologiyalari yoyinki bizga oddiygina ko’ringan PHP ni mukammal o’rganib, ulardan foydalangan holda
yetuk mahsulot yarata olishi mumkin emasligi aniq bo’lib bormoqda

PHP nimaga yetuk mahsulot yaratib bo’lmaydi? o_O

mageUz

Aniq bo’lib qoldiki sohaning chegarasi yo’q, bitta mutaxassis sohadagi 2-3 ta yo’nalishni o’rganib borishi qiyin bo’lib bormoqda.

— buni siz ham to’gri deb tan olyabsiz.

C/C++ da dasturlovchi ma’lumotlar bazasi yoki tarmoq texnologiyalari yoyinki bizga oddiygina ko’ringan PHP ni mukammal o’rganib, ulardan foydalangan holda yetuk mahsulot yarata olishi mumkin emasligi aniq bo’lib bormoqda

— PHP da mukammal mahsulot yaratib bo’lmaydi demoqchi emasman, aytmoqchi bo’lganim IT da X yo’nalishni (C/C++ yoki PHP yoki MobilDastrulash) professional darajada bilgan mutaxassis boshqa bir Y yo’nalishni professional darajada o’zlashtirishi qiyin demoqchiman. Bu yerda PHP misol sifatida etilgan. Chunki X ni professional o’rganish uchun kamida 2 yil shu bilan muntazam shug’ullanishi va real mahsulotlar yaratgan bo’kishi kerak, endi yana Y ni professional darajada bilishi uchun 2 yil vaqt sarflasa shu 2 yil ichida o’zining yo’nalishi X qay darajada o’zgarib, takomillashib ketishini tasavvur qilish qiyin emas.

Men ham maqolada bildirganim «universallik» cho’qqisiga chiqib bo’lmaydi, agar imkoni bo’lsada bu ayni bizni IT sohada befoyda ekanligini menimcha siz ham takidlayabsiz.

shranet

Bitta narsa qo’shimcha qimoqchiman. C ham, C++ ham, Facebook ham, Google ham, Pochta tizimi ham shu muhitdagi insolarga kerakligi va zarurligi uchun yaratilgan. Agar tarixga nazar solsangiz ham barcha kashfiyotlar zaruratdan kelib chiqib ochilgan.

Demoqch bo’lgandim, vaqti kelib bizdagi zakazchiklar ham yangi texnologiyalarda qilib berishni so’rashni boshlashasa, shunda biz dasturchilar texnologiyalarni orqasidan yetib olamiz.

O’zimda bo’lgan, OpenGL ni o’rganayotgan paytimda Toshkentda hech qaysi firma OpenGL dan dasturchi qidirmagan. Hozir bo’lsa onda sonda eshitib turaman.

Vaqti kelib bizda ham o’yin tuzish rivojlanib ketsin, shunda ko’rasiz, yengi o’rganib kelayotgan dasturchilar OpenGL ni o’rgansammikan (yoki DirectX ni) degan savol berish boshlasahdi.(bir paytlar 2007-2009 yilllarda C# ni o’rganish «moda» bo’lgandi).

Man etmoqchi bo’lganim agar bizni bozordagi TALAB kuchayarkan, dasturchilar shunga qarab texnologiya orqasidan quvadi.

Hozir bo’lsa dasturlashda orqadamiz deya olmiman. Bizdagi eng katta kamchilik dasturchilar bitta joyda emas ya’ni bizda open source va davlat miqyosida ishlab chiqildan dasturlar deyarli yo’q. Shaxsiy firmalar bo’lsa chet el davlatlarini dasturlarini qilish bilan ovora.

Phoenix

PHP da yetuk mahsulot? Axir bu vebga yo’naltirilgan kichkina tilku. Bu bilan muammolarni yechib bo’lmaydi. Yetuk mutaxassis bo’lish uchun statik tipli (C++, Java) dasturlash tilini o’rganish kerak. C++ bu kompyuter qanday ishlashini o’rgatadi. Barcha tillarning ildizi C va C++ dan yaratilgan. Bu degani C++ o’zlashtirgan odam qolgan tillarni uzog’i bilan 2-3 oyga o’zlashtirib oladi. Chunki C++ ni o’zi OYD, Pointer, Variable, Memory Managment, Constants, Operatorlarni o’rgatadi. Eng muhimi C# va Java C++ dan yasalgan. Sintaksislari bir xil. Hozirda dunyoni C++, Java boshqarib turibdi. Bu bilan nima demoqchiman, O’zbekistonda PHP, HTML dan uyog’iga o’tishmaydi, Python va Ruby degan «mo’jiza»lar borligini hali umuman bilishmaydi.

O’rganganga ko’ra yaxshi til o’rganish kerak, kelajakda «yiqilmaslik» uchun.

mageUz

C++ va Java, Python va Ruby to’grisidagi fikrlaringiz o’rinli, lekin PHP siz tasavvur etganchalik kichkina til emas. Ishonchim komilki ayni shu PHPda yozilgan ko’pgina freymworklar va platformalarda bugungi kunda qanday ommabop tizimlar ishlayotganligini hech kim inkor eta olmaydi: Facebook, Yii, Magento… Masalan siz shu platformalardan birini professional darajada o’rganib chiqaman desangiz kamida 1.5-2 yil vaqtingiz ketadi. PHP ni ham mukammal bilgan dasturchi hali beri «yiqilmasa kerak».

s_nazirov

Gapingizda jon bor, mening fikrimcha asosiysi algoritimlash bo’yicha mukmmalikka erishishga harakat qilinsak hech qachon yiqilmaymiz.

Phoenix

Facebook deganda butun boshli facebook PHP da yozilmagan. Vakansiyasiga kirsangiz ko’rasis. Daje PHP tezliki past bo’lganidan Hip Hop C++ yordamida php kodni c++ komplier qilgan.

Man har doim Stack Overflow saytini careera sini kuzatib boraman. U yerda PHP yo’qolib borayotganini ko’raman. Hohlasangiz nazar tashlanglar htttp://careers.stackoverflow.com. PHP ni yutgan tarafi uni juda soddaliki va shunchalik ko’p malumot borki 1 kunda shaxsiy cms ni yozishing mumkin. Daje dub bo’lsang ham.

shranet

O’zbekistonda PHP, HTML dan uyog’iga o’tishmaydi, Python va Ruby degan «mo’jiza»lar borligini hali umuman bilishmaydi

Bu kimlarga nisbatan etilgan? 🙂

O’rganganga ko’ra yaxshi til o’rganish kerak, kelajakda «yiqilmaslik» uchun.

Qayerdadir eshitgandim. Kimdir C/C++ ni o’rganib bizda ish topomagan ekan. Lekin PHP + CMS ni bilgangan ish shunchalar ko’pki hozirgi dasturchilarimiz faqat shu ikkalasini bilishadi. Mani oldimga ko’pchilik keladi shogirt qilib oling deb. Deyarli har doim bitta misol beraman, shuni qilsang bo’ldi olaman diman. Misol bo’lsa: C tilida BMP rasmni o’lchamini oladigan dastur qilish. Oddiy faylni o’qish. Lekin shu misolni xuddi 12 etajli uyni qurishday tasavvur qilishadi.

Ali


shranet albatta sizga emas, forumlarda, internetdagilarni aytyapman. To’g’ri php joblar juda ko’p gohida o’zim ham hammasini unutib php ni o’rganishni xohlab qolaman. Lekin! Keyinroq yangi narsalarga ehtiyoj bo’lganda qiynalmaslik uchun, fundamentini qurib boshlagan maqul. Yani C++. C++ ni tushungan odam qolgan tillarni o’rganish qiyinchilik tug’dirmaydi.

kanet

Hozirgi kundagi ancha dolzarb muammoni ko’taribsizlar, bu savollarga hech kimda aniq javob bo’lmasa kerak. Mendayam javob yo’q, lekin o’zimning fikrim bildiraman :).

Hozirgi kunda PHP o’rganish ancha oson bo’lgan(JSP, ASP, Python, Ruby on Rails ga nisbatan) tillardan bittasi va ko’pgina tayyor CMS va Frameworklar mavjud bo’lgan til, shuning uchun ko’pchilik dasturchilar PHP ga «o’tib ketishmoqda». Yana bizda «zakazchik»lar dasturchining instrumentiga pul to’lashni hohlashmaydi, shuning uchun hammaning PHPga o’tishi tabiiy hol. Lekin bu holat qachondir tugashi kerakku, bizda ham katta-katta proyektlar qilinadiyu, o’sha qolib ketayotgan binoning qavatlari quriladiyu… Lekin shunga dasturchilarimiz tayyor bo’lishlari kerak.

Dasturchi universal bo’la olmaydi, u o’zining yo’nalishini yaxshi bilsa yetarli, universal bo’lishga «fizicheskiy» ulgurib bo’lmaydi. Lekin yangiliklardan xabardor bo’lib turish kerak. Chet elda shuuuncha opensource proyektlar qilinadi, shularning ko’p qismini dasturchilar asosiy ish vaqtidan bo’sh paytda qiladi. Bu narsa dasturchida yangi bilimlarni olishiga sabab bo’ladi. Bizda ham shunga o’xshash opensource proyektlar (qiziq! va foydali!) yo’lga qo’yilsa va shunga o’xshash proyektlarda ishlaganlar bo’lsa o’z tajribalarini baham ko’rsa yaxshi ish bo’lardi.

Bizdagi yana bir kamchilik Teamwork degan narsa ancha sust, shuning uchun bizga yaxshi «Software Engineer»lar yoki proyekt menejerlar kerak (dasturlash bosqichidan o’tgan, «universal dasturchiga» yaqinlashib qolgan va boshqa qo’shimcha hislatlarga ham ega bo’lgan odam :))! Proyekt menejer odamlarni boshqara olishi hamda har bir dasturchi qilayotgan ishdan hech bo’maganda umumiy bilimga ega bo’lib, dasturchilarga vazifani to’g’ri qo’yishi va natijalarni umumlashtirishi lozim. Mana shunda dasturchi universal bo’lmasa ham, bunday teamworkdan universal maxsulot chiqadi…

P.S. C/C++ ni o’rganishni hammaga maslahat berardim(dizaynerlardan boshqa :)).

mrazamat

Kim ko’proq mehnat qilsa bu albatta natijasini beradi. Shuning uchun mehnat qilish kerak o’qish kerak izlanish kerak.

s_nazirov

Albatta fikringiz to’g’ri ammo nimaga intilishga ham bog’liq

mrazamat

Nimaga intilishni bilish uchun kelajakni ko’ra bilish kerak, qaysi yaxshi buladi, qaysi qolib ketadi.

Manba:

Boshqalar
Savollar… Qachon? Qanday qilib?