DevTwitter | توییت برنامه نویسی
29K subscribers
4.76K photos
380 videos
6 files
4.51K links
توییت های برنامه نویسی و طراحی وب :)

@dvtwi

Hashtags:
devtwitter.t.me/5

DevBooks Channel:
https://t.me/+AYbOl75CLNYxY2U0

Github:
https://github.com/DevTwitter

X:
https://x.com/devtwittir
Download Telegram
#کوته_نیوز

دسترسی به مدل Fable 5 آنتروپیک به دستور دولت آمریکا مسدود شد

به گزارش رویترز، دولت ایالات متحده با ابراز نگرانی شدید از آسیب‌پذیری‌های امنیتی، به شرکت آنتروپیک دستور داد تا در تاریخ ۱۲ ژوئن، دسترسی به مدل‌های جدید خود را فوراً قطع کند. مقامات دولتی نگران روشی برای جیلبریک یا دورزدن حصارهای امنیتی مدل فیبل ۵ هستند که می‌تواند محدودیت‌های مربوط به امنیت سایبری، شیمی و بیولوژی را بشکند و به کاربران اجازه دهد تا نقاط ضعف نرم‌افزارها را شناسایی کنند. /دیحیاتو

@DevTwitter
🍌644💔3
شیائومی MiMo Code را معرفی کرد؛ دستیار کدنویسی هوش مصنوعی که فراموش نمی‌کند

شیائومی ابزار کدنویسی هوش مصنوعی جدیدش را با نام MiMo Code V0.1.0 به‌صورت متن‌باز منتشر کرد. این ابزار ترمینال‌محور بر پایه مدل MiMo-7B ساخته شده که شیائومی آن را در سال ۱۴۰۳ معرفی کرده بود، اما برخلاف نسخه قبلی که تنها یک مدل زبانی بود، MiMoCode یک عامل کدنویسی کامل است که برای همراهی در پروژه‌های نرم‌افزاری بلندمدت طراحی شده است.

این ابزار بر پایه پروژه متن‌باز OpenCode ساخته شده و با مجوز MIT منتشر شده است. به‌طور پیش‌فرض به مدل MiMo-V2.5 دسترسی رایگان دارد، اما کاربران می‌توانند آن را به سرویس‌های دیگری مانند DeepSeek، Kimi و GLM نیز متصل کنند.


مشکلی که MiMo Code حل می‌کند


یکی از آزاردهنده‌ترین محدودیت‌های دستیارهای کدنویسی هوش مصنوعی این است که در پروژه‌های طولانی، از تصمیمات و مکالمات پیشین «فراموش می‌کنند»؛ چون همه چیز به پنجره context محدود است و وقتی این پنجره پر شود، اطلاعات قبلی از دسترس خارج می‌شود.
شیائومی برای حل این مشکل یک زیرعامل پس‌زمینه اضافه کرده که پیوسته در حال مدیریت و ذخیره‌سازی اطلاعات است. وقتی مکالمه فعال به محدودیت context نزدیک می‌شود، این زیرعامل همه چیز را به یک خلاصه ساختاریافته تبدیل می‌کند تا عامل اصلی بتواند بدون از دست دادن سیر کار ادامه دهد. علاوه بر این، قابلیتی به نام /dream هر هفت روز یک‌بار به‌صورت خودکار اجرا می‌شود؛ این فرایند فایل‌های تکراری را حذف می‌کند، مسیرهای فایل را تأیید می‌کند و حافظه بلندمدت را به‌روز می‌کند.


حالت Compose و سیستم Harness

؛MiMo Code دو قابلیت متمایز دیگر هم دارد. سیستم Harness به‌جای استفاده از مدل به‌عنوان یک نقطه API عمومی، از قابلیت‌های زیرین مدل مستقیماً بهره می‌برد. حالت Compose که با فشردن کلید Tab فعال می‌شود، به کاربر امکان می‌دهد صرفاً یک هدف کلی تعریف کند؛ عامل خودش برنامه‌ریزی، طراحی، کدنویسی، تست و بازبینی را از ابتدا تا انتها مدیریت می‌کند. شیائومی ادعا می‌کند این رویکرد می‌تواند «محصول نهایی در سطح صنعتی» تولید کند و به نتایج بنچمارک استناد کرده است: امتیاز ۶۲ درصد در SWE-Bench Pro و ۷۳ درصد در Terminal Bench 2 که حدود پنج درصد بهتر از Claude Code با همان مدل پایه است.

