AHBS | Alisher Kasimov’s Blog
558 subscribers
3 photos
1 video
33 links
Application has been started.

@a_kasimovv_bot
Download Telegram
Bu канАлda y0z!1gAn gAp1ArgA iw0nmAng

#havfsiz_internet

G’alati nom bilan boshlangan bu postni men yangi turkumga kirish sifatida ishlataman. Bunday turkumni boshlash niyati menda ancha vaqtdan beri bor edi, lekin hech bu narsaga vaqt ajratolmay yurgan edim.

Yaqin 5-6 oylardan beri men bir narsani guvohi bo’ldim. Shu narsa meni juda qo’rqitib qo’ydi.

Bilamiz, o’zbek tilida Internet tarmog’ida resurslar o’ta kam. Biror ma’lumot qidiraman deb kirsangiz o’zbek tilida deyarli hech narsa topa olmaysiz. Onlayn tarjimonlar haqida-ku umuman gapirib bo’lmaydi — ingliz tilidagi so’z tog’dan kelsa, o’zbekcha tarjimasi bog’dan keladi. Shuning uchun ham Internet tarmog’idan hozirgacha ayni rus yoki ingliz tilini hech bo’lmaganda tushunish darajasida bilgan odam foydalana olgan.

Lekin yaqin yarim yil ichida meni bir narsa juda qo’rqita (ha, aynan qo’rqishni boshlaganman) boshladi.

Bir kuni do’stlarim bilan suhbatlashayotib shoshilinch bir ma’lumotni Internetdan izlash kerak bo’lib qoldi. Do’stlarim o’zbek tilida suhbatlashayotgan bo’lganim uchun ma’lumotni ham e’tibor bermay o’zbek tilida Google amakidan so’radim. Shu payt meni ajablantirgan narsa — ma’lumotning o’zbek tilida borligi bo’ldi. Shu paytgacha men aniq bilardim-ki, bunday ma’lumotlar o’zbek tilida Internetda yo’q edi.

Bir necha kundan keyin menda yana o’zbek tilida ma’lumot izlashga muhtojlik paydo bo’ldi va shu maqsad bilan Google amakiga murojaat qildim. Bu gal menga o’zbek tilida Protsessor ichki tuzilmasi haqida ma’lumot kerak bo’lib qoldi. Topilgan ma’lumot deyarli yaxshi edi, lekin mening e’tiborimni matn grammatikasi o’ziga tortdi. U unchalik yaxshi emas edi. Keyin men ochilgan vebsayt havolasiga nazar soldim va shu payt men g’alati bir ahvolga tushdim.

Bu .ru domenidagi rus sayti edi: https://fighters.ru/uz/functions-of-the-processor-and-its-main-characteristics-processors/

Ya’ni Google amaki avtomatik ravishda, menga ko’rsatmagan holda butun boshli vebsaytni men uchun tarjima qilib, oldimga huddi o’zbek saytidek ko’rsatdi…

Yolg’onning birinchi qadami.

Albatta, Siz aytishingiz mumkin — “Ha, Alisher, bu juda qulay narsa-ku! O’ylanib ham o’tirmaysiz, hamma narsa Siz bilgan tilda bo’ladi!”, — deb. Bu to’g’ri gap, lekin aynan shu joyda yolg’onni aralashtirib yuborish umuman qiyin ish emas. Google amaki algoritmlari ichiga “O’zbek tilini ko’rsang ‘Falonchi odam kashfiyotchi’ degan gapni ‘Falonchi odam muttaham’ deb tarjima qil” — degan buyuruqni yozib yuborish kimningdir hayoliga kelishi mumkin. Bunday holatda O’zbekistonning biror viloyatida o’tirgan, o’z ko’zi bilan ko’rib, qo’li bilan ushlab tekshirib ko’rishga imkoni yo’q odam ‘Falonchining muttahamligiga’ ishonib qolaveradi.

Bu juda muhim mavzu. Internetda ma’lumot o’ta ko’p, lekin shu ko’plik ichida ayni qaysi so’z haqiqatligini aniqlash tobora murakkablashib bormoqda.

Mening Sizdan bir iltimosim bo’ladi — Ma’lumotni ko’rganingizda, uni yaxshilab tekshirishni o’rganing.

Hech qachon aytmagan gapimni aytaman — Postni iloji boricha do’stlaringiz bilan bo’lishing. Internet ilgarigidek xavfsiz yer bo’lmay qolmoqda.

@app_hbs
👍51🤯9
Assalomu alaykum! Hammangizni Ramazon Hayit ayyomlari bilan muborakbot etaman!

Alloh barchamizning tutgan ro’zalarimizni qabul aylasin! Kelasi Hayit ayyomlariga bag’ri butunlikda, sihat-salomatlikda yetib borishni nasib etsin!

@app_hbs
👍48
​​Odamzod tushungan eng oxirgi til

Hech o’ylab ko’rganmisiz — Assembler nima? Nima uchun u mavjud o’zi? Qayerda ishlatiladi va hozir o’rgansa bo’ladimi? Bugun Siz bilan shu “til” haqida gaplashamiz.

Umuman, bu til birinchi bo’lib 1949-yilda birinchi o’ylab topilgan. Bu til raqamli har bir qurilmada ishlaydi va “Low level language” deb yuritiladi, ya’ni bu til “Pastki qatlam tili” deb tan olinadi.

“Pastki qatlam tili” nima degani?
Avvalo, biz qurilma qanday ishlashini bilib olishimiz kerak. Har bir raqamli qurilma kamida bitta markaziy protsessordan tashkil topadi. Bu protsessor 0 va 1’lar qatorini o’ziga qabul qiladi, ya’ni bir deganda bir nechta 0 va 1lar yig’indisi protsessor ichiga kirib boradi, natijada esa boshqa 0 va 1lar yi’gindisi chiqariladi. Qatordagi 0 va 1lar soni 2, 4, 8, 16, 32 yoki 64ta bo’ladi (64, 32bit protsessor degani ham shundan kelib chiqadi).

