MHRCODE | برنامهنویسی با طعم توتفرنگی
Open in Telegram
آدرس ها: گروه: @MhrCodeGP ویرگول: virgool.io/@mhrlife مدیوم: medium.com/@mhrlife
Show more3 403
Subscribers
No data24 hours
-27 days
-2030 days
Posts Archive
یادمه ۱۰ سال پیش، اولین پلتفرمی که برای تولید محتوای آموزشیم رو ساختم، یک بلاگ ساده وردپرسی، هنوز یه وقتایی نگا میکنم به محتوای اون موقع و غافلگیر میشم؛ هم محتوای خوب و هم محتوای اشتباه، اما بازم زیبایی خودشو داشت.
سال ها گذشت و همیشه دوس داشتم محتوای تصویری هم تولید کنم؛ تا چند ماه پیش چند تا از سایتهای پکیج آموزشی فارسی بهم پیام دادن دوره «ردیس» بذارم که همون شد انگیزهای که جای پکیج، رایگان توی یوتیوب بذارم که بازخوردش فراتر از تصورم بود!
کانال رو با هدفِ اول یادگیری خودم، بعد اشتراک دانش و آشنایی و معاشرت با آدمای خفن کامیونیتی تک فارسی، ۳ ماه پیش شروع کردم و ممنون از تک تکتون که هم بهونهای بدست اوردم که به خاطر ویدیوها دانش خودم رو اپدیت کنم، هم از عزیزان توی گروه یا کامنتای یوتیوب یاد بگیرم.
تنها دلیلی اینکه یادگرفتیم و پیشرفت کردیم، کسایی بودن که قبل از ما محتوای رایگان تولید کردن و برای پر کردن جای اونها و تشکر ازشون، قدردانی میکنم از تمام کسایی که توی این چند وقته توی کامیونیتی محتوای فارسی تولید محتوا رو شروع کردند.
این ها رو گفتم که بگم در نهایت به لطف شما، انگیزه و هدف جدیدی در کنار اهداف قبلیم پیدا کردم که تا جایی که در توانمه و با کمک همه کسایی که اشتیاق دارن به کامیونیتی فارسی که واقعا تلاش میکنن و اما بخاطر ظلم جغرافیایی (شرکتهای بزرگ در شهر زندگیشون شعبه ندارند) یا یه وقتایی بدشانسی (سازمان، شرکت و مدیر سمی) انگیزشون رو از دست دادهاند، یه انگیزه دوباره بدیم.
سال نوتون هم مبارک باشه؛ اول سلامتی، بعد حال خوب، آرامش، دوست داشتن و دوست داشته شدن، و پول برای هممون آرزو میکنم.
امروز ساعت 2 قسمت سوم لایو بازی تلگرامیمون رو میریم.
توی این قسمت اول یه سیستم ساده برای سوالات و ساخت room میسازیم و بعدش یک سیستم جدید با گوروتین ها میسازیم که بازی ها رو به شکل Live مدیریت کنه.
https://youtube.com/live/TYUVzxcLXV0?feature=share
چطور با وجود محدودیتهای شرکتمون پیشرفت فنی داشته باشیم؟ 📈
این چند وقته سوالات زیادی ازم پرسیده شده که به شکل خلاصه اینطور بودن که فلان محدودیتها رو شرکتمون داره، چه فنی چه زمانی، چطور میتونم توی این شرایط پیشرفت کنم؟ توی این ویدیو در مورد این موضوع صحبت میکنیم و روشهایی که بهمون اجازه میده هم از لحاظ فنی مسیر یادگیریمون مشخص باشه هم به شرکت فعلیمون کمک کنیم که کیفیت سیستمهاشون بهتر بشه و در نهایت رزومه قویتری داشته باشیم.
https://youtu.be/yb_9Uk2C2pM
تا دقایق دیگه لایو دوم شروع میشه. قراره کارای جذابی کنیم از دستش ندید
https://youtube.com/live/JzGhibKhMdA?feature=share
از مایکروسافت یادبگیریم 💥 آنتیپترنهای پرفورمنس - Chatty I/O
هزینهی I/O بیشتر از چیزی هست که فکرش رو میکنیم اما توی مقیاس و لود پایین متوجهش نمیشیم و وقتی سیستممون درخواستهای زیادی دریافت میکنه، دیگه دیر شده! توی این ویدیو در مورد آنتی پترن Chatty I/O صحبت میکنیم، با مثال یک سیستم مشکل دار پیاده سازی میکنیم، با بنچ مارک متوجه میشیم کی مشکل بوجود میاد و در نهایت با هم مشکل رو رفع میکنیم و سیستممون رو 20 برابر سریع تر میکنیم.
https://youtu.be/03gckteSNqY
فردا، قسمت دوم لایو پیادهسازی بازی تلگرامی مشابه Quiz of Kings
از قبل لایو رو ساختم که بتونید نوتیفیکیشنش رو فعال کنید و از دست ندید. توی این قسمت کدهای قبلی ایی که زدیم رو Real-time میکنیم و فرایند Matchmaking رو تکمیل میکنیم، اینطور UI کاربرها آپدیت میشه و میفهمن هنوز توی پروسه مچ میکینگ هستند و به شکل Real-time متوجه میشن که به یک لابی جوین شدن.
لایو فردا ساعت 8شب تا 11شب خواهد بود
https://youtube.com/live/JzGhibKhMdA?feature=share
همچنین ویدیوی لایو توی این لینک قابل مشاهده هستش اگه دوس داشتید نگاه کنید
https://www.youtube.com/live/S7IPFanS_U8?si=p1zL2ZlGQoxOeaW_
ممنون از همه دوستانی که اومدن، توی این لایو با هم کلی یونیت تست و اینتگریشن تست نوشتیم، با جیسون های ردیس کلی سر و کله زدیم، سیستم مچ میکینگ نوشتیم با ردیس، و برای ربات تلگرامی مون کلی ابزار نوشتیم.
توی قسمت بعدی میریم سراغ تکمیل ربات تلگرامی و کم کم فرانت بازی رو شروع میکنیم
استریم توسعه بازی نبرد پادشاهان تا دقایق دیگه شروع میشه
https://youtube.com/live/S7IPFanS_U8
اگه میدونید دوستی احتمالا ازین لایو خوشش بیاد ممنون میشم share کنید باهاشون🙏💛
قراره توی عید یک بازی تلگرامی مشابه Quiz of Kings رو با هم توی چند تا یوتیوب از صفر تا صد پیادهسازی کنیم.
اولین لایو فردا جمعه ساعت ۱۲ شروع میشه و اگه میخواید لایو های بعدی رو از دست ندید توی کانال @MhrCode یا گروه @MhrCodeGp عضو بشید تا قبل از هر لایو تایم دقیقش رو بذارم.
بعد از اتمام لایوها به فرمت قبلی ویدیوها ادیت شده و به شکل خلاصه توی کانال یوتیوب قرار میگیره.
لایوها توی کانال یوتیوب https://youtube.com/@mhr_code خواهند بود
استکی که قراره باهاش بازی رو بسازیم: Golang, HTMX, Alpinejs
برای عید میخواستم یه سر دوباره به HTMX بزنیم و نهایتا توی یکی دو روز یک بازی تلگرامی شبیه کویز او کینگز بسازیم که یکم چالش های ساده مثل scoreboard و match making داشته باشه، در کل هم ساده باشه و دو روزه تموم شه.بنظرتون لایو باشه و توی دو تا لایو 8 9 ساعته انجامش بدیم (توی یوتیوب) و در نهایت ویدیوهاش رو توی کانال بذاریم، یا مثل ویدیوهای فعلی بشکونم و مرتبط شده توی 3 4 قسمت ادیت شده بذارم؟
تک تاک 💻 توی دیوار فیچرهای جدید رو موقع توسعه و قبل از ریلیز تست میکنیم؟
توی شرکتهای بزرگی مثل دیوار که تعداد سرویسها و حجم کد خیلی زیاده، نیاز داریم علاوه بر یونیت تست و اینتگریشن تست خودمون هم یک دور سیستم رو بیاریم بالا و تغییرات جدیدمون رو توی محیط شبیه پروداکشن تست کنیم. اما از یه جایی به بعد منابعی که نیازه برای این کار بیشتر از سیستمهای شخصی هست و با استفاده از استیجینگ، کد جدیدمون رو توی بستر ابری میاریم بالا. توی این ویدیو امین عارفزاده، مهندس نرمافزار در تیم پلتفرم دیوار، بهمون مسیری که از گذشته طی شده برای این کار و سیستم سندباکسینگی که پیاده کردن رو توضیح میده که چطور این ابزارها کمک کردن پرفورمنس و اعتماد به نفس تیم فنی هنگام توسعه بیشتر بشه.
https://youtu.be/hBJraKdKhAE
تحلیل عملکرد بکاند با اندازه گیری Latency و Throughput
بعد از اینکه APIهایی که ساختیم آماده شد و با تستهایی که نوشتیم چطور مطمئن شیم پرفورمنس وعملکردش نیازهای ما رو رفع میکنه؟ لود تست میگیریم و کلی در موردشم صحبت کردیم. اما چطور عددهایی که خروجی لود تستمون هست رو متوجه بشیم و با توجه به نیاز محصول، از عملکرد بکاندمون مطمئن شیم؟ جواب همهی این سوالا و اینکه چطور توی مصاحبه سیستم دیزاین در مورد این دو موضوع صحبت کنیم رو توی این ویدیو بحث میکنیم.
https://youtu.be/L8m9E0hSA4M
سلام به همه عزیزان و کسایی که تازه وارد کانال شدن.
من دنبال لیست کانال های فارسی برنامه نویسی هستم که یک بررسی بکنم هم محتواشون چطور هست و یاد بگیرم ازشون هم در نهایت یک خلاصه ازشون توی یک ویدیو بذارم که بقیه هم بتونن استفاده کنن.
ممنون میشم توی تلگرام برام کانال های مورد علاقه برنامه نویسی فارسی تون رو ارسال کنید: @pp2007ws
بکاند رو سریع تر کنیم 🔥 از 800 به ده هزار ریکوئست برثانیه
توی این ویدیو یک APIکه با گرفتن لود تست نشون داد 800 ریکوئست برثانیه رو ساپورت میکنه رو بهبود میدیم و با استفاده از Redis Search کوئری پیچیده SQL رو با پرفومنس 10 برابری، 8هزار ریکوئست برثانیه پاسخ میدیم. همچنین توی این ویدیو پیچیدگیهای پیاده سازیش رو با هم می بینیم و سیستمی پیاده میکنیم که دیتابیس و کش رو با هم sync کنه، و در مورد خوبی ها و بدی های Caching توی پروژه های واقعی صحبت میکنیم.
https://www.youtube.com/watch?v=tLSbJdQc3mA
با Locust به شکل توزیع شده Load Test کنیم 🔥 تست یک پروژه
اول یک پروژه رو روی بستر همروش دیپلوی میکنیم و حالا باید مطمئن بشیم با منابعی که اختصاص دادیم چند ریکوئست برثانیه میتونه جواب بده. چطور انجام بدیم؟ ابزارهایی مثل ApacheBenchmark برای توسعه لوکال خوب هستن اما وقتی یک سیستم ابری رو میخوایم تست بگیریم نیاز به ابزاری داریم که بتونه لود تستمون رو Scale کنه! برای همین سراغ Locust Swarm میریم که به راحتی با VMهامون، بکاندمون رو لود تست بگیریم و با اختصاص بهتر منابع از 100 ریکوئست برثانیه برسیم به 600 ریکوئست برثانیه.
https://youtu.be/vO6jMWstggA
فراموش کرده بودم لینک گیتش رو بذارم. الان اوکی شد:
https://github.com/mhrlife/youtube-codes/tree/master/IdempotentAPI