ورودی صوتی نیز با استفاده از مدل MiMo-V2.5-ASR در این ابزار تعبیه شده و کاربران می‌توانند دستورات را دیکته کنند یا عملیاتی مثل ارسال و اجرا را بدون لمس صفحه‌کلید فعال کنند.


نصب و راه‌اندازی


نصب MiMo Code در macOS و لینوکس با یک دستور ترمینال انجام می‌شود و کاربران ویندوز می‌توانند آن را از طریق npm نصب کنند. راه‌اندازی اولیه به‌صورت خودکار کاربر را در پیکربندی مدل راهنمایی می‌کند و استفاده از کانال رایگان MiMo-V2.5 بدون نیاز به ثبت‌نام امکان‌پذیر است.

https://github.com/XiaomiMiMo/MiMo-Code

@DevTwitter | <Sanaz Hosseinzadeh>
29🍌4🔥1
مروز یک پلاگین ساده و کاربردی برای وردپرس توسعه دادم: Scroll To Top Plugin
این پلاگین یک دکمه شناور "بازگشت به بالای صفحه" به سایت اضافه می‌کند که پس از اسکرول کاربر نمایش داده شده و با کلیک روی آن، صفحه به‌صورت روان به ابتدای محتوا بازمی‌گردد.
ویژگی‌های پلاگین:
سبک و بهینه
پیاده‌سازی با PHP، JavaScript و CSS
استفاده از Shortcode برای نمایش دکمه
پشتیبانی از Font Awesome
سازگار با اکثر قالب‌های وردپرس
بدون نیاز به تنظیمات پیچیده
در این پروژه با مفاهیمی مانند:
توسعه پلاگین وردپرس
بارگذاری فایل‌های CSS و JavaScript با wp_enqueue_*
ایجاد Shortcode سفارشی
کار با jQuery برای مدیریت رویدادهای اسکرول
کار کردم.
این پروژه را به عنوان بخشی از مسیر یادگیری و تقویت مهارت‌های توسعه افزونه‌های وردپرس در گیت‌هاب منتشر کرده‌ام.
خوشحال می‌شوم نظرات و پیشنهادات شما را درباره بهبود این پروژه بدانم
لینک گیت هاب پلاگین:
https://github.com/ahmadesmailimajd1995/scroll-to-top-plugin

@DevTwitter | <ahmad esmaili/>
🍌288👍2
یه چیزی که همیشه اعصابم رو خورد می‌کرد:

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

برای همین نشستم یه اکستنشن ساختم - AI RTL Resolver

چی کار می‌کنه؟
- متن‌های فارسی، عربی، اردو و عبری رو به درستی RTL نمایش می‌ده
- فرمول‌های ریاضی و کدها رو LTR نگه می‌داره (بدون خراب شدن)
- هیچ تنظیماتی نیاز نداره، نصب کن و استفاده کن
- سبک، سریع، و open source

الان روی Chrome و Firefox در دسترسه

Chrome: https://chromewebstore.google.com/detail/ai-rtl-resolver/fajdcnieohikiogbngkfedbpfoniobcc
Firefox: https://addons.mozilla.org/en-US/firefox/addon/ai-rtl-resolver/

Github: https://github.com/miladniroee/ai-rtl-resolver

@DevTwitter | <Ladoya/>
👍72🔥34👎5
این وب سایت برای اونای که وسواس دارن تا بهینه ترین LLM ممکن رو برای تسک خودشون انتخاب کنند.

مثلا عکس پایین کیفیت عملکرد LLM ها برای Text Generation هست.

ولی خوب میتونید توی زمینه های مختلف برای هر تسکی مثل Vision, Image, Video و... را ببینید.

