en
Feedback
Programming ∀

Programming ∀

Open in Telegram

Ushbu kanalda IT va Dasturlashga aloqador mavzularda subyektiv fikrlarimni bayon qilaman.

Show more
1 217
Subscribers
No data24 hours
-87 days
-3530 days
Posts Archive
Bu hech qanday hate emas ! Birnecha oy oldin eshitgan gapim: — O'zbekistonda ham aynan kompyuter texnalogiyalariga oid yangiliklar bo'lyabti... Computer science fani rivojlanyabti. Aynan qayerda va kimlar ? Aynan localda shunday izlanishlar qilayotgan insonlar bormi ? Qanday topsak bo'ladi ? Aynan AI/ML emas balki boshqa yo'nalishlarda ham. Ularga bog'lanish uchun email yoki boshqa ko'rinishdagi contactlar bo'lsa.

Uzb Hackatonlarda yutgan loyihalarni birortasi xozir productionda ishlayabtimi ? Man bilganim 2019-2020 yillardan buyon hackatonlar o’tkazilayabti

Qaysi biridan maqola zakaz qilasizlar ?
Anonymous voting

Negadir, stackholderlar va bazi top managerlar gapirganida uyqilarim kelib ketadi…

2021-22 yili g’alati odatim bor edi. Negadur errorlar, loglar ni o’zimcha analiz qilib o’tirar edim. Boshida o’zim ishlayotgan, support qilayotgan loyihalarni qilardim. Kegin umumiy hajmi 300 gb bo’lgan loglar datasetini topganman 😃 Hullas idea shu edi. Loyiha sifatini aniq raqamlarda yoki qamdaydur o’lchovda o’lchash. Umrim bekorga ketmadi debugging mavzusida katta boost bergan bu mavzular. Lekin loyihani o’xshata olmadim. Bu mavzuda qilingan izlanishlar va research paperlar oldida Man qilgan hulosalarim hello world edi 🥲 Negadur muammoni AI diagnost qilishini doyim hohlayveraman…

Bazi holatlarda clientlar tomonidan aynan qandaydur requestlar notogri ketadi. Ayniqsa HTTP headerlar kabi narsalar. Shunday
Bazi holatlarda clientlar tomonidan aynan qandaydur requestlar notogri ketadi. Ayniqsa HTTP headerlar kabi narsalar. Shunday holatlarda sizda api ishlayotgan yoki yo'qligini tekshirmoqchi getway levelda ham debug qilsangiz bo'ladi. Yani vaqtinchalik HTTP bodyni biror filega yozasiz. Shunda difflarni solishtirish mumkin.

Texnologiya tajribasi... Bazi joylarda qulog'imizga chalingan gaplar. Falon texnalogiya, til falon narsa uchun zo'r yoki yaxshi yoki mos keladi... Ushbu gapni bilib tushunib aytgan insonlarning ko'plaridan deyarli o'xshash fikrlarni eshitgan edim. Yaqin 1 yil ichida esa o'zim guvoh bo'ldim. Asosiy fikr aynan biror texnalogiyaning biror yo'nalishdagi tajribasiga qaratilgan. Masalan Enterprise desa asosan Java yoki C# haqida gapirishadi aynan tillardan yoki yana qandaydur classic texnalogiyalar. Lekin nega ? Asosiy sabab rosdan ham shu texnalogiyalardagi yechimlar, integratsiyalar, muhit aynan biror yo'nalish qo'ygan talablarni ko'proq qondira oladi va shu o'rinda ancha ko'proq foyda keltiradi biznes nuqtai nazaridan. Oddiy misol Nodejsda vaziyat taqazosi bilan multi threaded app yozishga to'g'ri keldi. Ammo bazi toolar aynan thread safe emas ekan... Eng qizig'i sys levelda Nodejs ham thread uchun systemcall qiladi yani haqiqiy thread yasaydi huddi C++ kabi. Buni esa libuv qilib beradi shu sababdan ham thread system thread. Ammo nodejsdagi bu imkoniyatni bazi toolinglar sababdan ishlata olmaslik esa ko'p energiya sarflashga tog'ri keladi. Yuqoridagi fikrlarda hechnimani versus qilingani yo'q. Maqsad aynan nima nima uchun ekanini biroz yortish va analiz qilish. Shu o'rinda bazi narsalarni imkoni bo'lmasa ham ishlatolmaslik haqida...

