Go Casts 🚀 – Telegram
Go Casts 🚀
8.39K subscribers
283 photos
20 videos
13 files
501 links
VP of Eng Zarinpal | Ex Snapp! Senior SE
فوق لیسانس هوش مصنوعی از دانشگاه تهران

اشتراک محتوا در مورد مهندسی نرم افزار، هوش مصنوعی، گولنگ
https://gocasts.ir

پروفایل
https://www.linkedin.com/in/gohossein

ارتباط
@lifography

Ai for Software
@aicasts_ir
Download Telegram
Go Casts 🚀
بسم الله الرحمن الرحیم معرفی کتاب دوستان من سعی می کنم کتاب های خوبی که مطالعه شون میتونه به شما کمک کنه که دید بهتری نسبت به دنیای cloud-native و microservice ها داشته باشید بهتون معرفی کنم و در حد توان نکاتی رو به صورت خلاصه وار در مورد اون ها به شما ارائه…
سلام دوستان، سال گذشته بخش های زیادی از کتاب designing distributed systems رو که نوشته آقای brendan burns بود بصورت خلاصه در کانال قرار دادم، شما با جستجوی هشتگ
#designing_distributed_systems_brendan_burns
میتونید همه مطالب مربوط به این کتاب رو بخونید.

نکته جالب اینه که من سعی کردم اکثر الگوهایی که برای طراحی سیستم های توزیع شده استفاده میشه رو به صورت خلاصه بگم و مطالعه و مرور این الگوها بهتون کمک میکنه در کدنویسی روزمره انتخاب های بهتری برای نرم افزار در حال توسعه تون داشته باشید

@gocasts
👍308🔥3
Go Casts 🚀
سلام دوستان، سال گذشته بخش های زیادی از کتاب designing distributed systems رو که نوشته آقای brendan burns بود بصورت خلاصه در کانال قرار دادم، شما با جستجوی هشتگ #designing_distributed_systems_brendan_burns میتونید همه مطالب مربوط به این کتاب رو بخونید. نکته…
سلام به همه دوستان، در مورد تست نویسی در طول یک سال گذشته چند ویدیو منتشر شده و یه سری مقاله معرفی شده که به نظرم تا حدود خیلی خوبی همه آنچه که لازم دارید در مورد تست نویسی در گولنگ بدونید رو پوشش داده، شما هم میتونید هشتگ #test رو جستجو کنید در کانال که به محتواهاش دسترسی پیدا کنید و هم میتونید از طریق این لینک ها ویدیوها رو در کانال و یا یوتیوب مشاهده کنید

لینک سری مقالات معرفی شده
https://news.1rj.ru/str/gocasts/37

لینک ویدیوها در کانال
https://news.1rj.ru/str/gocasts/41
https://news.1rj.ru/str/gocasts/46
https://news.1rj.ru/str/gocasts/53

لینک ویدیوها در یوتیوب
https://news.1rj.ru/str/gocasts/153

#test

@gocasts
👍145🔥2
CKA-1.pdf
5.6 MB
دوستان این یه دفترچه راهنمای کوبرنتیز به زبان فارسی ست که آقای افشاری زحمت کشیدن
بسی لذت بردم از این حرکت قشنگ 🌹👌👏

https://www.linkedin.com/posts/activity-6952602627079581696-2cur

#kubernetes #devops

@gocasts
🔥21👍145
سلام به همه دوستان عزیز
ان شاء الله بزودی خبرهای خوشی در راهه 😍

اگه دوست داشتید اکانت توییتر و اینستاگرام رو هم دنبال کنید

ممنون از همراهیتون ❤️

توییتر
https://twitter.com/go_casts

اینستاگرام
https://instagram.com/gocasts.ir

#social

@gocasts
16🔥2🤩1
Go Casts 🚀
سلام به همه دوستان عزیز ان شاء الله بزودی خبرهای خوشی در راهه 😍 اگه دوست داشتید اکانت توییتر و اینستاگرام رو هم دنبال کنید ممنون از همراهیتون ❤️ توییتر https://twitter.com/go_casts اینستاگرام https://instagram.com/gocasts.ir #social @gocasts
سلام به همه دوستان

گفتگوی کوتاه، جذاب و شنیدنی با مهندس کیانوش مختاریان
مهندس نرم افزار، رهبر فنی و مدیر در گوگل