https://arena.ai/leaderboard/

@DevTwitter | <^mad/>
👍199🍌3
پروژه Java Tutor یک open-source skill برای Codex است که برای کمک به کار با Java ساخته شده
از یاد گرفتن مفاهیم پایه و فهمیدن خطاها گرفته تا code review، و migration بین نسخه‌های Java و وصل کردن جواب‌ها به official documentation

ایده‌ی اصلی اینه که وقتی کسی با Java درگیر می‌شه، لازم نباشه بین جواب‌های پراکنده، حدسی یا زیادی پیچیده گم بشه. Java Tutor سعی می‌کنه توضیح‌ها رو ساده‌تر، مرحله‌به‌مرحله‌تر و نزدیک‌تر به منابع اصلی Java ارائه بده.

این پروژه فقط برای senior developerها نیست. می‌تونه برای beginnerها، developerهای باتجربه، تیم‌های فنی، دانشجوها و حتی آدم‌هایی که خیلی technical نیستند ولی می‌خوان بفهمن یک error، concept یا تغییر در پروژه‌ی Java یعنی چی، مفید باشه.

در نهایت، هدفش اینه که یادگیری و کار با Java کمی شفاف‌تر، دقیق‌تر و قابل‌پیگیری‌تر بشه.

link to repository:
https://github.com/yappologistic/Java-Tutor

@DevTwitter | <E Gurl/>
👍74
مهندس نرم‌افزار هستید یا فقط یک تایپیستِ کد؟

ماه‌ها درگیر ترجمه و بررسی فصل‌به‌فصل کتاب The Clean Coder اثر رابرت سی. مارتین بودم. این کتاب نه درباره‌ی سینتکس است و نه فریم‌ورک؛ بلکه درباره‌ی شخصیت و صفت ما به عنوان یک متخصص است.
امروز، خلاصه این مانیفست بزرگ را در ۱۰ اصل جمع‌بندی می‌کنم. این چک‌لیستی است که مرز میان یک برنامه‌نویس آماتور و یک Software Craftsman را مشخص می‌کند:

مانیفست ۱۰ گانه‌ی عمو باب برای حرفه‌ای‌ها:

1- مسئولیت تام خرابکاری‌ها: اگر غیرحرفه‌ای اشتباه کند، کارفرما تاوان می‌دهد. اما وقتی حرفه‌ای اشتباه کند، خودش خسارت را جمع می‌کند و مسئولیت باگ‌هایش را می‌پذیرد.
2- قانون اول (آسیب نزن): فرستادن کدی که از تستش مطمئن نیستی به واحد QA، نهایت بی‌انضباطی است. QA برای اطمینان نهایی است، نه برای شکار اشتباهات بدیهی ما!
3- دفاع از کیفیت کد: سریع و کثیف یک دروغ بزرگ است. کثیف‌کاری همیشه سرعت تیم را در آینده نزدیک صفر می‌کند. شکستن اصول مهندسی زیر فشار ددلاین، خیانت به بیزینس است.
4- شجاعت در نه گفتن: حرفه‌ای‌ها حقیقت را به قدرت مدیران می‌گویند. وقتی کاری غیرممکن است، بگو غیرممکن است. چیزی به نام سعی می‌کنموجود ندارد؛ سعی می‌کنم یعنی آماده شدن برای شکست!
5- زبانِ تعهد: کلمات مبهم مثل امیدوارم، باید انجام بشه یا کاش را حذف کن. یک حرفه‌ای قطعی صحبت می‌کند: من این تسک را تا روز سه‌شنبه ساعت ۱۲ تحویل می‌دهم.
6- قانون ۴۰/۲۰ در اخلاق کاری: کارفرما وظیفه ندارد برای تیز کردن اره‌ی تو و آپدیت رزومه‌ات پول بدهد. ۴۰ ساعت در هفته برای کارفرما کار کن، ۲۰ ساعت در هفته در زمان شخصی‌ات مطالعه و تمرین Kata کن.
7- فرار از تله‌ی ناحیه جریان (Flow Zone): خلسه و تمرکز تونلی موقع کد زدن، دید کلان معماری را از تو می‌گیرد. برای فرار از این تله و حذف سیلوهای دانش، Pair Programming کن.
8- هرم اتوماسیون تست: تست کردن، نوشتن چند تست واحد پراکنده نیست. پایداری سیستم نیازمند لایه‌های هماهنگ از تست‌های واحد بالای ۹۰٪، تست مؤلفه، یکپارچه‌سازی و تست سیستم است.
9- بیزینس را بفهم: بدترین کار این است که خودت را در مقبره‌ای از تکنولوژی دفن کنی، در حالی که بیزینسی که به تو پول می‌دهد در حال سقوط است. وظیفه تو شناور نگه داشتن کشتی کسب‌وکار است.
10- مسئولیت بزرگان برای جوانان: دانشگاه تئوری علوم کامپیوتر را می‌گوید، اما مهندسی واقعی را نه! وظیفه اخلاقی مهندسان ارشد این است که جونیورها را زیر بال و پر خود بگیرند و منتور کنند.
تغییر و پذیرش این اصول، بیشتر از آنکه یک تصمیم عقلانی باشد، یک بلوغ انسانی و شخصیتی است.


