Go Casts 🚀 – Telegram
Go Casts 🚀
8.4K 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
ابزار open-interpreter اجازه میده شما با سیستم تون حرف بزنید، نه تنها کد بزنید، بلکه کارهای مختلف سیستمتون رو از طریق چت انجام بدید.

Open Interpreter lets LLMs run code (Python, Javanoscript, Shell, and more) locally. You can chat with Open Interpreter through a ChatGPT-like interface in your terminal by running $ interpreter after installing.

This provides a natural-language interface to your computer's general-purpose capabilities:

Create and edit photos, videos, PDFs, etc.
Control a Chrome browser to perform research
Plot, clean, and analyze large datasets
...etc.

A natural language interface for computers
https://github.com/OpenInterpreter/open-interpreter


@gocasts
18🔥3
قرعه کشی دوره به نفع بیماران پروانه ای و خانه ای بی

شکر خدا را که در پناه حسینیم
عالم از این خوب تر پناه ندارد

به مناسبت ایام سوگواری حضرت سیدالشهدا، امام حسین علیه السلام، دوره و تیمسازی gocasts به قید قرعه به ۵ نفر با مبلغ دو و نیم میلیون تومان به فروش خواهد رسید و تمامی مبلغ به حساب خانه ای بی واریز خواهد شد.


فیش واریز مبلغ جمع خرید قرعه کشی به حساب خانه ای بی
https://news.1rj.ru/str/gocasts/694&comment=6112

جدای از این، میتونید از طریق این لینک کمک های نقدی خود را به حساب خانه ای بی واریز کنید.
https://ebhome.ngo/support?utm_campaign=gocasts140404



@gocasts

سایت خانه ای بی
https://ebhome.ngo

اینستاگرام خانه ای بی
https://instagram.com/eb_home
50👏4
گولنگ فکر می کنم یکی از زبان های اصلی ای خواهد بود که در عصر agentic coding خواهد درخشید. علت اصلی ش readability بالای کدهای گولنگ هست که خیلی فهمش رو برای llmها ساده کرده. گولنگ از اول هم اینطوری دیزاین شده بود که کمتر درگیر syntax زبان بشی و بیشتر درگیر ساختن بیزینس بشی. همین موضوع خواسته یا ناخواسته در عصر LLMها یه جورایی برگ برنده شده براش.

اخیرا مقالات متفاوتی رو خوندم که به همین موضوع اشاره میکنن.

I work mostly in Go. I’m confident the designers of the Go programming language didn’t set out to produce the most LLM-legible language in the industry. They succeeded nonetheless.


https://fly.io/blog/youre-all-nuts/

https://lucumr.pocoo.org/2025/6/12/agentic-coding/

تجربه کم شخصی خودم هم خیلی خوب بوده با vibe coding و گولنگ. این موضوع رو در کنار performance گولنگ, کتابخانه های std سطح بالا و کارآمد, و تغییرات کم و پایدار زبان که قرار بدیم حس میکنم گولنگ در عصر AI درخشش بیشتری هم خواهد داشت.


@gocasts
26👍7🔥2😍1
This media is not supported in your browser
VIEW IN TELEGRAM
با اختلاف یکی از بهترین ابزارهایی که چند وقت اخیر باهاش کار کردم Zellij هست

A terminal workspace with batteries included
https://github.com/zellij-org/zellij

داشتن workspace روی ترمینال برای بچه های برنامه نویس و دواپس خیلی کارو میتونه راحت تر کنه. چون شما معمولا روی چندتا سرور یا چند تا پروژه ممکنه کار کنی و مدام بین این ها بخوای switch کنی. این که هر بار از اول بخوای محیط ترمینال رو بسازی و آماده کنی خیلی کار حوصله سربری هست.

به جز این موارد Zellij واقعا UX خوبی داره و لازم نیست هزار تا hotkey رو حفظ کنید که بتونید ازش استفاده کنید.

پیشنهاد میکنم امتحانش کنید.

@gocasts
21👍7🔥1
Ai Casts | Ai for Software
https://x.com/leerob/status/1946323104692945188 https://x.com/mitsuhiko/status/1946326768664625604 @gocasts Ai for Software @aicasts_ir
فقط یاد بگیرید!

عصر ai عصر یادگیریه
تو دوره ای هستیم که کارهای روتین رو agentهای هوش مصنوعی در چند دقیقه انجام میدن. چیزی که قبلا شاید روزها طول میکشید.

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

اگه قبلا ۲۰و ۳۰ درصد تایم به یادگیری مشغول بودید و ۷۰ درصد کار میکردید الان این موازنه باید کامل عوض بشه. چون کارهای سطح پایین و معمولی رو agentها به خوبی انجام میدن. مهم اینه که طراحی چطور باشه. ساختار چی باشه. در هر قسمت کد چه الگو و patternی انتخاب بشه.

