Forwarded from RandRng
پیام پاول دوروف به مناسبت تولد ۴۱ سالگی و البته قوانین کنترل شدید اینترنت اروپا؛
https://xn--r1a.website/durov/452
https://xn--r1a.website/durov/452
👍12❤1
این متن
از کتاب
بنظرم خیلی درسته؛ حالا که درگیر کد زدن هستم واقعاً متوجه میشم خیلی پیش میاد یک مفهوم رو بفهمی و به راحتی کدهای دیگران رو بخونی و متوجه بشی!
اما اینکه خودت اون کد رو بنویسی و همه چیز درست و تا حد خوبی بهینه و idiomatic باشه خیلی چیز متفاوتی هست، اما
خیلی وقتا میزان خطاهایی که میگیرفتم، یا توضیحات clippy و ... باعث میشد پنیک کنم و هی تغییرات بیشتر بدم.
بعضی وقتا دست کشیدن و فکر کردن مجدد باعث میشه کد بهتری بزنم، خیلی وقتا شده کد رو زدم و بعد از چندتا اجرا و ... برگشتم و
با اینکه کد اول خیلی خفنتر هم بوده شاید (چون از بچهها شنیدم) اما ترجیح میدم کدم راحتتر خونده و درک بشه تا خفنتر بنظر بیاد.
و درنهایت، اگر
چندتا توضیح:
پروژه
دلیل خوندن این کتاب هم این نیست که میخوام به دنیای امنیت برگردم (گذشتهها گذشته) فقط چون کتابی برای optimization پیدا نکردم دارم این کتاب رو میخونم.
توی همهی زبانهای برنامهنویسی کتابهای مربوط به امنیت و نفوذ و توسعه ابزارهای نفوذ معمولاً کدهای بهینهتری دارند.
اینم از من به شما
خلاصهای از نکات مهم.
It took me nearly 1 year of full-time programming in Rust to become proficient and no longer
have to read the documentation every 5 lines of code
از کتاب
Black hat Rustبنظرم خیلی درسته؛ حالا که درگیر کد زدن هستم واقعاً متوجه میشم خیلی پیش میاد یک مفهوم رو بفهمی و به راحتی کدهای دیگران رو بخونی و متوجه بشی!
اما اینکه خودت اون کد رو بنویسی و همه چیز درست و تا حد خوبی بهینه و idiomatic باشه خیلی چیز متفاوتی هست، اما
Favor getting things done rather than the perfect design that will never ship. It’s
far better to re-work an imperfect solution than to never ship a perfect system.
خیلی وقتا میزان خطاهایی که میگیرفتم، یا توضیحات clippy و ... باعث میشد پنیک کنم و هی تغییرات بیشتر بدم.
If you are fighting with the limits of the language, it may mean that you are doing something wrong. Stop what you are doing, take a break, and think about how you can do things differently.
بعضی وقتا دست کشیدن و فکر کردن مجدد باعث میشه کد بهتری بزنم، خیلی وقتا شده کد رو زدم و بعد از چندتا اجرا و ... برگشتم و
refactor کردم و کد خیلی بهتر اجرا شده!با اینکه کد اول خیلی خفنتر هم بوده شاید (چون از بچهها شنیدم) اما ترجیح میدم کدم راحتتر خونده و درک بشه تا خفنتر بنظر بیاد.
و درنهایت، اگر
Error handling رو درست انجام داده باشید unwrap, expect همه جا نداشته باشید توی پروداکشن هیچ موقع کد کرش نمیکنه و این خیلی چیز جذابی هست.چندتا توضیح:
پروژه
jsedit استثنا بود چون میخواستم بعنوان cookbook نگهش دارم؛ که چیزای پر تکرار توی سختترین حالتش همیشه دمه دستم باشه.دلیل خوندن این کتاب هم این نیست که میخوام به دنیای امنیت برگردم (گذشتهها گذشته) فقط چون کتابی برای optimization پیدا نکردم دارم این کتاب رو میخونم.
توی همهی زبانهای برنامهنویسی کتابهای مربوط به امنیت و نفوذ و توسعه ابزارهای نفوذ معمولاً کدهای بهینهتری دارند.
اینم از من به شما
خلاصهای از نکات مهم.
👍14🔥4❤2
Rust for Python developers
این مصاحبه Jon Gjengset بنظرم جالب بود اگر دوست داشتید ببینید Youtube Video
یک نکته قابل توجهی که میگه و تو گروه هم ما راجبش بحث کردیم.
اینه که توی مارکت
برای همین ۹۹٪ شما وقتی میگید من دارم
هیچ شکی نیست که قطعا همه جونیورها هم یک روزی سنیور خواهند شد! ولی اگر توی
اینه که توی مارکت
Rust برنامهنویسهای Junior بیشتر وجود داره (که خب استخدام نشدن هم دلیلش همین هست) اکثر شرکتهایی که میرند سمت زبان Rust نیاز به کسی دارند که بیزینس رو خوب بلد باشه یا توی زبان برنامهنویسی و ... ایی که قبلا کار کرده Senior باشه و حالا Rust هم بتونه کد بزنه!برای همین ۹۹٪ شما وقتی میگید من دارم
Rust میخونم؛ میگم: اشتباه میکنی.هیچ شکی نیست که قطعا همه جونیورها هم یک روزی سنیور خواهند شد! ولی اگر توی
Python, Go, ... شروع کنید که مارکت همین الان کار برای جونیور داره؛ احتمالا خیلی سریعتر پیشرفت میکنید؛ تجربیات مهم رو بدست میارید و سنیور میشید!👍52❤6
Youtube Link
اگر روی
خیلی نکات خوبی رو میگه
شخصا بسیار لذت بردم
اگر روی
Optimization کار میکنید؛ پیشنهاد میدم این سخنرانی رو ببینید.خیلی نکات خوبی رو میگه
شخصا بسیار لذت بردم
YouTube
Mechanical Sympathy in Rust Performance Optimization — by Brian Pane — Seattle Rust, October 2025
A discussion of how understanding the design tradeoffs of modern CPUs can help point the way to
software speedups, with examples from zlib-rs
Links: https://brianp.net/
Seattle Rust User Group:
• https://www.meetup.com/Seattle-Rust-Meetup/
• https://di…
software speedups, with examples from zlib-rs
Links: https://brianp.net/
Seattle Rust User Group:
• https://www.meetup.com/Seattle-Rust-Meetup/
• https://di…
❤10👍2🎉1
برای دوستان پایتون دولوپر:
احتمالا شما هم این رو دیدید؛ اگر نه گروها و آدمهای (بیسواد) زیادی دارند ازین مورد استفاده میکنند برای اینکه بگن
Tarmageddon
مشکل اصلی از
بطور خلاصه؛ مشکل اینه که یک هدر اشتباه رو داره میخونه که قدیمیتر هست.
خلاصه مسئله هیچ ربطی به
پینوشت: تیم astral پچ و آپدیت پکیچ tokio-tar رو هم منتشر کرده البته
astral-tokio-tar
ابتدا بگم که: باگ روی uv حدودا ۳ هفته قبل پچ شده ولی چون uv ازون پکیجهای گلوبال هست که خیلی کم اصولا آپدیتش میکنیم برای همین راجب اقدام به آپدیتش اطلاع دادم.
احتمالا شما هم این رو دیدید؛ اگر نه گروها و آدمهای (بیسواد) زیادی دارند ازین مورد استفاده میکنند برای اینکه بگن
Rust امن نیست.Tarmageddon
مشکل اصلی از
crate مربوط به tokio-tar شروع میشه؛ این crate بیش از ۲ سال هست که آپدیت نشده و باگ هم مربوط به یک خطای منطی توی بخش پارس کردن فایلهای tar هست.بطور خلاصه؛ مشکل اینه که یک هدر اشتباه رو داره میخونه که قدیمیتر هست.
خلاصه مسئله هیچ ربطی به
Rust نداره و استفاده از Rust فقط برای جلب توجه هست.پینوشت: تیم astral پچ و آپدیت پکیچ tokio-tar رو هم منتشر کرده البته
astral-tokio-tar
Edera
CVE-2025-62518 Shows the Cost of Open Source Abandonware
Edera uncovers TARmageddon (CVE-2025-62518), a Rust async-tar RCE flaw exposing the real dangers of open-source abandonware and supply chain security.
👍17❤2
"When the bad file with more than 200 features was propagated to our servers, this limit was hit — resulting in the system panicking."
"This resulted in the following panic which in turn resulted in a 5xx error:
thread fl2_worker_thread panicked: called Result::unwrap() on an Err value"
اینو یکی از بچهها توی گروه دیگری فرستاد؛ دیروز نصف اینترنت رسماً قطع شد، چرا ؟ کلودفلیر یک باگ خورده بود.
حالا مشخص شده اون باگ از یک خطای انسانی افتضاح میاد.
داستان اینه؛
یک سرور به محدودیت میخوره و از دسترس خارج میشه که باعث میشه تمام ریسپانسهاش خطای ۵۰۰ باشه؛ اما یک توسعه دهنده بجای اینکه
response رو بررسی کنه که آیا ۲۰۰ هست یا نه فرض کرده چون ما داخل دیتاسنتر هستیم و کلودفلیر هیچوقت غیر از ۲۰۰ نمیگیریم.
پس
unwrap زده و چون غیر از ۲۰۰ گرفته بوده؛ سیستم ترکیده.چندتا نکته :
۱- هیچ چیزی رو فرض نکنید، همه چیز رو تست کنید.
من هم توی بعضی کدهام
unwrap مینویسم؛ اما خیلی وقتا عمدی هست چون واقعاً نمیدونم خروجی اون تابع یا ماکرو چطور میتونه Error باشه!مینویسم که بیزینس در بیاد.
۲- زبان برنامهنویسی
Rust فقط امنیت روی مموری بهتون میده؛ قراره نیست براتون نون هم بخره.نکته جالبتر اینکه؛
AI هم این خطاهارو تشخیص نمیده !! اینه که همیشه از peer-review استقبال باید بشه.
۳- مورد راحتی مثل خطای 5xx توی http و اینکه حتی این مورد ساده هم تست نشده؛ نشون میده کلودفلیر هم که بری؛ قرار شیت کد ببینی.
پس دوست عزیز حداقل تست بنویس.
👍23❤5
Forwarded from RandRng
#کاسبان_تحریم
یک سرویس دهنده هست که هزاران بار توی گروها بهش اشاره کردیم و گفتیم حتی اگر از گشنگی داشتید میمردید ازینا سرویس برای خرید محصول نگیرید (این امکان که ایمیل بزنید و اون شرکته براتون غذای مجانی بفرسته بیشتره)
اون سرویس دهنده هم #ایرانیکارت هست؛
تقریبا هرروز توی یکی از گروها؛ یک نفر که بحثهای قبلی رو شرکت نکرده اکانت؛ کار؛ تحقیق و ... اش همش دود میشه میره هوا و دنبال یک راهکار جدید باید بگرده.
اینکه ایرانیکارت پول رو میخوره و ی آبم روش و پاسخ هیچ چیزی رو به هیچ کسی نمیده یک بحث جدایی هست که مقام قضایی کشور باید دنبال کنه! حتما باید دنبال کنه!
اما برای سادهترین اتفاقات هم ایرانیکارت موقع پرداخت از کارتهای با تراکنش مشکوک استفاده میکنه (این بهترین حالت هست؛ چون توی یک سری موارد با ذکر اینکه از سرویس دهنده third-party برای خرید استفاده کردید و آپلود مدارک حداقل اکانت رو بهتون برمیگردوند ولی خب پول و سرویس پریده)
توی بیشتر مواقع این شرکت از سرویسهای تخفیفی که ۱۰۰٪ هم گیر میوفته خرید میکنه تا خودش سود بیشتری کنه؛ همونطوری که گفتم چون به کسی هم پاسخگو نبوده و نیست (مقام قضایی و دادستانی و ... هم خواب هستند) این وضعیت همچنان ادامه داره!
بسیاری از دوستان که توی گروه یا کانال پیام میذارند که جطوری میتونیم اکانت رو برگردونیم؛ دلیل بن شدن اکانتهاشون خرید غیرقانونی هست.
مثلا:
سرویس مخصوص دانشجویان اروپایی هست و برای اونها قیمتش شده ۱ دلار برای ماه اول
شما میری از ایرانیکارت خرید میکنی و پول کامل رو میدی به قیمت ۱۰ دلار در ماه
ایرانیکارت از تخفیف دانشکاهی استفاده میکنه و ۱ دلار به اون سرویس دهنده پرداخت میکنه
توی ۷۲ ساعت آینده شرکت سرویس دهنده متوجه میشه شما با اطلاعات تقلبی خرید کردی و اکانت شما و تمام دیتاها و زحمات و ... بن میشه.
این اتفاق بسیار بسیار زیاد افتاده برای بچهها (بعضی شرکتها توی پیگیری دلیل بن شدن اکانت رو توی ایمیل میفرستند) با وجود اینکه خود شرکت اعلام کرده از روشهای غیرقانونی برای خرید استفاده کردید یا غیرقانونی تخفیف گرفتید و ...
ایرانیکارت همیشه یک جواب میده:
بنظرم این وظیفه دادستانی و مقام قضایی هست که جلوی این کلاهبرداری بزرگ ایرانیکارت رو بگیره بخصوص اینکه توی حداقل ۶ ماه اخیر تقریبا هرکسی که از این شرکت سرویس خریده نتیجه زحمات و پولش دود شده و رفته!
یک سرویس دهنده هست که هزاران بار توی گروها بهش اشاره کردیم و گفتیم حتی اگر از گشنگی داشتید میمردید ازینا سرویس برای خرید محصول نگیرید (این امکان که ایمیل بزنید و اون شرکته براتون غذای مجانی بفرسته بیشتره)
اون سرویس دهنده هم #ایرانیکارت هست؛
تقریبا هرروز توی یکی از گروها؛ یک نفر که بحثهای قبلی رو شرکت نکرده اکانت؛ کار؛ تحقیق و ... اش همش دود میشه میره هوا و دنبال یک راهکار جدید باید بگرده.
اینکه ایرانیکارت پول رو میخوره و ی آبم روش و پاسخ هیچ چیزی رو به هیچ کسی نمیده یک بحث جدایی هست که مقام قضایی کشور باید دنبال کنه! حتما باید دنبال کنه!
اما برای سادهترین اتفاقات هم ایرانیکارت موقع پرداخت از کارتهای با تراکنش مشکوک استفاده میکنه (این بهترین حالت هست؛ چون توی یک سری موارد با ذکر اینکه از سرویس دهنده third-party برای خرید استفاده کردید و آپلود مدارک حداقل اکانت رو بهتون برمیگردوند ولی خب پول و سرویس پریده)
توی بیشتر مواقع این شرکت از سرویسهای تخفیفی که ۱۰۰٪ هم گیر میوفته خرید میکنه تا خودش سود بیشتری کنه؛ همونطوری که گفتم چون به کسی هم پاسخگو نبوده و نیست (مقام قضایی و دادستانی و ... هم خواب هستند) این وضعیت همچنان ادامه داره!
بسیاری از دوستان که توی گروه یا کانال پیام میذارند که جطوری میتونیم اکانت رو برگردونیم؛ دلیل بن شدن اکانتهاشون خرید غیرقانونی هست.
مثلا:
سرویس مخصوص دانشجویان اروپایی هست و برای اونها قیمتش شده ۱ دلار برای ماه اول
شما میری از ایرانیکارت خرید میکنی و پول کامل رو میدی به قیمت ۱۰ دلار در ماه
ایرانیکارت از تخفیف دانشکاهی استفاده میکنه و ۱ دلار به اون سرویس دهنده پرداخت میکنه
توی ۷۲ ساعت آینده شرکت سرویس دهنده متوجه میشه شما با اطلاعات تقلبی خرید کردی و اکانت شما و تمام دیتاها و زحمات و ... بن میشه.
این اتفاق بسیار بسیار زیاد افتاده برای بچهها (بعضی شرکتها توی پیگیری دلیل بن شدن اکانت رو توی ایمیل میفرستند) با وجود اینکه خود شرکت اعلام کرده از روشهای غیرقانونی برای خرید استفاده کردید یا غیرقانونی تخفیف گرفتید و ...
ایرانیکارت همیشه یک جواب میده:
بدون vpn وصل شدید و بخاطر تحریم اکانت محدود شده. (یا چیزی شبیه به همین)
بنظرم این وظیفه دادستانی و مقام قضایی هست که جلوی این کلاهبرداری بزرگ ایرانیکارت رو بگیره بخصوص اینکه توی حداقل ۶ ماه اخیر تقریبا هرکسی که از این شرکت سرویس خریده نتیجه زحمات و پولش دود شده و رفته!
👍23❤2
RandRng
#کاسبان_تحریم یک سرویس دهنده هست که هزاران بار توی گروها بهش اشاره کردیم و گفتیم حتی اگر از گشنگی داشتید میمردید ازینا سرویس برای خرید محصول نگیرید (این امکان که ایمیل بزنید و اون شرکته براتون غذای مجانی بفرسته بیشتره) اون سرویس دهنده هم #ایرانیکارت هست؛…
این پست خارج از بحث کانال هست ولی چون این اواخر خیلی بهم پیام داده شده
ترجیح دادم بصورت عمومی توی کانال اعلام کنم!
که حداقل خودتون حواستون رو جمع کنید!
ترجیح دادم بصورت عمومی توی کانال اعلام کنم!
که حداقل خودتون حواستون رو جمع کنید!
❤20👍2
اگر ۱۱ ساعت وقت دارید و میخواید اندازه ۱۰۰ ساعت ازش استفاده کنید برای یادگیری این ویدئو رو از دست ندید.
Youtube Link (Jon Gjengset)
شخصا ۵ ساعت هست نشستم پاش و لذت میبرم
Youtube Link (Jon Gjengset)
شخصا ۵ ساعت هست نشستم پاش و لذت میبرم
❤27
برای یکی از پروژههایی که دارم کار میکنم دیتابیسی بیشتر از SQLite نیاز نداریم اما یک سری فیچرها رو هم نیاز داریم که SQLite نداره و نخواهد داشت.
توی جستجوهام به Turso رسیدم
و توی سرچ برای بررسی دقیقتر و آموزش به یک ویدئو روی یوتیوب رسیدم؛ و متوجه شدم اون شخصی که توی لینوکس کرنل بهش گفته بودند دیگه هیچوقت دست به کیبورد نزن کی بوده
Youtube Video Timestamp
نکته :
این ابزار فعلا روی بتا هست ولی برای کاری که ما میکنیم با توجه به اینکه ساعتی دیتا به دیتابیس اصلی منتقل میشه مشکلی بوجود نمیاد.
این ابزار روی Rust نوشته شده و از زبانهای برنامهنویسی مهم هم پشتیبانی میکنه
اگر نمیدونید جریان چی هست این پست رو بخونید :
RandRng Channel
توی جستجوهام به Turso رسیدم
و توی سرچ برای بررسی دقیقتر و آموزش به یک ویدئو روی یوتیوب رسیدم؛ و متوجه شدم اون شخصی که توی لینوکس کرنل بهش گفته بودند دیگه هیچوقت دست به کیبورد نزن کی بوده
Youtube Video Timestamp
نکته :
این ابزار فعلا روی بتا هست ولی برای کاری که ما میکنیم با توجه به اینکه ساعتی دیتا به دیتابیس اصلی منتقل میشه مشکلی بوجود نمیاد.
این ابزار روی Rust نوشته شده و از زبانهای برنامهنویسی مهم هم پشتیبانی میکنه
اگر نمیدونید جریان چی هست این پست رو بخونید :
RandRng Channel
GitHub
GitHub - tursodatabase/turso: Turso is an in-process SQL database, compatible with SQLite.
Turso is an in-process SQL database, compatible with SQLite. - tursodatabase/turso
❤15👍2