@DevTwitter | <Hamed Heydarian/>
👍4726🍌11
دیتاست کامل کانال «دِوتوییتر» تا ابتدای سال 2026

کل تاریخچه پیام‌های کانال دِوتوییتر به صورت JSON منتشر شد!
این دیتاست شامل تمام پیام‌ها از ابتدای شکل‌گیری کانال در سال 1399 تا دی 1404 هست (may 2020 -dec 2025).

مناسب برای:
- تمرین دیتاساینس و NLP روی محتوای فارسی برنامه‌نویسی
- تحلیل روند تکنولوژی‌ها در جامعه توسعه‌دهندگان ایرانی
- استخراج منابع آموزشی و لینک‌های مفید
- تحلیل واکنش‌ها و محبوبیت محتوا

لینک دسترسی:
github.com/devtwitter/devtwitter-data

یادتون نره ستاره بدین :))

@DevTwitter
1🔥12026🍌12
اگر با Bagisto کار می‌کنید یا قصد دارید یک فروشگاه آنلاین مبتنی بر Laravel راه‌اندازی کنید، امیدوارم این پروژه بتونه در زمان شما صرفه‌جویی کنه.

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

امکانات پروژه:
PHP 8.3 FPM
Nginx
MySQL 8
Redis
Elasticsearch
Kibana
Mailpit
Supervisor
Cron Worker
Composer & Node.js
Xdebug برای توسعه و دیباگ

یکی از ویژگی‌های مهم پروژه، اسکریپت راه‌اندازی خودکار هست که تنها با اجرای:
./setup.sh
مراحل زیرو انجام میده:
- راه‌اندازی سرویس‌ها
- ایجاد دیتابیس‌های موردنیاز
- نصب وابستگی‌ها
- تنظیم فایل‌های Environment
- نصب Bagisto
- و Seed کردن داده‌های اولیه

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

Docker Environment: github.com/hamedslyn/Bagisto-docker

Iranian Payment Package: github.com/hamedslyn/Bagisto-Iranian-Payment

@DevTwitter | <Hamed Soleymani/>
22👍6🍌1
معماری YAGNI؛ اصلی که می‌تواند شما را به برنامه‌نویس بهتری تبدیل کند

یکی از مهم‌ترین اصول توسعه نرم‌افزار، اصل YAGNI است:

You Aren't Gonna Need It
(به آن نیاز نخواهی داشت)

بسیاری از برنامه‌نویسان زمان زیادی صرف ساخت قابلیت‌هایی می‌کنند که «شاید» در آینده لازم شوند؛ اما در عمل هرگز استفاده نمی‌شوند.

نتیجه چیست؟

- کدهای پیچیده‌تر
- زمان توسعه بیشتر
- باگ‌های بیشتر
- نگهداری سخت‌تر پروژه

برنامه‌نویسان حرفه‌ای به جای پیش‌بینی همه نیازهای آینده، فقط چیزی را پیاده‌سازی می‌کنند که امروز به آن نیاز دارند.