این گفتگو بصورت پرسش و پاسخ هایی در مورد مسائل مهم مهندسی نرم افزار و همچنین مسائلی که مهندسین جوان باید به آن توجه کنند بود

گفتگو برای شخص بنده به شدت آموزنده بود

ان شاءالله به زودی منتشر میشه

#talk_with_kian #google_software_engineer

@gocasts
👍35🔥19👏2
بی حسین بن علی احساس پیری می کنم
نی که پیری بلکه احساس حقیری می کنم
گفت سائل از چه رو محکم به سینه می زنی؟
گفتم از آینه ی دل گردگیری می کنم
63👍2
Go Casts 🚀
سلام دوستان نمیدونم بگم چقدر از شنیدن این خبر خوشحال شدم، الهی که همگی تون زیر سایه مهر خداوند و لطف امام زمان خوب و خوش و موفق باشید 🌹 در مورد نقشه راه هم باز تاکید میکنم که دوستان لطفا جدی بگیرید، نقشه راه در عین حال که کوتاه و سریعه، واقعا سعی کردم همه…
الحمدلله، الحمدلله 😍
خیلی خوشحالم یکی از دوستان مشتاق و با استعداد راهشو پیدا کرده، هر چی هست اول لطف خدا بوده و بعد تلاش خودش

بیشتر از این خبرا به ما بدید، خوشحال میشیم 🥰

این لینک نقشه راه 👇
https://news.1rj.ru/str/gocasts/98

نقشه راه رو جدی بگیرید 🚀
منم در خدمتتون هستم ❤️
یا علی 🌹

#golang_roadmap

@gocasts
16🤩12👍6🎉4🔥2
💣 یه نکته در مورد دیتابیس mysql/mariadb روی scale

یه سری جداول داریم، تخمین مون اینه که خیلی تعداد رکوردهاش زیاد میشه، مثلا شاید به ماهی ۵۰ تا ۱۰۰ میلیون رکورد برسه
نکته دیگه اینه که این رکوردهارو موقت احتیاج داریم تو دیتابیس ذخیره کنیم، و بعد از مثلا چند هفته دیگه به رکوردهای قدیمی احتیاجی نداریم

خب دنبال راه حل بودیم که حجم دیتابیس رو مدیریت کنیم

راه حل اول: بیایم یه job بنویسیم که هر چند وقت یکبار بره رکوردهای قدیمی رو از جدول مورد نظر پاک کنه

نتیجه: جواب نمیده!!!!!
دو تا مشکل داریم، یک اینکه وقتی تو دیتابیس mysql ما رکوردی رو حذف می کنیم، فضای دیسک اشغال شده برای اون رکورد پس داده نمیشه، بلکه برای ذخیره کردن رکورد جدید ازش مجددا استفاده میشه
این دوتا مشکل ایجاد میکنه
یک اینکه فضای دیسک اشغال شده حتی با وجود حذف رکوردهای قدیمی همیشه در حال افزایش هست و هیچوقت کم نمیشه
دوم اینکه مشکل data fragmentation بوجود میاد که performance رو برای read کردن بد میکنه
https://www.databasejournal.com/mysql/mysql-data-fragmentation-what-when-and-how

راه حل دوم: استفاده از partitioning
ما میتونیم دیتارو shard کنیم و در partitionهای مختلف نگه داری کنیم
برای partition کردن سیاست های مختلفی میشه در نظر گرفت، مثلا بر اساس تعداد رکورد (همون id اگه bigint هست) یا براساس create_time (این خیلی توصیه نمیشه)
خوبیش این میشه که وقتی partition میکنی، هر وقت که دیتاهای قدیمی رو لازم نداشتی، میتونی براحتی partitionهای قدیمی رو delete کنی، اینطوری فضای دیسک خالی میشه، مشکل data fragmentation هم بوجود نمیاد

خوشحال میشم اگه تجربه مشابهی دارید، یا پیشنهادی دارید، تو کامنت ها بنویسید

@gocasts

#mysql #database_at_scale #sharding


کامنت هایی که نکات خوبی رو اشاره کردند، اینجا لیست می‌کنم

https://news.1rj.ru/str/c/1525472919/1552

https://news.1rj.ru/str/c/1525472919/1529

https://news.1rj.ru/str/c/1525472919/1551

https://news.1rj.ru/str/c/1525472919/1553

