نوشته‌های ترمینالی
2.62K subscribers
424 photos
12 videos
32 files
2.25K links
Download Telegram
Forwarded from Impure Pics
😁1😢1
می‌دونستید ممکنه یه دقیقه‌ای ۶۱ ثانیه باشه؟

به این ترتیب:
When do leap seconds occur?

Leap seconds have always occurred at the end of December or the end of June, on the last second of the UTC day. The designation of the sequence of seconds is:

23h 59m 59s
23h 59m 60s
00h 00m 00s (the beginning of the following date)


https://www.nist.gov/pml/time-and-frequency-division/leap-seconds-faqs
👍7
چرا alpine به عنوان base image برای داکر بد است؟

یک مطلب برای مقایسه‌ی base image های مختلفی که می‌تونید استفاده کنید.
https://medium.com/inside-sumup/stop-using-alpine-docker-images-fbf122c63010
🔥1💔1
ارسالی:
یک ویدیو جالب درباره ماشین مجازی erlang به اسم BEAM که Elixir هم روی همونه.
https://youtu.be/5SbWapbXhKo
🔥2
معرفی ابزار:
یک سایت مثل isup.me که اون سرور رو از نقاط مختلف جهان پینگ میکنه
tcp.ping.pe
👍3
Forwarded from HICTE Blog (smm)
This media is not supported in your browser
VIEW IN TELEGRAM
Blanket: Improve focus and increase your productivity by listening to different sounds.
یه اپ ساده با صداهای دلنشین برای تمرکز بهتر.
نصب در آرچ:
# pacman -S blanket

♦️ Group: @hictegroup 💬♦️
♦️ Channel: @hicteblog 💻♦️
👍3🔥1🎉1🍓1
Forwarded from Agora (Alireza)
یه وقتایی دوستام که توی کانالن ازم میپرسن که اصلا چطور میشه یهو از فلان مطلب میپری روی یک چیزی که ظاهرا بی‌ربطه. مثلا دیشب از محمدعلی فروغی رسیدم به بنیان‌گذار انتشارات امیرکبیر، عبدالرحیم جعفری.

ماجرا از این قراره که من هروقت میخوام راجع چیزی بخونم DFS میزنم. وقتی توی مطلبی‌ به ارجاعی برمیخورم اون node رو expand میکنم و شروع میکنم به خوندن اون صفحه و قص علی هذا. متاسفانه خیلی وقت ها اینقدر درخت عمیقه که زمان اجازه نمیده همه نود ها رو ببینم و یه جا اون وسطا میخوابم :)) تازه این‌ها منوط بر اینه که من به maximum heap size نرسم :)

خلاصه اگر مثل من از این عادت های زشت دارید، توصیه میکنم BFS رو امتحان کنید. حداقل هرچی میخونین ناقص نمیمونه.
👍4😁4
یک کتاب‌خانه‌ی گو که کمک می‌کنه structured concurrency داشته باشیم و کدهای موازی خواناتری بزنیم:
https://github.com/sourcegraph/conc


ایده کلی هم اینه که برای خودمون go routine پرتاب نکنیم، چون مشخص نیست این روتینه که تموم میشه کارش و اگه ارور بده چی؟
بلکه حتما بیایم هر روتین رو عضوی از یک wait group کنیم و اینطوری برای trace و فهمیدن برنامه کار راحت تری داریم.
👍5
#توصیه‌ها
حتما سعی کنید برای برنامه‌نویسی جای نشستن‌تون مناسب و راحت باشه.
به چند تا دلیل:
+ تعمیر «کمر» اصلا آسون نیست
+ قراره سال های زیادی تو این حالت بشینید و اگر یکم هم بد باشه تأثیرات زیادی داره
+ اگه جاتون ناراحت باشه احتمالا زودتر خسته می‌شید، بازدهیتون کم میشه و حواس‌پرتیتون بیشتر میشه. در واقع ممکنه تو یه حالت نامناسب بشه سریال دید ولی نمیشه برنامه نویسی کرد چون تمرکز بیشتری لازم داره. :)

شمایی که میگی نه من از هفته دیگه درست میشینم پشت میز، با شما هم هستم.

@terminal_stuff
👏18👍3😢3🔥2🕊1
#توصیه‌ها
سعی کنید لپتاپ (بدون لوازم جانبی) سیستم اصلی‌تون برای کار نباشه. برای اینکه حالت پشت لپتاپ نشستن برای سلامت خوب نیست. در واقع معمولا اینطوریه که دستاتون به هم نزدیکه. همچنین مانیتورش نزدیک سطح میزه و گردنتون هم اذیت میشه. حالا اگه بذارید روی پاتون که دیگه مشکلاتش زیاد گفته شده. صفحه نمایش کوچک هم می‌تونه برای چشماتون خوب نباشه.

برای بهبود وضعیت:
+ حداقل کاری که می‌تونید بکنید اینه که یه موس و کیبورد بگیرید و وصل کنید بهش. لپتاپ هم جای بالاتری بذارید تا گردنتون هم اذیت نشه. با ۳۰۰-۴۰۰ هزارتومن می‌تونید یه موس و کیبورد نسبتا خوب بگیرید.
+ اگر جای ثابتی هستید بهتره مانیتور هم داشته باشید. با حدود ۴ ملیون می‌تونید یه مانیتور IPS Full HD بگیرید. البته که عالی نیست ولی خب.

