نوشته‌های ترمینالی
2.63K subscribers
424 photos
12 videos
32 files
2.25K links
Download Telegram
Forwarded from سحر نوشت
از بلاگ valdas.blog
👍43😢1
Forwarded from سحر نوشت
سحر نوشت
از بلاگ valdas.blog
پارادوکس خر بوریدان

این مساله فلسفی را ژان بوریدان، فيلسوف فرانسوی در قرن چهاردهم و بر اساس افسانه‌ای قدیمی مطرح کرده که در آن خری که به یک اندازه گرسنه و تشنه است به دلیل اینکه نمی‌تواند بین دو انتخاب کاملا مساوی- خوردن یونجه یا نوشیدن آب- یکی را انتخاب کند در نهايت می‌میرد.
این افسانه باعث پیدایش روش خر بوریدان شده است، که در آن با حذف گزینه‌ای که بیشترین آثار منفی را دارد تصميم نهایی گرفته می‌شود تا سرنوشتی مشابه خر بیچاره پیدا نکنید.

[…]
گرفتن تصميمات مهم بعد از بررسی همه جانبه موضوع روش خوبی در زندگی است. هرچند بسیاری از افراد می‌گذارند عذاب تصميم‌گیری بیش از حد ادامه یابد. آن‌ها مانند خر بیچاره تمامی اطلاعات مورد نیاز را دارند، اما نمی‌توانند تصميم بگیرند.

هنگام مشورت دادن به دانشجویانم در زمینه گرفتن تصمیمات بزرگ زندگی، فهمیده‌ام بعد از اینکه آن‌ها خوب مساله را بررسی کردند و درباره جنبه‌های مثبت و منفی هر گزینه با هم بحث کردیم، بهترین کار استفاده از آزمونی است که نامش را آزمون اسلحه گذاشته‌ام.

دستم را به شکل اسلحه‌ای خیالی درمی‌آورم و آن‌را روی پیشانی دانشجوی مورد نظر می‌گذارم و می‌گویم: «خیلی خوب، حالا پانزده ثانیه وقت داری که تصمیم بگیری، وگرنه ماشه را می‌کشم. یالا، بگو چه تصمیمی گرفتی؟»

آن‌ها همیشه جواب را می‌دانند! حتی اگر افراد فرایند رسیدن به جواب را کاملا طی نکرده باشند، این تمرین آن‌ها را از قید فشاری که در حین فرایند تصمیم‌گیری تحمل کرده‌اند آزاد و آن‌ها را به راه‌حلی قطعی نزدیک‌تر می‌کند.

#کتاب هنر دستیابی | برنارد راث
👍132
نمیدونم توی زبان‌های دیگه چطوریه و یا اصلا میشه یا نه
اما توی گولنگ می‌تونیم از یه پروژه‌ی واحد، چند تا binary بگیریم، مثلا یه باینری یه کاری بکنه و یه باینری دیگه یه کارهای دیگه بکنه ولی لایبرریها و باقی کد یکی باشه!

چطوری؟ اینجا بخونید.
https://ieftimov.com/posts/golang-package-multiple-binaries/
👍2
6 الگوریتم مختلف برای load balancing
https://www.youtube.com/watch?v=dBmxNsS3BGE

این ویدیو از گروه ByteByteGoئه که توی معماری سیستم و بحث system design فعالن و من دوستشون دارم. قبلا تبلیغشون رو کردم باز هم یادآوری می‌کنم اگه دوست داشتید کانالشون هم دنبال کنید.
👍5
اگر فکر می‌کنید Cpp بلد هستین و می‌تونید کد خوب بنویسید، ببینید چالش این مطلب رو می‌تونید جواب بدید یا نه.
داستان اینه که یه کد می‌نویسه و کد بهینه‌شده‌ش رو بررسی میکنه و یکم تابع رو تغییر میده.‌ آیا کد بهینه شده باز شبیه کد قبلیه‌س؟ باید دید!

https://vector-of-bool.github.io/2022/05/11/char8-memset.html
👍4
اگر برای ریدایرکت کردن ترافیک یه برنامه به یه socks proxy از proxychains استفاده می‌کنید، حتما می‌دونید که از برنامه‌های static linked مثل برنامه‌های گو پشتیبانی نمیکنه.
خب برای دانلود ماژول‌های گو چیکار کنیم؟
راه اول اینه که متغیر محلی https_proxy و http_proxy رو تنظیم کنیم و از خود گو خواهش کنیم که ترافیکش رو از اون پروکسی رد کنه. که این روش کار میکنه و خوبه.
لینک: https://stackoverflow.com/questions/10383299/how-do-i-configure-go-command-to-use-a-proxy