https://news.1rj.ru/str/c/1525472919/1531

https://news.1rj.ru/str/c/1525472919/1529

https://news.1rj.ru/str/c/1525472919/1532
👍24👏3🔥2
Go Casts 🚀
💣 یه نکته در مورد دیتابیس mysql/mariadb روی scale یه سری جداول داریم، تخمین مون اینه که خیلی تعداد رکوردهاش زیاد میشه، مثلا شاید به ماهی ۵۰ تا ۱۰۰ میلیون رکورد برسه نکته دیگه اینه که این رکوردهارو موقت احتیاج داریم تو دیتابیس ذخیره کنیم، و بعد از مثلا چند…
به نام خدای حسین (ع) 🖤

سلام خدمت همه دوستان گل
امیدوارم حالتون خوب باشه

«نکته طراحی سیستم»
مسئولیت تصمیم‌های مهم رو خودتون بر عهده بگیرید

در تکمیل پست قبلی، لازم هست چند تا مورد رو باهاتون به اشتراک بذارم.

اولا اینکه هدف من از به اشتراک گذاشتن چنین نکات ریزی اینه که سه چهارتا کلمه جدید رو گوشه ذهنتون بندازه، که اگه یوقت حین انجام یه پروژه و حل یه چالش بهش احتیاج داشتید بتونه بهتون ایده بده. 💡

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

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

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

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

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

@gocasts

#system_design
👍2520🔥2👏1
سلام دوستان، وقت بخیر

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

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

https://talk.gocasts.ir/c/job-board?utm_source=telegram&utm_medium=message&utm_campaign=job-board

اولین آگهی هم برای «پلی پاد» هست، پلتفرم ابری بازی، که فکر می‌کنم چالش‌های جذابی داشته باشه، اگه دوست داشتید اقدام کنید

پی‌نوشت: آگهی رایگان منتشر شده و بحث تبلیغاتی نیست.

@gocasts

#استخدام

#job_board
👍84🔥1🤩1
Go Casts 🚀
گفتگوی کوتاه و شنیدنی با مهندس کیانوش مختاریان مهندس نرم افزار، رهبر فنی و مدیر در گوگل فایل صوتی گفتگو به همراه متن خلاصه نکات مهم آن در سایت GoCasts منشتر شد🚀 امیدوارم که مفید باشه و باز هم مثل همیشه ممنون از همراهی تون 🌹 https://gocasts.ir/talk-with…
گفتگوی شنیدنی با مهندس مصطفی صولتی
مهندس نرم افزار و CTO در اسنپ‌کیچن!

فایل صوتی گفتگو در سایت GoCasts منشتر شد🚀

امیدوارم که مفید باشه و باز هم مثل همیشه ممنون از همراهی تون 🌹

در این جلسه در مورد مسائل مختلف مهندسی نرم‌افزار و همچنین چالش‌هایی که بچه‌ها در مصاحبه‌ها باهاش مواجه هستن صحبت کردیم

https://gocasts.ir/talk-with-mostafa-solati?utm_source=telegram&utm_medium=message&utm_campaign=talk-with-solati


شما می‌تونید کد زبان کهربا رو از طریق لینک زیر ببینید، ستاره دادن به پروژه فراموش نشه✌️
https://github.com/kahroba-lang/kahroba

#talk_with_solati

@gocasts
21👍12🔥6
⁉️سوال
شما یبار گفتید کتابی که وارد implentaion code شده باشه خیلی خوب نیست من دلیل منطقیشو متوجه نشدم ایا کد زدن همراه کتاب خوندن باعث تقویت muscle memory نمیشه ؟ و اینکه به نظرم افراد جونیوری نمونه ی کد ببینن بهتره تا اینکه به تنهایی به مفاهیم تکیه کنن. ممنون این مبحثو باز کنید ببینم نظرتون چیه 😇

@gocasts
👍52
Go Casts 🚀
Voice message
📌من تو voice اشتباهی میگم کتاب data driven applications منظورم این کتابه
Data-Oriented Programming: Reduce software complexity
https://www.manning.com/books/data-oriented-programming

اینم یه نمونه دیگه که از نظر من تو همین دسته است:
Pro Go: The Complete Guide to Programming Reliable and Efficient Software Using Golang
https://www.amazon.com/Pro-Go-Complete-Programming-Efficient/dp/1484273540

