Go Casts 🚀 – Telegram
Go Casts 🚀
7.66K 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
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
یکی از زیبایی های گولنگ اینترفیس هست، چیزی که فلسفه composition over inheritance رو به زیبایی هر چه تمام تر در گولنگ امکانپذیر کرده
ولی نحوه استفاده از اینترفیس با زبان های دیگه متفاوته
این مقاله توضیحاتی در این مورد داده
https://eli.thegreenplace.net/2023/the-power-of-single-method-interfaces-in-go/

اینم یه مقاله زیرخاکی از russ cox در مورد اینترفیس
Go Data Structures: Interfaces
Posted on Tuesday, December 1, 2009
https://research.swtch.com/interfaces

@gocasts

#golang #interface
👍274
ما تو فکر چی هستیم، بقیه تو فکر چی هستن 🙂
تا حالا به این فکر کردی که response time سیستم ت در حد میکروثانیه باشه؟ مثلا به میلی ثانیه و اینا نرسه اصلا؟

احتمالا تو نسل بعدی دیتاسنترها بیشتر میشنویم ازشون
https://x.com/petereliaskraft/status/1830294745563951329?t=LxJ9z3qlt7uREui7hUCAyg&s=35

Shenango: Achieving High CPU Efficiency for Latency-sensitive Datacenter Workloads
https://www.usenix.org/conference/nsdi19/presentation/ousterhout


@gocasts
👍187🔥2
‏از تست نویسی مهم تر داشتن متریک لازم و کافی در همه جای کد هست، تا میتونید نقاط مهم کدی که مینویسید رو در لحظه متر کنید، نوشتن متریک رو همون لحظه که کد پروداکشن مینویسید اضافه کنید و به تعویقش نندازید.

@gocasts

#observability
👍26🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
جواب من به دوستام که میگن چرا اینقدر کثیف کد میزنی 😁


@gocasts

#رضاـمارمولک
😁32👍2🤩2😍2🔥1
گاها پیش میاد که بچه ها در مورد نحوه اجرای transaction دیتابیس سوال میپرسن در شرایطی که ممکنه دو قسمت یک تراکنش مربوط به دو ماژول مختلف باشه و تو ساختار کد خیلی راحت نشه این تراکنش رو اجرا کرد

این مقاله توضیحات خوبی در این مورد میده
Database Transactions in Go with Layered Architecture
https://threedots.tech/post/database-transactions-in-go

@gocasts

#golang #database #transactions
👍15🔥21
سراب دنیای نرم افزاری

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

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

دو سه روز پیش این مصاحبه از آقای اسمش رو نبر (اینقدر که تلفظش سخته!) دیدم، سازنده زبان سی پلاس پلاس، که توصیه های جالبی داشتند که کم و بیش مرتبطه به این موضوع، دوست داشتید ببینید
https://www.youtube.com/watch?v=-QxI-RP6-HM

@gocasts
👍2010🔥3
Go Casts 🚀
یکی از زیبایی های گولنگ اینترفیس هست، چیزی که فلسفه composition over inheritance رو به زیبایی هر چه تمام تر در گولنگ امکانپذیر کرده ولی نحوه استفاده از اینترفیس با زبان های دیگه متفاوته این مقاله توضیحاتی در این مورد داده https://eli.thegreenplace.net/2023/the…
چند روز پیش در مورد اینترفیس در گولنگ نوشتم که چقدر زیباست و باعث میشه composability راحت باشه، و اینکه مروج رویکرد composition هست نسبت به inheritance.

دیشب یه ایمیل دریافت کردم از خبرنامه Kent C. Dodds که یکی از افراد فعال و مهم حوزه فرانت و React هست و سازنده Remix هست و دوره Epic Reactش خیلی معروفه و برنامه نویس PayPal بوده

تو این ایمیل داره میگه که چرا React رو دوست داره، یه کلمه در مورد react گفت به عنوان مهم ترین دلیل خوبی react، اونم چیزی نیست جز composition.

React continues to evolve, but one thing remains constant: composition.

Back in 2014 I was driving to the first ng-conf listening to a podcast where I first heard about React.
Smart people I respect recommended it so I gave the framework five minutes.
As I tweeted out bits of my learning experience the recurring theme was my growing appreciation of components and composability.
Fast forward to today.
React continues to evolve, but one thing remains constant: composition.
The React team pushes composition in every direction of the stack while maintaining the simplicity of a JavaScript-first approach instead of some sort of framework-specific domain-specific language.
That’s why I love React so freakin much!
https://kentcdodds.com/about


@gocasts

#composition #react #golang
11👍2😁1
تفاوت بین granularity و modularity رو بهتره که بدونیم. دو تا موضوعی که در کنار هم به ما اجازه میدن سرویس ها رو از هم جدا و یا با هم یکپارچه کنیم.
دوست داشتید این پادکست رو گوش بدید.
https://www.thoughtworks.com/insights/podcasts/technology-podcasts/software-service-granularity-getting-it-right

اینم توییت آقای martin fowler
https://x.com/martinfowler/status/1831818592444371148?s=35


@gocasts
🔥8