اما اگه بخوایم همچنان مثل proxychains یه کاری کنیم چی؟ برنامه‌ی graftcp هست که با یه روش دیگه (به جز LD_PRELOAD) کار میکنه و می‌تونه سیستم‌کال‌ها رو هم دستکاری کنه و روی برنامه‌های گو هم کار می‌کنه.

https://github.com/hmgle/graftcp
👍1
توابع پایتون امکانات خیلی خوبی داره برای پاس دادن آرگومان موقع صدا زدن تابع.
اگر پایتون رو تا حدی بلدین این شاید بتونه کدهاتون رو حرفه‌ای تر کنه.
https://realpython.com/python-kwargs-and-args/
👍41👎1
Forwarded from Amiria & Zeynab
معادل هگزادسیمال عدد ۱۰۰، دو به توان هشت، تعداد مقادیری که می‌توان در یک بایت جا داد، بیشترین توان دو که از ۳۶۵ کوچک‌تر است، یا همان ۲۵۶مین روز سال، که در سال‌های کبیسه ۱۲ سپتامبر و در سال‌های عادی ۱۳ سپتامبر است، روز برنامه‌نویس نامیده می‌شود.
روز برنامه‌نویسان روز ملی در روسیه‌ست ولی ما برنامه‌نویس‌ها برای خود مرزی تعیین نمی‌کنیم، با هر ملیتی که باشیم، از چینی تا ایرانی، از هندی تا ترکی، فرهنگ، زبان و همدلی بسیار نزدیک و بی‌همتایی داریم. این روز فرخنده رو خدمت تمامی اعضای کانال و تمام کسانی که خودشون رو جزوی از این جامعه می‌دونن تبریک می‌گم.

#note #annual
@amiria703_channel
21
اگه می‌خواید در مورد weak/strong typing بیشتر بدونید این مطلب کلا چیز خوبیه در مورد تایپ سیستم‌ها مخصوصا با تمرکز روی سی پلاس پلاس

https://vector-of-bool.github.io/2020/10/26/strong-bool.html
3
نینجا چیه؟ یه بک‌اند برای ابزارهای بیلد دیگر. جایگاش مثل makefileئه.
اگه makefile/ninja/cmake/meson براتون گیج کننده‌س و قاطی می‌کنید و یا کلا اگه دوست دارید در مورد روند بیلد بیشتر بدونید این مطلب رو خیلی پیشنهاد می‌کنم.
https://vector-of-bool.github.io/2018/12/20/build-like-ninja-1.html
👍1
Forwarded from دِرَنـــگ (Keivan Aghababaei Samani)
🔷 استبداد سنجه‌ها

اول دبیرستان که بودم در کتاب فیزیک‌مان می‌خواندیم: می‌توان با اطمینان گفت اگر ما نتوانیم شیئی را اندازه بگیریم، دربارهٔ آن چیز معنی‌داری نمی‌دانیم.

کمی اغراق‌آمیز است ولی به‌هرحال روشن است که اندازه‌گیری و سنجش عددی نقش مهمی در علم و فناوری و همین‌طور در زندگی روزمره دارد. اندازه‌گیری ابزاری برای شناخت و ارزیابی است و در طراحی، برنامه‌ریزی ومدیریت هم به‌کار می‌آید. مثل هر ابزار دیگری، از اندازه‌گیری هم می‌توان استفادهٔ نابه‌جا کرد. مسأله‌ این است که گاهی این استفادهٔ نا‌به‌جا چنان گسترده و فراگیر می‌شود که حتی شک کردن به آن هم نابخشودنی است، چه رسد به نقد آن.

 ما پیش‌رفت دانش‌آموزان را با نمره‌هایی که می‌‌گیرند می‌سنجیم. کیفیت کار معلم و مدرسه را با میانگین نمره‌های کلاس یا تعداد قبولی در دانشگاه می‌سنجیم. استادان دانشگاه با تعداد مقاله‌هایی که چاپ کرده اند یا تعداد ارجاعاتی که مقاله‌های آن‌ها گرفته است سنجیده می‌شوند.
خب، ایراد این کار چیست؟ مگر بد است که دقیق باشیم، دقیق حرف بزنیم و برای مطالعه‌ٔ میزان پیش‌رفت و برای تشویق یا تنبیه از معیارهای دقیق عددی استفاده کنیم؟

کتاب «استبداد سنجه‌ها» به همین موضوع می‌پردازد: استفادهٔ افراطی و نابه‌جا از سنجه‌ها و در واقع گرفتار شدن در بند آن‌ها. کتاب ازچهار بخش تشکیل شده است.  بخش اول کتاب به طرح بحث می‌پردازد و ویژگی‌های استفاده‌ٔ نادرست از سنجه‌ها و معیارهای عددی را برمی‌شمرد:
▪️باور به این که می‌توان و باید قضاوت انسانی را با نشان‌گرهای عددی که از داده‌های استاندارد به‌دست می‌آیند (سنجه‌ها) جایگزین کرد.
▪️باور به این که انتشار این داده‌ها (شفافیت) همیشه موجب پیش‌رفت نهادها می‌شود.
▪️باور به این که بهترین راه برای ایجاد انگیزه در سازمان‌ها یا محیط‌های کار تشویق و تنبیه افراد بر اساس معیارهای کمّی است. تشویقی که یا از نوع پول است یا از نوع رتبه.

