🎄 DevTwitter | توییت برنامه نویسی
23.6K subscribers
4.41K photos
362 videos
6 files
4.15K links
توییت های برنامه نویسی و طراحی وب :)

@dvtwi

Hashtags:
devtwitter.t.iss.one/5

DevBooks Channel:
https://t.iss.one/+AYbOl75CLNYxY2U0

Github:
https://github.com/DevTwitter

X:
https://x.com/devtwittir
Download Telegram
این بهترین زبان برنامه‌نویسیه که تا حالا دیدم! به نظرم سی‌شارپ و جاوا و جاوای کوچک باید دیگه ماست‌هاشون رو کیسه کنند!
https://github.com/TodePond/GulfOfMexico
جوان ایرانی! وقتشه زبان خلیج فارس رو حتا قوی‌تر کار کنید!

@DevTwitter | <Shilan/>
👎86🍌55👍84
یکی از دوستام داشت یه فایل منیجر می ساخت. منم می خواستم یه ایده ای رو تست کنم. جفتمون به یه File Search Engine نیاز داشتیم. در نتیجه، یکی ساختم. می ذارمش اینجا شاید به کار بقیه هم بیاد
https://github.com/naseridev/omega

@DevTwitter | <Nima Naseri/>
24👍6👎3🔥3
نیازمند یک روز تعطیلی، پس از روز تعطیل هستیم

@DevTwitter
👍23817🍌6👎5
یه اکستنشن دارم برای لینکدین که متن پست‌ها رو باهاش استخراج می‌کنم

این لینکدین هر روز DOM رو آپدیت می‌کنه و تغییر میده
زخم شدم یعنی، بس کن دیگه دو روز آروم بگیر
👍32🍌112🔥2
اگر دوست دارید سرویس ها مختلف مثل اور لیف و جوپیتر و ار استدیو و ... لوکال بیارید بالا و همشو باهم داشته باشید
این ریپو به دردتون میخوره

https://github.com/parvvareshInfrastructure/local-service

@DevTwitter | <Alireza Parvaresh/>
🔥121🍌1
https://w3schools.com
بچه ها این سایت برای یادگیری برنامه نویسی خیلی عالیه
نکته ای که متمایزش میکنه از بقیه 1-اکثر زبان های برنامه نویسی رو داره 2-ازت سوال میپرسه و عملی تمرینت میده
ترجیحا پایتون یا سی شارپ یادبگیرید (مرگ بر جاوااسکریپت)

@DevTwitter | <MaHdI/>
👎131🍌63👍165
لیستی از پروژه‌های پیشنهادی GenAI که می‌تونه بهتون کمک کنه رزومه بهتری در این حوزه داشته باشید، از دستش ندید!

https://github.com/aishwaryanr/awesome-generative-ai-guide/blob/main/resources/60_ai_projects.md

@DevTwitter | <zhiwar/>
👍12🍌2
تاحالا با cli hashtag هوش‌مصنوعی qwen کار کردین؟

خب نصبش که خیلی راحته:

npm install -g @qwen-code/qwen-code

حالا تو ویندوز command prompt رو باز میکنید و به شاخه پروژه میرید
اونجا دستور qwen رو میزنید و عملیات لاگین رو با جیمیل‌تون انجام میدید
بعد از لاگین فقط کافیه بهش بگید که چیکار کنه

این cli هوش‌مصنوعی عالیه، حتی خیلی بهتر از gemini گوگل

من یک پروژه کامل رو با این cli نوشتم (laravel inertia)
بک و فرانت رو همزمان پشتیبانی میکنه

حتی کارهایی که من ازش نمیخواستم و به ذهن منم نمیرسید رو خودش انجام میداد

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

@DevTwitter | <sina Khaghani/>
24👎4👍3🍌3
من یه ربات تلگرام ساختم برای دانلود فایل‌ها از کانال‌ها.

باهاش می‌تونید:
- همه فایل‌های یه کانال رو دانلود کنید
- بر اساس نوع فایل فیلتر کنید (عکس، PDF، ویدیو و ...)
- تعداد فایل‌هایی که می‌خواین دانلود بشه رو مشخص کنید

