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
آقا رضا یه بستر خوب برای تمرین یه سری چالش کدنویسی گولنگ بصورت متن باز آماده کرده که میتونید استفاده کنید.

https://github.com/RezaSi/go-interview-practice



@gocasts
🔥40👍11
یه محیط خیلی جذاب برای یادگیری الگوهای Concurrency گولنگ بصورت تعاملی

Go Concurrency Explorer
Interactive Learning Platform
https://www.concurrency.rocks


@gocasts
👍4112😍5
نکاتی در مورد code review

مواردی که اشاره میکنه صرفا نکات فنی نیست و به نظرم نکات غیرفنی ای که بهش اشاره میکنه خیلی موثر هست در ایجاد یک فضای مناسب و پایدار برای داشتن فرهنگ Code Review در تیم.

این مقاله نکات ساده و مهمی رو اشاره میکنه که خوبه مطالعه بشه
https://endler.dev/2025/how-to-review-code/


@gocasts
👍245🔥4
نسخه ۱.۲۵ گولنگ منتشر شد.

در این نسخه هیچ تغییری در زبان رخ نداده و این از زیبایی های یک زبانه که علاوه بر ساده و جمع و جور بودنش نرخ تغییرات زبانش بقدری کم و آرامه که لازم نیست دغدغه بروزرسانی کدهای قدیمی رو داشته باشی.

شاید مهمترین بهبودی هم که رخ داده container-aware GOMAXPROCS باشه که قبلا مقدارش تعداد logical cpu موجود بود و این برای کانتینرها دردسر ایجاد میکرد و مجبور بودیم همیشه تو کد پکیج معروف uber رو برای حلش استفاده کنیم.
از این نسخه به بعد خود runtime در سیستم عامل لینوکس محدودیت cpu bandwidth از process cgroup رو در نظر میگیره که خیلی خوبه.
همچنین runtime بصورت دوره ای GOMAXPROCS رو بروز میکنه اگه لازم باشه.


بهبود مهم دیگه که البته نسخه آزمایشی ش ارائه شده garbage collector جدید هست که بخاطر بهبودهای طراحی ای که داشته انتظار میره بین ۱۰ تا ۴۰ درصد gc overhead رو کاهش بده برای برنامه هایی که استفاده سنگین از gc دارن.

https://go.dev/doc/go1.25


@gocasts
🔥32👍1411
۵۰ درصد + یک میلیون و ۶۰۰ هزار تومان تخفیف شهریور

سلام به همه دوستان
به لطف خدا تا این لحظه تیمسازی بیش از ۱ سال و ۹ ماهه که ادامه داشته و پروژه پنجم تیمسازی رو چند هفته ست که شروع کردیم.
در مورد اهمیت تیمسازی چند استوری در تلگرام گذاشتم که میتونید از طریق این لینک ببینید
https://news.1rj.ru/str/lifography/s/2

دوره +‌ تیمسازی بکند و گولنگ Go Casts
تخفیف ویژه شهریور
۵۰ درصد + ۱ میلیون و ۶۰۰ هزار تومان تخفیف
کد شهریور
SHAHRIVAR

خرید از سایت
https://gocasts.ir

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

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

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

دوستانی که اکانت پرمیوم تلگرام دارن، اگه تمایل داشتید میتونید به کانال GoCasts منت بذارید و boost بدید که بتونیم استوری هارو از طریق خود کانال GoCasts منتشر کنیم و نه اکانت شخصی
https://news.1rj.ru/str/boost/gocasts


@gocasts
32👍2
Please open Telegram to view this post
VIEW IN TELEGRAM
35🤝1
مستند Python منتشر شد، پیشنهاد میکنم ببینید.

پایتون یکی از تاثیرگذارترین زبان های سه دهه گذشته بوده و احتمالا تاثیرگذارترین زبان چند سال یا دهه آینده باشه..

https://youtu.be/GfH4QL4VqJ0?si=cR5PFyhoq7kr7EhQ


@gocasts
38👍5
سلام به همه دوستان گل

میلاد رسول الله مبارک باشه، ان شاءالله همیشه خوب و خوش باشید ❤️❤️

ببخشید یه مدتی کمتر در خدمت تون بودم.

