وقتی یک چیزی گرون میشه توجهها رو به خودش جذب میکنه؛ چندین و چندبار ازم سوال شده
اول اینکه چون اکثر موارد موضوع آپگرید بوده؛ حواستون باشه که موقع آپگرید اگر مادربورد و
حتی سرعت رم قبلی هم مهم هست؛ اگر رم سریعتری بخرید توی بهترین حالت سرعتش اندازه رم قدیمیتر خواهد بود و توی بعضی شرایط هر دو روی سرعت خیلی کمتر توافق میکنند. پس اگر دارید برای افزایش حجم آپگیرید میکنید بهتره که مدل رم قبلی خودتون رو بخرید (احتمال اینکه ارزون هم باشه بیشتره و دردسر هم ندارید)
اما اگر دارید سیستم جدید جمع میکنید :
۱- اول اینکه؛ اگر میتونید شاید بهتر باشه تا ۲۰۲۷ صبر کنید
۲- نگاه به کاری که میکنید بندازید؛ سرعت رم بیشتر بصورت کلی روی
چیزهایی که معمولا بچهها رو اذیت میکنه :
۱- حجم رم: ۸ گیگ کار رو راه میندازه اگر لینوکس دارید؛ ۱۶ گیگ خوبه و ۲۴ گیگ اکثر نیازها رو به راحتی جواب میده. پس ۳۲ گیگ
۲- سرعت هارد (پول رو جای دیگه خرج میکنند و هارد ضعیف میشه): حیلی از لگها و کندیهایی که احساس میکنید مخصوصا اگر ۱۶ گیگ رم دارید بخاطر سرعت هارد هست مادربرد و هارد فعلی رو سرعتش رو بررسی کنید.
۳- قدرت و سرعت پردازنده؛ از تابستون تا حالا سیستم اصلی توسعه کد من شده لپتاپ خیلی قدیمی نسل 7 اینتل. توی پستهای قبلی گفتم بخاطر آسیب باطری پردازنده همیشه روی ضعیفترین حالت خودش کار میکرد اون زمان حتی لپتاپ رو روشن هم نمیکردم انقدر کند بود و نیازی هم نداشتم مگر سالی یکبار یک جایی میرفتم سخنرانی.
وقتی هارد رو تغییر دادم و مشکل پردازنده رو حل کردم (اونم گفتم قبل خرید یک تستی بزنم) دیگه نیازی به روشن کردن سیستم اصلی نداشتم و این موضوع هنوز هم ادامه داره؛ هر موقع مدلهای هوش مصنوعی رو میخوام ترین کنم فقط سیستم اصلی رو روشن میکنم (نیازی به خرید لپتاپ جدید هم نشد)
۴- کانفیگ اشتباه توی بایوس؛ خیلی وقتا میبینم بجهها سیستمها یا لپتاپ رو با کانفیگ کارخونه استفاده میکنند که ۹۹٪ درست کانفیگ نشده یا برای ذخیره بیشتر باطری کانفیگ شده (شاید برای ۱ سال اول خوب باشه ولی بعدش بهتره دستی بهش بکشید)
خلاصه؛ شخصا
اگر هم دارید سیستم برای ۱۰ سال آینده جمع میکنید (شخصا داشتم اینکار رو میکردم که ترجیح دادم حداقل تا اواسط ۲۰۲۷ صبر کنم؛ الگوی قیمت شبیه گذشته هست.) اون موقع بیخیال پول بشید و حتما
رم چی بخریم خوبه ؟
اول اینکه چون اکثر موارد موضوع آپگرید بوده؛ حواستون باشه که موقع آپگرید اگر مادربورد و
cpu از رم DDR4 پشتیبانی میکنند نمیتونی بری سراغ DDR5 پس این گزینه رو بریزید دور.حتی سرعت رم قبلی هم مهم هست؛ اگر رم سریعتری بخرید توی بهترین حالت سرعتش اندازه رم قدیمیتر خواهد بود و توی بعضی شرایط هر دو روی سرعت خیلی کمتر توافق میکنند. پس اگر دارید برای افزایش حجم آپگیرید میکنید بهتره که مدل رم قبلی خودتون رو بخرید (احتمال اینکه ارزون هم باشه بیشتره و دردسر هم ندارید)
اما اگر دارید سیستم جدید جمع میکنید :
۱- اول اینکه؛ اگر میتونید شاید بهتر باشه تا ۲۰۲۷ صبر کنید
۲- نگاه به کاری که میکنید بندازید؛ سرعت رم بیشتر بصورت کلی روی
multitask, video edit, ... تاثیر داره برای ۹۰٪ کارهای برنامهنویسی و حتی بازی کردن همون رمهای 3200 مربوط به DDR4 به اندازه کافی (حتی بیشتر از نیاز) سریع هست.چیزهایی که معمولا بچهها رو اذیت میکنه :
۱- حجم رم: ۸ گیگ کار رو راه میندازه اگر لینوکس دارید؛ ۱۶ گیگ خوبه و ۲۴ گیگ اکثر نیازها رو به راحتی جواب میده. پس ۳۲ گیگ
DDR4 با قیمتهای فعلی خیلی انتخاب خوبی هست. ۲- سرعت هارد (پول رو جای دیگه خرج میکنند و هارد ضعیف میشه): حیلی از لگها و کندیهایی که احساس میکنید مخصوصا اگر ۱۶ گیگ رم دارید بخاطر سرعت هارد هست مادربرد و هارد فعلی رو سرعتش رو بررسی کنید.
۳- قدرت و سرعت پردازنده؛ از تابستون تا حالا سیستم اصلی توسعه کد من شده لپتاپ خیلی قدیمی نسل 7 اینتل. توی پستهای قبلی گفتم بخاطر آسیب باطری پردازنده همیشه روی ضعیفترین حالت خودش کار میکرد اون زمان حتی لپتاپ رو روشن هم نمیکردم انقدر کند بود و نیازی هم نداشتم مگر سالی یکبار یک جایی میرفتم سخنرانی.
وقتی هارد رو تغییر دادم و مشکل پردازنده رو حل کردم (اونم گفتم قبل خرید یک تستی بزنم) دیگه نیازی به روشن کردن سیستم اصلی نداشتم و این موضوع هنوز هم ادامه داره؛ هر موقع مدلهای هوش مصنوعی رو میخوام ترین کنم فقط سیستم اصلی رو روشن میکنم (نیازی به خرید لپتاپ جدید هم نشد)
۴- کانفیگ اشتباه توی بایوس؛ خیلی وقتا میبینم بجهها سیستمها یا لپتاپ رو با کانفیگ کارخونه استفاده میکنند که ۹۹٪ درست کانفیگ نشده یا برای ذخیره بیشتر باطری کانفیگ شده (شاید برای ۱ سال اول خوب باشه ولی بعدش بهتره دستی بهش بکشید)
خلاصه؛ شخصا
DDR5 رو الان توصیه نمیکنم بخصوص اینکه ۹۰٪ هم بهش نیازی نداریم؛ قبل از گرونی گزینه خوبی بود ولی الان دیگه اصلا بصرفه نیست.اگر هم دارید سیستم برای ۱۰ سال آینده جمع میکنید (شخصا داشتم اینکار رو میکردم که ترجیح دادم حداقل تا اواسط ۲۰۲۷ صبر کنم؛ الگوی قیمت شبیه گذشته هست.) اون موقع بیخیال پول بشید و حتما
DDR5 بخرید ولی حداقل از 5600 سریعتر بخرید.👍17❤7
This media is not supported in your browser
VIEW IN TELEGRAM
داداشمون رو یادگیری
vim سیروسه 😂😁37🔥7👏4
RandRng
داداشمون رو یادگیری vim سیروسه 😂
This media is not supported in your browser
VIEW IN TELEGRAM
😁15
این یکی یک چارت خیلی ساده هست (هوش مصنوعی هم کد زده من فقط گفتم چه نوع چارتی رو برای چه دیتایی استفاده کنه)
رفرنسش هم ۵۰ تا پولدارترین افراد جهان هست.
همونطوری که میبینید؛ اکثرا از خانوادههای پولدار اومدند.
حتی مواردی که نوشته شده
دقت کنید این افراد اولین شرکتشون رو حداقل ۲۰ سال پیش یا بیشتر تاسیس کردند پس حتی برای فقیر ترین مورد هم پول زیادی بوده
دفعه بعدی که یکی گفت با تلاش خیلی زیاد یا ۵ صبح از خواب پا شدن و مدیتیشن و ... میتونی جزو موفقترینها باشی یا خیلی پولدار باشی.
از طرف من بزن تو دهنش
۱۰۰ هزار دلار که میگم فقط برای یک مورد بوده و اکثرا نزدیک به ۱ میلیون دلار سرمایه پدریشون بوده حتی اگر ۱ میلیون دلار الان رو هم در نظر بگیریم.
بیش از ۱۲۵ میلیارد تومان رو داریم صحبت میکنیم.
من فقط از دادههای عمومی و سخنرانیهای خودشون استفاده کردم
رفرنسش هم ۵۰ تا پولدارترین افراد جهان هست.
همونطوری که میبینید؛ اکثرا از خانوادههای پولدار اومدند.
حتی مواردی که نوشته شده
Middle Class وقتی اولین شرکت یا استارتاپ خودشون رو راه اندازی کردند؛ حداقل سرمایه خانوادهاش بیش از $100,000 دلار بوده.دقت کنید این افراد اولین شرکتشون رو حداقل ۲۰ سال پیش یا بیشتر تاسیس کردند پس حتی برای فقیر ترین مورد هم پول زیادی بوده
دفعه بعدی که یکی گفت با تلاش خیلی زیاد یا ۵ صبح از خواب پا شدن و مدیتیشن و ... میتونی جزو موفقترینها باشی یا خیلی پولدار باشی.
از طرف من بزن تو دهنش
۱۰۰ هزار دلار که میگم فقط برای یک مورد بوده و اکثرا نزدیک به ۱ میلیون دلار سرمایه پدریشون بوده حتی اگر ۱ میلیون دلار الان رو هم در نظر بگیریم.
بیش از ۱۲۵ میلیارد تومان رو داریم صحبت میکنیم.
من فقط از دادههای عمومی و سخنرانیهای خودشون استفاده کردم
👍66❤7🔥4🕊1
RandRng
میتونید، محاسبه کنید بانک آینده با بدهی X وقتی میدندش به بانک ملی با موجودی Y و البته
Y << X
اونوقت چه بلایی سر مردم باید بیاد (شایدم اومده) که
Y >> X
بشه ؟
دلار و طلا و ...
Y << X
اونوقت چه بلایی سر مردم باید بیاد (شایدم اومده) که
Y >> X
بشه ؟
دلار و طلا و ...
اینایی که باهوش بودند قیمت امروز دلار رو این روزا دیدند.
👍16
RandRng
با دلار ۱۲۰,۰۰۰ تومانی قرار داد بستم؛ ولی قطعاً سرم کلاه رفت.
خیلی بالاتر ازین حرفا خواهد رفت.
خیلی بالاتر ازین حرفا خواهد رفت.
هنوز چندماه از سال مونده ؟
👍18❤1
RandRng
قراردادهای سال بعدی رو روی دلار ۱۳۰,۰۰۰ تومان میبندم.
احتمالا برای سال بعدی باید روی ۱۸۰-۲۰۰ ببندم؛ چون
۱- اعتراضی که نیست.
۲- فرار سرمایه گذار که هست
۳- قیمت حمل و نقل و ... هم که داره میره بالا
۴- یک مشت تولید کننده دولتی و خصولتی مونده
که خب برای مورد آخر دولت پولشون رو از جیب ما میده؛ که برای اینکار دلار و ... معمولا میره بالا!
حالا اگر لبنان حزبالله و عراق گروهای مختلف رو جم کرد؛ شاید ی چیزی هم به اینجا رسید یک مقدار قیمت اومد پایین ولی بعیده.
۱- اعتراضی که نیست.
۲- فرار سرمایه گذار که هست
۳- قیمت حمل و نقل و ... هم که داره میره بالا
۴- یک مشت تولید کننده دولتی و خصولتی مونده
که خب برای مورد آخر دولت پولشون رو از جیب ما میده؛ که برای اینکار دلار و ... معمولا میره بالا!
حالا اگر لبنان حزبالله و عراق گروهای مختلف رو جم کرد؛ شاید ی چیزی هم به اینجا رسید یک مقدار قیمت اومد پایین ولی بعیده.
👍41🗿3❤2
دوتا خبر که همه جا پخش شده درمورد
۱- فرانسه بجای سرویسهای ماکروسافت مدارس و معلمها و بخشهای از سرویسهای دولتی رو برده روی
۲- آلمان یکی از بخشهای کشور؛ بجای
یک خبر خوب دیگه هم :
زبان برنامهنویسی
بدون هیچ شکی
opensource توی اروپا و بنظرم خیلی جالبه؛۱- فرانسه بجای سرویسهای ماکروسافت مدارس و معلمها و بخشهای از سرویسهای دولتی رو برده روی
nextcloud ۲- آلمان یکی از بخشهای کشور؛ بجای
office 365 ماکروسافت رفتن سراغ Libreoffice و طبق گزارش خودشون تا اینجا ۱۵ میلیون یورو سالیانه به نفعشون شده (پول لایسنس) البته رقبای سیاسی و ... اعلام کردند این جابجایی چون بدون برنامه بوده ۹ میلیون هزینه آموزش داشته (که خب احمقانهاس هم ۶ میلیون ذخیره پول هم آموزش رایگان) حالا فرض کنید کل کشور رو ببرند روی open source یک خبر خوب دیگه هم :
زبان برنامهنویسی
Rust از حالت experimental برای کرنل لینوکس در اومد و رسما به اندازه C قابل احترام هست توی کرنلبدون هیچ شکی
System76 باعث دیده شدن Rust توی دنیای لینوکس شد بنظرم؛ اگر نمیدونید از سال 2017 زبان Rust وارد PopOS شده و هی داره توی بخشهای مختلف جایگزین کدهای قبلی میشه.❤40👍4
یکی نیست به Github بگه آخه من چه لطفی به تو و دنیای OpenSource کردم؛ کرنل لینوکس که رو اکانت من نیست که.
تا میایم دوتا کد بخونیم؛ ۱۰۰ تا ایراد میگیره
برم هم
هم
هم ریکاور کدم رو دانلود کنم.
ولی دقیقا این یکی از دلایلی هست که خستم کرده گیتهاب
تا میایم دوتا کد بخونیم؛ ۱۰۰ تا ایراد میگیره
برم هم
two-factor رو ببینم مشکلش چیه؛ چون روز اول اضافه کردم. هم
passkey رو اضافه کنم. هم ریکاور کدم رو دانلود کنم.
ولی دقیقا این یکی از دلایلی هست که خستم کرده گیتهاب
👍12😐3
آها اصلا چی شد رفتم گیتهاب
یکی از دوستان این رو معرفی کردند؛ مثل اینکه هم سرعت خوبی داره هم مشکلات کلاینتهای دیگه رو نداره ؛ و البته از همه مهمتر سبک و کم حجم روی Rust هست
Neovide
شخصا دلیلی برای جابجایی ندارم؛ کانفیگ
یکی از دوستان این رو معرفی کردند؛ مثل اینکه هم سرعت خوبی داره هم مشکلات کلاینتهای دیگه رو نداره ؛ و البته از همه مهمتر سبک و کم حجم روی Rust هست
Neovide
شخصا دلیلی برای جابجایی ندارم؛ کانفیگ
neovim خودم به خوبی جواب نیازهام رو میده ولی خب.GitHub
GitHub - neovide/neovide: No Nonsense Neovim Client in Rust
No Nonsense Neovim Client in Rust. Contribute to neovide/neovide development by creating an account on GitHub.
❤15👍2
تو زندگیم یادگرفتم همیشه دستم رو زانوی خودم باشه، فقط به خودم تکیه کنم و فقط روی خودم حساب کنم.
با همهی اینها، وقتی پدرم فوت کرد، فهمیدم دیگه زورم به دنیا نمیرسه؛ چون قدرت مشتم از احساس امنیتی بود که بخاطر وجود پدرم داشتم، ولی بازم جنگیدم.
من آدم حرف زدن نیستم؛ دردام مال خودم بوده و هست.
خیلی جاها خیلی خیلی کم آوردم ولی بازم خندیدم و ادامه دادم.
هرجای زندگیم کم میآوردم دوتا دلیل داشتم که بازم ادامه بدم؛
اول اینکه نمیخواستم ببینم مادرم بخاطر من غم تو صورتش هست.
دوم اینکه پشتم به مادر گرم بود، فقط کافی بود دست بذاره رو سرم و باهام حرف بزنه؛ کل دنیا هم حریفم نبود.
اما حالا دیگه نه پشت دارم نه مشت.
دیگه حالی برای جنگیدن نیست، امیدم به تموم شدن این جنگه.
---------------------
این چندروز کلی پیام تسلیت دریافت کردم، این حرفها رو گفتم که بدونید چقدر پیامهاتون برام ارزش داشت و البته عذرخواه و شرمندم که نتونستم پاسخ بدم.
برای همهی شما و عزیزانتون آرزوی سلامتی دارم.
با همهی اینها، وقتی پدرم فوت کرد، فهمیدم دیگه زورم به دنیا نمیرسه؛ چون قدرت مشتم از احساس امنیتی بود که بخاطر وجود پدرم داشتم، ولی بازم جنگیدم.
من آدم حرف زدن نیستم؛ دردام مال خودم بوده و هست.
خیلی جاها خیلی خیلی کم آوردم ولی بازم خندیدم و ادامه دادم.
هرجای زندگیم کم میآوردم دوتا دلیل داشتم که بازم ادامه بدم؛
اول اینکه نمیخواستم ببینم مادرم بخاطر من غم تو صورتش هست.
دوم اینکه پشتم به مادر گرم بود، فقط کافی بود دست بذاره رو سرم و باهام حرف بزنه؛ کل دنیا هم حریفم نبود.
اما حالا دیگه نه پشت دارم نه مشت.
دیگه حالی برای جنگیدن نیست، امیدم به تموم شدن این جنگه.
---------------------
این چندروز کلی پیام تسلیت دریافت کردم، این حرفها رو گفتم که بدونید چقدر پیامهاتون برام ارزش داشت و البته عذرخواه و شرمندم که نتونستم پاسخ بدم.
برای همهی شما و عزیزانتون آرزوی سلامتی دارم.
❤390🕊14😐1🍾1
RandRng
In 2 lines of code, you have introduced 3 bugs; a moron like you should never touch a keyboard again
پیدا شد :
PyRust
PyRust
Telegram
Rust for Python developers
برای یکی از پروژههایی که دارم کار میکنم دیتابیسی بیشتر از SQLite نیاز نداریم اما یک سری فیچرها رو هم نیاز داریم که SQLite نداره و نخواهد داشت.
توی جستجوهام به Turso رسیدم
و توی سرچ برای بررسی دقیقتر و آموزش به یک ویدئو روی یوتیوب رسیدم؛ و متوجه شدم…
توی جستجوهام به Turso رسیدم
و توی سرچ برای بررسی دقیقتر و آموزش به یک ویدئو روی یوتیوب رسیدم؛ و متوجه شدم…
❤16🔥4
چند ماه پیش به واسطه یکی از دوستان و به خواست ایشون به یک نفر یک مقدار پیشنهاد و ... برای مسیر شغلی دادم (بکند) البته بیشتر هدف راهنمایی کردن بود.
ماه پیش با چندتا از هم دانشگاهیهاش درخواست دادند که بهشون آموزش بدم، که خب کار من نیست.
ولی نقش منتور رو قبول کردم، ۷ نفر شدند تا هزینهها کمتر بشه.
شبی ۲ ساعت برای جواب به سوالات (تا آخر شب سوالاتشون رو جمع میکنند و آخر شب تو گروه میپرسند)
آخر هفتهها هم تا ۴ ساعت جلسه آنلاین.
سختترین بخش اینکار هماهنگ کردن ساعت و روزی بود که برای همه شدنی باشه، هیچکدوم از بچهها ایران نیستند.
۲ تا از بچهها تازه شروع کردند سرکار رفتن و جونیور هستند.
۳ نفر دانشجو هستند و مقدمات پایتون رو میدوند.
یک نفر تخصصش هوش مصنوعی هست و میخواد بکند یاد بگیره.
یک نفر هم توی یکی از شرکتهای خدمات ابری کار میکنه و میخواد وارد تیم سرویس و بکند بشه.
خلاصه تیم جالبی شد، شرط اولیه برای همگی بلد بودن پایتون تو سطح متوسط بود.
با هر نفر ۱۵ دقیقه جلسه داشتم، اگر قبول نمیشد نمیتونست وارد گروه بشه، لیست ۱۰ نفره بود که ۳ نفر رد شدند.
۲-۳ روز پیش شروع کردم بر اساس ایده پروژههایی که خودشون دادند یک
برای هر کدوم از بچهها
باقی بچهها، ایدههای ساده یا استارتاپی داشتند.
حالا که تموم شد و تأیید؛؛؛ گفتم شاید بد نباشه اینجا هم به اشتراک بذارم.
توضیحات بالا برای این بود که اصل داستان رو بدونید و توجه کنید که دلیل
توجه کنید که
ماه پیش با چندتا از هم دانشگاهیهاش درخواست دادند که بهشون آموزش بدم، که خب کار من نیست.
ولی نقش منتور رو قبول کردم، ۷ نفر شدند تا هزینهها کمتر بشه.
شبی ۲ ساعت برای جواب به سوالات (تا آخر شب سوالاتشون رو جمع میکنند و آخر شب تو گروه میپرسند)
آخر هفتهها هم تا ۴ ساعت جلسه آنلاین.
سختترین بخش اینکار هماهنگ کردن ساعت و روزی بود که برای همه شدنی باشه، هیچکدوم از بچهها ایران نیستند.
۲ تا از بچهها تازه شروع کردند سرکار رفتن و جونیور هستند.
۳ نفر دانشجو هستند و مقدمات پایتون رو میدوند.
یک نفر تخصصش هوش مصنوعی هست و میخواد بکند یاد بگیره.
یک نفر هم توی یکی از شرکتهای خدمات ابری کار میکنه و میخواد وارد تیم سرویس و بکند بشه.
خلاصه تیم جالبی شد، شرط اولیه برای همگی بلد بودن پایتون تو سطح متوسط بود.
با هر نفر ۱۵ دقیقه جلسه داشتم، اگر قبول نمیشد نمیتونست وارد گروه بشه، لیست ۱۰ نفره بود که ۳ نفر رد شدند.
۲-۳ روز پیش شروع کردم بر اساس ایده پروژههایی که خودشون دادند یک
roadmap نوشتن.برای هر کدوم از بچهها
roadmap جداشد (آخر هفتهها قراره همین پروژهها رو بخونیم) دلیلشم این بود که هرکدوم ایده خودشون رو داشتند، مثلاً بچههایی که شاغل بودند میخواستند چیزی رو کد بزنند که به کارهاشون نزدیک هست.باقی بچهها، ایدههای ساده یا استارتاپی داشتند.
حالا که تموم شد و تأیید؛؛؛ گفتم شاید بد نباشه اینجا هم به اشتراک بذارم.
توضیحات بالا برای این بود که اصل داستان رو بدونید و توجه کنید که دلیل
roadmap ایی که توی پست بعدی خواهید دید چی هست.توجه کنید که
roadmap پست بعدی درحد کلمه هست، من توقع دارم شما در سطح متوسط پایتون رو بلد باشید و یک دوره ۱ ساعته یک جایی از زندگیتون نشسته باشید و یک فریمورک وب رو به آموزشش گوش داده باشید.👍48❤27🔥2👏2
RandRng
چند ماه پیش به واسطه یکی از دوستان و به خواست ایشون به یک نفر یک مقدار پیشنهاد و ... برای مسیر شغلی دادم (بکند) البته بیشتر هدف راهنمایی کردن بود. ماه پیش با چندتا از هم دانشگاهیهاش درخواست دادند که بهشون آموزش بدم، که خب کار من نیست. ولی نقش منتور رو قبول…
#Backend_RoadMap_2025
قبل از اینکه بخواید این
یک نکتهای که اضافه کنم؛ توی جلسات و ... که بحث شد من اصلا قرار نیست هیچ چیزی رو آموزش بدم (اشتباهات رو کمک میکنم حل بشه و ...) اما اینکه آموزش بدم
چیزایی که توقع دارم یک
بازم توجه کنید
فریمورک مورد نظرتون رو کمی بشناسید (من روی
1. Middleware: Starlette interface for how to write middleware.
Must know: auth, request ID, timing, gzip, validators, rate-limit, logging.
Important to know the order of execution.
2. CORS (and headers in general).
3. Authentication / Authorization: What is JWT + RS256.
Nice to know: Auth0, Cognito.
4. SQL and SQLAlchemy 2.0 (async style).
5. Tests:
* Unit tests for business logic.
* Integration tests for database, Redis, etc. interactions.
* Contract tests (very important) for endpoints and services you use.
6. Benchmarking: k6, load testing, CI smoke tests for performance-sensitive endpoints; wrk, hyperfine (or alternatives).
7. Docker / Docker Compose: multi-stage builds.
8. Profiling: Scalene or Perf — flamegraph interpretation.
9. Caching (Redis): cache invalidation; GET/SET strategies (Cache-Aside vs Write-Through).
10. Background tasks:
FastAPI background tasks & Dramatiq (or other alternatives).
Don't bring Celery or its equivalent into projects — it's heavy and overkill in most cases.
Use/understand: idempotency, retries, dead-lettering.
11. Observability: Logging, tracing, metrics.
Logs must be structured (JSON is a good option).
Distributed tracing is a must-have.
Metrics (Prometheus) are important — at minimum: response_time_ms, active_connections, etc.
12. Configuration management: Pydantic Settings; no hard-coded settings or configs.
13. Migrations: Alembic — each migration should have both UP and DOWN so it is safe to revert.
14. API documentation: FastAPI provides it automatically, but don't forget to use the Pydantic model
BTW: Pydantic v2 is the only accepted version.
15. Error handling + correct HTTP codes.
16. Graceful shutdown:
App must stop accepting new HTTP connections,
finish processing current requests,
drain the database connection pool,
then exit.
17. Idempotency and retries:
For network/database failures — learn exponential backoff, circuit breakers, bulkheads.
18. Health checks and readiness probes: The app must provide them (Docker health check alone is not accepted).
19. Connection pooling tuning: Postgres, Redis, etc.
You must be able to explain tuning decisions based on your benchmarks/profiling results.
20. Security basics: Input sanitization/validation, rate limiting, secrets management, secure defaults (CSP, HSTS), threat modeling for endpoints.
21. Scalability patterns: Focus on connection pooling and indexing first.
Too many or unnecessary indexes = Fail.
Nice to learn: horizontal scaling, load balancing, sharding, replication.
22. Feature flagging (dynamic configuration): All projects should have it — very important.
23. API versioning strategy: Header versioning / URL versioning.
24. Architecture Decision Records
From day 1 you must have this document in the project with at least 3 entries per decision:
What you decided.
Why you did that.
What the consequences are.
--————————————-
Future / next steps
1. Design system architecture.
2. Integrate message queues (when and why to use them) — Kafka, RabbitMQ.
3. Event-driven patterns.
4. Optimize for latency.
5. GraphQL / gRPC — when and why to use them.
پینوشت: اگر جایی کپی کردید؛ لطفا پیام قبلی و بعدی رو هم بذارید 🌱
توضیحات مهم هست.
قبل از اینکه بخواید این
roadmap رو دنبال کنید باید پست قبلی رو بخونید.یک نکتهای که اضافه کنم؛ توی جلسات و ... که بحث شد من اصلا قرار نیست هیچ چیزی رو آموزش بدم (اشتباهات رو کمک میکنم حل بشه و ...) اما اینکه آموزش بدم
FastAPI چیست و جطوری CRUD بنویسیم و ازین موارد با اوضاع الانم اصلا نمیخونه پس دلیل ساده بودنش همین پست قبلی هست.چیزایی که توقع دارم یک
Senior توی جنبهی فنی بکند بلد باشه (اعداد هیچ ربطی به ترتیب یادگیری نداره؛ فقط برای این هست که تهش بدونم چندتا مورد رو گفتم) از دوستان Senior هم میخوام اگر نکته یا موردی جا افتاده بهم یادآوری کنند.بازم توجه کنید
Senior شدن کلی جنبههای مختلف داره ولی برای بخش فنی مربوط به بکند این لیست کافی و قوی هست؛ برای بحثهای دیگر هم از منابع خودش میتونید دنبال کنید.فریمورک مورد نظرتون رو کمی بشناسید (من روی
FastAPI پیش میرم ولی خیلی فرقی نیست)1. Middleware: Starlette interface for how to write middleware.
Must know: auth, request ID, timing, gzip, validators, rate-limit, logging.
Important to know the order of execution.
2. CORS (and headers in general).
3. Authentication / Authorization: What is JWT + RS256.
Nice to know: Auth0, Cognito.
4. SQL and SQLAlchemy 2.0 (async style).
5. Tests:
* Unit tests for business logic.
* Integration tests for database, Redis, etc. interactions.
* Contract tests (very important) for endpoints and services you use.
6. Benchmarking: k6, load testing, CI smoke tests for performance-sensitive endpoints; wrk, hyperfine (or alternatives).
7. Docker / Docker Compose: multi-stage builds.
8. Profiling: Scalene or Perf — flamegraph interpretation.
9. Caching (Redis): cache invalidation; GET/SET strategies (Cache-Aside vs Write-Through).
10. Background tasks:
FastAPI background tasks & Dramatiq (or other alternatives).
Don't bring Celery or its equivalent into projects — it's heavy and overkill in most cases.
Use/understand: idempotency, retries, dead-lettering.
11. Observability: Logging, tracing, metrics.
Logs must be structured (JSON is a good option).
Distributed tracing is a must-have.
Metrics (Prometheus) are important — at minimum: response_time_ms, active_connections, etc.
12. Configuration management: Pydantic Settings; no hard-coded settings or configs.
13. Migrations: Alembic — each migration should have both UP and DOWN so it is safe to revert.
14. API documentation: FastAPI provides it automatically, but don't forget to use the Pydantic model
example field.BTW: Pydantic v2 is the only accepted version.
15. Error handling + correct HTTP codes.
16. Graceful shutdown:
App must stop accepting new HTTP connections,
finish processing current requests,
drain the database connection pool,
then exit.
17. Idempotency and retries:
For network/database failures — learn exponential backoff, circuit breakers, bulkheads.
18. Health checks and readiness probes: The app must provide them (Docker health check alone is not accepted).
19. Connection pooling tuning: Postgres, Redis, etc.
You must be able to explain tuning decisions based on your benchmarks/profiling results.
20. Security basics: Input sanitization/validation, rate limiting, secrets management, secure defaults (CSP, HSTS), threat modeling for endpoints.
21. Scalability patterns: Focus on connection pooling and indexing first.
Too many or unnecessary indexes = Fail.
Nice to learn: horizontal scaling, load balancing, sharding, replication.
22. Feature flagging (dynamic configuration): All projects should have it — very important.
23. API versioning strategy: Header versioning / URL versioning.
24. Architecture Decision Records
From day 1 you must have this document in the project with at least 3 entries per decision:
What you decided.
Why you did that.
What the consequences are.
--————————————-
Future / next steps
1. Design system architecture.
2. Integrate message queues (when and why to use them) — Kafka, RabbitMQ.
3. Event-driven patterns.
4. Optimize for latency.
5. GraphQL / gRPC — when and why to use them.
پینوشت: اگر جایی کپی کردید؛ لطفا پیام قبلی و بعدی رو هم بذارید 🌱
توضیحات مهم هست.
❤66💯4👍1🔥1
RandRng
#Backend_RoadMap_2025 قبل از اینکه بخواید این roadmap رو دنبال کنید باید پست قبلی رو بخونید. یک نکتهای که اضافه کنم؛ توی جلسات و ... که بحث شد من اصلا قرار نیست هیچ چیزی رو آموزش بدم (اشتباهات رو کمک میکنم حل بشه و ...) اما اینکه آموزش بدم FastAPI چیست و…
چیزای دیگه مثل کانفیگ
مواردی مثل داشتن
اسکریپت برای اتومات کردن کارهای دستی که باید انجام بشه (قبل یا بعد از هر دپلوی)
و از این دست موارد جزو چیزهایی هست که همه افراد شرکت کننده باهاش آشنایی داشتند یا قبول کردند توی پستهای کانال یا جاهای دیگه بخونند.
رعایت استاندارد و خوانایی و ...
موارد دیفالت بود که نیازی به توضیح دادن نداشت و همه باید دنبال کنند.
توی یک سری موارد زدم
کلا ۶ تا بخش میشه که قرار هست توی ۶ ماه تکمیل بشه (شاید زودتر) ولی با توجه به امتحانات و تعطیلی و ... تا ۸ ماه قابل افزایش هست (من پیشنهادم ۴ ماه بود خودشون توافق کردند بیشتر بشه)
پینوشت: دانش بیزینس رو من نمیتونم چیزی راجبش بگم قطعا چون ۷ نفر با ایدههای مختلف و از بخشهای مختلف وارد شدند.
pre-commit, black, isort, ... یا بطورکلی ruff مواردی مثل داشتن
Makefile یا جایگزینهای مختلف اون اسکریپت برای اتومات کردن کارهای دستی که باید انجام بشه (قبل یا بعد از هر دپلوی)
و از این دست موارد جزو چیزهایی هست که همه افراد شرکت کننده باهاش آشنایی داشتند یا قبول کردند توی پستهای کانال یا جاهای دیگه بخونند.
رعایت استاندارد و خوانایی و ...
موارد دیفالت بود که نیازی به توضیح دادن نداشت و همه باید دنبال کنند.
توی یک سری موارد زدم
Fail , not acceptable چون روز اول شرط کردیم اگر کسی بیش از ۴ هفته کدهاش تایید نشه حذف میشه (برای اینکه وقت باقی افراد رو با سوالات مسخره که از نخوندن و تمرین نکردن عمدی میاد نگیره) همه افراد هم هزینهها رو پرداخت کردند؛ البته من از شخصی که تیم رو جمع کرد هزینه رو میگیرم و ازش خواستم بعد از تکمیل مباحث هر بخش پرداخت رو انجام بده.کلا ۶ تا بخش میشه که قرار هست توی ۶ ماه تکمیل بشه (شاید زودتر) ولی با توجه به امتحانات و تعطیلی و ... تا ۸ ماه قابل افزایش هست (من پیشنهادم ۴ ماه بود خودشون توافق کردند بیشتر بشه)
پینوشت: دانش بیزینس رو من نمیتونم چیزی راجبش بگم قطعا چون ۷ نفر با ایدههای مختلف و از بخشهای مختلف وارد شدند.
❤53👍1🔥1
وقتی از پرداخت دلاری فقط ی چیزی شنیدی :
شخصاً رسماً این مکالمه رو توی لینکدین داشتم، تازه میگفت ۲ تا ۱ ساعت وقت مصاحبه هست شاید ۳۰ دقیقه هم بیشتر بشه.
شب بخیر 🌹
- دستمزد ها هم به دلار هست.
+ چند دلار ؟
- ۵۰۰ دلار برای این سطح در نظر گرفته شده
دو روز بعد
- سلام و ... من پیامی دریافت نکردم، توی ایمیل هم رزومهی شمارو نداشتم میشه لطفاً مجدد بفرستید. که مصاحبه ست کنم ؟
+ من برای ۱۰۰۰ دلار هم وقت توی مصاحبه تلف نمیکنم، بعد برای ۵۰۰ دلار رزومه هم میخواید ؟
+ از طرف من منتقل کنید، پرداخت به دلار خوب هست ولی نه اینکه نصف دستمزد داخلی باشه.
شخصاً رسماً این مکالمه رو توی لینکدین داشتم، تازه میگفت ۲ تا ۱ ساعت وقت مصاحبه هست شاید ۳۰ دقیقه هم بیشتر بشه.
شب بخیر 🌹
🔥38👍9😁7❤4😐2🗿1