Texnologiya tajribasi... Bazi joylarda qulog'imizga chalingan gaplar. Falon texnalogiya, til falon narsa uchun zo'r yoki yaxshi yoki mos keladi... Ushbu gapni bilib tushunib aytgan insonlarning ko'plaridan deyarli o'xshash fikrlarni eshitgan edim. Yaqin 1 yil ichida esa o'zim guvoh bo'ldim. Asosiy fikr aynan biror texnalogiyaning biror yo'nalishdagi tajribasiga qaratilgan. Masalan Enterprise desa asosan Java yoki C# haqida gapirishadi aynan tillardan yoki yana qandaydur classic texnalogiyalar. Lekin nega ? Asosiy sabab rosdan ham shu texnalogiyalardagi yechimlar, integratsiyalar, muhit aynan biror yo'nalish qo'ygan talablarni ko'proq qondira oladi va shu o'rinda ancha ko'proq foyda keltiradi biznes nuqtai nazaridan. Oddiy misol Nodejsda vaziyat taqazosi bilan multi threaded app yozishga to'g'ri keldi. Ammo bazi toolar aynan thread safe emas ekan... Eng qizig'i sys levelda Nodejs ham thread uchun systemcall qiladi yani haqiqiy thread yasaydi huddi C++ kabi. Buni esa libuv qilib beradi shu sababdan ham thread system thread. Ammo nodejsdagi bu imkoniyatni bazi toolinglar sababdan ishlata olmaslik esa ko'p energiya sarflashga tog'ri keladi

Ishxonada distance. Bilmayman aynan bizni jamiyatda distance masalasida qandaydur muammolarni kuzataman. Mani holatimda faqatgina xamkasblarim bilan salomlashaman yoki birga tushlik qilaman bazilar bilan yaqin do'stman. Hamma bilan emas. 1. Odam ajratish emas. 2. Bizni bog'lab turuvchi aniq narslar mavjud. 3. Foydali networking. Dostlik munosabatlar vaxakazolar maslasida fikrlarim yo'q. Ammo o'ylaymanki hamma bilan ma'lum distansiya bo'lgani afzal. Bazi xamkasbolar bilan ancha yaqinman va hurmatim cheksiz. Bazilar bilan oldin ishlagan bo'lsam ham xozirgacha salom alik bor yoki aka ukadak yaqinman. Ammo masala boshqa. Distance sabab ish jarayonida boshqa muammolar chiqishi mumkin tanish bilishchilik deganlariday. Ba'zida yoshi kattaroq hamkasblar xamkasbiga emas ukasiga muomila qilganday bo'ladi aynan ish paytida. Bu unchalik yaxshi emas aynan uka deb gapirishi emas balki ish va shaxsiy munosabatlarni aralashtirishi. Ha odamiylik bir biriga yordam berish qo'llash albatta muhim bu narsaga doyim qo'shilaman. Ammo imkon qadar og'irligini birovga tushurmaslikga odat qilish afzal. Distance aynan shu masalada kerak. Shunda kattalar hurmatda kichiklar izzatda bo'ladi degan fikrdaman va shu o'rinda birovni mensimaslik kabi narsalar bo'lmaydi. Ha Manam bazi hamkasb ukalarga qaltisroq xazillar qilib qo'yaman bazida. Ammo aynan gap ish xaqida ketayotganda contextda shaxsiy masalalar bo'lmagani afzal...

Nega bizni qadryatlarimiz... Deb gapiradigan o'quv markazlar oddiy shunday narsalar haqida o'quvchilariga tushuntirmaydi. Qayerdanam bu softskillar mavzusi miyyamga kelib fikrlar to'xtamayabti endi :)

