Otabek’s I/O – Telegram
Otabek’s I/O
1.92K subscribers
66 photos
4 videos
92 links
I write about Backend, Infrastructure, Math, ML/AI, and Computer Science.

The views are my own and do not represent my employer.
Download Telegram
Channel created
Tasodifiy raqamlar o'zi tasodifiymi?

Bu mavzuda anchadan beri post yozishni reja qilgandim.

Random moduli qanday ishlashini tushunib olish uchun postni albatta o'qing.

Ha like bosib qo'ying shuncha yozganimizga endi birdona 🙂

@otabekswe
👍15🔥4
Salom, meni ismim Otabek. Ushbu telegram kanalda dasturlash bo'yicha bilganlarimni bo'lishib boraman.

Kecha bir ajoyib ish bo'ldi. Dasturchilar musoboqasida 1-o’rinni egallagan dasturchi, uydagilariga 2-o’rinni oldim deb keldi.

Qanday qayg’uli holat 🤧

@otabekswe
🤣19👍2
Dasturlashdagi atamalar jaydaricha tushunchalarda...

🔸 Algoritm - qandaydir murakkab narsa emas balkim biror muammoni hal qilish uchun tuziladigan harakatlar ketma-ketligi.

Misol uchun choy damlash algoritmi:
1. Gazga choy qo'yish va uni qaynashini kutish
2. Choynakga ozgina choy solish va ustidan qaynagan suvni quyish
3. Choy dam yeyishini biroz kutish


🔸 Funksiya - Biror bir qurilma deb olsak bo'ladi. Uni yoqmagunigizcha ishga tushmaydi. Funksiyalarni har qanday texnikaga o'xshatsa bo’ladi misol uchun blender, uni ichiga nimadir solasiz va u sizga unga ishlov berib nimadir qaytaradi.

Dasturlashdagi funksiyalarga ham qiymat berasiz ular esa sizni qiymatingizni ustida amallar bajarib sizga qaytaradi


🔸 Argument - Funksiyaga beriladigan qiymatlarni biz argument deb ataymiz. Jaydarichasiga aytsak blenderga meva solamizku, xuddi anashu mevani o'zi argument.


🔸 Binary - Binar raqamlar bu 0 va 1 dan iborat bo'lgan ikkilik sanoq tizmi. Jaydarichasiga aytganda ularni xisoblash uchun 0 va 1 dan foydalaniladi.

Biz oddiy raqamlarni xisoblash uchun 10 lik sanoq tizimidan foydalanamiz ammo kompyuterlar 2 lik sanoq tizimidan foydalanadi. Misol uchun:

10 lik sanoq tizimini xisoblash: 123 -> (1 * 100) + (2 * 10) + (3* 1)

2 lik sanoq tizimini xisoblash: 1101 -> (1 * 8) + (1 * 4) + (0 * 2) + (1 * 1)


🔸 Programming Language - Dasturlash tili bu oddiy qurol deb atasak bo'ladi. Dasturchi uchun qaysi quroldan foydalanish emas balkim qaysi quroldan qayerda to'g'ri foydalanishni bilish muhimroq.


🔸 Loop - Aylana jaydarichasiga aytganda biror ishni qayta-qayta qilish yohud chaynalib qolgan diskga o'xshab bir so'zni bir necha marta qaytaraverish.


🔸 Variable - O'zgaruvchi yohud ma'lumotlarni saqlab qolish uchun ishlatiladigan so'zlar. Misol uchun kontaktingizga dadangizni raqamini dadam deb saqlab qo'yasizku xuddi o'shani o'zi. Qachonki dadam degan yozuvni ustiga bossangiz u dadam degan yozuvga emas, balkim dadangizning raqami +9989.... ga telefon qiladi.


🔸 Problem - Muammo ya'ni matematikadagi masala deb atasak bo'ladi. Misol uchun matematikada biror masalani ishlaysizku, dasturlashda ham kimnidir muammosini ishlab hal qilib berishingiz kerak bo'ladi.


🔸 API - Restorandagi menuga o'xshaydi. Tasavvur qiling siz ochsiz va nimadir buyurtma bermoqchisiz. Siz restoranga borasiz, menuga qaraysiz va menudan ovqatni tanlashni boshlaysiz. Tanlaganingizdan so'ng ofitsiantga o'sha taomni aytasiz, u esa oshxonaga siz hohlagan taomni tayyorlab berishlarini aytadi. Va ular taomni tayyorlab ofitsiant orqali berib yuborishadi sizga.

API (Application Programming Interface) huddi shunday siz va dastur yoki dastur va dasturni aloqa qilishiga imkoniyat yaratadi.

Qisqa qilib aytganda, API turli xil dasturiy ta'minot dasturlari uchun bir-biri bilan muloqot qilish va ma'lumot almashish usuli, xuddi siz restoranda taom buyurtma qilish uchun menyudan foydalanganingiz kabi.

Hozircha shular ....

@otabekswe
🔥11👍31
Telegramga contribute qilibman rahmatnoma yozibdi qo’y desam ham.

😌 katta dasturlarda ismimiz ko’rinib qolar bir kun mayli…