تو این مقاله پکیج های جدید json برای گولنگ معرفی شدند که بهبودهایی که مدت ها بود تقاضا میشد اضافه شده. فعلا نسخه آزمایشی هست.

https://go.dev/blog/jsonv2-exp

@gocasts
85🔥6
This media is not supported in your browser
VIEW IN TELEGRAM
چقدر یه مقاله میتونه تمیز و جذاب باشه. موقع نوشتن این مقاله عشق ریخته پای کلمات و کارهای گرافیکی ش 😁❤️

اومده با کلی کار گرافیکی باحال انواع io deviceها رو مقایسه کرده از نظر latency و چیزای دیگه
https://planetscale.com/blog/io-devices-and-latency


@gocasts
🔥2010👍5👏2
روز برنامه نویس مبارک 🔥

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

۵۰ درصد + ۲ میلیون تومان تخفیف روز برنامه نویس


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

خرید از سایت
https://gocasts.ir

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

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

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


@gocasts
36
سازنده Redis در جواب توییتی که نوشته بود تکنولوژی ای رو نام ببرید که quality خیلی زیادی داره و hype کمی داره، از ruby language design نام برده بود.

دلایل مختلفی برای این قضیه وجود داره من چندتا شو سعی میکنم ذکر کنم.
یکی اینکه آقای Matsumoto سازنده Ruby اولویت ش برای طراحی زبان رو productive بودن برنامه نویس ها در نظر گرفته بود و نه speed و چیزای دیگه..
به عبارتی developer happiness با کم کردن confusion در کدنویسی

زبان Ruby یک زمان کاملا Object-Oriented هست. اما فرق میکنه با اون چیزی که از OOP میدونیم..
یکی از نکات جالب طراحی Ruby وفاداری ش به تعریف OOP از آقای Alan Kay هست که در SmalTalk هم طراحی شده.
در تعریف آقای Alan Kay هر object با objectهای دیگه از طریق message passing ارتباط برقرار میکنه و نه از طریق method callها.

این چیزی هست که در زبان ruby هم طراحی شده. در ruby شما send message میکنی به object و اون object میتونه تصمیم بگیره که به پیام شما پاسخ بده و یا نده.

یکی دیگه از ایده های Alan Kay برای oop که به objectها انعطاف بیشتری میده تغییر رفتار objectها در runtime هست.

نکته کلیدی ای که در مورد OOP از نظر آقای Kay وجود داره که در Ruby هم پیاده سازی شده اینه که رفتار یا behaviour که معمولا از طریق interface تعریف میشه به object وابسته ست و نه class.

تعریف مرسومی که ما از OOP تو ذهن داریم رفتار وابسته به class هست. چیزی که در java و cpp هم خیلی رایجه.
اما تعریفی که آقای Kay از oop داره و در ruby هم پیاده سازی شده رفتار وابسته به object هست ونه class.
تعریف آقای Kay اگه درست رعایت بشه باعث میشه اصل composition over inheritance رعایت بشه. اصلی که مهمه و زبان های دیگه مثل گولنگ هم خیلی این مورد رو بهش اهمیت دادن.

آقای Kay معتقده که
behavioral composition is often better than deep inheritance hierarchies


یادگیری یه زبانی مثل ruby کمک میکنه که اصول oop آقای Kay رو بهتر متوجه بشیم و ذهنیتمون کاملا متفاوت بشه نسبت به OOPی که زبان های java و cpp به ما تحمیل کردن...


@gocasts
👏43👍195🔥4
اگه دارید یه پروژه گولنگی رو سنگین ریفکتور میکنید ‍‍پیشنهاد میکنم از
// Deprecated
خیلی زود استفاده کنید

قشنگی قضیه اینه که lsp گولنگ وقتی چنین کامنتی روی تابع یا type یا field خاصی قرار میگیره متوجه میشه و شما حین ریفکتور خیلی راحت قسمت هایی که deprecate شده رو میتونید از کد حذف کنید و یا صرفا جهت backwardCompatibility نگهشون دارید.
خیلی پیچیدگی ریفکتور رو کم میکنه مخصوصا اگه تعداد تغییرات زیاد باشه.