🖊 من در حدی نیستم که بخوام در مورد کتاب خوندن یا نخوندن چیزی رو تجویز کنم، فقط تجربه شخصی خودم رو بیان کردم. ضمنا معتقدم حتی بدترین کتاب هم خوندنش کلی نکته مثبت به آدم آموزش میده، حداقلش تجربه خوندن کتاب بد رو به آدم میده که بعدا قدر کتاب خوب رو بدونه، بفهمه تفاوت کتاب خوب و بد چیه

🎥 خیلی وقت‌ها هم گفتم که آموزش‌های ویدیویی مثل فست‌فود می‌مونه، آدم خیلی سریع یه سری چیزای سطحی یاد می‌گیره، ولی اگه میخوای یه مبحثی رو عمیق یاد بگیری، بهتره کتاب بخونی در موردش، ولی در عوض دوره‌های ویدیویی بهتر میتونن تمرین کد زدن رو آموزش بدن

💻 ترکیب خوندن کتاب برای درک عمیق مفاهیم و دیدن دوره ویدیویی برای تمرین کردن کار با زبان و ابزارها، ترکیب خیلی مفیدی می‌تونه باشه

📚 سعی نکنید در مورد مباحث مهندسی نرم‌افزار کتابی تلفیق شده با همون زبان و ابزار خودتون از جنس خوب‌ش پیدا کنید، اگه می‌خواید در مورد شبکه مطلب بخونید، یه کتاب خوب شبکه پیدا کنید، مهم نیست کدش مثلا به زبان c باشه و شما زبان اصلی‌تون مثلا گولنگه یا پایتونه

@gocasts

#book #video_course
10👍6👏2
سلام به همه دوستان عزیز
بنده بر حسب انجام وظیفه، چند ماه پیش چند نفر از دوستان با استعداد و خوب Go Casts رو به شرکت محترم اسنپ معرفی کردم.
طبیعتا تیم خوب منابع انسانی با توجه به حجم بالای متقاضیان و با در نظر گرفتن هزار و یک فاکتوری که ممکنه خیلی‌هاشم غیر فنی باشه، با برخی از دوستان تماس گرفتند (ممکنه حتی چند ماه طول بکشه که تماس بگیرند).

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

https://talk.gocasts.ir/t/topic/82?u=hossein

@gocasts

#interview
39👍13🔥5
سلام دوستان، به درخواست یکی از دوستان یه نقشه راه برای علاقه‌مندان به زبان پایتون آماده کردم، امیدوارم که مفید باشه براتون، این نقشه راه بیشتر برای افرادی مناسب هست که تازه میخوان پایتون یا بکند رو شروع کنند، هر چند که برای باتجربه تر ها هم ممکنه مفید باشه

https://talk.gocasts.ir/t/topic/77?u=hossein

پی نوشت:‌ همانطور که مهندس مختاری هم در گفتگوی با Go Casts اشاره کردند، برنامه نویس خوبه که یه زبان type-saftey دار مثل گولنگ، و یه زبان type-safety ندار مثل پایتون رو بلد باشه. من توصیه نمی کنم دوتاش رو با هم یاد بگیری، اما بلد بودن پایتون حداقل در حد بیسیک میتونه دید خوبی به شما بده، مخصوصا اینکه پایتون مفسری هست نه کامپایلری، و خیلی زبان قدرتمند و پرکاربردی هم هست..


@gocasts

#roadmap #python #backend
👍7🔥7
روز برنامه‌نویس به همه اونایی که کد میزنن تا کسب‌وکار نخوابه و کلی آدم نون ببرن سر سفره زن و بچه‌شون، مبارک 🌹

@gocasts

#programmers_day
🔥34🎉2010👍7
سلام به همه دوستان
امیدوارم که هر جا که هستید خوب و خوش و سلامت باشید

در مورد اتفاقاتی که اخیرا افتاده هر انسانی با هر رنگ و نژادی متاثر میشه، من خودم دختر دارم و میدونم دختر حکم نفس رو برای پدر داره

این رو هم اضافه کنم که اظهار نظر نکردن به هیچ وجه به معنی بی تفاوت بودن نیست…

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

سعی میکنم بزودی نوشتن مطالب فنی رو از سر بگیرم ان شاءالله
مواظب خودتون باشید 🌹
یاعلی ❤️
59👍5🔥2