https://ergonomictoolbox.com/ergonomics/5-reasons-why-laptops-are-bad-for-your/
👍10
یه مدل حمله‌ی DDoSی که انجام میشه، SYN flood attack هست، به این شکل که تعداد زیادی کاربر کانکشن نیمه باز، باز می‌کنن و منابع سمت سرور درگیر میشه منتظره که تایید اخر رو بفرسته کاربر تا کانکشن کامل باش بشه.
این اتفاق یکیش به تنهایی مشکلی نیست ولی تعداد زیادی این اتفاق همزمان بیفته اون حالت خطرناکی رو برای سرور داره.

حالا کانکشن نیمه باز چیه؟ TCP از مکانیسم three way handshake استفاده می‌کنه، خلاصه یعنی اینکه:
+ کلاینت به سرور پیام SYN می‌فرسته.
+ سرور پیام SYN Ack می‌فرسته یعنی SYNت رو دیدم.
+ + کلاینت پیام ACK به سرور می‌فرسته که یعنی پیام قبلیتو دیدم و همه چی مرتبه.

حالا تو این حمله کلاینت پیام اخر رو نمی‌فرسته و سرور رو تو حالت بلاتکلیفی نگه می‌داره.
نه تنها این، بلکه بازم پیام SYN می‌فرسته که یعنی بازم کانکشن می‌خوام باز کنم.

https://www.cloudflare.com/learning/ddos/syn-flood-ddos-attack/
👍6
Forwarded from Neuromancer (/dev/nvram)
https://wiki.osdev.org/Expanded_Main_Page
کسایی که علاقمند به سیستم عامل اند و به هرنحوی میخوان راجب سیستم عامل بدونن این سایت رفرنس خوبیه
👏2🕊1
#توصیه‌ها
برای editorتون ارزش قائل باشید و بهش مسلط باشید.

چرا:
+ ادیتور/IDE برای برنامه‌نویس‌ها مثل آچاره. اگر کسی از دور نگاه کنه و ببینه که خوب استفاده نمی‌کنیم فکر می‌کنه آدم باسوادی نیستیم.
+ وقتی می‌خواید یه تغییری تو کد بدید و نتیجه رو ببینید بهتره که در کمترین زمان بتونید انجام بدید تا ایده‌اش نپریده و خلاصه feedback loop رو کوتاه تر میکنه.
+ ابزارهایی که وجود دارن، برای هم‌صنف‌ها و همکارهای شما ساخته شده پس احتمال خیلی زیادی داره که شما هم بهش نیاز پیدا کنید. اگر بلد نباشید احتمالا مجبورید از یه راه سخت‌تر برید. مثلا refactor یا دیباگ ممکنه خیلی براتون ساده‌تر باشه. ممکنه هم از یه سری چیزا چون جالب نیستن تصمیم بگیرید استفاده نکنید مثل version control

چطوری:
+ می‌تونید ویدیوی آموزشی ببینید. خیلیا تنظیم می‌کنن که کلیدهایی که می‌زنن رو تصویر نشون داده بشه، پس می‌تونید کامل یاد بگیرید.
+ یکسری cheat sheet هم وجود داره که می‌تونید استفاده کنید.
+ توی تنظیماتش بگردید و دستکاری کنید و سرچ کنید تا به بهترین شکل مناسب شما بشه.
+ اگر کاری می‌خواید انجام بدید که سخته یا باید از ادیتور خارج بشید، سرچ کنید «انجام این کار در ادیتور فلان» و ببینید راهی هست یا نه. مثلا edit remote file in YOUR_EDITOR
+ لیست پلاگین‌های به درد بخور رو تو اینترنت سرچ کنید و با احتیاط نصب کنید. همچنین می‌‌تونید ببینید دوستاتون از چه پلاگین‌هایی استفاده می‌کنن. شاید حتی تو گیتهاب/وبلاگشون گذاشته باشن.

توصیه‌ی آخر (برای اینکه تو این مطلب از vim هم اسمی آورده باشم)
ابزارتون آگاهانه انتخاب کنید. قرار نیست چون همه از ابزارهای Jetbrains یا VS code استفاده می‌کنن شما هم استفاده کنید. البته که احتمالا کیفیت خوبی هم داره ولی تنها انتخاب نیست. حتی اگه از اونا استفاده می‌کنید می‌تونید شخصی‌سازی کنید.
ادیتورهای دیگه‌ای هم هستن که می‌تونید تا انتها شخصی‌سازیشون کنید و قابلیت‌های مورد نیاز رو به شکل مورد نیازتون بهشون اضافه کنید. Vim و neovim و emacs نمونه‌های مهم هستن. شخصی‌سازی به شما کمک می‌کنه به بهره‌وری بیشتری برسید. البته که باید دقت کنید خود شخصی‌سازی هم ازتون وقت می‌گیره.
کلیدواژه‌ی lsp هم مدنظر داشته باشید. به کمک این استاندارد (که ٰVS Code استانداردش کرد) ابزارهای auto complete مختلف (در واقع language server) تحت این پروتکل با ادیتور صحبت می‌کنن و می‌تونید از موتور اتوکامپلیتی که برای ادیتور شما نیست هم به راحتی استفاده کنید. چون همگی از یک پروتکل واحد پشتیبانی می‌کنن.
👍9