Bitta 64ta 0/1dan tarkib topgan qator uch xil tipda bo’ladi:
1. Buyuruq (Command — Protsessor nima qilishi kerakligi).
2. Ma’lumot (Data — Buyuruqni bajarishda ishtirok etuchi foydalanuvchi ma’lumoti).
3. Adres (Address — Natija qayerdan/qayerga yozilishi kerakligi).

Demak, protsessor keluvchi ma’lumotga nisbatan o’z ishini boshqara olar ekan. Aynan shu narsa “Eng pastki qatlam tili” deb yurutiladi, chunki aynan 64ta 0/1lar biror ma’noga egadir. Bitta 0 yoki 1 ma’noga ega bo’lmagan ma’lumot birligidir.

Assembly’mi yoki Assembler?
Endi yana ham qizig’i boshlanadi. Biz shu 64ta 0/1larni aniqlashtirib olishimiz protsessor ishlab chiqaruvchisiga bog’liqdir, ya’ni aynan Intel yoki AMD (va boshqalar) protsessorni shu aniq tartiblarni tushunadigan qilib qurilma arxitekturasini ishlab chiqaradilar. Aynan shu narsa Assembly language (o’rnatilish tili) yoki Machine Language deb ataladi, chunki u protsessor ishlab chiqarilganda, qurilmaga bog’lab chiqariladi.

Albatta, har bir 64ta 0/1ni eslab qolish mushkul ish. Shuning uchun yuqorida sanab o’tilgan kompaniyalar shu 0/1larga ekvivalent so’zlarni bog’lab chiqishadi:

10110000 01100001
MOV AL, 61h


Bu osonlashtirilgan so’zlar yig’indisi esa Assembler deb ataladi. Siz shu so’zlarni ishlatganingizda Siz so’ragan buyuruq 0 va 1lar yig’indisiga aylantirilib, protsessor tomonidan ishlatiladi.

Shining uchun ham Assembler tili — odamzod tushunishi mumkin bo’lgan eng oxirgi til hisoblanadi.

Ilm izlashdan to’xtamang!
@app_hbs
👍53🤯6🤔1
​​Click — 3 oy. Payme — 5 oy. Udevs — 8 oy.

LinkedIn vebsaytida oxirgi ikki uch oy ichida bir g’alati narsani guvohi bo’ldim. Bu narsaga oldinlari e’tibor bermas edim. Hozir bu narsa meni o’ylantirib qo’ydi.

LinkedIn — bu ish qidiruvchi va ish beruvchi orasida aloqani bog’lab beruvchi ijtimoiy tarmoqdir. Ish qidiruvchi o’z profilini o’zi egallagan bilim va ko’nikmalar bilan boyitadi. Ish beruvchi esa, agar unga ish qidiruvchining malakasi yetarli bo’lsa, shu odamni ishga olish uchun suhbatga taklif qiladi.

Ish topgan payt LinkedIn’da huddi Facebook’ga o’xshab “I’m excited to start my new job!” mavzusida post chiqarish urf bo’lib qoldi. Qolganlar esa bu postga Like qo’yib o’z tabriklarini bildirishadi.

Men e’tibor bergan narsa shunda-ki, o’zi bir ish joyiga ishga kirganiga 2 oygina bo’lgan odam, yana yangi ish joyida ish boshlaganini hammaga ovoza qiladi. Shu odam profiliga kirsangiz, uning har bir kompaniyada uzog’i 8 oy ishlaganini guvohi bo’lasiz.

Shu payt bir necha savollar paydo bo’ladi:
Bu CVni to’ldirishga harakatmi? Yoki kompaniyalar shunchalik yomonmi? Nima uchun yoshlar kompaniyalarda ko’p ishlay olishmayapti? Muammo qaysi tomonda?

Yana ham qizig’i shunda-ki, aynan shunday dasturchilar tufayli — kompaniyalar saviyali, ish ko’zini biluvchi, jonkuyar bolalarni ishga olmay qo’yishmoqda. Bu tabiiy narsa, bir dasturchi bir joyda bir yil ham o’tira olmasa, kompaniya undan keyingi dasturchiga ham ishonmay qo’ya qoladi. Axir dasturchini ishga olib ish bilan ta’minlash ham alohida katta mablag’ talab etadi. Agar hamma oz-ozdan o’tirib ketaversa, unda hech kimni olmagan yaxshi!

Shuning hisobiga ham suhbatlar murakkablashib ketdi. Shuning hisobiga ham hamma vakansiyalar “Middle kerak” degan so’zlardan boshlanadigan bo’lib qoldi, chunki Juniorga ishonch yo’q. U o’sishni xohlamadimi, kompaniyalar ham uni ishga olgisi kelmaydi. Shundan keyin ham kuchli filterlar kelib chiqaveradi.

Gaplarim oxirida bir narsani aytaman — Kompaniya rivoji, undagi Sizga bo’lgan e’tibor Sizga bog’liq narsa. Hech kim o’zidan o’zi “Mana shu bolani qiynaymiz” — demaydi. Kompaniyada uzoqroq ishlab o’zingizga yaxshi nom va tajriba yig’ishga uruning. Shundagina yaxshi oylik maosh ham, Seniorlik darajasi ham bo’ladi.

Ilm izlashdan to’xtamang!
@app_hbs
👍90👎7🤔1🤯1
O'zbekistondagi raqamli akademiyalaridan biri Najot Ta’lim markaziga dasturchi assistent ustoz kerak.

Biz kimmiz?
Biz 250 dan ortiq jamoa a'zolariga ega raqamli akademiyalaridan biri sifatida O'zbekistonda axborot texnologiyalarini o'rgatish va qayta kashf etishda muvaffaqiyat qozonyapmiz. Ayni damda Toshkent shahrida 2000 dan ortiq o’quvchi bilan birgalikda ish faoliyatimizni yurityapmiz.

Talablar:
- O'zbek tilida erkin muloqot qila olishi;
- Tajribasi: 6 oy +;
- C dasturlash tilini bilishi;
- Windows va linux tizimlari bilan ishlay olishi;
- Python dasturlash tilini bilishi;
- Database(Mysql) bo'yicha ko'nikmalarga ega bo'lishi;
- Data structure ma'lumotlarini ishlashi bo'yicha tushunchaga ega bo'lishi;
- Git va github bilan ishlay olishi;
- Darslarni qiziqarli o’ta olishi.