دقیقا چند روزه دارم به چنین مثالی که در متن هست فکر میکنم. شما باید از agent بخواید که exponential backoff به کدتون اضافه کنه. و گرنه اگه بهش بگید make it more robust to errors اون هزارتا راه خوب و بد جلوی دست ش داره...

اینکه به agent بگیم code as a senior engineer تفاوتی در نتیجه ایجاد نمیکنه!! باید در مورد تک تک جزییات ازش بخواید که فلان کارو انجام بده.

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


@gocasts

Ai for Software
@aicasts_ir
👍666👏4
استخدام یکی دیگه از بچه های دوره و تیمسازی

الحمدلله آقا نیما هم تونست موقعیت کاری ش رو پیدا کنه

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

کد تخفیف ویژه تابستان رو میتونید استفاده کنید.

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

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

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

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

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


@gocasts
23👏5🔥1
اولین تجربه جدی با agentic coding
با llmها در مدت خیلی کمی میتونی حجم زیادی کد تولید کنی، ولی همچنان خیلی جدی به عامل انسانی احتیاج داری که کد رو ریویو کنه، کد رو تست کنه و مطمئن بشی رفتار بیزینسی مد نظرت پیاده سازی شده.
و نکته مهم اینه که دخالت عامل انسانی نمیتونه scale کنه.
بعد از چند روز agentic coding که با ریویو کمی همراه بود(برای اینکه سریعتر ببینم چقدر سرعت توسعه میتونه پیشرفته کنه)، با یه codebaseی مواجه شدم که بشدت ساختار نامنظم داره، تست ها valid نیستن و رفتار واقعی مد نظر بیزینس رو تست نمیکنه بلکه کد نوشته رو تست میکنه. و همچنین نیازمندی های بیزینسی کامل پیاده نشده.
قطعا ریویو دقیق تر و تعامل بیشتر با llmها میتونست خروجی رو بهتر کنه، اما این تعامل بیشتر به این معنی هم هست که سرعت توسعه با llmها کمتر و کمتر میشه.

البته داشتن مدل های قوی تر با هزینه بیشتر (مثلا پکیج ۲۰۰ دلاری به جای ۲۰ دلاری) باز میتونه کمک کنه که کیفیت خروجی بهتر بشه اما همچنان مساله اصلی دخالت و نظارت عامل انسانی هست که باید جدی گرفته بشه

https://x.com/josevalim/status/1948634632716488809?t=wxT2q64_42KF9ORdvJnzQQ&s=19


@gocasts
👍486👏3
مقاله خیلی جذابیه. نکات بسیار ارزشمندی رو میگه. نکات مهمی رو در مورد استفاده از PostgreSQL میگه وقتی که شما همزمان Write-Heavy و Read-Heavy هستی.

مقاله ایده های جالب و متفاوتی رو ارائه میکنه:
داشتن جداولی با حداکثر ۱۰۰ هزار رکورد برای داشتن index scanهای سریع و جلوگیری از کاهش عملکرد PostgreSQL

استفاده از index-only scans و مکانیزمی شبیه loose index scan برای کم کردن io operations

داشتن استراتژی compaction و VACUUM Analyze برای جلوگیری از عملکرد read queries با بزرگ شدن جدول دیتابیس

استفاده از دستور COPY به جای Insert برای batch insertهای زیاد و سنگین

استفاده از golang string type به جای byte slice برای transfer داده که عملکرد تقریبا ۲ برابر بهتری داشته!

Lessons from scaling PostgreSQL queues to 100k events per second

https://www.rudderstack.com/blog/scaling-postgres-queue/

@gocasts
31👍2
یادگیری هیجان انگیز + بهبود کیفیت کد با CodeRabbit
واقعاً شگفت‌زده شدم! 🤯

انگار که یه مهندس ارشد نرم افزار در کنارته و کدت رو review میکنه!

این ابزار نه‌تنها کیفیت code reviewها رو در Pull Requestها بالا می‌بره، بلکه به شکل فوق‌العاده‌ای توی یادگیری عملی برنامه‌نویسی میتونه به شما کمک کنه.

خوبی ش اینه برای پروژه های open-source رایگانه و میتونید از همین الان حالش رو ببرید. 🎁


شما می‌تونید برای خودتون پروژه‌هایی با هدف یادگیری تعریف کنید، و CodeRabbit مثل یه منتور حرفه‌ای PRهاتون رو از جنبه‌های مختلف مثل:
رعایت best practice
بهبود performance
ساختار معماری کد
بهینه‌سازی queryهای دیتابیس
ریویو می‌کنه و نکات دقیقی بهتون می‌ده. 🎯