Ha aytgancha yuqoridagi narsalar management emas. Balki bizning kasbga kerali narsalar xisoblanadi. Masalan aniq fanlar aniq dalillarga tayanadi. Ratsionalismni yuqoriligi shu sababdan. Yana bir sabab esa texnik narsalarni o'rganish ko'pincha unchalik qiyin emas shunchaki vaqt va ko'p mexnatni talab qiladi. Soft skillar ustida ishlash esa doyim actual bo'lib qoladi ayniqsa bizni regionda. Maslan oddiy ishxonada distance masalasi. Bazilar offisga kelganida hamma bilan birma bir salomlashib chiqadi. Masalan Manga azalan bu narsa yoqmagan. 20-30 minut vaqt ham ketib qoladi. Shuni o'rniga shunchaki jamoatga salom berish kerak deb o'ylayman. Siz o'zingizni vaqtingizni ketkazib yana boshqa xamkabingizni diqqatini bo'lishinigiz mumkin. Bazida ishlayotganimda yonimga kelishsa ingore qilaman. Bu kibrdan yoki boshqa narsadan emas balki xozir diqqatim buzulsa yana N vaqtim diqqatni jamlashga ketadi... Buning sababi introvertlik ham emas Man salomlashishni yoqtiraman va muhim deb xisoblayman ! Ammo vaqti paytiga va xolatga qarab turli o'z prinsplarimga mos keladiganlarini afzal ko'raman.

Yana bir qiziq holat yuqoridagi holat juda ko'p holatlarda asosan hali kamroq tajribaga ega hamkasblarda uchratiladi. Tajribaliroqlarda esa eshitish o'rniga ignore qilish holatlari kuzatiladi. Bu asosan kibrdan emas shunchaki ular bazida siz hohlayotgan narsani tushunmaydilar. Xazil emas :) Buyoqda asosiy ikki narsa bor. 1-Siz muhim narsa haqida aytyabsiz ammo uni yetkazib tushuntirib berolmadingiz. 2-Siz judayam oddiy narsa haqida gapirdingiz. Yechim: Dalillar, argumentlar. Juda oddiyroq. Mavzu bo'yicha research qiling aniq dalillarni reference qilib keltiring siz ko'rgan foydalar va zararlarni keltiring. Share qiling. Tajribali professionallar bunday narsalarni darxol tushunishadi va etibor qilishadi. Agar shunda ham tushunishmaydigan bo'lsa rezultatga ishlaysiz. Aytganiday qiling va ohirida dalillaringizni yana beradi. Ya'ni boshida ogohlantiringiz birnecha bora ammo foydasi bo'lmadi. Natija esa yaxshi bo'lmadi ohirida siz oldin shu masalani aytganingizni chiroyli qilib tiqishtirasiz va masala hal.

Eshitishni o'rganing... Juda ko'p holatlarda kuzatamanki ko'pchilik xamkasblarda tinglash bilan jiddiy muammolar bor. Aytaylik biror kim sizni yoningizda qandaydur muammo yoki savol bilan keldi. Avval eshiting ! Ko'pchilik gapni ohirigacha eshitmasdan mag'izini chaqmasdan darxol qandaydur xarakatga kirishadi yoki gap boshlaydi. Ochigini aytsam shu narsa juda hunuk va unaqa odamlarni vaqti kelsa hechkim mensimaydi. Maslan backendchi sifatida juda ko'p frontendchilar bilan ishlaganman. Bazida siz bilan ishlayotgan frontendchi juda tajribasiz bo'ladi. Aynan o'zini gapini o'tkazishni hohlaydi. Yoki muammoni aynan backenda ekanini yoki bo'lmasam umuman undan boshqa tomonda ekanini isbotlamoqchi bo'ladi. Hurmatli hamkasblar bunday harakatlar faqatinga sizni axvolingizni og'irlashtiradi va reputatsiyasngizga katta tasir qiladi. Shunday holatlarda maksimal darajda sovuqqon bo'lib xarakat qilish kerak. Muammo sizda ekanini isbotlashingiz yoki o'zingizni oqlashingiz yechim emas muammo yechilmaydi. Muammoni birgalikda yechish kerak. Buning uchun esa barcha tomonlarni eshitish keyin o'z fikrini va bilgan narsalarini ulashish kerak. Shu holatda biror muammoni hal etish osonroq. Bazida xamkasblar tomonidan juda radikal fikrlar va reaksiyalar kuzatiladi. Maqsad yumshoqlik, bag'rikenglik kabi narsalar emas. Maqsad muammoni hal etishda ratsionallik va professional yondoshuv bilan hal etish. Shaxsan o'zimda bazida hazil bazida chin bo'lsa ham radikal qoralovlar bo'ladi. Biror narsani ochiqchasiga trash deyman yoki qoralayman. Ammo bu fikrlarni aytishdan oldin eshitaman yaxshilab. Shu o'rinda muomila madaniyati juda muhim hechkim sizning kayfiyatingiz qanaqa ekan yoki holatingiz qanaqa ekan deb qiziqishga majbur emas. Siz bilan birga ishlaydiganlar ish xaqida sizdan so'raydi. Shaxsiy hayotingiz va shaxsiy masalalaringiz esa ishdan tashqaridagi narsalar. Shu sababdan eshitishingiz va muammoni hal etishida o'z hissangizni qo'shishingiz shart !