Bizning takliflarimiz:
- Farg'onadagi zamonaviy hi-tech ofislarida qulay ish muhiti;
- Part-time ishlash imkoniyati mavjud;
- Samimiy va ahil jamoa;
- Kuchli mutaxassislar bilan hamkasb bo'lishingiz mumkin;
- O'zingizni rivojlantirish imkoniyati;
- Texnik va yumshoq ko'nikmalar uchun bepul treninglar;
- O'zbekiston bo'ylab jamoaviy sayohatlar.

Murojaat uchun: +998 99 515 00 11;
@najottalim_recruiting
👍25
Nega aynan videokarta (GPU)?

Hech o’ylab ko’rganmisiz — nima uchun aynan blokchain texnologiyalari, mining uchun aynan videokarta ishlatiladi? Nima uchun aynan Bitcoin, Etherium paydo bo’lishi bilan videokartalar tanqisligi va o’ta qimmatlashishi hodisalari kuzatilmoqda? Keling, shu savollarga bugun javob izlab ko’ramiz.

FLOPSlar. CPUni bir chetga surib qo’ygan ko’rsatkich.

FLOPS (Floating-point operations per second) — bu biror hisoblash qurilmasining (dasturiy ta’minotdan holi holda) bir soniya ichida “nuqtali” (misol, 1.2, 45.12e10) sonlar o’rtasida amalga oshiruvchi matematik amallar soniga aytiladi. Bu holatda qurilmaning boshqa bajaradigan vazifalari hisobga olinmaydi, ya’ni xotiraga yozish/o’qish, koderlash/dekoderlash vazifalari hisobga olinmaydi.

FLOPSlarning Protsessor chastotasidan farqi — FLOPS faqat hisob-kitobning sonini o’lchasa, Chastota ko’rsatkichi bir soniyada Protsessorning umumiy bajargan vazifalar sonini ko’rsatadi.

FLOPSlar ham huddi chastotaga o’xshab mega-, giga-, terra-larda o’lchanadi. Ya’ni misol uchun hozirda eng kuchli protsessorlardan (CPU) biri sifatida AMD kompaniyasining EPYC 7H12 (Zen 2) Protsessorini keltirsa bo’ladi, va uning tezligi 4.2 TerraFLOPS (TFLOPS). Videokartalar (GPU) orasida esa misol qilib — Nvidia RTX 3090ni keltirsa bo’ladi. Uning tezligi — 36 TFLOPS.

GPU eng qudratli qurilmami?

Yuqoridagi raqamlar sizni taajublantirishi tabiiy hol. Nega hamma yerda Protsessor kuchli qurilma, kopyuterning eng asosiy qurilmasi deb gapiriladi-yu, lekin hozirgi videokartalar FLOPS tezligida bir necha barobar o’zib ketdi?

Bu yerda gap aynan tezlik o’lchashdagi uslublarga borib taqaladi. Gap shundaki, FLOPSlar qurilmaning aynan faqat hisob-kitoblar sonini belgilaydi. Chastota esa — qurilma bajarishi mumkin bo’lgan barcha ammallar sonini. Videokarta protsessorining asl vazifasi esa aynan faqat hisob-kitobdan iborat.
Kompyuter markaziy protsessori (CPU) esa juda ko’p vazifalarni amalga oshiradi. Uning qo’lida ma’lumotlar va qurilmalar boshqaruvi, ichki va tashqi tartiblarni belgilash kabi katta-katta vazifalar ham yotadi. Shuning uchun ham FLOPSlarni hisoblashga kelganda CPU o’ta sekin ishlovchi qurilmadek ko’rinadi.

Bitcoin faqat hisob-kitobni talab etadi

Videokartalar faqat hisob-kitoblarni amalga oshirilishini tushunishning o’zi Bitcoin uchun shu qurilmaning qimmatliligini belgilab beradi. Umuman olganda, Bitcoin mining (o’zbekchada — mayning) bu bir soniyada bir necha trillion hisob-kitob amallari yig’indisidir. Shuning uchun ham Bitcoin bilan ishlash maqsadida yurgan odamlar aynan videokartalar yordamida “ferma” qurishadi.

Artificial Intelligence

Yana ham qizig’i shundaki, Sun’iy ong, Neyrotizimlar ham aynan faqat matematik hisob-kitobdan iborat yo’nalishlardir. Shuning uchun AI bilan shug’ullanish niyatida bo’lgan odamga Videokartasi kuchli bo’lgan kompyuter tavsifa etiladi. Chunki Markaziy protsessor kuchiga tayanib AI yo’nalishida ish bajarish o’ta ko’p vaqt va kuch talab etishi mumkin. CPUning boshqa vazifalar bilan “chalg’ib” qolishi, uning bu yo’nalishlarda GPU oldida kuchsizligini belgilab beradi.

Ilm izlashdan to’xtamang!
@app_hbs
👍42🤯1
​​Mening o’zgaruvchim. Sening o’zgaruvching.

——
Dasturlashni o’rganayotgan bo’lsangiz, Siz o’zgaruvchilar (variables) haqida aniq o’qigansiz. Shunda ko’pchilik o’rganadigan standart o’zgaruvchi a = 5 bo’ladi. Shunda ko’pchilikda savol paydo bo’ladi:
Men o’zgaruvchimni a = 5 deb qilsam, boshqa biror dasturda ham a o’zgaruvchisi bo’lsa, kompyuter qanday qilib adashib ketmaydi?
——

Aslida ham, o’zgaruvchilar aralashib ketmasligiga kim javob beradi? Kompyuter ularni qanday ajratib oladi? Keling, shuni aniqlab olamiz.

Tarjimonlar fokusi
Birinchidan, Siz yozgan dastur tarjimon bo’lgan kompilyator yoki interpretator tomonidan kompyuter tiliga tarjima qilinganida unda a, b, c deb nomlangan o’zgaruvchilarga o’rin qolmaydi. Ya’ni dastur machine code’ga o'tkazilgan payt unda faqat protsessor va operativ xotira registrlari nomlari qoladi.