- کد کمتر
- خوانایی بیشتر
- توسعه سریع‌تر
- هزینه نگهداری کمتر

به یاد داشته باشید:

«هر خط کدی که نمی‌نویسید، باگی است که هرگز ایجاد نخواهد شد.»

مطالعه مقاله Martin Fowler درباره YAGNI:
https://martinfowler.com/bliki/Yagni.html

@DevTwitter | <Narjes Esmaeili/>
26👍9👎4
#کوته_نیوز

حمله سایبری به ۴ بانک تایید شد

شورای هماهنگی بانک‌ها:
اختلال ایجادشده در سامانه‌های بانک‌های ملی، تجارت، صادرات و توسعه صادرات ناشی از یک حمله سایبری محدود بوده است.

۴ بانک ملی، تجارت، صادرات و توسعه صادرات از صبح امروز از دسترس خارج شده‌اند

@DevTwitter | <ITIRAN/>
🍌42💔8👎1
گاهی وقتها نیاز نیست دقیقا مثل بقیه عمل کنی
شاید قدرت در نگاه متفاوت بر خلاف بقیه هست
بیایید این دو خط رو با دو زبان برنامه نویسی مطرح این روزها برسی کنیم
گولنگ یا همون Go
راست یا Rust
قطعا در دنیای نرم افزار به اهمیت حافظه پی بردید
حافظه محدوده و برای نرم افزارها مثل نفس که اگر نباشه قطعا مرگ حتمی است
حالا یک اتاق رو در نظر بگیرید که چندین نفر توش تشک انداختن و خوابیدن صبح که بلند میشن و میرن اگر تشکها رو جمع نکنیم جا برای نشستن نیست
پس مجبوریم اگر خودشون جمع نکردن یک نفر این کار رو انجام بده در دنیای نرم افزار اگر اون اتاق رو حافظه در نظر بگیریم میگیم GC و کارش جمع کردن تشکها هست وقتی کسی توش نخوبیده تا جای نشستن باز بشه
خیلی از زبانها این روش رو دارن و استفاده میکنن
اما زبان برنامه نویسی Rust این مفهوم و قابلیت رو پیاده نکرد و از دو مفهوم دیگه استفاده میکنه به اسم Ownership و Borrowing
یعنی هر مقدار یک مالک دارد که بعد از استفاده اون رو پاک میکنه
به زبان ساده تر میگه بزرگواری که روی تشک خوابیدی اگر بلند شدی رفتی بیرون حتما باید جات رو جمع کنی وگرنه معرفت باید بیاد جمع کنه دیگه وظیفه یک شخص خاص نیست
برای همین مدیریت حافظه در راست در زمان کامپایل انجام میشه با دادن و پس گرفتن و این تضمین تمیز ماندن و نبود سرباره
علاوه بر اون گاهی اوقات GC کارش رو تموم نمیکنه و متوقف میشه در راست چینین چیزی وجود نداره
پس به جای رفتن در مسیری که همه رفتن
یک مسیر و تفکر جدید رو پیش گرفت
دنیای فنی مدیون همین متفاوت فکر کردنهاست


@DevTwitter | <Akbar Rezaeyan Ghane/>
49👍17👎4
یکی از سوال‌هایی که خیلی از افرادی که وارد دنیای دیتا می‌شن می‌پرسن اینه که تفاوت بین Data Scientist، Data Analyst، Product Analyst، BI Engineer، Data Engineer و ده‌ها عنوان شغلی مشابه چیه؟

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

شاید عجیب به نظر برسه، اما در صنعت داده، عنوان شغلی همیشه بیانگر کاری که واقعاً انجام می‌دی نیست. خیلی وقت‌ها دو نفر با یک عنوان شغلی مشابه، در دو شرکت مختلف، وظایف کاملاً متفاوتی دارن.

مثلاً در یک شرکت، Data Engineer بیشتر زمانش رو صرف ساخت زیرساخت‌های داده، طراحی Data Pipelineها و مدیریت انبارهای داده می‌کنه. اما در یک شرکت دیگه، ممکنه بخش قابل توجهی از کارش ساخت داشبوردها و گزارش‌های مدیریتی باشه.

