سلام دوستان امیدوارم حالتون خوب باشه
بحث observability و monitoring مبحث خیلی مهمی برای cloud native application ها هست، پیشنهاد میکنم این پادکست رو گوش بدید
Instrumentation for gophers
https://changelog.com/gotime/226
#monitoring #observability #instrumentation
@gocasts
بحث observability و monitoring مبحث خیلی مهمی برای cloud native application ها هست، پیشنهاد میکنم این پادکست رو گوش بدید
Instrumentation for gophers
https://changelog.com/gotime/226
#monitoring #observability #instrumentation
@gocasts
Changelog
Instrumentation for gophers with Björn Rabenstein & Bartlomiej Płotka (Go Time #226)
Björn Rabenstein & Bartlomiej Płotka join Mat & Johnny to discuss observability, monitoring and instrumentation for gophers.
👍15❤1
صحبتی با عزیزانم که در ابتدای راه فرانت و ری اکت هستند:
سلام وقت بخیر، امیدوارم حالت خوب باشه. من خیلی شاید نتونم تو بحث فنی فرانت توصیه ای برات داشته باشم. اما به صورت کلی چند تا نکته رو در حد دانش اندک خودم میگم.
اولا به هیچ وجه از مسیری که اومدی برنگرد، مطمئن باش با توکل به خدا، ان شاءالله روزهای خیلی درخشانی در پیش خواهی داشت، باور داشته باش به خودت و توانایی هات.
نکته دومی که دارم اینه که سعی کن دانشی که داری حتما کاربردی باشه، این یعنی جای اینکه وقت بذاری چندتا فریمورک و کتابخونه جدید رو به تجربه هات اضافه کنی، سعی کن یک پروژه هر چند کوچک رو صفر تا صد انجام بدی. سطح دانش شما مهم نیست، بیشتر عمق دانش مهمه، برای اینکه عمق دانشت زیاد بشه حتما سعی کن پروژه های مختلف رو تا انتها پیش ببری، دقت کن که میگم تا انتها چون هر پروژه ای در ابتدا شیرینه، اما وسط کار که چالش ها بوجود میان آدم کم انگیزه میشه و بیخیال پروژه میشه، اما اصل تجربه و یادگیری در همون چالش ها و حل کردنشون نهفته است.
در مورد یافتن کار و مصاحبه هم سعی کن تا میتونی برای شرکت های مختلف رزومه بفرست و حتما حتما روند مصاحبه رو برای خودت ضبط کن و نقاط ضعفت رو شناسایی کن و سعی کن حتما رفعشون کنی. قطعا اگه زبان انگلیسی ت رو هم تقویت کنی مطمئن باش میتونی ریموت با شرکت های خارجی کار کنی.
به جرات میتونم بگم ری اکت الان بیشترین متقاضی رو در ایران و دنیا داره و خیلی خیلی مهارت پر رونقی رو یاد گرفتی، پس به هیچ وجه پا پس نکش و راهت رو پیش برو
در آخر بهت یه شخص و دوره اش رو معرفی می کنم، من خودم ندیدم دوره اش رو اما فکر می کنم به عمیق شدن دانش ری اکت کمک کنه
epic react
https://epicreact.dev/
موفق باشی ❤️
#front #react
@gocasts
سلام وقت بخیر، امیدوارم حالت خوب باشه. من خیلی شاید نتونم تو بحث فنی فرانت توصیه ای برات داشته باشم. اما به صورت کلی چند تا نکته رو در حد دانش اندک خودم میگم.
اولا به هیچ وجه از مسیری که اومدی برنگرد، مطمئن باش با توکل به خدا، ان شاءالله روزهای خیلی درخشانی در پیش خواهی داشت، باور داشته باش به خودت و توانایی هات.
نکته دومی که دارم اینه که سعی کن دانشی که داری حتما کاربردی باشه، این یعنی جای اینکه وقت بذاری چندتا فریمورک و کتابخونه جدید رو به تجربه هات اضافه کنی، سعی کن یک پروژه هر چند کوچک رو صفر تا صد انجام بدی. سطح دانش شما مهم نیست، بیشتر عمق دانش مهمه، برای اینکه عمق دانشت زیاد بشه حتما سعی کن پروژه های مختلف رو تا انتها پیش ببری، دقت کن که میگم تا انتها چون هر پروژه ای در ابتدا شیرینه، اما وسط کار که چالش ها بوجود میان آدم کم انگیزه میشه و بیخیال پروژه میشه، اما اصل تجربه و یادگیری در همون چالش ها و حل کردنشون نهفته است.
در مورد یافتن کار و مصاحبه هم سعی کن تا میتونی برای شرکت های مختلف رزومه بفرست و حتما حتما روند مصاحبه رو برای خودت ضبط کن و نقاط ضعفت رو شناسایی کن و سعی کن حتما رفعشون کنی. قطعا اگه زبان انگلیسی ت رو هم تقویت کنی مطمئن باش میتونی ریموت با شرکت های خارجی کار کنی.
به جرات میتونم بگم ری اکت الان بیشترین متقاضی رو در ایران و دنیا داره و خیلی خیلی مهارت پر رونقی رو یاد گرفتی، پس به هیچ وجه پا پس نکش و راهت رو پیش برو
در آخر بهت یه شخص و دوره اش رو معرفی می کنم، من خودم ندیدم دوره اش رو اما فکر می کنم به عمیق شدن دانش ری اکت کمک کنه
epic react
https://epicreact.dev/
موفق باشی ❤️
#front #react
@gocasts
Epic React
Learn React 19 with Epic React by Kent C. Dodds
Get Extremely Good at React
❤20👍5🔥3
خودکفایی و مرتب سازی در سیستم های مبتنی بر رویداد
https://virgool.io/@heymate.ir/idempotency-and-ordering-in-event-driven-systems-alxbjikrwo4z
#idempotency #event_driven_system #ordering
@gocasts
https://virgool.io/@heymate.ir/idempotency-and-ordering-in-event-driven-systems-alxbjikrwo4z
#idempotency #event_driven_system #ordering
@gocasts
ویرگول
خودکفایی و مرتب سازی در سیستم های مبتنی بر رویداد
در بحث معماری های مبتنی بر رویداد (event-driven) همیشه یکی از مهم ترین مسائل خودکفایی (idempotency) و مرتب سازی (ordering) است.
👍10
سلام به همگی، لطفا نظرتون رو بگید، چون برای من مهمه
من از اول راه با هدف monetize کردن و درآمدزایی GoCasts رو شروع کردم، بنا به دلایل مختلف که یکی از مهم ترین هاش نداشتن وقت بوده این کار رو نکردم. در این تقریبا یکسال فعالیت GoCasts هم سعی کردم به صورت جسته گریخته در حد دانش اندک خودم تجربیاتم رو به اشتراک بذارم، امیدوارم که مفید بوده باشه.
حالا یه جواب صادقانه از شما میخوام
اگه ان شاءالله برنامه ریزی جدی انجام بدم و یک یا چند دوره برای golang و backend تولید کنم با هدف درآمدزایی، حاضرید براش هزینه کنید؟ اصلا به کارتون میاد؟
اینم چیزیه که برای دوره ها تو ذهنمه
قطعا هزینه دوره ارزان نخواهد بود، چون اصلا انگیزه ای نمیمونه برای تولیدش، سعی می کنم انصاف رو رعایت کنم!
دوره ها برای افراد مبتدی و حرفه ای جداگانه خواهد بود، قطعا افراد مبتدی در اولویت هستند.
موضوع دوره ها اختصاصی خواهد بود، golang یا بکند و DevOps و distributed systemها.
فعالیت GoCasts به همین نحو و بصورت رایگان ادامه خواهد داشت فارغ از بحث دوره ها.
چرا دوره ها رایگان نیست؟
چون تولید دوره زمانبر هست و به انرژی و وقت زیاد احتیاج داره، اگه دوره رایگان باشه احتمالا هیچوقت دوره تولید نمیشه!
برای افرادی که به هر دلیلی توان پرداخت ندارند اگه مستحق باشند (یعنی دوره واقعا براشون کاربردی باشه) ان شاءالله راه کارهایی قرار میدیم
@gocasts
من از اول راه با هدف monetize کردن و درآمدزایی GoCasts رو شروع کردم، بنا به دلایل مختلف که یکی از مهم ترین هاش نداشتن وقت بوده این کار رو نکردم. در این تقریبا یکسال فعالیت GoCasts هم سعی کردم به صورت جسته گریخته در حد دانش اندک خودم تجربیاتم رو به اشتراک بذارم، امیدوارم که مفید بوده باشه.
حالا یه جواب صادقانه از شما میخوام
اگه ان شاءالله برنامه ریزی جدی انجام بدم و یک یا چند دوره برای golang و backend تولید کنم با هدف درآمدزایی، حاضرید براش هزینه کنید؟ اصلا به کارتون میاد؟
اینم چیزیه که برای دوره ها تو ذهنمه
قطعا هزینه دوره ارزان نخواهد بود، چون اصلا انگیزه ای نمیمونه برای تولیدش، سعی می کنم انصاف رو رعایت کنم!
دوره ها برای افراد مبتدی و حرفه ای جداگانه خواهد بود، قطعا افراد مبتدی در اولویت هستند.
موضوع دوره ها اختصاصی خواهد بود، golang یا بکند و DevOps و distributed systemها.
فعالیت GoCasts به همین نحو و بصورت رایگان ادامه خواهد داشت فارغ از بحث دوره ها.
چرا دوره ها رایگان نیست؟
چون تولید دوره زمانبر هست و به انرژی و وقت زیاد احتیاج داره، اگه دوره رایگان باشه احتمالا هیچوقت دوره تولید نمیشه!
برای افرادی که به هر دلیلی توان پرداخت ندارند اگه مستحق باشند (یعنی دوره واقعا براشون کاربردی باشه) ان شاءالله راه کارهایی قرار میدیم
@gocasts
❤18👍6🎉2
Go Casts 🚀
سلام به همگی، لطفا نظرتون رو بگید، چون برای من مهمه من از اول راه با هدف monetize کردن و درآمدزایی GoCasts رو شروع کردم، بنا به دلایل مختلف که یکی از مهم ترین هاش نداشتن وقت بوده این کار رو نکردم. در این تقریبا یکسال فعالیت GoCasts هم سعی کردم به صورت جسته…
دوره ای که هزینه داشته باشه (احتمالا بیشتر از ۱ یا حتی ۲ میلیون تومان) حاضرید براش هزینه کنید؟ مثلا دوره آموزش گولنگ و بکند
Anonymous Poll
17%
ارزش این همه هزینه نداره
38%
نمیدونم، ممکنه بخرم
21%
پول ندارم بخرم
25%
میخرم
👍15
از عرش سلام سرمدی آوردند ..... آیینه ی حُسن سرمدی آوردند
با آمدن رضا(ع) از باغ بهشت ..... یک دسته گل محمدی آوردند
سلام خدمت همه دوستان گل
به مناسبت دهه کرامت (همزمان با ولادت حضرت معصومه(س) و با ولادت برادرش امام رضا(ع)) فردا جمعه ۲۰ خرداد ساعت ۱۶ به مدت یک ساعت جلسه پرسش و پاسخ «مشاوره شغلی» برگزار میشه
دوستانی که برای ادامه مسیر نیاز به راهنمایی دارند در خدمتشون هستیم
لینک جلسه متعاقبا در همین کانال اطلاع رسانی میشه خدمتتون
@gocasts
با آمدن رضا(ع) از باغ بهشت ..... یک دسته گل محمدی آوردند
سلام خدمت همه دوستان گل
به مناسبت دهه کرامت (همزمان با ولادت حضرت معصومه(س) و با ولادت برادرش امام رضا(ع)) فردا جمعه ۲۰ خرداد ساعت ۱۶ به مدت یک ساعت جلسه پرسش و پاسخ «مشاوره شغلی» برگزار میشه
دوستانی که برای ادامه مسیر نیاز به راهنمایی دارند در خدمتشون هستیم
لینک جلسه متعاقبا در همین کانال اطلاع رسانی میشه خدمتتون
@gocasts
❤22🔥3🎉2
Go Casts 🚀
از عرش سلام سرمدی آوردند ..... آیینه ی حُسن سرمدی آوردند با آمدن رضا(ع) از باغ بهشت ..... یک دسته گل محمدی آوردند سلام خدمت همه دوستان گل به مناسبت دهه کرامت (همزمان با ولادت حضرت معصومه(س) و با ولادت برادرش امام رضا(ع)) فردا جمعه ۲۰ خرداد ساعت ۱۶ به مدت…
لینک جلسه پرسش و پاسخ «مشاوره شغلی»
https://join.skype.com/JBdJcgU28buU
جلسه رأس ساعت ۱۶ برگزار میشه ان شاءالله
@gocasts
https://join.skype.com/JBdJcgU28buU
جلسه رأس ساعت ۱۶ برگزار میشه ان شاءالله
@gocasts
👍5❤2🔥1🤩1
Go Casts 🚀
از عرش سلام سرمدی آوردند ..... آیینه ی حُسن سرمدی آوردند با آمدن رضا(ع) از باغ بهشت ..... یک دسته گل محمدی آوردند سلام خدمت همه دوستان گل به مناسبت دهه کرامت (همزمان با ولادت حضرت معصومه(س) و با ولادت برادرش امام رضا(ع)) فردا جمعه ۲۰ خرداد ساعت ۱۶ به مدت…
Audio
جلسه پرسش و پاسخ «مشاوره شغلی»
تو این جلسه در مورد مسیری که به نظرم روتین هست و یه برنامه نویس خوب و معمولی طی می کنه صحبت کردم و در آخر هم پرسش و پاسخ داشتیم با دوستان عزیز
قطعا تجربه شخصی من در مسیر پیشنهادی دخیل بوده و تنها راه و مسیر شغلی، این مسیر پیشنهادی نیست، اما فکر می کنم نقاط اشتراک زیادی میتونید پیدا کنید.
#career_qa
@gocasts
عضویت در خبرنامه Hey Mate 👇
heymate.ir
تو این جلسه در مورد مسیری که به نظرم روتین هست و یه برنامه نویس خوب و معمولی طی می کنه صحبت کردم و در آخر هم پرسش و پاسخ داشتیم با دوستان عزیز
قطعا تجربه شخصی من در مسیر پیشنهادی دخیل بوده و تنها راه و مسیر شغلی، این مسیر پیشنهادی نیست، اما فکر می کنم نقاط اشتراک زیادی میتونید پیدا کنید.
#career_qa
@gocasts
عضویت در خبرنامه Hey Mate 👇
heymate.ir
👍18❤7🔥2
سلام به همگی
تو نسخه جدید گولنگ یعنی ۱.۱۸ یه قابلیتی اضافه شده که خیلی کاراییش بیشتر از جنریک هست 😉
خیلی وقت ها پیش میاد چند ریپوزیتوی داریم که حین توسعه میخوایم همزمان دو یا چندتاشونو تغییر بدیم، این کار قبلا خیلی اذیت کننده بود، چون مجبور میشدیم یکی رو زودتر دیپلوی کنیم و یا از راه حل replace استفاده کنیم در go.mod، و واقعا این قابلیت multi module workspace خیلی ضروری بود اضافه شدنش
این لینک ها رو یه نگاه بندازید
https://go.dev/doc/tutorial/workspaces
https://go.dev/blog/get-familiar-with-workspaces
https://go.googlesource.com/proposal/+/master/design/45713-workspace.md
@gocasts
تو نسخه جدید گولنگ یعنی ۱.۱۸ یه قابلیتی اضافه شده که خیلی کاراییش بیشتر از جنریک هست 😉
خیلی وقت ها پیش میاد چند ریپوزیتوی داریم که حین توسعه میخوایم همزمان دو یا چندتاشونو تغییر بدیم، این کار قبلا خیلی اذیت کننده بود، چون مجبور میشدیم یکی رو زودتر دیپلوی کنیم و یا از راه حل replace استفاده کنیم در go.mod، و واقعا این قابلیت multi module workspace خیلی ضروری بود اضافه شدنش
این لینک ها رو یه نگاه بندازید
https://go.dev/doc/tutorial/workspaces
https://go.dev/blog/get-familiar-with-workspaces
https://go.googlesource.com/proposal/+/master/design/45713-workspace.md
@gocasts
go.dev
Tutorial: Getting started with multi-module workspaces - The Go Programming Language
👍15🔥7🤩1
Go Casts 🚀
چرا انتخاب uuid به عنوان primary key میتونه به شدت performance دیتابیس شمارو تحت تاثیر قرار بده؟ نمیتونم بگم این ویدیو چقدر دید خوبی میده به ما که چطور با دیتابیس برخورد کنیم. وقتی که دانش کافی و شناخت کافی از دیتابیس نداریم، خیلی تصمیمات اشتباهی میگیریم…
سلام دوستان این مقاله کوتاه خوندنش خالی از لطف نیست
Unobvious things you need to know about key-value stores
https://event-driven.io/en/key-value-stores
یکی از موضوعاتی که قبلا هم در موردش صحبت کردیم بحث استفاده از uuid به عنوان primary key بود که میتونه فاجعه به بار بیاره
برخی از دوستان هم به درستی اشاره کردند که دیتابیس ها سعی کردند این مشکل رو تا حدودی حل کنند، تو این مقاله نکات خیلی جالبی در مورد پیاده سازیش گفته شده
https://www.2ndquadrant.com/en/blog/sequential-uuid-generators/
#database #index
@gocasts
Unobvious things you need to know about key-value stores
https://event-driven.io/en/key-value-stores
یکی از موضوعاتی که قبلا هم در موردش صحبت کردیم بحث استفاده از uuid به عنوان primary key بود که میتونه فاجعه به بار بیاره
برخی از دوستان هم به درستی اشاره کردند که دیتابیس ها سعی کردند این مشکل رو تا حدودی حل کنند، تو این مقاله نکات خیلی جالبی در مورد پیاده سازیش گفته شده
https://www.2ndquadrant.com/en/blog/sequential-uuid-generators/
#database #index
@gocasts
Oskar Dudycz
Unobvious things you need to know about key-value stores
Event-Driven by Oskar Dudycz
👍10
Go Casts 🚀
بسم الله الرحمن الرحیم معرفی کتاب دوستان من سعی می کنم کتاب های خوبی که مطالعه شون میتونه به شما کمک کنه که دید بهتری نسبت به دنیای cloud-native و microservice ها داشته باشید بهتون معرفی کنم و در حد توان نکاتی رو به صورت خلاصه وار در مورد اون ها به شما ارائه…
سلام دوستان، سال گذشته بخش های زیادی از کتاب designing distributed systems رو که نوشته آقای brendan burns بود بصورت خلاصه در کانال قرار دادم، شما با جستجوی هشتگ
#designing_distributed_systems_brendan_burns
میتونید همه مطالب مربوط به این کتاب رو بخونید.
نکته جالب اینه که من سعی کردم اکثر الگوهایی که برای طراحی سیستم های توزیع شده استفاده میشه رو به صورت خلاصه بگم و مطالعه و مرور این الگوها بهتون کمک میکنه در کدنویسی روزمره انتخاب های بهتری برای نرم افزار در حال توسعه تون داشته باشید
@gocasts
#designing_distributed_systems_brendan_burns
میتونید همه مطالب مربوط به این کتاب رو بخونید.
نکته جالب اینه که من سعی کردم اکثر الگوهایی که برای طراحی سیستم های توزیع شده استفاده میشه رو به صورت خلاصه بگم و مطالعه و مرور این الگوها بهتون کمک میکنه در کدنویسی روزمره انتخاب های بهتری برای نرم افزار در حال توسعه تون داشته باشید
@gocasts
👍30❤8🔥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
لینک سری مقالات معرفی شده
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
Telegram
Go Casts 🚀
دوستان سلام، در مورد تست نویسی در golang یه سری مقاله خیلی خوب بهتون معرفی میکنم، با خوندن این سری مقاله، عملا هر آنچه که در مورد تست نویسی در گولنگ باید بدونید رو یاد میگیرد، بقیه ش دیگه میشه تمرین و تجربه در کار...
Testing in Go: First Principles
http…
Testing in Go: First Principles
http…
👍14❤5🔥2
CKA-1.pdf
5.6 MB
دوستان این یه دفترچه راهنمای کوبرنتیز به زبان فارسی ست که آقای افشاری زحمت کشیدن
بسی لذت بردم از این حرکت قشنگ 🌹👌👏
https://www.linkedin.com/posts/activity-6952602627079581696-2cur
#kubernetes #devops
@gocasts
بسی لذت بردم از این حرکت قشنگ 🌹👌👏
https://www.linkedin.com/posts/activity-6952602627079581696-2cur
#kubernetes #devops
@gocasts
🔥21👍14❤5
سلام به همه دوستان عزیز
ان شاء الله بزودی خبرهای خوشی در راهه 😍
اگه دوست داشتید اکانت توییتر و اینستاگرام رو هم دنبال کنید
ممنون از همراهیتون ❤️
توییتر
https://twitter.com/go_casts
اینستاگرام
https://instagram.com/gocasts.ir
#social
@gocasts
ان شاء الله بزودی خبرهای خوشی در راهه 😍
اگه دوست داشتید اکانت توییتر و اینستاگرام رو هم دنبال کنید
ممنون از همراهیتون ❤️
توییتر
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
گفتگوی کوتاه، جذاب و شنیدنی با مهندس کیانوش مختاریان
مهندس نرم افزار، رهبر فنی و مدیر در گوگل
این گفتگو بصورت پرسش و پاسخ هایی در مورد مسائل مهم مهندسی نرم افزار و همچنین مسائلی که مهندسین جوان باید به آن توجه کنند بود
گفتگو برای شخص بنده به شدت آموزنده بود
ان شاءالله به زودی منتشر میشه
#talk_with_kian #google_software_engineer
@gocasts
👍35🔥19👏2
Go Casts 🚀
سلام به همه دوستان گفتگوی کوتاه، جذاب و شنیدنی با مهندس کیانوش مختاریان مهندس نرم افزار، رهبر فنی و مدیر در گوگل این گفتگو بصورت پرسش و پاسخ هایی در مورد مسائل مهم مهندسی نرم افزار و همچنین مسائلی که مهندسین جوان باید به آن توجه کنند بود گفتگو برای شخص…
گفتگوی کوتاه و شنیدنی با مهندس کیانوش مختاریان
مهندس نرم افزار، رهبر فنی و مدیر در گوگل
فایل صوتی گفتگو به همراه متن خلاصه نکات مهم آن در سایت GoCasts منشتر شد🚀
امیدوارم که مفید باشه و باز هم مثل همیشه ممنون از همراهی تون 🌹
https://gocasts.ir/talk-with-kain?utm_source=telegram&utm_medium=message&utm_campaign=talk-with-kian
#talk_with_kian
@gocasts
مهندس نرم افزار، رهبر فنی و مدیر در گوگل
فایل صوتی گفتگو به همراه متن خلاصه نکات مهم آن در سایت GoCasts منشتر شد🚀
امیدوارم که مفید باشه و باز هم مثل همیشه ممنون از همراهی تون 🌹
https://gocasts.ir/talk-with-kain?utm_source=telegram&utm_medium=message&utm_campaign=talk-with-kian
#talk_with_kian
@gocasts
GoCasts
گفتگوی شنیدنی با مهندس کیانوش مختاریان
آموزش زبان برنامه نویسی Go با GoCasts. هدف ما آموزش برنامه نویسی به ساده ترین شکل ممکن است.
🔥25❤9👏3🎉2
Go Casts 🚀
سلام دوستان نمیدونم بگم چقدر از شنیدن این خبر خوشحال شدم، الهی که همگی تون زیر سایه مهر خداوند و لطف امام زمان خوب و خوش و موفق باشید 🌹 در مورد نقشه راه هم باز تاکید میکنم که دوستان لطفا جدی بگیرید، نقشه راه در عین حال که کوتاه و سریعه، واقعا سعی کردم همه…
الحمدلله، الحمدلله 😍
خیلی خوشحالم یکی از دوستان مشتاق و با استعداد راهشو پیدا کرده، هر چی هست اول لطف خدا بوده و بعد تلاش خودش
بیشتر از این خبرا به ما بدید، خوشحال میشیم 🥰
این لینک نقشه راه 👇
https://news.1rj.ru/str/gocasts/98
نقشه راه رو جدی بگیرید 🚀
منم در خدمتتون هستم ❤️
یا علی 🌹
#golang_roadmap
@gocasts
خیلی خوشحالم یکی از دوستان مشتاق و با استعداد راهشو پیدا کرده، هر چی هست اول لطف خدا بوده و بعد تلاش خودش
بیشتر از این خبرا به ما بدید، خوشحال میشیم 🥰
این لینک نقشه راه 👇
https://news.1rj.ru/str/gocasts/98
نقشه راه رو جدی بگیرید 🚀
منم در خدمتتون هستم ❤️
یا علی 🌹
#golang_roadmap
@gocasts
❤16🤩12👍6🎉4🔥2
سلام به همگی
یه ارائه خوب در مورد channelها در گولنگ
https://www.youtube.com/watch?v=KBZlN0izeiY&t=115s
@gocasts
#go #golang #channel
یه ارائه خوب در مورد channelها در گولنگ
https://www.youtube.com/watch?v=KBZlN0izeiY&t=115s
@gocasts
#go #golang #channel
YouTube
GopherCon 2017: Understanding Channels - Kavya Joshi
Channels provide a simple mechanism for goroutines to communicate, and a powerful construct to build sophisticated concurrency patterns. We will delve into the inner workings of channels and channel operations, including how they're supported by the runtime…
👍22
💣 یه نکته در مورد دیتابیس 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
یه سری جداول داریم، تخمین مون اینه که خیلی تعداد رکوردهاش زیاد میشه، مثلا شاید به ماهی ۵۰ تا ۱۰۰ میلیون رکورد برسه
نکته دیگه اینه که این رکوردهارو موقت احتیاج داریم تو دیتابیس ذخیره کنیم، و بعد از مثلا چند هفته دیگه به رکوردهای قدیمی احتیاجی نداریم
خب دنبال راه حل بودیم که حجم دیتابیس رو مدیریت کنیم
راه حل اول: بیایم یه 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
Database Journal
MySQL Data Fragmentation - What, When and How | Database Journal
MySQL tables, including MyISAM and InnoDB, two of the most common types, experience fragmentation as data is inserted and deleted randomly. Fragmentation
👍24👏3🔥2
Go Casts 🚀
💣 یه نکته در مورد دیتابیس mysql/mariadb روی scale یه سری جداول داریم، تخمین مون اینه که خیلی تعداد رکوردهاش زیاد میشه، مثلا شاید به ماهی ۵۰ تا ۱۰۰ میلیون رکورد برسه نکته دیگه اینه که این رکوردهارو موقت احتیاج داریم تو دیتابیس ذخیره کنیم، و بعد از مثلا چند…
به نام خدای حسین (ع) 🖤
سلام خدمت همه دوستان گل
امیدوارم حالتون خوب باشه
«نکته طراحی سیستم»
مسئولیت تصمیمهای مهم رو خودتون بر عهده بگیرید
در تکمیل پست قبلی، لازم هست چند تا مورد رو باهاتون به اشتراک بذارم.
اولا اینکه هدف من از به اشتراک گذاشتن چنین نکات ریزی اینه که سه چهارتا کلمه جدید رو گوشه ذهنتون بندازه، که اگه یوقت حین انجام یه پروژه و حل یه چالش بهش احتیاج داشتید بتونه بهتون ایده بده. 💡
دوما اینکه، من واقعا لذت میبرم از اینکه اکثر دوستان وقتی تو کامنتها پیام میدن به این موضوع توجه میکنن که خیلی فاکتورهای فنی و غیرفنی در گرفتن یه تصمیم دخیل هست و سعی نمیکنن راه حل خودشون رو به عنوان راه حل بهتر اثبات کنن، نکته ای که در کامنتها دیدم اینه که دوستان هم سعی میکنن من و شما رو با چند تا کلمه کلیدی و راه حل کلی آشنا کنن که شاید تو پروژه های بعدی و در مواجه شدن با چالشهای بعدی بهمون کمک کنه. دم همهتون گرم 🌹
سومین نکتهای که میخوام خدمتتون عرض کنم اینه که یکی از بزرگترین درسهایی که بنده حقیر در طی این چندین سال فعالیت در حوزه برنامهنویسی و مهندسی نرمافزار از بزرگانی چون شما آموختم اینه که «هیچ راه حل خوب مطلق و بد مطلقی وجود نداره». این جمله شاید در نگاه اول خیلی جمله عجیبی نباشه، اما متاسفانه خیلی از ماها در عمل ازش غافل میشیم و به همین دلیل گاها در تصمیمگیریهامون راه حلهای پیچیده و بشدت پرهزینه از نظر زمانی و مالی رو برای حل چالش پیش رومون انتخاب میکنیم.
بنده هم مثل خیلی از شماها سعی میکنم مقالات، ویدیوها و کتابهای مطرح و بروز رو کم و بیش مطالعه کنم و از اونها کسب تجربه کنم. بزرگترین نکتهای که در اکثرشون دیدم اینه که واقعا هیچکس هیچ راه جامع و کاملی رو نداره که ارائه بده، حتی بزرگترین و خفن ترین برنامهنویسها هم نتونستن چنین راهحلی رو پیشنهاد بدن. این نکته رو من به همه سطوح مهندسی نرم افزار تعمیم میدم، از داشتن یک ساختار و فرمول خوب برای نامگذاری متغیرها و توابع گرفته، تا داشتن یک فرمول خوب برای طراحی دیتابیس و طراحی سیستم، هیچ کدوم راه حل مطلق ندارن.
از گفتن این مطلب میخوام اینرو نتیجهگیری کنم که سعی نکنید مطالبی رو که از منابع مختلف میآموزید کورکورانه تقلید کنید، صرفا اونها رو به عنوان یک سری مرجع و راهحل پیشنهادی در ذهنتون داشته باشید و حتما حتما مزایا و معایبش رو تو ذهنتون تحلیل کنید. مرحله بعد از تحلیل میشه مرحله اقدام کردن، در مرحله اقدام سعی کنید خودتون باشید، با توجه به آموختههاتون و ویژگیهای چالشی که باهاش روبرو هستید تحلیل کنید و تصمیم بگیرید، خودتون تصمیم بگیرید، به تصمیمتون فکر کنید و مزایا و معابیش رو حتما تحلیل کنید.
این نکته رو از بنده حقیر داشته باشید: طراحی یک سیستم ضعیف با علم به نقاط ضعف و قوت اون سیستم، چیزی که طراحی شده توسط دستان قدرتمند خودتون باشه، بسیار بسیار ارزشمندتر و در بلندمدت کارآمدتر از اینه که یه سرویس خیلی قوی طراحی کنید بدون اینکه به دلایل تصمیمگیریش علم داشته باشید. و فقط از یک سری مرجع تقلید کرده باشید.
تو مرحله اقدام، اگه سیستم رو، هر چقدر هم ضعیف، با علم و دانش خودتون و با آگاهی از نقاط ضعف و قوت سیستم طراحی کرده باشید، در بلند مدت اون سیستم به یک سیستم بسیار قوی تبدیل میشه، چون مهم نیست نسخه اولیه سیستم شما چقدر قویه، مهم اینه شناخت کافی به نقاط ضعف داشته باشید و کم کم سعی کنید نقاط ضعف رو بهبود بدید.
حرف آخر: خودتون باشید، به دانش خودتون اتکا کنید، شجاع باشید و مسئولیت تصمیمگیریهای مهم رو بعد از مطالعه منابع مرجع و گرفتن مشورت از دیگران، خودتون بر عهده بگیرد.
@gocasts
#system_design
سلام خدمت همه دوستان گل
امیدوارم حالتون خوب باشه
«نکته طراحی سیستم»
مسئولیت تصمیمهای مهم رو خودتون بر عهده بگیرید
در تکمیل پست قبلی، لازم هست چند تا مورد رو باهاتون به اشتراک بذارم.
اولا اینکه هدف من از به اشتراک گذاشتن چنین نکات ریزی اینه که سه چهارتا کلمه جدید رو گوشه ذهنتون بندازه، که اگه یوقت حین انجام یه پروژه و حل یه چالش بهش احتیاج داشتید بتونه بهتون ایده بده. 💡
دوما اینکه، من واقعا لذت میبرم از اینکه اکثر دوستان وقتی تو کامنتها پیام میدن به این موضوع توجه میکنن که خیلی فاکتورهای فنی و غیرفنی در گرفتن یه تصمیم دخیل هست و سعی نمیکنن راه حل خودشون رو به عنوان راه حل بهتر اثبات کنن، نکته ای که در کامنتها دیدم اینه که دوستان هم سعی میکنن من و شما رو با چند تا کلمه کلیدی و راه حل کلی آشنا کنن که شاید تو پروژه های بعدی و در مواجه شدن با چالشهای بعدی بهمون کمک کنه. دم همهتون گرم 🌹
سومین نکتهای که میخوام خدمتتون عرض کنم اینه که یکی از بزرگترین درسهایی که بنده حقیر در طی این چندین سال فعالیت در حوزه برنامهنویسی و مهندسی نرمافزار از بزرگانی چون شما آموختم اینه که «هیچ راه حل خوب مطلق و بد مطلقی وجود نداره». این جمله شاید در نگاه اول خیلی جمله عجیبی نباشه، اما متاسفانه خیلی از ماها در عمل ازش غافل میشیم و به همین دلیل گاها در تصمیمگیریهامون راه حلهای پیچیده و بشدت پرهزینه از نظر زمانی و مالی رو برای حل چالش پیش رومون انتخاب میکنیم.
بنده هم مثل خیلی از شماها سعی میکنم مقالات، ویدیوها و کتابهای مطرح و بروز رو کم و بیش مطالعه کنم و از اونها کسب تجربه کنم. بزرگترین نکتهای که در اکثرشون دیدم اینه که واقعا هیچکس هیچ راه جامع و کاملی رو نداره که ارائه بده، حتی بزرگترین و خفن ترین برنامهنویسها هم نتونستن چنین راهحلی رو پیشنهاد بدن. این نکته رو من به همه سطوح مهندسی نرم افزار تعمیم میدم، از داشتن یک ساختار و فرمول خوب برای نامگذاری متغیرها و توابع گرفته، تا داشتن یک فرمول خوب برای طراحی دیتابیس و طراحی سیستم، هیچ کدوم راه حل مطلق ندارن.
از گفتن این مطلب میخوام اینرو نتیجهگیری کنم که سعی نکنید مطالبی رو که از منابع مختلف میآموزید کورکورانه تقلید کنید، صرفا اونها رو به عنوان یک سری مرجع و راهحل پیشنهادی در ذهنتون داشته باشید و حتما حتما مزایا و معایبش رو تو ذهنتون تحلیل کنید. مرحله بعد از تحلیل میشه مرحله اقدام کردن، در مرحله اقدام سعی کنید خودتون باشید، با توجه به آموختههاتون و ویژگیهای چالشی که باهاش روبرو هستید تحلیل کنید و تصمیم بگیرید، خودتون تصمیم بگیرید، به تصمیمتون فکر کنید و مزایا و معابیش رو حتما تحلیل کنید.
این نکته رو از بنده حقیر داشته باشید: طراحی یک سیستم ضعیف با علم به نقاط ضعف و قوت اون سیستم، چیزی که طراحی شده توسط دستان قدرتمند خودتون باشه، بسیار بسیار ارزشمندتر و در بلندمدت کارآمدتر از اینه که یه سرویس خیلی قوی طراحی کنید بدون اینکه به دلایل تصمیمگیریش علم داشته باشید. و فقط از یک سری مرجع تقلید کرده باشید.
تو مرحله اقدام، اگه سیستم رو، هر چقدر هم ضعیف، با علم و دانش خودتون و با آگاهی از نقاط ضعف و قوت سیستم طراحی کرده باشید، در بلند مدت اون سیستم به یک سیستم بسیار قوی تبدیل میشه، چون مهم نیست نسخه اولیه سیستم شما چقدر قویه، مهم اینه شناخت کافی به نقاط ضعف داشته باشید و کم کم سعی کنید نقاط ضعف رو بهبود بدید.
حرف آخر: خودتون باشید، به دانش خودتون اتکا کنید، شجاع باشید و مسئولیت تصمیمگیریهای مهم رو بعد از مطالعه منابع مرجع و گرفتن مشورت از دیگران، خودتون بر عهده بگیرد.
@gocasts
#system_design
👍25❤20🔥2👏1