یه اسکریپت ساده‌ که با Python و Telethon نوشته شده

لینک گیت هاب:
https://github.com/erfanghorbanee/Telegram-File-Downloader

@DevTwitter | <Erfan/>
52👍6👎3🔥2
سرویسی که گفت: “من دیگه نمی‌کشم…” و ما رفتیم سراغ Go!
چند ماه پیش متوجه شدم که بار روی یکی از سرویس‌هامون که مسئولیت محاسبه قیمت، تخفیف و موجودی کالا را برعهده داشت، عجیب بالا رفته.
هی باید بهش ریسورس اضافه می‌کردیم و هی فاکتور پشت‌فاکتور… هی سعی می کردیم کد های سمت node js رو باز نویسی کنیم اما باز مشکل وجود داشت

اما یک جایی ایستادم و به مانیتور زل زدم:
«واقعاً تا کی Scale out ؟ تا کی پول بریزیم برای پادهای بیشتر؟»

با بررسی لاگ های کمی که تو سیستم داشتیم و کمی تعمل بیشتر دیدم مشکل ما فقط زبان نیست بلکه دید طراحی ما برای همچین فشاری آماده نشده بود.
و دیدم که مشکل فقط «بار زیاد» نیست؛ مشکل این بود که مدلِ اجرا (single-threaded event loop + heavy allocations) با الگوی کاری سرویس (محاسبهٔ همزمان قیمت/تخفیف/موجودی) همخوانی نداشت.
هرچقدر پاد اضافه می‌کردیم، هزینه افزایش می‌یافت اما مشکل اصلی — CPU-bound hot path و فشار GC — همچنان پابرجا بود.

وقتی این‌طوری باشه، مهاجرت به runtimeی که برای concurrency و low-overhead execution طراحی شده (مثل Go) یک انتخاب فنی معقول و قابل دفاعه.

پس تصمیم گرفتم همه‌چیز را با Go دوباره بسازم؛
اما نه صرفاً rewrite — بلکه یک refactor درست در مون

اول از همه، متریک‌ها را جمع کردم.(این کار برای شروع کار حیاتیه)
p95، مصرف CPU، ترافیک همزمان، صف درخواست‌ها…
می‌خواستم دقیقاً بفهمم کجا درد می‌کنیم.

بعد شروع کردم به بازطراحی معماری:
سرویس باید کاملاً Stateless می‌شد
هر درخواست باید موازی و بدون dependency محلی قابل پاسخ باشد
عملیات سنگین محاسبات تخفیف باید Pipeline بشود

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

می خواستم برم سمت gRPC که محدودیت زمان اجازه نداد پس رفتم سمت DB و ایندکس گزاری های بهنر و جدا کردن read , write از هم
کش کویری هم اورد وسط و بعد هم از ردیس واسه کش کمک گرفتم

برای invalidate کردن قیمت و موجودی هم معماری event driven کمک گرفتم (حالا هی بگید چرا مهمه بدونیمش)

خوب گفتیم قبل از این که سرور بیاد پایین بفهیم چه خبره تو سیستم… پس یک logging , metrics هم توی سیستم گذاشتم حتی گوروتین ها رو همو پروفایل کردم که oberservity رو افزایش بدم
خلاصه بعد از این کارها . latency تا ۶۰ درصد در پیک ها پایین امد…مصرف cpu قابل حدس شد و هزینه ها به شدت کم شد و بچه های محصول خوشحال (البته بعدش یک عالمه فیچر امد سمتمون)

در کل باید به " performance از همان ابتدای طراحی معماری فکر کرد"

@DevTwitter | <Hessam Zaheri/>
👍6316👎4🍌3
کتاب Apprenticeship Patterns راهنماییه برای برنامه‌نویس‌هایی که می‌خوان از یه تازه‌کار، تبدیل به یه حرفه‌ای واقعی بشن.
این ترجمه فارسی، نسخه‌ای روان و کاربردیه از کتاب اصلیه و بهت کمک می‌کنه مسیر رشد شخصی و فنی‌ت رو آگاهانه طی کنی.