یا یک Data Analyst در بعضی سازمان‌ها صرفاً روی تحلیل داده، تهیه گزارش و پاسخ به سوالات کسب‌وکار تمرکز داره؛ در حالی که در شرکت‌های دیگه ازش انتظار میره SQL پیشرفته بنویسه، Pipeline بسازه، آزمایش‌های A/B طراحی کنه و حتی در تصمیم‌گیری‌های محصول نقش کلیدی داشته باشه.

به طور کلی می‌شه این نقش‌ها رو این‌طور توصیف کرد:
موقعیت Data Analyst بیشتر روی استخراج بینش از داده‌ها، تحلیل روندها، تهیه گزارش و پاسخ به سوالات کسب‌وکار تمرکز داره.
موقعیت Product Analyst روی رفتار کاربران، عملکرد محصول، رشد، نگهداشت کاربران و تصمیم‌گیری‌های مرتبط با محصول کار می‌کنه.
موقعیت Data Scientist معمولاً علاوه بر تحلیل داده، از مدل‌های آماری و یادگیری ماشین برای پیش‌بینی، دسته‌بندی و حل مسائل پیچیده استفاده می‌کنه.
موقعیت BI Engineer زیرساخت گزارش‌گیری، داشبوردها، لایه‌های تحلیلی و سیستم‌های Business Intelligence رو توسعه می‌ده.
موقعیت Data Engineer مسئول ساخت و نگهداری زیرساخت انتقال، ذخیره‌سازی و پردازش داده‌هاست تا داده‌های قابل اعتماد در اختیار تیم‌های مختلف قرار بگیره.

اما این تعریف‌ها فقط یک چارچوب کلی هستن. در عمل، مرز بین این نقش‌ها هر روز کم‌رنگ‌تر می‌شه.

امروزه بسیاری از شرکت‌ها به دنبال افرادی هستن که ترکیبی از مهارت‌های تحلیل داده، مهندسی داده، آمار، برنامه‌نویسی و شناخت کسب‌وکار رو داشته باشن. به همین دلیل ممکنه یک نفر با عنوان Data Analyst کارهایی انجام بده که در شرکت دیگری وظیفه Data Scientist محسوب می‌شه، یا یک Data Scientist بخش زیادی از وقتش رو صرف مهندسی داده کنه.

به همین خاطر هنگام بررسی فرصت‌های شغلی، مهم‌ترین نکته اینه که روی عنوان شغل تمرکز نکنید؛ بلکه شرح وظایف، انتظارات شرکت، ابزارهای مورد استفاده و مشکلاتی که قراره حل کنید رو با دقت بررسی کنید.
در سال‌های آینده احتمالاً این روند حتی پررنگ‌تر هم خواهد شد. با رشد هوش مصنوعی، اتوماسیون و ابزارهای مبتنی بر مدل‌های زبانی بزرگ (LLM)، بسیاری از وظایف سنتی بین نقش‌های مختلف ادغام می‌شن و اهمیت عنوان‌های شغلی کمتر از قبل خواهد بود.

شاید در ۲ تا ۳ سال آینده، به جای اینکه خودمون رو Data Analyst، Data Scientist یا Data Engineer معرفی کنیم، بیشتر به سمت نقش‌های عمومی‌تر و منعطف‌تری حرکت کنیم؛ عنوان‌هایی مثل «Member of Technical Staff» که روی توانایی حل مسئله، درک سیستم‌ها و ایجاد ارزش تمرکز دارن، نه روی مرزبندی‌های سنتی بین نقش‌های مختلف.

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

@DevTwitter | <Reza Jafari/>
27👍5
This media is not supported in your browser
VIEW IN TELEGRAM
تلگرام با قابلیت جدید Rich Formatting یک سری ابزار کامل برای نوشتن متن در اختیارتون میذاره، لیست، جدول، تیتر، ریاضیات و ...