Sen margeni kutasan, lekin conflictlar chiqaveradi 😑
Sen margeni kutasan, lekin conflictlar chiqaveradi 😑

Mobodo ishxonalarda o'zini katta oladiganlarni kelajagida shunday hodisa bo'lishi mumkin. Shu sababdan muomila madaniyati va professionalism ustida ishlash kerak faqat code yozavermasdan. PS: Man musorbakga tushmaganman va tashlamaganman ham... Tarixdan qilgan hulosalarimni yozdimda...

Repost from Aleph Nought
Yordamingiz kerak! Dasturchi kod yoza olgani bilan creative fikrlash yoki critical thinking kuchli bo'lmasligi mumkin. Shaxsan o'zim musiqa ham yoza olaman, ammo uni avval qayerdadir eshitgan bo'lishim kerak)) Xullas 3 kundan keyin xakatonda qatnashaman. 4-kuni loyihani topshirishim kerak. Sizga xakaton shartlarini qoldiraman, vaqtingiz bo'lsa o'qib ko'rib, izohlarda biror ideangizni qoldirsangiz hursand bo'lardim) O'zim o'yin o'ynamaganim uchun, o'yinga senariy o'ylash qiyinlik qilayapti. Shartlarni original matnda qoldiraman. Ammo Google translate qilishingiz mumkin) SUMMARY We are only just beginning to consider long-term habitation on the Moon and Mars, but what would be required in the distant future for successful exploration of even more remote planets or the icy moons of the gas giants, such as Saturn’s moon Titan? Your challenge is to create an educational game (digital or analog) that poses these challenges, explores potential solutions, and inspires new generations of space explorers. BACKGROUND Our current plans to explore the solar system include potential long-term habitation on the Moon and Mars, but what might we do in a thousand years? Could humankind venture farther away from the Sun to explore other planets or icy moons of the gas giants, such as Saturn’s moon Titan? What would be required to ensure successful human exploration of such destinations? What technology, logistics, and preparation would be needed, and above all—how would we deal with changes in gravity, harmful atmospheres, and lack of sunlight? What would habitats on these distant destinations in the solar system look and feel like for those who live there? Long-distance human space exploration and human habitation far from Earth will involve coping with numerous challenges including microgravity during flight and hypergravity during launch and landing, health risks caused by increased radiation, emotional effects associated with being far from Earth, disrupted sleep and circadian rhythms, limited supplies and access to medical care, long-distance communication delays, accessibility issues, and many, many more. OBJECTIVES Your challenge is to create an educational game (either digital or analog) focusing on human exploration and habitation of a planet or icy moon in the solar system about 1000 years in the future. How can your game address the challenges and adventures that future space explorers may experience? The target audience for your game may range from kindergarteners to adults. The main goals of your game may be to excite players about human space exploration, educate them about the very long-term planning that is required, and interest them in learning more about both mission design and the effects of spaceflight on the human body. POTENTIAL CONSIDERATIONS When developing your game, you may (but are not required to) consider the following: Although this challenge is titled, “Titan City, 3023” you may design a game that takes place on another icy moon or planet in the solar system or even outside the solar system. As long as you explain your choices, your imagination is the limit! You can develop any type of game. Your game may be played by a single player, multiple players in competition, or a team working together. You may extrapolate the risks on Titan from what is known about the risks for lunar and Mars exploration and the conditions on Titan (see Example Resources). If you choose to develop a digital game, consider making your submission a web application to ensure it is accessible to a worldwide audience.