همچنین اگه به تیم ها و کلاینت هاتون sdk ارائه دادید میتونید برای backward compatibility این فیلدهارو حفظ کنید ولی اون deprecated annotation بهشون هشدار میده که نباید دیگه ازش استفاده کنن.
ضمنا بهتره تو توضیحات روش جایگیزین (اگه وجود داره رو) اشاره کنید که کم کم کلاینت های sdk هم تشویق بشن از روش جایگزین استفاده کنن.

توضیحات بیشتر رو اینجا میتونید بخونید
https://go.dev/wiki/Deprecated


@gocasts
👍328
This media is not supported in your browser
VIEW IN TELEGRAM
دو تا ابزار pgcli و mycli خیلی میتونه کار با دیتابیس هارو راحت تر و حتی امن تر کنه در محیط ترمینال

اولا که خیلی ux خوبی دارن و auto complete داره خیلی کارو راحت میکنه

دوما اینکه برای دستورات خطرناکی مثل آپدیت و حذف و غیره ازت یه تایید ثانویه دستور میگیره که خیلی ریسک اجرا رو کمتر میکنه اگه ریویو کنی دستور رو قبل از اجرا

مرسی از روزبه جان برای معرفی mycli
@terminal_stuff


pgcli
https://github.com/dbcli/pgcli

mycli
https://github.com/dbcli/mycli


@gocasts
18🔥9👍1👏1
تخفیف مهرماه GoCasts

سلام به همه دوستان
امیدوارم حالتون خوب باشه و همیشه در کار و زندگی تون موفق باشید ❤️

۵۰ درصد + ۲ میلیون تومان تخفیف مهر ماه

دوره +‌ تیمسازی بکند و گولنگ Go Casts

۵۰ درصد + ۲ میلیون تومان تخفیف
کد تخفیف ویژه
MEHR

خرید از سایت
https://gocasts.ir

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

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

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


@gocasts
Please open Telegram to view this post
VIEW IN TELEGRAM
12👍3
در نگاه اول async کردن یه روند بیزینسی یا فنی شاید ساده به نظر بیاد و خیلی مزیت ها داشته باشه. معماری هایی مثل event-driven هم خیلی معروف هستند و پرطرفدار

اما در واقعیت و روی مقیاس بالا چالش های مهمی هم دارند که باید بهشون توجه بشه
چالش هایی مثل observability و idempotency و حتی درک موضوع eventual consistency خودش میتونه چالش برانگیز باشه

این مقاله کوتاه نکات خوبی رو اشاره کرده در این مورد

Why are Event-Driven Systems Hard?
Understanding the Core Challenges of Asynchronous Architectures

https://newsletter.scalablethread.com/p/why-event-driven-systems-are-hard


@gocasts
21👍14
This media is not supported in your browser
VIEW IN TELEGRAM
بین مدل های ai برای برنامه نویسی claude کیفیت بهتری داره از نظر من، و بین ابزارهای coding assistantی که استفاده کردم از نظر ux از همه بیشتر حس بهتری با claude-cli داشتم
خیلی ساده ست و developer friendly ❤️

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


دیروز claude مدل ۴.۵ش هم منتشر کرد 🔡

https://x.com/claudeai/status/1972706807345725773?t=dXPd03zVf472NZATrLFvLw&s=35

📱 @gocasts

Ai for Software
📱 @aicasts_ir
Please open Telegram to view this post
VIEW IN TELEGRAM
👍33
کم کم agentهای observability و disaster recovery هم زیاد میشه.

از نظر من یکی از بهترین جاهایی که ai agentها میتونن کمک کنن همین ردیابی خیلی سریعتر مشکل هست.

تو انبوه وحشتناک داده ها مخصوصا وقتی که incident رخ میده و معماری سیستم هم پیچیده است از نظر تعداد سرویس و کامپوننت های درگیر مشکل یه agent خیلی خوب میتونه با بررسی logهای سرویس ها و متریک ها و هر چه که شما تعیین میکنید خیلی زود بهتون کمک کنه root cause پیدا بشه و حتی اگه بهش اجازه بدید خودش میتونه بصورت خودکار فیکس هم بکنه مساله رو.

یکی از این ابزارها که یه پلن کوچیک رایگان هم داره agentkube هست.