@DevTwitter
🔥72👍73
کاش نتبلاکس یه آماری هم از میزان اختلال بانک ملی بذاره، یکی دو ماه خدمات میده باقیش اختلاله

@DevTwitter
👍91🍌73
این container که اپل ریلیز کرده رو تازه پیدا کردم! سبک‌ترین راهی که بتونید یه ترمینال لینوکسی ایزوله‌شده روی مک بالا بیارید!

با swift نوشته شده و برای پردازنده‌های Apple Silicon بهینه‌سازی کردن!

https://github.com/apple/container

@DevTwitter | <Amir/>
28🍌3👍2
یه پروژه‌ی جالب دیدم به اسم SurfSense، که بهش می‌گن جایگزین اوپن سورس NotebookLM

اگه از NotebookLM میاید، باید بگم که SurfSense همون کارو می‌کنه؛ صرفا با کنترل کامل دست خودتون. خلاصه بخوام بگم، یه agent تحقیقاتی اوپن‌سورس و با تمرکز روی حریم خصوصیه که شبیه به کار NotebookLM رو انجام میده.

مزایا نسبت به NotebookLM:
• اتصال به ۲۵+ منبع: گوگل درایو، Notion، Slack، YouTube، GitHub و افزونه‌ی مرورگر برای ذخیره‌ی هر صفحه‌ای (حتی پشت لاگین)
• آزادی انتخاب مدل: ۱۰۰+ مدل از طریق LiteLLM، یا اجرای کاملاً لوکال با Ollama و vLLM
• بدون محدودیت داده: هیچ سقفی روی تعداد منبع و نوت‌بوک نیست، و دیتا روی سرور(یا سیستم) خودت می‌مونه
• جستجوی بهتر: RAG دومرحله‌ای در برابر سرچ تک‌مرحله‌ای NotebookLM
• قابلیت‌های تیمی جالب: به شما رول‌های Owner/Admin/Editor/Viewer میده + چت و کامنت و...
• تولید پادکستا بدون محدودیته

معایب:
• نصبش هلو برو توی گلو نیست واقعا. رو اعصابه — باید با dependency، API key و فایل‌های Env کلنجار برید
• هنوز کاملاً production-ready نیست و در حال توسعه‌ی فعاله
• باید خودت میزبانی و نگهداری کنی؛ طبیعتا که راحتی NotebookLM رو نداره

جمع‌بندی:
صادقانه بگم، NotebookLM همچنان ساده‌تر و آماده‌تره ولی کاملاً بسته‌ست. SurfSense سخت‌تر راه میفته ولی دیتا و انتخاب مدل کاملاً دست خودته. اگه با self-hosting و سرور هم بخواید پیش برید، به درد بخورترینه.

ریپوی اصلی: http://github.com/MODSetter/SurfSense
آدرس خود وبسایتش برای دانلود مستقیم نرم‌افزار: https://surfsense.com

@DevTwitter | <Matin SenPai/>
👍168👎1
بزرگ‌ترین اشتباهی که برنامه‌نویس‌های تازه‌کار می‌کنن، کم کد زدن نیست.
زیاد یاد گرفتنه.
هر روز یک دوره جدید.
هر روز یک تکنولوژی جدید.
هر روز یک ویدیو با عنوان:
“این مهارت رو یاد نگیری عقب می‌مونی!”
و نتیجه؟
۶ ماه می‌گذره.
۱۰ دوره دیدی.
۵۰۰ ساعت آموزش دیدی.
اما هنوز یک پروژه واقعی نداری.
حقیقتی که خیلی‌ها دوست ندارن بشنون:
بازار کار به تعداد دوره‌هایی که گذروندی پول نمی‌ده.
به مسئله‌هایی که می‌تونی حل کنی پول می‌ده.
من رزومه‌هایی دیدم که ۳۰ مدرک داشتن.
ولی حتی یک پروژه کامل داخلشون نبود.
از اون طرف افرادی رو دیدم که فقط ۲ یا ۳ تکنولوژی بلد بودن.
اما پروژه ساخته بودن.
و دقیقاً همون‌ها استخدام شدن.
اگر امروز دوباره از صفر شروع می‌کردم:
کمتر آموزش می‌دیدم.
بیشتر می‌ساختم.

