Go Casts 🚀 – Telegram
Go Casts 🚀
7.67K subscribers
279 photos
20 videos
13 files
497 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
اگه از معماری async استفاده می کنید، یکی از ملاحظات مهم برای سیستم های scalable کنترل لود روی ماژول های مختلف سیستم هست.
ممکنه فکر کنید که ابزار صفی که استفاده می کنید قابلیت نگهداری تعداد پیام زیادی داره و از اینجور حرفا که توصیه میکنم تجدید نظر کنید در موردش


این مقاله نکات جالبی رو ذکر کرده
https://www.enterpriseintegrationpatterns.com/ramblings/queues_flow_control.html


@gocasts
👍13🔥1👏1
اگه از کوبرنتیز استفاده می کنید احتمالا با چالش های محیط توسعه مواجه شدید که متفاوت هست با محیط های سنتی توسعه

این مقاله ابزارهای جالب و کاربردی ای رو معرفی میکنه که میتونه محیط توسعه رو براتون آسون تر کنه

Simplifying Kubernetes Development: Your Go-To Tools Guide
https://semaphoreci.com/blog/kubernetes-development-tools

@gocasts
👍13🔥1
به به، یه سری مقاله برای concurrency در گولنگ، که به کمک تصویرسازی سعی کرده مفاهیم مهم concurrency در گولنگ رو توضیح بده، پیشنهاد می کنم چهار تا مقاله رو به ترتیب بخونید و نکته برداری کنید


Goroutines 102: A Basic Walkthrough
https://blog.devtrovert.com/p/goroutines-think-you-know-go-basics

Go Channels Explained: More than Just a Beginner’s Guide
https://blog.devtrovert.com/p/go-channels-explained-more-than-just

Select & For Range Channel in Go: Breaking Down
https://blog.devtrovert.com/p/select-and-for-range-channel-i-bet

Goroutine Scheduler Revealed: Never See Goroutines the Same Way Again
https://blog.devtrovert.com/p/goroutine-scheduler-revealed-youll

@gocasts

#golang #concurrency
#گولنگ
👍185🔥2😍1
یکی از مهم ترین ابزارهایی که داکر ازش بهره مند میشه cgroup هست. این قابلیت در کرنل لینوکس اجازه میده container بتونه منابع مورد نیازش رو مدیریت کنه.

این مقاله به زیبایی و مفصل در موردش صحبت کرده.

بیش از این که سعی کنید docker رو یاد بگیرید، سعی کنید containerization رو یاد بگیرید.

Controlling Process Resources with Linux Control Groups
https://labs.iximiuz.com/tutorials/controlling-process-resources-with-cgroups

@gocasts

#docker #container #cgroup
16👍7🔥1
Go Casts 🚀
سلام به همگی تیمسازی فرانت‌اند ان شاءالله از همین پنجشنبه شروع میشه ان شاءالله که بتونیم یه تجربه متفاوتی از دوره ها و منابع آموزشی فعلی رو رقم بزنیم. هدف‌مون اینه تجربه محور باشیم و با توجه به اینکه تیم تیمسازی بکند apiهای لازم رو تلاش میکنه توسعه بده و تیم…
یه مقاله تازه و مفصل، که نکات ساده و پیشرفته ای رو برای React ارائه کرده

به شخصه معتقدم یکی از علل مهم تفاوت کیفیت برنامه نویس ها و محصولات در رعایت کردن یا نکردن نکات خیلی ریز هست، دونستن best practiceها کمک میکنه جزییات رو بهتر مدیریت کنیم.

یه best practice هم قرار نیست همیشه بهترین راه باشه، اما احتمالا در شرایط عمومی زیادی میشه استفاده ش کرد.

101 React Tips & Tricks For Beginners To Experts

https://dev.to/_ndeyefatoudiop/101-react-tips-tricks-for-beginners-to-experts-4m11