Virtual muhitlar
Ikkinchidan, har bir dastur virtual muhitda ishga tushiriladi. Ho’p, bu nima degani?

Dasturlash birinchi paydo bo’lganida o’zgaruvchilarni nomlash, ularni qat’iy tekshirib borish katta muammolarni keltirib chiqargan. Boshida har bir dasturchi e’lon qilayotgan o’zgaruvchisini shunday atashi kerak edi-ki, u butun tizim ichida unikal bo’lishi va uni qurilmaning o’zi tushuna olishi shart edi.

Lekin Virtuallash mexanizmi o’ylab topilganidan keyin hamma dasturchilar yengil nafas ola boshladilar. Texnik tomondan Virtulization — bu biror dasturiy ta’minotni alohida virtual muhitda ishga tushirishdir. Ammo bu nima degani?

Bu degani, Operatsion Tizim Sizning dasturingizni ishga tushirish vaqtida uni to’g’ridan-to’g’ri xotiraga yubormaydi. Aksincha, Tizim muhitida virtual RAM xotira, virtual CPU ishga tushiriladi va Sizning dasturingiz aynan shu virtual xotiraga yuboriladi. Bu degani Sizning dasturingiz hech qachon haqiqiy qurilma bilan ishlamaydi (istisnoli holatlar albatta bor) degani. Shuning uchun ham o’zgaruvchilar bir-biri bilan hech qachon aralashib ketmaydi, va dasturlardagi ma’lumotlar bir-biriga ta’sir qila olmaydi.

Kelgusi maqolada Virtualization haqida batafsilroq gaplashamiz.

Ilm izlashdan to’xtamang!
@app_hbs
👍38🤯4🤔1
​​Cybersecurity vs Information Security

Juda ko’pchilik Cybersecurity, ya’ni Kiberxavfsizlik nimaligini yaxshi biladi, lekin Information Security, ya’ni Ma’lumot xavfsizlik nimaligini bilmaydi. Ba’zan bu ikki tushunchalar haqida odamlar to’liq ma’lumotga ega emaslar. Keling, bugun shu mavzuni qisqacha maqolada yoritib olamiz.

Information Security
IT dunyosida xavfsizlik yo’nalishlarining eng asosiy qismi hisoblanadi.
Information Security — InfoSec — Ma’lumotlar Xavfsizligi — bu qimmatli ma’lumotlarni, qanday ko’rinishda bo’lishidan qat’iy nazar, himoyalash uslub va amallari. Qanday ko’rinishda bo’lishidan qat’iy nazar deganda biz ma’lumotlarning istalgan ko’rinishini, ya’ni raqamli, ovozli, vizual, matnli, fizik ko’rinishini nazarda tutamiz. Bu degani, InfoSec mutaxassisi kompaniyaga yoki biror mijozga tegishli bo’lgan istalgan ma’lumotni himoya qilish uslublarini qo’llashi ko’zda tutladi. Bunga xatto server kompyuterlarining binodagi himoyasini ham misol qilsa bo’ladi.

Cybersecurity
InfoSec’ning bir qismi bo’lgan Cybersecurity (Kiberxavfsizlik) esa aynan raqamli ma’lumotlarning kiber-hududda himoyasi haqida qayg’uradi.
Kiber-hudud (cyberspace) deganda kompyuter tarmoqlari orqali aloqa sodir bo'ladigan muhit tushuniladi. Bundan kelib chiqadiki, kiberxavfsizlik mutaxassisi biror kompaniya yoki mijozga tegishli ma’lumotlarni, mijozning xatti-harakatlarini tarmoqda himoya qilish choralarini.


E’tibor berayotgan bo’lsangiz, yo’nalishlar bir qaraganda bir-biriga juda o’xshaydi, lekin ularning ta’sir doirasi aniq belgilangan. Albatta, ITda xavfsizlik yo’nalishlari bu bilan to’xtab qolmaydi.

Bu ikki yo’nalishdan tashqari Network Security (Tarmoq Xavfsizligi) ham mavjuddir. Tarmoq xavfsizligi yo’nalishi o’z o’rnida Kiberxavfsizlikning bir qismi hisoblanadi.

Bitta odam qila oladimi?
Ilgari tarmoq texnologiyalari hali kuchli rivojlanmagan paytlarda Information Security’ning o’zi yetarli bo’lgan edi. Lekin vaqt o’tishi bilan, Internet tarmog’i, Cloud texnologiyalar va boshqalar juda rivojlanib, odamlarning tarmoqdagi xatti-harakatlarini himoya qilish o’ta murakkablashib ketdi. Shuning uchun ham ilgari bitta deb tan olingan InfoSec Cybersecurity yo’nalishini o’zidan ajratib chiqardi. Bu degani bir yo’nalishdagi mutaxassis, boshqasida ishlab ko’rishiga vaqti ham yetmasligi mumkin.

Albatta, bu kompaniya ma’lumotlarining qimmatliligiga, Internet tarmog’iga bog’liqlik darajasiga borib taqaladi.

O’ylaymizki, maqola manfaatli bo'ldi va asosiy savollarga javob bera oldi.

©: techdifferences (Rasm)

Ilm izlashdan to’xtamang!
@app_hbs
👍30🤔2
Forwarded from Ziyodbek's Blog (Ziyodbek Ahmadjonov)
🧭 Reja qilinayotgan ovozli chat!

Bugun kechki 21:00 da suhbatlashamiz!

Suhbat mehmoni - Alisher Kasimov:
- Tajribali dasturchi
- "Abutech" kompaniyasida Product Manager.
- "Najot Ta'lim"ning katta, tajribali ustozlaridan biri.

⌨️ Suhbat rejasi:
- Alisher Kasimov o'zi kim?
- Alisher Kasimov dasturlashga qanday kirib kelgan?
- Junior, Middle va Senior bularning farqlari nimada?
- Junior dasturchilar nega ish topa olishmayapti?
- Savol-javoblar?

⬇️ Savollaringizni izohlarda qoldiring.