@DevTwitter | <Arsham Hajeb/>
👍18727👎9
مدل‌های رایگان گران قیمت

مدل‌هایی مثل Llama 4، Gemma 4، DeepSeek V3 و Qwen 3 در ظاهر «رایگان» و متن‌باز هستن، اما این رایگان بودن فقط تا وقتی معنی داره که داخل یک نوت‌بوک یا محیط تستی ازشون استفاده کنی. به محض اینکه وارد فضای واقعی و پروداکشن بشی، هزینه‌ها شروع می‌شن و عملاً اون چیزی که رایگان به نظر می‌رسه تبدیل به یک زیرساخت گران و پیچیده می‌شه. دلیلش هم اینه که هزینه اصلی این مدل‌ها نه خود مدل، بلکه اجرای پایدار، سریع و مقیاس‌پذیر اون‌هاست.

مدل‌های کوچک‌تر که بین ۸ تا ۳۰ میلیارد پارامتر دارن، معمولاً روی سیستم‌های شخصی با ۲۴ تا ۴۸ گیگ VRAM اجرا می‌شن و بیشتر برای تست، یادگیری و ساخت نمونه اولیه مناسب هستن. اما وقتی وارد مدل‌های متوسط مثل ۷۰ میلیارد پارامتر می‌شی، فقط برای نگه‌داشتن وزن مدل به ۷۰ تا ۱۴۰ گیگ VRAM نیاز داری و دیگه یک کارت گرافیک معمولی جواب نمی‌ده؛ در نتیجه باید سراغ سرورهای ابری بری که هزینه‌شون ماهانه به چند هزار دلار می‌رسه.

در سطح بالاتر، مدل‌های بزرگ MoE مثل Llama 4 Maverick با ۴۰۰ میلیارد پارامتر، Qwen 3 با ۲۳۵ میلیارد یا DeepSeek V3 با ۶۷۱ میلیارد پارامتر قرار دارن که برای اجرا به صدها گیگ حافظه تجمیعی نیاز دارن. حتی با کوانتیزه‌سازی هم هنوز به زیرساخت چند GPU قدرتمند مثل H100 یا H200 احتیاج داری و اگر بخوای کانتکست طولانی هم پشتیبانی کنی، مصرف حافظه (KV cache) عملاً هزینه و نیاز سخت‌افزاری رو تا نزدیک دو برابر بالا می‌بره.

اگر این سیستم‌ها رو بخوای ۲۴ ساعته اجرا کنی، هزینه ماهانه بسته به سطح مدل از حدود چند هزار دلار برای مدل‌های کوچک شروع می‌شه و تا نزدیک صد هزار دلار برای مدل‌های خیلی بزرگ می‌رسه. این فقط هزینه خام اجرای مدل هست و هنوز هزینه‌های جانبی مثل مهندسی زیرساخت، مدیریت سروینگ (مثل vLLM و batching)، سیستم‌های مانیتورینگ و ارزیابی، فاین‌تیونینگ، ذخیره‌سازی داده و حتی تیمی که این سیستم رو نگه‌داری می‌کنه حساب نشده.

به همین دلیل در عمل، خیلی از تیم‌ها بعد از بررسی هزینه‌ها به این نتیجه می‌رسن که استفاده از APIهای آماده مثل OpenAI یا Anthropic به‌صرفه‌تر از راه‌اندازی و نگه‌داری زیرساخت GPU اختصاصی است، چون اون‌ها همه این پیچیدگی‌ها و هزینه‌های پنهان رو در قالب یک قیمت ساده به ازای هر توکن مدیریت می‌کنن.

@DevTwitter | <Reza Jafari/>
38👍21👎4
یکی از بهترین پادکست‌هایی هست که میتونین در مورد پیشرفت شغلی در شرکتی که کار میکنید گوش بدید.

https://www.youtube.com/watch?v=8JQUjpBf3Ig

@DevTwitter | <سهیل/>
20👍2👎1