اینم لینک توضیحات تیمسازی فرانت‌اند Go Casts
https://news.1rj.ru/str/gocasts/479


@gocasts

#react #teamsazi
👍144
یه guideline برای RESTful و Eventها که میتونه کمک کنه طراحی سرویس های شما یکپارچه بشه

خوبی ش اینه که نکاتی که گفته رو تفکیک کرده و MUST و SHOULDهارو جدا کرده و شما مجبور نیستید همه نکات رو رعایت کنید.

Zalando RESTful API and Event Guidelines
https://opensource.zalando.com/restful-api-guidelines

Github
https://github.com/zalando/restful-api-guidelines?tab=readme-ov-file


@gocasts

#restful #api #guideline
👍21🔥2
نکات خوبی رو در مورد استفاده از کوبرنتیز میگه

استفاده از کوبرنتیز برای استارت آپ ها لزوما over engineering نیست شایدم لازم باشه حتی، ولی بهتره که نیاز خودتون رو با توانایی کوبرنتیز تطبیق بدید و بعد تصمیم بگیرید

The hater’s guide to Kubernetes
https://paulbutler.org/2024/the-haters-guide-to-kubernetes/

@gocasts

#kubernetes
17👍2
یه مقاله خیلی جذاب که کلی نکته میگه در مورد map در گولنگ

Go Maps Explained: How Key-Value Pairs Are Actually Stored
https://victoriametrics.com/blog/go-map/

@gocasts

#golang
#map
#گولنگ
👍17👏1
گوگل یک مخزن برای آموزش زبان rust داره که تیم اندروید گوگل توسعه ش داده

This repository has the source code for Comprehensive Rust 🦀, a multi-day Rust course developed by the Android team. The course covers all aspects of Rust, from basic syntax to generics and error handling. It also includes deep dives on Android, Chromium, bare-metal, and concurrency.

https://github.com/google/comprehensive-rust


@gocasts

#rust
👍14
Go Casts 🚀
🔥 داغ داغ یه خبر استخدام دیگه از بچه های gocasts الحمدلله که تونستیم برای یکی دیگه از بچه های gocasts شبکه سازی کنیم و شرکت ش رو تغییر بده، ان شاءالله که در محیط کار جدید موفق باشه دوره +‌ تیمسازی بکند و گولنگ Go Casts لینک خرید دوره + تیمسازی با ۴۷ درصد…
فیدبک + تخفیف ۵۰ درصدی 🔥

فیدبک یکی از بچه های «دوره + تیمسازی بکند Go Casts»

الحمدلله پروژه تیمسازی ۲ داره به جاهای خوبی نزدیک میشه و به کمک بچه های تیمسازی فرانت‌اند Go Casts سعی می کنیم تجربه بهتر و واقعی تری رو برای بچه های تیمسازی رقم بزنیم.


دوره +‌ تیمسازی بکند و گولنگ Go Casts
لینک خرید دوره + تیمسازی با ۵۰ درصد تخفیف به مبلغ ۴ میلیون و ۵۰۰ هزار تومان

https://gocasts.ir

همه چیز در مورد دوره و تیمسازی در این پست توضیح داده شده
https://news.1rj.ru/str/gocasts/434

تو این پست هم میتونید فیدبک های دوره و تیمسازی و استخدام بچه هارو بخونید
https://news.1rj.ru/str/gocasts/441

دوستانی که در خرید دوره تردید دارند میتونن برای مشاوره کوتاه تلفنی، فرم زیر رو پر کنند که باهاشون تماس بگیرم
https://survey.porsline.ir/s/ATeQL4b4

@gocasts
👍13
نکته خیلی جالبش شاید استفاده از GOMEMLIMIT بصورت dynamic هست که در runtime ست میشه..

Go Beyond: Building Performant and Reliable Golang Applications

https://blog.zomato.com/go-beyond-building-performant-and-reliable-golang-applications

@gocasts

