Gopher Academy
3.33K subscribers
914 photos
40 videos
279 files
1.95K links
🕸 Gopher Academy

🔷interview golang
https://github.com/mrbardia72/Go-Interview-Questions-And-Answers

حمایت مالی:
https://www.coffeete.ir/mrbardia72

ادمین:
@mrbardia72

ادمین تبلیغات:
@labdon_ads
Download Telegram
Forwarded from Linux Labdon
🔵 عنوان مقاله
How to Install Linux Kernel 6.15 on Ubuntu 25.04 and Ubuntu 24.10

🟢 خلاصه مقاله:
مقاله‌ای که مورد بررسی قرار گرفته، راهنمایی‌ است برای نصب آخرین نسخه‌ی هسته لینوکس (Linux kernel 6.15) بر روی توزیع اوبونتو ۲۵.۰۴. هدف از این راهنما کمک به کاربران برای به‌روزرسانی سیستم‌های خود با استفاده از جدیدترین نوآوری‌ها و بهبودهای امنیتی موجود در نسخه‌ی جدید هسته‌ی لینوکس است. این به‌روزرسانی ممکن است عملکرد سیستم را بهبود بخشد و امکانات جدیدی را در اختیار کاربران قرار دهد. مقاله به احتمال زیاد شامل دستورالعمل‌های قدم‌به‌قدم، مزایای به‌روزرسانی هسته و رفع پتانسیل مشکلات احتمالی پس از نصب است. بدین ترتیب، کاربران می‌توانند با اطمینان بیشتری نسبت به نصب و استفاده از این به‌روزرسانی اقدام نمایند.

🟣لینک مقاله:
https://9to5linux.com/how-to-install-linux-kernel-6-15-on-ubuntu-25-04-and-ubuntu-24-10


👑 @Linux_Labdon
Forwarded from DevOps Labdon
🔵 عنوان مقاله
How We Run Terraform At Scale (11 minute read)

🟢 خلاصه مقاله:
شرکت Benchling با استفاده از سیستمی کاملاً خودکار که بر پایه Terraform Cloud ساخته شده است، بیش از ۱۶۵,۰۰۰ منبع ابری را در ۶۲۵ فضای کاری Terraform مدیریت می‌کند. این اقدام باعث صرفه‌جویی در هزاران ساعت کار توسعه‌دهندگان و حذف انحراف زیرساخت‌ها شده‌است. با جایگزینی فرآیندهای دستی و خطاپذیر با خودکارسازی قابل توسعه و ابزار سفارشی، Benchling کارایی انتشار و تجربه توسعه‌دهندگان را به مقیاس بهبود بخشیده است. این تغییرات امکان تمرکز بر نوآوری و بهبود مستمر را برای Benchling فراهم آورده است.

🟣لینک مقاله:
https://benchling.engineering/how-we-run-terraform-at-scale-da7bb75dc394?utm_source=tldrdevops


👑 @DevOps_Labdon
🔵 عنوان مقاله
Working with BF16 (bfloat16) in Go on Arm Processors

🟢 خلاصه مقاله:

مقاله‌ای که راهنمای تخصصی برای استفاده از اعداد اعشاری BF16 در زبان برنامه‌نویسی Go روی معماری ARM ارائه داده، با وجود پشتیبانی نکردن این زبان از BF16 به طور بومی. روش‌های ارائه شده شامل استفاده از Cgo برای فراخوانی توابع C و همچنین استفاده از ابزار GoAT است که امکان کار با BF16 را در اکوسیستم Go فراهم می‌آورد. این راهنما همچنین به بررسی موارد استفاده عملی و ملاحظات عملکردی می‌پردازد و تأثیر این پیاده‌سازی‌ها بر روی کارآیی و کارایی برنامه‌ها در دستگاه‌های ARM را نشان می‌دهد.

🟣لینک مقاله:
https://golangweekly.com/link/170261/web


👑 @gopher_academy
1👍1🔥1
🔵 عنوان مقاله
NoxDir: Terminal Utility for Visualizing File System Usage

🟢 خلاصه مقاله:

مقاله مورد بحث یک ابزار خط فرمان (CLI) چندپلتفرمی و قدرتمند که با زبان برنامه‌نویسی Go ساخته شده است را معرفی می‌کند. این ابزار برای بصری‌سازی و بررسی استفاده از فضای سیستم فایل‌ها طراحی شده و از کتابخانه محبوب Bubble Tea برای نمایش جذاب استفاده می‌کند. این ابزار به کاربران کمک می‌کند تا توزیع فایل‌ها و میزان استفاده از فضای درایو خود را به طور واضح و تعاملی درک کنند و در نتیجه می‌توانند به بهینه‌سازی و نگهداری سیستم خود بپردازند. از آنجا که این ابزار چندپلتفرمی است، کاربران در سیستم‌های عامل مختلف مانند Windows, Linux, یا macOS می‌توانند از همان کیفیت بالا برای مدیریت فایل‌های خود بهره ببرند.

🟣لینک مقاله:
https://golangweekly.com/link/170284/web


👑 @gopher_academy
1
🔵 عنوان مقاله
Why I'm Excited About Go for Agents

🟢 خلاصه مقاله:

زبان برنامه‌نویسی Go به دلیل مدل همروندی قوی و استفاده از Context برای توسعه ایجنت‌هایی که به صورت حلقه‌ای و عمدتا بدون حالت فعالیت می‌کنند مناسب است. گوروتین‌ها در Go امکان ایجاد هزاران پروسه همروند را فراهم می‌کنند و Context کنترل دقیق‌تری بر زمان‌بندی و پاک‌سازی منابع می‌دهد. علاوه بر این، ابزارهای پروفایلینگ قدرتمند Go به شناسایی و رفع گلوگاه‌های عملکرد کمک می‌کند. این ویژگی‌ها با هم Go را برای توسعه نرم‌افزارهایی که ایجنت‌ها بخش اصلی آن‌ها هستند تقریباً ایده‌آل می‌سازند.

🟣لینک مقاله:
https://golangweekly.com/link/170255/web


👑 @gopher_academy
👍2
🔵 عنوان مقاله
Raylib-Go-Wasm: Raylib Go Bindings for the Web

🟢 خلاصه مقاله:

کتابخانه Raylib که برای ساخت بازی‌های ویدیویی کاربرد دارد، این امکان را فراهم می‌سازد تا از زبان برنامه‌نویسی Go استفاده شود. اما تا کنون، امکان هدف‌گذاری پلتفرم وب در بستر Go موجود نبود، که این یک محدودیت بزرگ بود. با این حال، تلاش‌هایی در جریان است تا این قابلیت به Raylib افزوده شود و اکنون در مراحل اولیه قرار دارد. خالق این تغییرات به دنبال کمک و بازخورد از جامعه توسعه‌دهندگان است تا بتوان روی پلتفرم وب نیز بازی‌هایی ساخت. این پیشرفت برای توسعه‌دهندگانی که علاقمند به ساخت بازی‌های وب‌محور هستند مفید خواهد بود.

🟣لینک مقاله:
https://golangweekly.com/link/170276/web


👑 @gopher_academy
1
Forwarded from 𓄂 Bardia 𓆃
⭕️ قیمت ارزهای آزاد | شنبه 24 خرداد 1404 - 15:46

🇺🇸 دلار : 835,600 ریال
🇪🇺 یورو : 970,200 ریال
🇬🇧 پوند انگلیس : 1,136,200 ریال
🕊3
Forwarded from 𓄂 Bardia 𓆃
⭕️ گزارش قیمت ارزهای دیجیتال | شنبه 24 خرداد 1404 - 15:48

◽️ بیت کوین : 98,116,794,000 ریال
◽️ بیت کوین : 105,016.37 تتر

◽️ اتریوم : 2,367,833,900 ریال
◽️ اتریوم : 2,534.34 تتر

◽️ تتر : 934,370 ریال
◽️ تتر : 1.000157 تتر
🕊31
در ادامه یک خلاصه‌ٔ کوتاه و مفید از مقاله

«More predictable benchmarking with testing.B.Loop»

نوشته‌ی Junyang Shao در وبلاگ Go منتشرشده در ۲ آوریل ۲۰۲۵ آورده شده است

---

🔄 مشکل اولیه با b.N

تا قبل از Go 1.24، بنچمارک‌ها با for range b.N { ... } نوشته می‌شدند که:

نیاز به b.ResetTimer() و b.StopTimer() برای مدیریت دقیق زمان داشت.

به‌دلیل inlining و حذف کد بدون اثر جانبی، گاهی کد تست‌شده اصلاً اجرا نمی‌شد و زمان‌های غیرواقعی تولید می‌کرد .
---
معرفی testing.B.Loop

Go 1.24 متد جدیدی معرفی کرد:

func Benchmark(b *testing.B) {
... setup once ...
for b.Loop() {
// کد اصلی برای بنچمارک
}
... cleanup once ...
}

مزایای کلیدی آن عبارتند از:

مدیریت خودکار زمان: زمان‌سنج به‌صورت خودکار بین setup/loop/cleanup کنترل می‌شود؛ نیازی به ResetTimer یا StopTimer نیست .

جلوگیری از حذف بهینه‌ساز: درون Loop، تماس به توابع به‌صورت مستقیم نگه داشته می‌شود و کامپایلر نمی‌تواند آن را حذف کند .

یکبار اجرا برای تعیین تعداد تکرارها: برخلاف روش قدیمی که تابع benchmark چندین‌بار با b.Nهای مختلف فراخوانی می‌شد، این روش تنها یک‌بار اجرا شده و کارآمدتر است .

---
⚙️ نکات قابل توجه

اگر در هر بار اجرا نیاز به پرکردن داده‌ها یا عملیات خارج از loop دارید، باید خودتان با b.StopTimer() و b.StartTimer() مدیریت کنید:

> مثال: مقداردهی تصادفی پیش از sort .

داخل یک تابع بنچمارک، باید فقط از for b.Loop() استفاده شود، نه ترکیبی از b.N و b.Loop .

--
🧭 توصیه و نتیجه‌گیری

testing.B.Loop در Go 1.24 نسل جدیدی از بنچمارک‌ها است:

ساده‌تر، دقیق‌تر و مقاوم‌تر در برابر اشتباهات رایج.

برای بنچمارک‌های جدید، به‌عنوان روش پیش‌فرض توصیه می‌شود؛
و برای بنچمارک‌های موجود نیز می‌توان با کمی تغییر به آن مهاجرت کرد .
---
فقط یک نگاه مختصر

✳️ ساده‌سازی کد

⏱️ حذف نیاز به مدیریت زمان دستی

🔒 جلوگیری از بهینه‌سازی‌های مخرب

عملکرد سریع‌تر در اجرا
2👍2🔥1
🔵 عنوان مقاله
Modern (Go) Application Design

🟢 خلاصه مقاله:

این مقاله به بررسی سازمان‌دهی نرم‌افزارها با تمرکز بر مدل‌های داده و مرزهای مورد کاربرد می‌پردازد. مشکلاتی مانند افزایش پیچیدگی نرم‌افزار، تکرار داده‌ها و مشکلات در مقیاس‌پذیری و نگهداری از جمله مسائل شایعی هستند که در مقاله به آن‌ها اشاره شده است. پیشنهاد می‌شود که با تمرکز بر مدل‌های داده مشخص و تعریف دقیق مرزهای مورد کاربرد، می‌توان به بهبود مدیریت داده‌ها، افزایش کارایی و امنیت بیشتر در نرم‌افزارها دست یافت.

🟣لینک مقاله:
https://golangweekly.com/link/170260/web


👑 @gopher_academy
3
جاوید و پیروز باد ایران ما
12🕊6
🔴 اطلاعیه مهم

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

ما هم به عنوان یک رسانه، وظیفه خودمون دونستیم که در کنار محتوای همیشگی، صدای مردم باشیم و اطلاعات درست و مهم رو به‌موقع منتشر کنیم 📰

با این حال، تصمیم نهایی با شماست:

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

لطفاً با ری‌اکشن مشخص کنید که کدوم مسیر رو ترجیح می‌دید 🙏
❤️ = پوشش خبری موقت
🕊 = نیازی به پوشش خبری نیست

🌷فقط توجه کنید چنین اخباری روی توی چنل شخصی براتون میذارم

@bardia_kazemi
🕊10712
🔵 عنوان مقاله
Go 1.25 Release Candidate 1

🟢 خلاصه مقاله:

نسخه نهایی Go 1.25 قرار است در ماه آگوست منتشر شود، اما تیم Go از حال حاضر اطمینان کافی دارد تا اولین نسخه RC را ارائه دهد. تنها تغییر در زبان، حذف مفهوم انواع اصلی است که اخیراً توسط رابرت گریسمر توضیح داده شده است. علاوه بر این، تغییراتی چون یک سیستم زباله‌روبی تجربی جدید، تغییرات در GOMAXPROCS و بهبود اطلاعات اشکال‌زدایی در حال انجام است. این تغییرات نه تنها قابلیت‌های جدیدی را اضافه می‌کنند بلکه ویژگی‌های موجود را نیز بهبود می‌بخشند تا زبان برنامه‌نویسی Go همچنان به عنوان یک انتخاب برتر برای برنامه‌نویسانی که به دنبال زبانی کارآمد، قابل اتکا و ساده هستند، باقی بماند.