اگه دنبال اینی بدونی چطور باید یاد بگیری، چطور تجربه کسب کنی و چطور خودت رو بسازی، این کتاب دقیقاً همونه که باید بخونی.


github.com/hheydarian/apprenticeship-patterns-persian

@DevTwitter <Hamed Heydarian/>
1🔥203👍2
توی پروژه‌های Django معمولاً وقتی می‌خوای فیلترهای داینامیک بسازی (مثلاً برای API یا صفحه جستجو)، مدیریت query stringها یه دردسر تکراریه.
برای همین یه پکیج نوشتم به اسم django-query-string-parser که کارش اینه query string رو مستقیم تبدیل کنه به Q object، با یه سینتکس خوانا و امن.

چند تا قابلیت مهمش:
- پشتیبانی از عملگرهای مختلف مثل :, !=, >, <, >=, <=, ~=
- ترکیب منطقی با AND / OR و پرانتز
- تعریف فیلدهای مجاز (whitelist) برای امنیت بیشتر
- پشتیبانی از استرینگ، عدد، بولین و null
- خروجی نهایی: یه Q object تمیز برای .filter() یا .exclude()

به درد جاهایی می‌خوره که بخوای فیلترهای پیچیده ولی قابل خواندن بسازی — مثل APIها، داشبوردها یا پنل ادمین.

نصب:
pip install django-query-string-parser

گیت‌هاب:
https://github.com/sepehr-mohseni/django-query-string-parser

@DevTwitter | <Nima Naseri/>
👍175👎4🔥1
منطق پشت کلاستر این CockroachDB چقدر قشنگه.
نوعی دیتابیس SQL که به صورت Master Master کلاستر میشه و از پروتکل RAFT استفاده میکنه.

اما چی!؟ ، مگه RAFT ساختارش به صورت Master Slave ایی تعریف نمیشد؟ پس چجوری توی دیتابیس Master Master داره استفاده‌ میشه؟
شاید اونجوری که CockroachDB میگه اصلا Master Master ایی در کار نیست یا تعریف ما متفاوته .
خلاصه اگه علاقه مند هستین چجوری توی CockroachDB ما RAFT داریم، خوشحال میشم مقاله ایی رو که نوشتم مطالعه کنین، حدودا هم ۵ دقیقه وقتتون رو میگیره.

https://medium.com/@parsagheiratian/the-mentality-behind-cockroachdb-0ed524fcc7ec

@DevTwitter | <Parsa Gheiratian/>
️️
👍10👎32🔥1
به اون کاری که امروز کردی نگو "ریفکتور" (Refactor). اگه تست نداره، اون فقط یه "گندکاریِ تمیزه".
این فقط یه جمله‌ی قشنگ نیست؛ این یه زخمه که من هنوز یادمه.
اوایل کارم، میخواستم قهرمان باشم. ‍️ تو یه پروژه‌ی لگسی، یه "God Function" هزار خطی پیدا کردم و گفتم: "من اینو تمیز میکنم!"
نشستم و تیکه‌تیکه‌اش کردم. ۵۰ تا تابع کوچولوی تر و تمیز. اصل DRY رو پیاده کردم. ظاهر کد عالی شد. "تمیز" و "حرفه‌ای". احساس غرور میکردم.
مشکل چی بود؟ اون کد اصلی لعنتی، یه دونه هم تست خودکار نداشت.
اونجا بود که فاجعه اتفاق افتاد. کاری که من انجام دادم، "ریفکتور" نبود؛ "تغییر دادنِ کورکورانه" بود.
اون کد "تمیز" من، چند تا باگ جدید و پنهان داشت. چرا؟ چون اون "کد اسپاگتی" زشت، پر از منطق‌های تجاری پنهان و وابستگی‌های زمانی بود که فقط تو همون حالت کار میکرد.
من "بدهی فنی" رو پرداخت نکردم؛ من یه بدهی کم‌بهره (مثل تکرار کد که فهمیدنش ساده بود) رو برداشتم و با یه بدهی پربهره (مثل یه "انتزاع اشتباه" که حالا دیباگ کردنش غیرممکنه) عوض کردم.
این "تله‌ی کد تمیز"ئه. مهم‌ترین تعریفی که تو این صنعت باید بلد باشیم مال مایکل فدرز (Michael Feathers) ئه: "کد لگسی، کدیه که تست نداره." همین.
تو یه سیستم لگسی، قانون اول "تمیز کن" نیست. قانون اول اینه: "اول امنش کن." برو "تست‌های مشخصه‌یابی" (Characterization Tests) بنویس تا رفتار فعلیِ سیستم (با همه‌ی باگ‌هاش) رو قفل کنی. وقتی اون تور ایمنی رو ساختی، اونوقت حق داری که شروع به تمیزکاری کنی.