#performance
#golang
#گولنگ
👍111
تو جلسه تیمسازی بکند، بچه ها قرار شد unit test و end to end test بنویسن، برای اینکه بشه تست integration یا end to end درستی داشت باید وابستگی ها درست راه اندازی بشه راه ها مختلفی وجود داره، مثلا اینکه از قبل وابستگی ها بالا باشن، یا از وابستگی های جایگزین و راحت تر و in-memory استفاده کرد، یا اینکه از testcontainer استفاده کرد، که بچه ها از test container استفاده کرده بودن.

این مقاله توضیحات خوبی میده در این مورد

Emulating real dependencies in Integration Tests using Testcontainers
A hands-on guide on Integration Tests in Go using Testcontainers.

https://packagemain.tech/p/integration-tests-using-testcontainers

توضیحات «دوره + تیمسازی بکند Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/491


@gocasts

#golang
#test
#گولنگ
👍151
This media is not supported in your browser
VIEW IN TELEGRAM
تو این ویدیو خلاصه و کوتاه سعی شده در مورد تیمسازی فرانت‌اند Go Casts با محمدحسین جان (مدرس تیمسازی فرانت‌اند) صحبت بشه

هدف‌مون در تیمسازی فرانت‌اند اینه تجربه محور باشیم و با توجه به اینکه تیم تیمسازی بکند apiهای لازم رو تلاش میکنه توسعه بده و تیم بکند و فرانت تیمسازی با هم در تعامل خواهند بود بصورت هفتگی، فکر میکنم تجربه متفاوتی برای بچه های فرانت خواهد بود، دوره برای اونایی مناسبه که اصول کلی برنامه نویسی رو بلد هستند و html/css و js رو کار کردند ولی react کار نکردن یا اگه react کار کردن خیلی نتونستن پروژه ای رو توسعه بدن و هدف شون اینه که مهارت توسعه دادن پروژه با react رو تکمیل کنن.

توضیحات تکمیلی تو این پست گفته شده
https://news.1rj.ru/str/gocasts/473

اگرم به مشاوره رایگان تلفنی احتیاج داری میتونی این فرم رو پر کنی
https://survey.porsline.ir/s/Xt1Ls1ue

💰 هزینه دوره:
۶ میلیون تومان، که با ۳۵٪ تخفیف تابستانه به قیمت ۳ میلیون و ۹۰۰ هزار تومان ارائه میشه.

اینم لینک خرید تیمسازی فرانت‌اند
https://survey.porsline.ir/s/4sVjRjb6


@gocasts

#react #teamsazi #frontend
6👍5
این مقاله رو نمیگم بخونید که جای net/http در گولنگ از fasthttp استفاده کنید
و نه اینکه بخواید بصورت non RFC compliant درخواست هاتون رو ارسال کنید

بلکه به شما نشون میده که ارسال یه http request چه مراحلی داره و بعدش میتونید به این فکر کنید که چطور بعضی از این مراحل رو کمتر کنید که عملکرد اپلیکیشن شما بهتر بشه

How I sent 500 million HTTP requests to 2.5 million hosts
https://www.moczadlo.com/2024/how-i-sent-500-million-http-requests-in-under-24h

مثلا شاید قسمت dns cache رو بشه با این کتابخونه بهبود داد
https://github.com/rs/dnscache

یا مثلا http.Client رو بگونه ای استفاده کنید که reuse کنه connection رو به کمک http.Transport
https://blog.cubieserver.de/2022/http-connection-reuse-in-go-clients/

The [Client.Transport] typically has internal state (cached TCP connections), so Clients should be reused instead of created as needed.
https://godocs.io/net/http#Client


توضیحات «دوره + تیمسازی بکند و گولنگ Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/491

@gocasts