مثلا من یه پروژه Elixir رو بهش دادم و ازش خواستم که review کنه و خروجی یه جاهایی واقعا میخکوبم کرد.
یکی قسمت Critical Issueها و ارزیابی پروژه از نظر best practices و performance بود که خیلی آموزنده ست. (کد شما رو با کد بهتر مقایسه میکنه).
https://github.com/landofbeam/dns_rabbit/pull/1#issuecomment-3130715195

یکی هم قسمت Sequence Diagram(s) بود که خودش flow درخواست هارو طراحی کرد.
https://github.com/landofbeam/dns_rabbit/pull/1#issuecomment-3124812290


کلا با CodeRabbit میشه به یه سطح دیگه ای از linting هم رسید. تا حالا ابزارهای linting زیادی دیدیم که syntax و style رو بررسی می‌کنن. اما واقعاً چند تا ابزار سراغ داریم که منطق کد، ساختار معماری، performance یا best practiceها رو بررسی کنن؟
این چیزیه که با CodeRabbit میشه تجربه ش کرد.


@gocasts
40👍7😍3🔥2
خب بریم سراغ نتایج StackOverFlow Developer Survey سال ۲۰۲۵
فقط یک چهارم developerها از شغل فعلی شون رضایت دارن

استفاده کنندگان از AI agentها اکثرا معتقدند که productivityشون زیاد شده

بیشتر developerها به نتایج AI tools اعتماد ندارن که بنظرم منطقی هم هست


استفاده از python هفت درصد نسبت به پارسال رشد داشته که از بقیه زبان ها بیشتر بوده

همچنان Visual Studio Code و Visual Studio پرکاربردترین development environmentها هستند

از most admiredها بگیم. این نشون میده که برنامه نویسا هر چیزی رو چقدر ستایش میکنن و دوست دارن (لزوما به معنی استفاده و کاربرد نیست)
زبان Rust و بعدش Gleam و Elixir و Zig تحسین برانگیزترین(محبوب ترین) زبان ها هستند.


تحسین برانگیزترین مدل AI هم claude sonnet شده هر چند که most desired یا اونی که بیشتر استفاده میشه یا قصد استفاده دارن ChatGPT بوده
Claude Sonnet is the most admired AI model

گزارش کامل ش رو میتونید تو این لینک ببینید
https://survey.stackoverflow.co/2025

@gocasts
👍3111🔥3
سلام به همه دوستان
روزبه جان دوست و همکار خیلی خوب و کاربلد منه٬ که یه کانال تلگرام داره که محتوایی که به اشتراک میذاره آموزنده ست.
اگه دوست داشتید کانالش رو دنبال کنید.

اینم id کانال روزبه جان
@terminal_stuff

مثل همیشه تاکید میکنم که این پست تبلیغ هم نیست طبیعتا


@gocasts
25🔥1
یکی دو سال پیش مرورگر Arc رو نصب کردم ولی بعد از مدتی بدون استفاده خاصی حذفش کردم.

چند هفته ای میشه که مجدد نصب ش کردم و با اختلاف بهترین تجربه کاربری ای که یه مرورگر میتونه داشته باشه رو ازش گرفتم.
شاید مهمترین ویژگی ش از نظر من داشتن tab launcher و workspace هست که تجربه کاربری خیلی خوبی ایجاد میکنه.

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

اینجا لینک دانلودش هست میتونید نصب کنید.
https://arc.net/gift/4b5d3e50


@gocasts
22👏1
به شیوه Joe Armstrong بزرگ کد بنویسید.
برگرفته از کتاب Programming Erlang, Second Edition

برداشت اول: ترجیح میدم برنامه هارو کم کم بزرگشون کنم جای اینکه از اول به نوشتن یه برنامه خیلی بزرگ و جامع فکر کنم.
برداشت دوم: مزیت این روش اینه که immediate feedback میگرم از کدی که نوشتم و از اشتباهات بزرگی که بخواد حجم زیادی از کد رو تحت تاثیر قرار بده جلوگیری میشه.
برداشت سوم: سعی نمیکنم از قبل به ساختار برنامه و data structureهای مورد نیاز فکر کنم. حین برنامه کم کم میفهم م چی لازمه.
برداشت چهارم: یه ذره کد مینویسم٬ یه ذره تست ش میکنم. مجدد همین کارو تا جایی که لازمه ادامه میدم.


How I Write Programs
When I’m writing a program, my approach is to “write a bit” and then “test a bit.” I start with a small module with a few functions, and then I compile it and test it with a few commands in the shell. Once I’m happy with it, I write a few more functions, compile them, test them, and so on. Often I haven’t really decided what sort of data structures I’ll need in my program, and as I run small examples, I can see whether the data structures I have chosen are appropriate.
I tend to “grow” programs rather than think them out completely before writing them. This way I don’t tend to make large mistakes before I discover that things have gone wrong. Above all, it’s fun, I get immediate feedback, and I see whether my ideas work as soon as I have typed in the program.
Once I’ve figured out how to do something in the shell, I usually then go and write a makefile and some code that reproduces what I’ve learned in the shell.