Ovozli Chat uchun link quyida:
❤️ @ziyodbek_ahmadjonov
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19🤯2
Nega dasturlash zerikarli?

#shaxsiy_fikr

Ko’pincha menga yosh dasturchilar qiziqarli bitta savolni qayta-qayta berishadi — “Siz dasturlashdan zerikkan paytlaringiz bo’lganmi?”
Savol berganlarning aksariyati suhbat davomida o’zlari dasturlashni yaqinda boshlab, hozirda zerikib qolishgani haqida aytishadi. Ba’zan “ishim har doim faqat kod yozishdan iborat bo’ladimi?” deb savol ham berishadi.
Aslida ham. Nima uchun dasturlash zerikarli narsa? Keling, hozir shu savol biroz chuqurroq, o’yga tortadigan shaxsiy fikrim bilan bo’lishsam.

Biz, odamlar, o’ylab, ishlab chiqargan narsalarning hammasi zerikarli
Hech zamonda meditsina yoki, misol uchun, astronomiya, yoki biologiya bilan qiziqib ko’rganmisiz? Shu yo’nalishlardagi biror hodisa, predmetlar haqida, qayerda bo’lsa ham, maqolalar o’qib ko’rganmisiz? Qanchalik qiziqarli bu fanlar?

Oddiygina Saturn sayyorasi haqida o’qib, savollar tugamaganini, va o’qigan sari savollar ko’payib borayotganini, yana bu ham yetmaganidek, bizga nuqtadek ko’rinuvchi bir koinot jismining yana ham qiziqlashib borayotganini hech sezmaganmisiz? Bu faqat bitta sayyora edi. Yetmaganiga, “Olimlar uchun bu masala hali qorong’u” degan gaplarni o'qib, et jimirlab ketadi. Olim bo'lib, shuncha yillar izlanib hali oxiriga yeta olmagan.

Ketidan odam yuragi haqida ham biror ma’lumot o’qib ko’rsa bo’ladi. Bu yerda ham o’qigan sari sir-sinoatlar ko’pligi, lekin ularning naqadar qiziqarliligi ochilib boradi. Odam ongiga sig’mas darajada hamma narsa mukammal ekanligini his qilishi bilan odam, ilmga naqadar chanqoqligini, va aynan shu yo’nalishlarda o’z ilmini oshirish niyatida ekanini his etadi.

Shu o’rinda kishi Allohning naqadar buyuk zotligiga yana amin bo’ladi. Odamning bir kichik bandaligi, Alloh yaratgan barcha jismlar oldida ojizligi, unining shu jismlarni o’rganishga bo’lgan chanqoqligini yanda oshiradi, Allohga ishonchini kuchaytiradi.

Biz o’zimiz ishlab chiqargan kompyuter-chi? Dastrulash tillari-yu, o’zimizcha mukammal deb biluvchi sun’iy ong-chi? Ular har doim zerikarli bo’lib tuyulaveradi. Xatolar ko’p bo’ldiki, biz kompyuterni o’ylab topdik. Mukammallik kam bo’ldiki, dasturlash tillarini ko’paytirib tashladik. Lekin shunda ham ko’nglimiz taskin topa olmaydi. Sababi esa oddiy — Alloh yaratgan jismlar, atrof muhit oldida bizning o’ylab topgan narsalar sodda va zerikarlidir, mukammallikdan yiroqdir.

Bu gaplar bilan men Sizlarni dasturlashni o’rganishdan qaytarish niyatim yo’q. Aksincha, ilm izlashga, unga chegara qo’ymaslikka chaqirmoqchiman.

Zerikish paydo bo’ldimi, demak Siz dasturlashni faqat shu odamzod o’ylab topgan narsasi uchun o’rganayotgandirsiz. Bu ilm zerikarlidir, lekin uni Alloh yo’lida halol va buyuk ishlar uchun o’rgansangiz, dasturlash zerikarli bo’lmay qoladi. Uning oxiri bor, lekin yo'l oxirida Alloh yaratgan narsalarga bog'liqlik paydo bo'ladi. Va shu damdan boshlab dasturlash ham qiziqlashib boradi.

Shu haqida bo’sh vaqtingizda fikrlab ko'ring.

Ilm izlashdan to’xtamang!
@app_hbs
👍74🤔1
​​Avtobusga uyga borish uchun chiqamiz, avtobus yoqib qolganligi uchun emas

Tasavvur qiling, Siz biror joy (maktab, ish xona, mahmondorchilik, choyxona)dan uyga ketmoqdasiz. Tabiiyki, uyga yetib olish uchun Siz shahardagi o’zingizga qulay bo’lgan transportga chiqasiz. Aynan ushbu transport Sizni aniq uyga eng yaqin joyga eltib qo’yadi.

Endi o’ylab ko’ring. Avtobusga chiqishdan maqsad nima? Avtobusda yurishdan bahra olishmi? Yo’q. Yoki odamlarni tamosha qilishmi? bu ham Sizning maqsadingizga kirmasa kerak. Sizning maqsadingiz uyga yetib olishdir. Avtobus esa aynan shu maqsadga yetkazuvchi bir vosita, instrument. Aynan shu instrument orqali biz uyga tezroq yetib olishga harakat qilamiz. Albatta, piyoda ketsak ham bo’ladi, lekin, misol uchun, 10 kilometrlik yo’lni avtobusda bosib o’tish ancha qisqa vaqtni oladi. Charchab ham qolmaysiz. Maqsadingiz uyga yetib olish bo’lganligi uchun, Siz avtobusga chiqgach, undan qachon tushishni, qaysi avtobusni tanlashni va tahminan yo’lga qancha vaqt ketishini ham bilasiz.

Endi tasavvur qiling, Sizning maqsadingiz faqat avtobusga chiqish edi. Nima bo’ladi? Albatta, Siz birinchi bo’lib bekatga to’xtovchi 10 xil avtobusdan qay birini tanlashni bilmay qolasiz, chunki maqsad aniq emas-da! Hop, biror avtobusni tanladik ham deylik, unga chiqib olgandan keyin nima? Taqdirga tan berishdan boshqa iloj yo’q. U qayerga bizni olib borsa, shu yerga ketaveramiz. Shaharning biz bilmagan yerlariga borib qolsa-ku, bundan ayanchli hol bo’lmasa kerak. Ham pul behuda sarflangan, ham vaqt ketgan, yetmaganiga biz endi qaytib olishimiz ham kerak.