#golang
#گولنگ
🔥10👍8👏2
وقتی راجع به distributed system و communication بین سرویس ها صحبت می کنیم، یه مکانیزمی که میتونه ارتباط رو reliableتر کنه به خاطر ذات unreliable شبکه، استفاده از الگوهای ساده ای مثل retry هست، اما واقعیت اینه که اسمش retry هست تو دلش بری خودش هزارتا داستان داره

مقاله خیلی جالب و جذابی بود از تیم یاندکس
Good Retry, Bad Retry: An Incident Story
https://medium.com/yandex/good-retry-bad-retry-an-incident-story-648072d3cee6

توضیحات «دوره + تیمسازی بکند Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/491

@gocasts

#retry
#golang
#گولنگ
👍12
مقاله جالبیه در مورد reproducibility، اینکه چیکار کنی که buildهات identical بشن که هم security بهتری داشته باشه هم نرم افزارت خروجی پیش بینی پذیرتری داشته باشه

اینم لینک مقاله 👇
What is Reproducibility and why does it matter?
https://blog.kubesimplify.com/what-is-reproducibility-and-why-does-it-matter



توضیحات «دوره + تیمسازی بکند Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/491


@gocasts


#devops #kubernetes
👍7
قبلا در مورد اهمیت distributed task queueها صحبت کرده بودیم، اینم یه ویدیو دیگه در همین مورد که به کمک گولنگ و temporal ارائه ش رو انجام میده

GopherCon 2022: Andrew Fitz Gibbon - Durable Executions in the Face of (some) Failures
https://www.youtube.com/watch?v=zSFkwwNClow

اینم لینک پست مربوط به جلسه تیمسازی که با بچه ها در همین مورد صحبت شد و فیلمش در یوتیوب قرار گرفته
https://news.1rj.ru/str/gocasts/417


توضیحات «دوره + تیمسازی بکند Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/491


@gocasts


#golang #temporal
🔥5
یه ویدیوی داغ و تازه برای دانشگاه stanford که به شرح نحوه عملکرد مدل های LLM میپردازه

Stanford CS229 I Machine Learning I Building Large Language Models (LLMs)
https://www.youtube.com/watch?v=9vM4p9NN0Ts

@gocasts

#ai #llm
👍9🔥6
بخش مهم کیفیت یه نرم افزار به انرژی ای بستگی داره که اول پروژه میذاری، هر چقدر تو شروع کار روی ساختار کار کنی، و بتونی مواردی مثل linter و security check و test رو به پروسه ci پروژه اضافه کنی کارت راحت تره، خلاصه که کارهای شروع پروژه رو به عقب ننداز که بعدا بعیده درستش کنی..

@gocasts
👍60👏3
حتما سعی کنید به practice داشتن playground روی سیستم localتون عادت کنید. خیلی مهمه، چندین ساله که این شیوه رو به کار میبرم و ازش نتیجه گرفتم.
شاید برای یه سری سناریو خیلی پیچیده که حجم داده زیاد باشه و یا inter-service communication زیاد باشه سخت باشه این کار، اما برای اکثر مواقع قابل استفاده ست.

اینکه شما روی سیستم خودتون بستری رو فراهم کنید که بتونید باگ یا فیچر مورد نظر رو توسعه بدید و دیباگ کنید کمی حوصله و زمان میخواد، اما به شدت کمک میکنه بعد از راه اندازی سرعت کارتون بالا بره و سریع بتونید سناریوهای مختلفی رو تست کنید.

خود سایت گولنگ هم یه قسمتی داره به اسم playground

https://go.dev/play

ولی معمولا سناریوهایی که playground میخوان پیچیده تر از یه کد گولنگی هست که دیتابیس و سرویس های دیگه رو هم درگیر میکنه، که من باز تلاش میکنم راه اندازی کنم، حتی اگه لازم باشه که دامپ دیتابیس رو بیارم روی سیستم لوکال، یا حداقل بخشی از دامپ رو…
یا حداقل دامپ نمیشه آورد یه کدی بنویسم که داده تولید کنه

@gocasts
👍22🔥1