Supercharge your workflow with an intelligent interface built for speed, clarity, and scale. Manage clusters without the kubectl pain.
All in one place. All with AI.

https://agentkube.com


@gocasts
👍1810
امروز میخوایم یه کار حال‌خوب کن انجام بدیم به کمک هم 🍓

این پست به هیچ وجه تبلیغ نیست
کاریار یک استارت آپ اجتماعی هست که تلاش میکنه جوان های ساکن مناطق دور از مرکز رو با تکنولوژی های حوزه IT آشنا کنه و تا رسیدن به درآمد کنارشون بمونه.

در همین زمینه کاریار دوره های آموزشی مختلفی داره که برای افرادی که شرایط دریافت بورسیه رو داشته باشن تا ۹۵ درصد تخفیف میده.

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

لطفا تا میتونید این پست رو به اشتراک بذارید که اگه کسی هست که علاقه مند به این حوزه هست و واجد شرایط بورسیه ست بتونه ازش استفاده کنه.

در حال حاضر تا ۲۲ مهر فرصت ثبت نام در دوره html و css هست
https://kaaryar.ir/html-css/

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

میتونید از کانال تلگرامشون هم دیدن کنید
@Karyar_College


دم همه تون گرم 💚🎊

@gocasts
Please open Telegram to view this post
VIEW IN TELEGRAM
36👏8🔥3
دیتابیس Postgres در نسخه‌ ۱۸، بهبودهای قابل توجهی رو ارائه کرده، مخصوصا برای async io که به دو مدل پیاده‌سازی شده یکی برای سیستم هایی که هنوز از io_uring استفاده نمیکنن و یکی هم io_uring برای لینوکس‌های مدرن، جایی که عملیات I/O مستقیماً داخل کرنل صف‌بندی و تکمیل می‌شن بدون رفت‌و‌برگشت اضافه به user space.

در نتیجه دست Postgres بازتره برای اجرای queryهای هم‌زمان، مخصوصاً اون‌هایی که I/O سنگین دارن مثل sequential scan یا writeهای موازی روی WAL.
بهبودهای قابل انتظار latency کمتر، میزان throughput بالاتر و context-switch کمتر هست.

البته یک نکته‌ی ظریف هم داره این قضیه، قرار نیست بصورت جادویی هر کوئری رو سریع‌تر کنه.
باید planner، buffer manager و حتی extensionها یاد بگیرن چطور ازش استفاده کنن.
یعنی یه قدم بزرگ به جلو، اما هنوز بلوغ کامل رو نداره.

https://youtu.be/yGjGc21mmoU

https://x.com/hnasr/status/1974110942439911645


@gocasts
🔥227👍3
موقعیت شغلی بکند و گولنگ - سازیتو - هیبرید
اگه حداقل دو سال سابقه کار حرفه ای بکند رو دارید و تمایل دارید به صورت فول-تایم و هیبرید با سازیتو همکاری کنید، لطفا فرم پیش رو پر کنید.
https://survey.porsline.ir/s/9A0zgac9

@gocasts
👍10
🎙 «آغاز ثبت‌نام رویداد Emeet دانشگاه شریف»

سلام دوستان، تمایل داشتید این رویداد رو شرکت کنید با کد تخفیف اختصاصی
gocasts

🔔 رسانا، انجمن علمی دانشکدهٔ مهندسی برق دانشگاه شریف برگزار می‌کند:

اِمیت؛ جایی که صنعت، آکادمی و نوآوری به هم می‌پیوندند.

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

📅 تاریخ برگزاری: ۳۰ مهرماه (مجازی) ۱ و ۲ آبان‌ماه (مجازی و حضوری در دانشگاه صنعتی شریف)
ثبت‌نام برای عموم آزاد است.
📄 همراه با ارائۀ گواهی حضور

✍️ برای ثبت‌نام و کسب اطلاعات بیشتر، به وبسایت رویداد مراجعه فرمایید:
🔗 Emeet.eeresana.com

↙️ پرسش‌های خود پیرامون ثبت‌نام را می‌توانید با پشتیبانی امیت، مطرح کنید.

🌍 Website 💠💼 LinkedIn
🚀 @EmeetSUT 💠🚀 @EEResana



@gocasts
👍64🔥3😍3