Bu misolni bekorga keltirganimiz yo’q. Juda ko’p yoshlar dasturlashga sohasiga kelgandan keyin har doim faqat Frontend, Backend kabi yo’nalishlarning o’zini tanlashadi. JavaScript, Java, C#, Pythonlarning faqat o’zini o’rganishni o’zlariga maqsad qilishadi. Vaqt o’tib esa, resurslar ketib bo’lganidan keyin, tanlangan narsa qiziqarsiz ekani aniq bo’lganidan keyin, “Aka, men Python o’rgangan edim, menga yoqmay qoldi. Endi nima qilsam bo’ladi?”, deb savol berishadi. Axir bu xuddi avtobusni o’zini maqsad qilib tanlagandek gap-ku.

Yana bir turdagi yoshlar esa, Python yoki JavaScriptning bozordagi o’rnini so’rab murojaat qilishadi. Axir bu instrument-ku! Uning bozorda har doim o’rni bo’ladi. Lekin bu taniqlilik texnologiyaning qiziqarli bo’lib qolishiga sababchi bo’lmaydi-ku! Dasturlash qiyin yo’nalish. Agar uni katta maqsad uchun ishlata olsangiz, shundagina uning qiziqarliligini tushunib yetasiz.

Elon Musk, Jeff Bezos, Bill Gates, Steve Jobs’lar dasturlashni C yoki Python taniqli bo’lgani uchun, yoki NodeJS “krutoy” bo’lgani uchun tanlashmagan. Ular odamlar hayotida biror katta o’zgarishlarni qilish niyatida bo’lishgan.

Agar Siz kuzatuvchanlikni oshirsangiz, ilm izlashga qiziqishni oshirsangiz, odamlar hayotida nima kamchiliklar borligini bilib olasiz. Shundagina Siz katta maqsadlar sari yo’l olasiz va Siz kelajakda tanlaydigan til yoki freymwork oddiy instrumentga aylanib, Sizning ishlaringizni hal qiladi va Sizga yaxshi daromad keltiradi. Va eng asosiysi — Siz bu texnologiyaning zerikarli emasligini tushunib yetasiz.

Ilm izlashdan to’xtamang!
@app_hbs
👍110🤯3
​​"Mohiyat menga kerak emas", yohud "ChatGPT yonimda bor, istalgan muammoyingizni hal qila olaman!"

Bir qiziq savol berishdi menga: "Nima uchun aksariyat suhbatlarda ishda odatda ishlatilmaydigan narsalar so'raladi? Nima uchun ChatGPTni yaxshi bilgan va unda ma'lumot izlay olgan odam har doim ham ish topa olmaydi? U ham muammoni yechimini tez bera oladi-ku?"

Oddiy bir misol keltiraman. Qaynoq choy damlangan choynak turibdi oldimizda. Agar yonimizda biror go'dak paydo bo'lsa, biz shu ondayoq bolani shu choynakdan uzoqlashtirishga harakat qilamiz. Nima uchun? Javob oddiy – Qaynoq suv bola tanasini kuydirib, shikast yetkazmasligi uchun. Biz buni o'z tajribamizdan o'tkazganimiz uchun, yoki eng kamida yaqinlarimizda ko'rganimiz uchun bilamiz.

Qizig'i shundaki, aynan shu qaynoq suvning tanaga salbiy ta'siri haqida ChatGPTdan ham so'rab bilsa bo'ladi. Sizdan ko'p narsa ham talab etilmaydi, savol bersangiz bo'ldi. GPT Sizga joyida kamida 10ta gapdan iborat bir matnni ko'rsatadi va unda shu zararlar haqida bayon qiladi.

Diqqat savolar: GPT buni tajribasidan kelib chiqib qildimi? U ham o'z ustiga qachondir shunday aynoq suvni to'kib yuborganmi? O'zi bayon qilayotgan narsaga u qanchalik ishonadi?

Tajriba va ilmning o'rnini hech qaysi sun'iy intellekt bosa olmaydi. Bilimi chuqur inson har bir qilayotgan ishini nima uchun qilayotganini; u qilgan ish kelajakda qanday natijalarga olib kelishini; agar u qilgan ishda muammo chiqsa qanday yechim qilish kerakligini bemalol ayta oladi.

ChatGPT ustingizga suv to'kib bo'lganingizdan keyin Sizga yordam bermaydi. U faqat o'qib berishni biladi, bayon qilishni biladi, ammo shu bayonotiga hech qachon javob bera olmaydi.

Ilm izlashdan to'xtamang!

@app_hbs
👍76🤔2🤯1
​​Dasturlash Fenomeni

Hech Sizda savol paydo bo'lganmi: Nima uchun dasturlash tillari buncha ko'p? Nima uchun avval murakkab deb sanalgan yo'nalishga hozir hamma o'tib ketmoqda? Bu aslida juda qiziq va fundamental savol. Python, JavaScript, Java, C# va hokazo. Ularning sonini o'nta odamning qo'lida ham sanab sig'dirib bo'lmaydi. Markazlar ko'p, o'rganmoqchi bo'lganlar esa undanda ko'p. Qizig'i, hamma bemalol o'rganib ketmoqda. Axir, avval bu yo'nalish haqiqatdan ham murakkab muhandislik yo'nalishi edi. Uni duch kelgan odam o'rgana olmagan. Hozir esa xatto maktab bolasi ham yarim soat "YouTube'da o'tirsa" bitta kalkulyator dasturini yozib bera oladi. Buning sababi nimada?

Tahminan 1970-yillargacha istalgan dasturiy ta'minot qirilma tilida (machine code) yozilgan. Bu til odatda ikkilik sanoq sistemasida bo'lgan. Albatta machine code'ni dasturlash tili deb ham atab bo'lmasdi. Lekin hammasi Alfred V. Aho va Jeffrey David Ullman tomonidan ishlab chiqilib, mukammalashtirilgan tarjimon dasturidan keyin o'zgargan. Ushbu tarjimon dastur – kompilyator deb ataladi.