@gocasts
👍5110🔥1
ابزار VictoriaMetrics یه ابزار سریع و مقیاس پذیر برای مانیتورینگ و مدیریت time-series data هست که در توسعه ش خیلی به مساله performance و reliability اهمیت دادن.

حالا یکی از توسعه دهندگانش توصیه کرده که اگه میخواید بدونید سیستم های high performance چطوری با گولنگ توسعه داده میشن کد پروژه VictoriaLogs رو بخونید.

If you want to know how high performance systems written in Go were built, read VictoriaLogs.
1. Custom bloom filters to reduce disk I/O and CPU cycles for redundant logs.

2. Column-oriented block storage for better compression ratio and cache locality.

3. Memory-mapped files with automatic pread fallback for zero-copy reads.

4. Lock-free object pools and arena allocators to reduce heap allocations.

5. Reflection-free JSON parsers for streaming at hundreds of MB/s per core.

6. Compile-time templates replace text/html parsing with near-printf speed.

7. Dictionary-aware Zstd compression balancing CPU cost against bandwidth savings.

8. Multi-core parallelism everywhere with adaptive concurrency limits.

9. Scatter-gather fan-out writes with adaptive concurrency for network saturation.

10. Fast hashing and lock-free randomization for minimal contention.

VictoriaLogs
Fast and easy to use database for logs, which can efficiently handle terabytes of logs
https://github.com/VictoriaMetrics/VictoriaLogs

https://x.com/func25/status/1950115605484552333?t=nlInVX9hO2aYSQa_gRZoog&s=35



@gocasts
👍20👏1
به شخصه خیلی از TODO استفاده میکنم وقتی که کد مینویسم.
کاربرد TODO فقط لیست کردن کارهای آینده نیست، خیلی وقتا شما در لحظه نمیتونی تصمیم بگیری که یه شرایطی باید در کد لحاظ بشه یا نه. خیلی وقتا میدونی یه چیزی رو رعایت نکردی و بدهی فنی ایجاد کردی، ولی نمیدونی واقعا این بدهی فنی چقدر مهمه. خیلی وقتا میدونی میشه کد رو بهتر کرد و براش ایده هم داری ولی نمیدونی چقدر ضرورت داره اجرا کردنش. خیلی وقتا میدونی یه چیزی باگه ولی نمیخوای رفعش کنی...
من در همه این موارد همون لحظه یه TODO نسبتا مفصل میذارم که بعدا چه خودم و چه دیگران اون تیکه از کد رو خوندن خیلی بهتر onboard بشن روی کد و چالش هاش.
صادقانه بگم اکثر TODOها هیچوقت قرار نیست کد زده بشه، ولی نوشتن TODO به شما و تیم این اطمینان رو میده که دید قابل قبولی نسبت به بدهی های فنی ای که به عمد در پروژه ایجاد کردید دارید. و هیچ لحظه ای از همون لحظه ای که تمام ذهنتون درگیر پیاده سازی کد هست، بهتر نیست برای نوشتن TODO.

این مقاله هم در همین رابطه ست
https://sophiebits.com/2025/07/21/todos-arent-for-doing


@gocasts
👍5918
اگه طرفدار و کاربر editorهای ترمینالی مثل vim و مشتقاتش هستید پیشنهاد میکنم حتما Helix رو امتحان کنید.
با Rust توسعه داده شده و learning curve خیلی راحت تری داره.
همیشه لیست hotkeyهای مد نظرتون جلوی چشمتونه و لازم نیست همه چیز رو حفظ کنید یا اونقدر تمرین کنید که ملکه ذهنتون بشه.
دو هفته ای میشه که محیط اصلی توسعه خودم هست و بشدت ازش راضیم.
مزیت اصلی ش نسبت به vim همینه که در یه زمان خیلی محدود میتونید روش مسلط بشید و به عنوان محیط اصلی توسعه ازش استفاده کنید.

ترکیب zellij با helix یه محیط خیلی حرفه ای و customize شده توسعه رو میتونه بهتون بده.
اگه تجربه تون با vim شکست خورده مثل من، با helix یه تلاش مجدد کنید شاید این بار موفقیت آمیز باشه...
https://helix-editor.com


@gocasts
27👍9🔥2
آقا رضا یه بستر خوب برای تمرین یه سری چالش کدنویسی گولنگ بصورت متن باز آماده کرده که میتونید استفاده کنید.

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



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

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


@gocasts
👍4112😍5