Tanenbaun kitobini o'qiganimda aynan shu masalaga Mandayam hayrat bo'lgan edi. Yuqorida yozilganiday Unix falsafasi bo'yicha Eng birinchi bitta proccess ishga tushadi bu eng root deamon process (systemd). Keyin qolgan processlar shuni asosida yasaladi. Shunday g'alatiroq mexanism :) Process forkingda copy-on-write process bo'ladi :) Keling ushbu jarayoni analiz qilib ko'ramiz. Eng birinchi navbatda har bir process uchun muhim narsa bu memory xisoblanadi. Linux memory layout ni buyoqda eng muhim masala va savolning asosiy javobi deb bilaman :) Nega ? Sababi copy-on-write uslubida memory share qilish oson. Bu orqali parent process o'zidagi memoryni share qiladi (heap va stack, static memory, etc). Ammo fokrdan keyin parent va child processdagi memory alohida alohida joylarda bo'ladi. Fork jarayonidan keyin keyingi syscall amalga oshiriladi bu albatta exec buyoqda Text va data segmentlar load bo'ladi yani dasturni load bo'lish jarayoni. Keyingi jarayonlarda esa yana boshqa memory layerlar qayta yoziladi :) exec yangi process yasamaydi balki eski Identifikatorlarni saqlagan holatda process body, data, va yana boshqa qismlarni o'zgartiradi. Shu orqali xozirgi process yangi processga aylanadi. Yuqoridagi jarayon va memoryni qaytdan yozish share qilish amaliyotlari rostdan ham qimmatga tushayotganday tuyuladi. Ammo buyoqda ajoyib bir yechim qilingan. Fork amaliyoti bajrarilganida virtual memorydan joy beriladi. Bu orqali yuqoridagi parent va child process orasidagi memorylarni alohida qilish uchun imkon beradi. Bu jarayon oqibatida shared virtual memoryga read bo'lganida physical memory mapping bo'ladi kenrel tomondan. Parent va child processlar shared memoryda biror o'zgarish qilganlarida. O'zlarining alohida memory spaceda qilaveradilar va physical memoryga o'zgarishlar haqida ogohlantirish boraveradi. Bunday replication based amaliyot physical memoryda bo'ladigan ko'p amaliyotlarni kamaytiradi. Process yasalalishi amaliyotini arzonlashtiradi va tezlashtiradi shu sababdan ushbu amaliyot ancha foydali bo'ladi ayniqsa bazi kattaroq data ustidagi amaliyotlar haqida gap ketsa... Hulosam: — Fork amaliyoti process yashash jarayonida ko'proq vaqt tejaydi. — Parent tomonidan childlarni boshqarish imkoniyati mavjud bo'ladi. Masalan parent process child processndagi `stdout`ga access oladi. — App layerda ham ancha usefull imkoniyatlarni ochadi. Maslan asosiy dastur root da run bo'ladi. Ammo child processlarni non root userda ishga tushuradi bu securityga ham katta imkoniyat ochadi ayniqsa biror network applicationlar misolda. — Child process bazida memorydagi barcha qatlamlarni qayta yozadi. Agar child process exec qilsa u qaytadan datani ustiga yozadi :) — Parentdan meros bo'lib o'tgan data child processga umuman kerak bo'lmasligi mumkin :) — Agar parent processlar juda ko'p physical memory egallasa child processlarga(bolajonlarga) memory yetmasligi mumkin :) Eng ohirgi alamli narsa memory yetmay qolishi mumkin 😁 Processlar ko'payganida child processlar hadeb memory pagelarga nimadurlar yozaversa va memory kattalashib borsa yoki hadeb child processlar yasalaversa memory yetmay qolishi mumkin :)