@DevTwitter | <Hossein Moradi/>
👍81👎119🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
این پروژه اپن سورس جالب strix رو یه نگاه بندازین. یه جورایی انگار یه تیم هکر هوش مصنوعی اپن‌سورس استخدام کردین که شبانه‌روزی حواسشون به اپلیکیشن‌هاتون هست.
این ایجنت‌های AI دقیقاً مثل هکرهای واقعی رفتار می‌کنن. کد شما رو به صورت داینامیک اجرا می‌کنن، آسیب‌پذیری‌ها رو پیدا می‌کنن و برای اینکه ثابت کنن الکی نمیگن، براتون PoC (اثبات مفهومی) واقعی می‌سازن.

بهترین بخشش اینه که دیگه از شر اون همه false positive (هشدارهای الکی) که ابزارهای اسکن استاتیک میدن خلاص میشید. Strix واقعاً باگ رو پیدا می‌کنه و بهتون نشون میده.
یه جعبه ابزار کامل هکری هم داره:
- پراکسی HTTP
- اتوماسیون مرورگر
- محیط ترمینال
- و حتی ران‌تایم پایتون

تازه، می‌تونه تو CI/CD شما هم ادغام بشه و جلوی کدهای آسیب‌پذیر رو قبل از اینکه اصلاً به پروداکشن برسن بگیره.
به جای اینکه هفته‌ها منتظر تست نفوذ دستی بمونید، با Strix می‌تونید تو چند ساعت یه تست کامل بگیرید.
Github: https://github.com/usestrix/strix

@DevTwitter | <Mehdi Allahyari/>
15👍6👎3🔥1
نمی دونم این چقدر به کار بقیه میاد ولی اگر Vibe-Coding می کنید و ایجنت کلی روی پروژتون کامنت های بیخود نوشت می تونید با استفاده از این اسکریپت پایتونی که نوشتم کامنت هایی که نیاز ندارید رو پاک کنید

https://github.com/naseridev/vibecleaner

@DevTwitter | <Nima Naseri/>
👎31👍14🔥1
امسال Black Hat 2025 اروپا در انگلستان برگزار می‌شود.

می‌دونیم که تب استفاده از AI الان زیاد است که این قاعدتا بد نیست و در این کنفرانس هم چندین AI در زمینه کمک به امنیت معرفی خواهند شدند که زودتر از کنفرانس می‌توانید، آن ها را نصب و آزمایش کنید.
https://medium.com/@Ethansalan/black-hat-europe-2025-arsenal-8-ai-security-tools-transforming-cybersecurity-ccd08c472aaa

@DevTwitter | <VAHID NAMENI/>
7🍌6
به MVC میگه Clean Architecture !!
شاید من معنی Clean Architecture را بد متوجه شدم.

https://youtube.com/watch?v=H9Blu0kWdZE

@DevTwitter | <Babak.uk/>
👎30👍8🍌51
کشف نوع جدیدی از حمله‌ی سایبری: وقتی الگوهای ترافیک، راز گفتگوی شما با چت‌بات‌ها را لو می‌دهند!

باورتان می‌شود که هکرها می‌توانند از گفتگوهای شما با چت‌ چی‌پی‌تی (یا هر هوش مصنوعی مشابهی) مطلع شوند؟ البته این موضوع شرایط خاصی دارد که در ادامه توضیح می‌دهیم:

مایکروسافت در یک گزارشی پژوهشی جدید از یک حمله جدید با نام «Whisper Leak» خبر داده که می‌تواند بدون شکستن رمزنگاری، موضوع مکالمات کاربران با مدل‌های زبانی بزرگ (LLM) را شناسایی کند.

این حمله، به خاطر ضعف در پروتکل‌های رمزنگاری مانند HTTPS نیست، بلکه یک حمله‌ی تحلیل ترافیک (Side-Channel) محسوب می‌شود.

بر اساس این گزارش، زمانی که کاربر با یک چت‌بات هوش مصنوعی گفتگو می‌کند و پاسخ‌ها به صورت استریم (تکه‌تکه و لحظه‌ای) ارسال می‌شوند، الگوهای قابل تحلیلی در ترافیک شبکه شکل می‌گیرد؛ از جمله:

- اندازه بسته‌های داده
- فاصله زمانی میان ارسال بسته‌ها

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

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

آزمایش‌ها نشان داده‌اند که در برخی سناریوها، دقت این تشخیص به حدود ۹۸ درصد می‌رسد. این موضوع به‌ویژه از منظر حریم خصوصی نگران‌کننده است.

مایکروسافت تأکید می‌کند که این یافته‌ها به معنی ناامن بودن رمزنگاری نیست، بلکه نشان می‌دهد نحوه پیاده‌سازی استریم پاسخ در سرویس‌های هوش مصنوعی می‌تواند اطلاعات فراداده‌ای (متادیتا) حساسی را افشا کند.

توصیه‌هایی برای کاربران و سازمان‌ها
- از اتصال به وای‌فای عمومی یا شبکه‌های غیرقابل‌اعتماد خودداری کنند.

- استفاده از VPN معتبر می‌تواند تحلیل ترافیک را برای مهاجم دشوارتر کند.

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

- سازمان‌ها و نهادها هنگام به‌کارگیری LLMها (ابری یا داخلی) باید حملات مبتنی بر تحلیل ترافیک را نیز در مدل تهدید خود لحاظ کرده، تست‌های امنیتی تکمیلی انجام دهند و از مکانیزم‌های دفاعی مناسب استفاده کنند.

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

جالب‌تر اینجا است که اینجا از یک هوش مصنوعی برای رمزگشایی از یک هوش مصنوعی دیگر استفاده می‌شود!

@DevTwitter | <NooshDaroo/>
👍15🔥86🍌3
فقط در ۷۶ دقیقه، خلاصه‌ی تمام دانسته‌های مهندسی هوش مصنوعی

اگه واقعا می‌خوای بفهمی AI Engineering یعنی چی، این ویدیو رو از دست نده.
نه یه آموزش سطحی‌ه، نه یه ویدیوی تبلیغاتی.
یه خلاصه‌ی فشرده از مفاهیمیه که هر کسی که با هوش مصنوعی کار می‌کنه باید بدونه، اونم فقط توی ۷۶ دقیقه.

در این ویدیو درباره‌ی چیزهایی صحبت می‌شه که نگاهت رو به AI برای همیشه تغییر می‌دن

چرا نباید از صفر مدل بسازی (و چطور باید از مدل‌های آماده استفاده کنی)
چطور (Self-supervised learning) همه‌چیز رو عوض کرده
چرا داده‌های آموزشی همیشه سوگیرانه‌ان و چطور باید باهاش کنار بیای
چرا طولانی‌تر بودن پرامپت همیشه به معنی نتیجه‌ی بهتر نیست
این‌که مدل بزرگ‌تر الزاماً مدل هوشمندتر نیست
چطور یه پرامپت خوب می‌تونه جای هفته‌ها فاین‌تیونینگ رو بگیره RAG چیه و چرا باید جزو ابزار اصلی هر تیم AI باشه

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

https://www.youtube.com/watch?v=JV3pL1_mn2M

@DevTwitter | <Mohsen Rad/>
🔥179👍3🍌1