Aynan shu kichik dastur butun dasturlash amaliyotini tubdan o'zgartirib, dasturchining kompyuter bilan bo'ladigan muloqotini yangi darajaga chiqargan yuborgan. Keling hozir aynan shu o'zgarishlar haqida gaplashsak:

1. Kompyuter qurilmasini bilish shart emas. Dasturchi kodni yozish va ishlatish vaqtida kompyuter ichki qurilmalarining qanday ishlashini bilmasligi mumkin. Dasturning xotiradagi ishlash tartibi; protsessor ichidagi amaliyotlar; ekranga ma'lumot uzatilish algoritmlari. Bularning hammasini kompilyator berkitib yuboradi. Kodni to’g’ri yozsa bo’ldi. Qurilma esa xuddi yo’qdek bo’ladi.
2. Takrorlanishlar. Dasturchi takrorlanuvchi kodni bir martagina yozib, uni for, while yoki do...while kabi operatorlar ichiga olib qo'yaveradi. Haqiqiy takrorlanish operatsiyasini kompilyator o'zi kompyuterga to'g'ri buyurib beradi.
3. Dasturni bo'laklarga bo'lish. Funksiya, protsedura kabi tushunchalar kompyuterga yot hisoblanadi, ammo uni dastur kodida dasturchi har qadamda yozadi. Kompilyator o’z o’rnida har funksiya (protsedura) chaqirilganida kerakli kodni qo’yib natijani tarjima qiladi.
4. OOP, Functional Programming. Odamzod kod oson bo’lishi uchun obyektlar dunyosini o’ylab topib, dasturlash jarayonini mantiqan tushunarli va hayotiy bo’lishiga harakat qiladi, ammo protsessor bu narsalarni umuman tushunmaydi. Unga faqat 0 va 1 berish kerak. Biz yozaveramiz, kompilyator esa hamma yozganimizni sodda bo’lgan 0 va 1ga aylantiradi.

E’tibor bergan bo’lsangiz Kompilyator juda muhim dastur ekan. Istalgan yangi til o’ylab topilishi, istalgan odamning dasturlashga kirishini osonlashishi; istalgan texnologiyaning asosini bilmay kod yozish mumkinligi aynan Kompilyatorning xizmati bilan bo’lar ekan.

Ana shu katta hodisani — Dasturlash Fenomeni deb nomlasa bo’ladi.

Ilm izlashdan to’xtamang!
@app_hbs
👍54🤯3🤔2
Hindlar oyga qo’nishdi, biz esa hali ham frontend va backend orasidan o’zimizga yoqganini tanlolmay o’tiribmiz

Qayerda xato qildik-ki, bizning e’tiborimizni sodda dunyoviy va o’tkinchi narsalar torta boshladi? Nima uchun boshqa xalqlar yil ketkazib bo'lsa ham ilmiy salohiyatni rivojlantirib katta yutuqlarga erishishmoqda-ku, lekin biz AQSh dollari va Gentraning narxi oshganini muhokama qilmoqdamiz?

Ilmiy salohiyatga erishish qiyin ish emas, aslida. Buning uchun odam kunda bir yoki ikki marotaba kitob o'qisa, izlansa bo'ldi. Axir, Alloh yaratgan bu tabiat qoninlarini o'rganish, ularning mohiyatini anglash haddan tashqari qiziqarli-ku! Bu vaqtinchalik dunyodan yaxshash maqsadimiz Gentra olib, dang'illama uy qurish emas-ku.

Sodda tushunchalar bilan cheklanmay, quyiroq qatlamda turgan ilmlarni o'rganish bizni katta murodlarga yetkazadi. Buni anglab yetish va shuning ketidan izlanish – shu emasmi maqsad?

O'sha amerikaliklar qila olgan narsani biz ham qila olamiz, Hindlar sun'iy yo'ldosh qo'ndira olgan joyga, biz ham yetib bora olamiz. Baxona qidirishni bas qilsak bo'ldi...

Ilm izlashdan to'xtamang!
@app_hbs
👍87🤔2👎1
Dasturchilikda tajribangiz bir yilmi, O'qituvchilik qilish Sizga mumkin emas!

Hozirgi davrda IT o'quv markazlar juda ko'p. Ular har xil sifatda dars beradilar, turli yo'nalishlarda ilm ulashishga harakat qilishadi. Ammo har bir markazning eng katta muammosi bu sifatli, ilmli Ustozni topa bilishdir.

Lekin e’tiborimizni bir narsa tortdi. Hali tajribasi ikki yil bo'lmagan juda ko'p yoshlar markazlarda dars berishga oshiqishadi. Bu narsa o'ta yomon natijalarga olib borishi haqida esa deyarli hech qayerda gapirilmaydi. Joriy maqolada shu mavzularni yoritishga harakat qilamiz.

Haqiqiy proyekt qanday amalga oshirilishini bilmaysiz.
Tajribasi hali yo’q, yoki kam bo’lgan odam proyekt qanday yuritilishi haqida hali yetarlicha ma’lumotga ega bo’lmaydi. O’rgatiluvchi har bir mavzu keyinchalik proyektda qayerda yordam bera olishini bilish — dars berishdagi eng muhim joy! Proyektni bajarishda kimlar ishtirok etadi, qanday vazifalar bajariladi — bularni bilish darsni mazmunli qilib o’tishga sababchi bo’ladi.

Mijoz kimligi haqida ma’lumotingiz yo’q.
Hali tajribasi kam bo’lgan odam, o’zi yozayotgan kodning mijoz qo’lida qanday ishlashi haqida ma’lumotga ega bo’lmaydi. Kod soddaligi, effektivligi, katta yuklamalarga bardoshliligi tajribasi faqat mijoz uchun real proyektda ishtirok eta olgan odamda bo’ladi. Mijozning xohishlari, uning injiqliklarini ko’rmagan odam dasturlashdagi tushunchalar qanday qilib muammolarni hal qilishini bila olmaydi.