@otabekswe
🫡10🔥51🏆1
Men No code dasturchiman

Zo’rku, biz ham No money buyurtmachimiz.

😐🤧
🤣22
#Question
🏴󠁧󠁢󠁥󠁮󠁧󠁿
How did they program a programming language to program a program to programs?

🇺🇿
Qanday qilib ular dasturlarga dasturni dasturlaydigan dasturlash tillarini dasturlashgan?

Javobilarni comment section da qoldiriylar

@otabekswe
🔥1
Emotional damage 😂
🤣20
Hamma dasturchilarni oylik olishga shunday ketasa kerak deb o’ylaydi menimcha 🥲

@otabekswe
🤣27
Amazonga topshirgan paytim recruiterlar men tahminan shunday ko’rishgan.

P.S: Amazonga Internshipga topshirganman

@otabekswe
😁4👍32
Qaysi dasturlash tili zo'r?

Bu savolni eshitsam kulgim keladi, sababi juda oddiy. Bu savolni yo o'ylamay berishadi yoki o'ylay olmaganlari uchun berishadi.

Javobim: Usta xonada qurollar juda ko'p. Hammasini o'z o'rni va joyi bor ishlatish uchun. Hech biri, hech biridan na ustun emas na a'lo.

Keling bu savolni berishni to'xtataylik. Sizga dasturlash tili emas tajriba muhim bo'lsin.

Hozirgi kungacha men shaxsan C, Java, Go, Swift, Python, JavaScript, yaml, TypeScript kabi dasturlash tillaridan foydalanganman. Har birini o'z o'rni va joyi bor.

Hech biri, hech biridan ustun emas. Python AI, Data bo'yicha qolganlaridan biroz yaxshiroq ammo eng zo'ri emas.

Swift Apple ecosystem uchun qolganlaridan yaxshiroq ammo eng zo'ri emas.

Ko'rib turibsizki har taraflama zo'ri mavjud emas.

Ustaga qaysi qurolni ishlatish emas, qaysi quroldan qanday muammoni hal qila olish muhim.

Muammoni hal qilish esa odatda tajribadan kelib chiqadi.

O'sha eski vasiyatni davom etaman: Problem solvingni kuchaytiring

@otabekswe
🔥7👍2👨‍💻21
Abstraction - Abstraksiya

Abstraksiya – Computer Sciencedagi bir tushuncha bo‘lib, asosiy e’tiborni eng muhim detallarga qaratish va keraksiz detallarni yashirish orqali murakkab tizimlarni soddalashtirish imkonini beruvchi konsept desak bo'ladi.

Buni xaritaga o'xshatsak bo'ladi. Xarita sizga joylashuvning muhim xususiyatlari (masalan, yo'llar, binolar va diqqatga sazovor joylar)ni ko'rsatadi, lekin u sizga barcha tafsilotlarni ko'rsatmaydi (masalan, uylarning ranglari yoki derazalar soni).

Xarita real hayotdagi abstraktsiyasidir va u sizga faqat bilishingiz kerak bo'lgan narsalarni ko'rsatadi.

Dasturlashda abstraksiya murakkab tizimlarning soddalashtirilgan modellarini yaratish uchun qo'llaniladigan tushuncha. Shuning uchun u bilan ishlash oson bo'ladi.

Dasturlashda funksiyalarni yaratishdan maqsadlardan biri aynan abstraction xisoblanadi.

Masalan: Pultli moshina sotib oldingiz va uning pultida 4 ta tugmacha bor ekan ⬆️⬇️⬅️➡️.

Biz ⬆️ ni bosganimizda moshina oldinga yurayabdi. Bizga ⬆️ bosganimizdagi ichkarida yuz beradigan jarayon muhim emas, moshinani yurishi muhim. Aynan shu narsani abstraction deb olsak bo'ladi.

Bu yerda ⬆️ bosilganda up() degan funksiya ishga tushishi mumkin. Ammo aytganimdek bizga uning qanday ishlashi emas moshinani yurishi muhim.

Abstraktsiya dasturlashda kuchli vosita deb bilaman. Chunki u sizga, u bilan ishlashni, tushunishni va to'g'irlashni osonlashtirish imkonini beradi.

Agar postni foydali deb topsangiz share qilishni unutmang.

Keyingi epizodda ko’rishguncha poka-poka!

@otabekswe
🔥11👍3
Roses are red
Violets are blue
Always test your code
Before it tests you

😌 Do it

@otabekswe
🤣10
DSA.UZ

🎉 Va nihoyat biz kutgan kun keldi. Data Structure and Algorithms mavzusidagi o'sha ajoyib va qiziqarli qo'llanmaga start berildi.

Darsliklar har hafta Juma kuni soat 12:00da chiqadi.

Contribute qilmoqchi bo'lganlarga doim pull request eshiklarimiz ochiq.

Xato kamchiliklarni to'ldirib borishga harakat qilamiz. Agar xato topsangiz Issues bo'limida New Issue ochishni unutmang!

Sizdan bitta Star bizdan tinimsiz ajoyib darsliklar 😉

@otabekswe
🔥12👍2