بخش دوم کتاب به مرور زمینهٔ تاریخی و روند فراگیر شدن استفادهٔ مکانیکی از معیارهای عددی می‌پردازد و همین‌طور نقد آن‌ها از دیدگاه نظری.

 بخش سوم به چند مطالعه‌‌ٔ موردی در آمریکا اختصاص داده شده است. مدرسه‌ها، دانشگاه‌ها، نظام سلامت، پلیس و ... . از آنجا که نویسنده خود استاد دانشگاه است، فصل مربوط به دانشگاه‌ها مفصل‌تر است.

بخش چهارم، شامل نتیجه‌گیری و خلاصه‌ای از نتایج نامطلوب استفاده‌ از سنجه‌ها است. در این بخش، نویسنده فهرستی ارائه کرده است از نکاتی که برای پیش‌گیری از عوارض ناخواستهٔ معیارهای عددی باید در نظر گرفت.

هنگام استفاده از سنجه‌ها باید توجه کنیم که چه چیزی را اندازه می‌گیریم و به چه منظوری اندازه می‌گیریم. همه‌ٔ ویژگی‌های مهم قابل اندازه‌گیری نیستند. از طرفی، هرچیز اندازه‌پذیر لزوماً مهم نیست. گاهی، ازآن‌جاکه نمی‌توانیم آن‌چه را که مد نظرمان است اندازه‌گیری یا حتی به‌درستی تعریف کنیم (مثلاً بهره‌ای که دانش‌آموز از تحصیل در مدرسه می‌برد)،  به چیزهای قابل‌اندازه‌گیری بسنده می‌کنیم (مثلاً نمره و معدل).

سنجه‌ها فقط ابزاری برای ارزیابی و به‌دست آوردن اطلاعات از سامانه‌ٔ مورد مطالعه نیستند؛ روی عملکرد سامانه هم تأثیر می‌گذارند: اگر شما سنجه‌ها را برای تشویق یا تنبیه به کار ببرید، افراد به‌سرعت یاد می‌گیرند که خود را با آن‌ها تطبیق دهند. مثلاً استاد دانشگاهی که نگران ارتقا یا ترفیع یا تبدیل وضعیت‌اش است، و همه‌ٔ این‌ها با معیارهایی مانند تعداد مقاله‌ها یا ارجاعات یا نمرهٔ ارزشیابی تعیین می‌شوند، مجبور است به اهداف کوتاه مدت برای کسب امتیازهای لازم روی بیاورد. به‌همین دلیل استفاده از سنجه‌های عددی برای تشویق یا تنبیه، در این کتاب به‌شدت نکوهش شده است.  

مطالعه‌ٔ این کتاب می‌تواند برای بسیاری از تصمیم‌گیران و برنامه‌ریزان مفید باشد، به‌ویژه کسانی که آیین‌نامه تدوین می‌کنند و جدول امتیاز درست می‌کنند و مردم را به سمتی سوق می‌دهند که به‌جای استفاده از فکر و خلاقیت و استعداد خود، فقط به فکر کسب امتیازهای لازم برای جلب رضایت کارفرما باشند.

باشد تا به‌جای شمردن تعداد برگ‌های درختان و اندازه‌گیری قطر و بلندی آن‌ها کمی هم به درخت به‌عنوان «درخت» نگاه کنیم‌؛ درک مفهوم جنگل پیش‌کش.

@k1samani_channel
1👍1
در مورد اینکه TLS/SSL چطوری کار می‌کنه و بحث امنیت و certificate authority چیه، این ویدیو مختصر توضیح داده و به نطرم می‌تونه خیلی مفید باشه:

https://m.youtube.com/watch?v=T4Df5_cojAs


اگه دوست داشتید بیشتر بدونید (که من توصیه می‌کنم بدونید چون هم جذابه هم لازمه برای توسعه وب) این پلی لیست هم جالبه:
https://m.youtube.com/playlist?list=PLIFyRwBY_4bTwRX__Zn4-letrtpSj1mzY

البته کورس کامله که یکسری از ویدیوهاش در دسترس هست، اما همینا هم به نظرم خوب و کافیه.
2👍2
اگر یک مصورسازی خیلی زیبا از الگوریتم‌های لود بالانسینگ می‌خواین، این یک مطلب زیبا و با عمق مناسبه.
https://samwho.dev/load-balancing/
👍61👌1