Hayotiy tajriba o’lchamini o’quvchi o’ta tez ilg’ay oladi.
Xohlaysizmi, yo’qmi — Sizni eshitayotgan odam Sizning tajribangizni tez ilg’aydi. Buning uchun dasturchi bo’lish shart emas. Umuman tajribasi bor odam bilan tajribasiz odam fikrlashida, gapirishida va mavzuni tushuntirib berishida juda katta farq bo’ladi va bu narsani o’quvchi birinchi darsning o’zidayoq ilg’ay oladi.

Muammolar qanday hal qilinishini bilmaysiz.
Istalgan dasturiy ta’minot real hayotda ishlatilganidan keyin muammolarga duch kelishi aniq — hakerlar hujumi, katta yuklamadagi murojaatlar, dasturiy ta’minot arxitekturasi o’sishga tayyormasligi yoki noto’g’ri tuzilganligi va boshqalar. Tajribasiz odam bunday muammolarni ko’rmagan bo’ladi, ularni hal qilish bo’yicha fikrga ega bo’lmaydi. Axir, o’qituvchiga borishdan aynan maqsad shu-ku — hayotiy muammolarga yechimlarni o’rganish. Dasturlash tillarini o’qituvchisiz o’rganib olsa ham bo’ladi. Onlayn kurslar buni sifatliroq ham qila oladilar. Ammo hayotiy tajriba faqat tajribali ustozdan olinadi.

Haqiqiy mas’uliyat o’quvchi o’qishni bitirganida boshlanadi.
Endigina dars berishni boshlaganimizda, biz dars berishni mas’uliyati yuqori ish deb bilar edik, ammo bu mas’uliyat qayerda namoyon bo’lishini bilmagan ekanmiz. Uch yil dars berib bir fikr paydo bo’lgan — O’qituvchilik mas’uliyati o’quvchi o’qishni bitirib, ishini topib o’zini ko’rsatishni boshlagan kunida boshlanar ekan. Dars jarayoni bu sun’iy jarayon. Undagi masalalar sun’iy (ya’ni dars uchun o’ylab topilgan) bo’ladi. Ustozning mahorati, o’quvchiga singdirgan ilmi faqatgina shu o’quvchining haqiqiy ishida bilandi. Agar ishxonadagi odam o’quvchingiz haqida: “Shuni ham bilmaysizmi? O’qituvchingiz kim bo’lgan o’zi?”, desa, Sizning mas’uliyatsizligingiz bilinadi. Agar o’quvchingiz zarracha bo’lsa ham Siz bergan ilmga norozilik his qilsa, biling-ki, qilayotgan ishingizda halollikka e’tibor kamaygan bo’ladi. Shuning uchun ham ustozlik og’ir kasb deyiladi. Ustoz bergan ilk ilm o’quvchining professional hayotining har bir nuqtasida bilinib turadi, shuning uchun ham Ustozman degan odam yelkasiga katta yuk olgan bo’ladi.

Yakun o’rnida…
Yakun o’rnida bir narsani aytib o’tish joiz — umuman istalgan kasbda Ustozlik qilish uchun katta tajriba o’ta muhim. Shundagina ushbu kasb egalari sifatli ish qila oladilar. Dasturlashda esa ayni damda dars beraman deb yonib turgan, hali yetarlicha tajribaga ega bo’lmagan yoshlar ko’payib qoldi. Maslahatimiz: Dasturlashda yana bir necha yil tajriba yig’ing, zero Siz bergan ilm birovning kelajagini sindirib qo’ymasin!

Ilm izlashdan to’xtamang!

@app_hbs
👍83
​​“Core-ni o’rgan, ishga kirib ketasan” — deydi dono xalqimiz

“Assalomu alaykum! Men Falonchiman. Dasturlashga yaqinda kirib kelganman. Falonchi dasturlash tilini o’rganishni boshlaganimga N oy bo’lib qoldi. Lekin menga ko’pchilik ‘Core-ni o’rgan, ish topishing oson bo’ladi’ deydi. Aka, shu core qayerda?”

Rostdan ham, *core* qayerda?

Cor
e — inglizchadan yadro, mag’iz, asos, markaz degan ma’nolarda tarjima qilinadi. Albatta, uning asosiy ma’nosi markazdir, ya’ni biror narsa yoki tushunchaning eng asosiy, funksional qismi demakdir.

Ammo dasturlashga kelganda bu core-lar negadir ko’payib ketib qoladi. Protsessorda ham core bor, ba’zan esa bir nechta. Operatsion Tizimda ham core qayerdandir kelib qoladi. Dasturlash tilida ham hamma core-ni so’rayveradi. Ha, axir, bu core degani bitta bo’lishi kerak emasmidi? Xuddi yer sayyorasidagi core-ga o’xshab?

Koinotda hammasi oson! Har bir sayyora, yulduzlarda core bittadan bo’ladi. Ammo dasturlashda “o’lganning ustiga tepgan” iborasidagi kabi yosh dasturchiga kamida 10 ta core topib beriladi-da, “Hammasini bilishing kerak” deb buyruq beriladi. Qaysi birini o’rganish kerak? Qaysi biri ertaga yordam beradi? O’zi bularning bog’liqligi nimada? Buni hech kim aytmaydi.

Shu mavzuga kirish sifatida yozilgan post orqali biz yangi turkumga asos solmoqchimiz. #coremavzular degan teg orqali har bir IT-dagi katta tushunchalar core bo’limlari haqida maqolalar yozib borishga harakat qilamiz.

Albatta, bu mavzuda shu kungacha ham anchagina so’z borgan edi. Ammo tartib bo’lmagani tufaylimi, yoki boshqa sabab, u maqolalar katta qiziqish uyg’otgani yo’q.

Endi esa qat’iy tartib asosida dasturlashdagi har bir core-ga to’xtalib o’tuvchi, unda resurslar taklif qilivchi postlar turkumida suhbat yuritamiz.

Kelasi postlarda ko’rishguncha!
Ilm izlashdan to’xtamang!

@app_hbs
👍93🤔1