🟣لینک مقاله:
https://golangweekly.com/link/170355/web


👑 @gopher_academy
1👍1🎉1🕊1
Forwarded from omid trade 360
🔵 عنوان مقاله
The next Nubank will be built on stablecoins (2 minute read)

🟢 خلاصه مقاله:
مقاله‌ای که مرور شده، به بررسی نقش فزاینده‌ی استیبل‌کوین‌ها (ارزهای دیجیتال پایدار) در سیستم مالی جهانی می‌پردازد. این ارزها، که از قبل به عنوان ابزار پرداخت شناخته شده‌اند، اکنون به عنوان یک لایه بنیادین در پلتفرم‌های مالی جهانی در حال ظهور هستند و انتظار می‌رود که نقشی مشابه به نقشی که Stripe و BaaS (بانکداری به عنوان یک سرویس) در دهه گذشته ایفا کردند، ایفا کنند، اما در مقیاس بسیار گسترده‌تری. با اجرای قانون GENIUS و فراهم شدن شفافیت قانونی، اکنون استیبل‌کوین‌ها می‌توانند به عنوان معادل نقد عمل کنند، موانع مجوز را کاهش می‌دهند و امکان پرداخت‌های فوری و جهانی را فراهم می‌آورند و برای فین‌تک‌های جدید بستری قدرتمند ایجاد می‌کنند. استفاده‌های جدیدی مانند عملیات خزانه‌داری SpaceX و حقوق و دستمزد جهانی Deel در حال ظهور است و شرکت‌هایی که استیبل‌کوین‌ها را به عنوان زیرساخت در نظر می‌گیرند در موج بعدی فین‌تک قدرتمندتر خواهند بود.

🟣لینک مقاله:
https://www.linkedin.com/posts/sytaylor_the-next-nubank-will-be-built-on-stablecoins-activity-7335711920995360768-MQ-V?&utm_source=tldrcrypto


👑 @omidtrade360
1
🔵 عنوان مقاله
GoAT: A Go Assembly Transpiler for C

🟢 خلاصه مقاله:

مقاله به بررسی ابزاری نوآورانه می‌پردازد که برای تبدیل کدهای تابعی زبان سی به کد اسمبلی زبان گو طراحی شده است. این ابزار با ترجمه کدهای سی به زبان اسمبلی گو به توسعه‌دهندگان این امکان را می‌دهد که کدهای موجود خود را به‌راحتی به پروژه‌های گو منتقل کنند. این فرآیند به ویژه در برنامه‌های کاربردی که به سرعت بالای اجرا نیاز دارند، مؤثر است. ابزار مذکور با پشتیبانی گسترده‌ای از قابلیت‌های سی، اطمینان از دقت و کارایی بالا را در فرآیند ترجمه فراهم می‌آورد و به توسعه‌دهندگان کمک می‌کند تا بدون نوشتن مجدد کدها، سیستم‌ها را یکپارچه‌سازی و عملکرد نرم‌افزار را افزایش دهند.

🟣لینک مقاله:
https://golangweekly.com/link/170262/web


👑 @gopher_academy
5
🔵 عنوان مقاله
Complete Go for Professional Developers

🟢 خلاصه مقاله:

در مقاله‌ای آموزشی، استفاده از زبان برنامه‌نویسی گو برای ساخت API‌های درجه‌یک تجاری تشریح شده است. این زبان، که توسط شرکت‌های بزرگ فناوری مورد اعتماد است، برای اتصال به دیتابیس پستگرس، پیاده‌سازی احراز هویت و نوشتن تست‌های کاربردی مناسب است. مقاله توسط یک مهندس یادگیری ماشین توئیچ که روزانه با گو به حل مسائل واقعی می‌پردازد، نوشته شده است.

🟣لینک مقاله:
https://golangweekly.com/link/170254/web


👑 @gopher_academy
2👍2
🔵 عنوان مقاله
Prevent Postgres Slowdowns on Go Apps with This Check List

🟢 خلاصه مقاله:

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

🟣لینک مقاله:
https://golangweekly.com/link/170263/web


👑 @gopher_academy
2