TGViewer
Channel Public Channel
DevTwitter | توییت برنامه نویسی

DevTwitter | توییت برنامه نویسی

@devtwitter

توییت های برنامه نویسی و طراحی وب :)

Admin:
@dvtwi

Hashtags:
devtwitter.t.me/5

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

Github:
https://github.com/DevTwitter

X:
https://x.com/devtwittir
Subscribers
32.2K
Photos
5.4K
Videos
437
Links
5.3K

Showing posts older than #13279 · Back to latest

Older Posts 20 shown
Post #13278 5.83K
زیر کاپوت شبکه عصبی چه خبره؟

این
loss.backward()
یه خطِ که همیشه دیدید یا AI زحمت کشیده؛ ولی پشتش کلی chain rule، matrix multiplication و مفاهیم دیگه خوابیده..

DFNN (Dependency-Free Neural Network)


در واقع DFNN یک MLP از صفر با NumPy هست؛ بدون PyTorch، TensorFlow، Keras یا autograd. Forward، reverse-mode backprop، initialization، mini-batch، optimizer، loss و خوندن مستقیم MNIST از IDX همگی داخل یک نوت بوک.

و Backprop در سطح batch و ماتریس نوشته شده، نه با autodiff؛ و gradientها هم با finite differences صحت‌ سنجی شدند؛ برای dW هم، relative error حدود 8.7e-12 شد.

در آخر روی MNIST چک شد که با 40 تا epoch به 98.04% test accuracy رسید.

خلاصه که اگر همیشه backward() زدید ولی تا حالا نرفتید ببینید واقعا چکار میکنه؛ میتونید ریپو زیر رو ببینید

https://github.com/hrnrxb/DFNN

@DevTwitter | <hrnrxb/>
  • ❤ 13
  • 🍌 4
  • 🔥 3
Post #13277 5.62K

Forwarded from DevTwitter Ads.

This post (sticker, poll or similar) has no web preview. Open in Telegram

  • ❤ 31
  • 👍 13
  • 🍌 7
Post #13276 6.44K

This post (sticker, poll or similar) has no web preview. Open in Telegram

  • 🔥 30
  • ❤ 11
  • 👎 4
Post #13275 5.28K

This post (sticker, poll or similar) has no web preview. Open in Telegram

  • 👍 16
  • 🍌 6
  • ❤ 2
Post #13273 5.1K

This post (sticker, poll or similar) has no web preview. Open in Telegram

  • ❤ 15
  • 👍 4
  • 🔥 2
Post #13272 5.38K
توی پروژه‌های فروشگاه اینترنتی طلا، معمولا با یه دوراهی تکراری مواجه میشیم :
قیمت‌ها باید ثانیه‌ای و دقیق باشن ، اما ریکوئست مداوم زدن به وب‌سرویس بیرونی هم ریسک بلاک شدن لیمیت API رو داره و هم لود سرور رو بالا می‌بره.
حالا راهکارش شد این افزونه.

روی چی تمرکز کردم؟
اتصال به وب‌سرویس brsapi برای دریافت پایدار نرخ‌ها
پیاده‌سازی لایه کشینگ با Transients API وردپرس تا هم سرعت لود صفحات حفظ بشه و هم با کمترین فراخوانی ممکن ، قیمت‌ها زنده بمونن.
رعایت دقیق استانداردهای هسته وردپرس برای مسائل امنیتی (ورودی‌ها، Late Escaping و Nonceها)
افزونه رو برای مخزن رسمی وردپرس هم ثبت کردم و الان در صف بررسی تیم وردپرسه.

توی قدم بعدی هم قراره پرووایدرهای بیشتری مثل tgju و نوسان‌تک رو اضافه کنم تا صاحبان کسب‌وکار دستشون توی انتخاب وب‌سرویس بازتر باشه

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

https://github.com/amirmarandidev/woocommerce-live-gold-price

@DevTwitter | <Amir/>
  • 🍌 22
  • ❤ 19
  • 👍 5
Post #13270 5.74K
دوباره به شدت Deep learning و الگوریتم هاش و ایده هاش باز داره میاد بالا

چرا چون فهمیدن خیلی از کارای llm رو میشه با هزینه سخت افزاری و نرم افزاری کمتر کارهاشون رو انجام داد

https://youtu.be/BMYvfVk8Ar0
این دوره برای شروع خوبه

@DevTwitter | <Alireza/>
  • 👍 35
  • 🍌 4
  • 🔥 3
Post #13269 6.23K
اگر میخواید دیزاین فیگما بدید به Agentتون کدش رو بزنه، اسکرین شات گرفتن خیلی کار رو دقیق در نمیاره و MCP خود فیگما هم کلا ۶ تا ریکوئست در ماه(!)‌ میذاره بزنید و بعد میگه پول بده.

با این mcp میتونید دورش بزنید و دیگه به API Limit فیگما نمیخورید:
https://github.com/gethopp/figma-mcp-bridge

@DevTwitter | <Mahdi MirMohamadi/>
  • ❤ 30
  • 👎 4
  • 🔥 3
Post #13268 5.84K
بعضی وقتا حوصله م سر می‌ره و ویندوز متاسفانه دیگه اون بازی های ویندوز ۷ رو نداره که هم سبک و ساده باشن هم سرگرم کننده
واسه همین اومدم ماربازی معروف خودمونو بصورت CLI پیاده سازی کردم.
با دستورات
pip install reznum-snakegame
snakegame
لینک ریپو:
https://github.com/ItsReZNuM/SnakeGame-CLI

@DevTwitter | <Agha Reza/>
  • 🍌 74
  • 👍 16
  • 👎 5
Post #13267 5.81K
یک اشتباه به ظاهر ساده در API نویسی که می‌تواند دسترسی ادمین را دودستی تقدیم هکر کند!
(تله Over-Posting)

خیلی از ما وقتی توی دات‌نت شروع به ساخت Controller و Endpointهای API می‌کنیم، برای راحتی کار یا سرعت بیشتر، یک اشتباه کلاسیک انجام میدیم:

ارسال مستقیم Entityهای دیتابیس به ورودی متدها!
[HttpPost]
public async Task<IActionResult> UpdateUser(User user) //
تله بزرگ!

شاید ظاهر قضیه این باشه که Model Binder خودش داده‌ها رو مپ می‌کنه و همه‌چیز سریع کار می‌کنه، اما پشت صحنه چه اتفاقی می‌افته؟

خطر Over-Posting (یا Mass Assignment):

کافیه کلاینت (از طریق Postman یا ابزارهای مشابه) فیلدهایی مثل IsAdmin = true یا WalletBalance رو توی بدنه درخواست JSON بفرسته؛ از اونجا که فریم‌ورک بدون تفکیک، مقادیر رو Bind می‌کنه، دیتای حساس بدون اعتبارسنجی آپدیت میشه!

اصول طلایی یک API تمیز و امن:

همیشه از DTO (Data Transfer Object) استفاده کنیم: فقط فیلدهایی که کاربر مجاز به ارسال یا دریافت اون‌هاست در قالب کلاس‌های سبک تعریف بشن.

قرارداد شفاف (Contract): کلاینت نباید از ساختار جداول دیتابیس و Relationها باخبر بشه؛ API فقط یک پل ارتباطی سبک، مستقل و Stateless است.

اعتبارسنجی دقیق ورودی‌ها (Validation): هیچ داده‌ای از دنیای بیرون نباید بدون فیلتر وارد لایه‌های زیرین بشه.

@DevTwitter | <Ehsan Faramarzi/>
  • 👍 26
  • ❤ 8
  • 🍌 6
Post #13266 6.02K

This post (sticker, poll or similar) has no web preview. Open in Telegram

  • 👍 61
  • 🔥 15
  • 🍌 1
Post #13265 5.66K

Forwarded from DevTwitter Ads.

اولین پروژه‌ای که ترافیک واقعی گرفت، یه چیزی فهمیدم:

فرق بین کدی که کار می‌کنه و کدی که scale می‌شه، زمین تا آسمونه.

اینجا از این فرق‌ها زیاد حرف می‌زنیم.

https://t.me/+HgGHhDZPg9tlNTU0
  • 🍌 31
  • 👍 9
  • 👎 3
Post #13264 6.32K
بدون هیچ اغراقی می‌گم: ابزار act واقعاً زندگی مهندسی و سلامت روان منو نجات داد!

اگر تا حالا برای تنظیم یک فایل ساده .github/workflows مجبور شدید ۳۰ بار کامیت بزنید با پیام‌های حسرت‌باری مثل fix yaml، test ci 2 و PLEASE WORK... دقیقاً می‌دونید از چه جهنمی صحبت می‌کنم.

کابوس روزمره‌ام قبل از act این بود:

- یک خط تغییر کوچک توی کانفیگ پایپ‌لاین می‌دادم.
- کامیت و پوش می‌کردم و منتظر می‌شدم تا Runner گیت‌هاب بالا بیاد.
چند دقیقه طول می‌کشید تا وابستگی‌ها دانلود بشن و آخرش به‌خاطر یک Space اضافه یا جابه‌جا بودن یک Indentation ساده، کلاً Build شکست می‌خورد!

تاریخچه (Git Log) پروژه‌ام شبیه گورستان کامیت‌های اسپم و بی‌مصرف شده بود.

معجزه‌ای به نام act

تغییر از وقتی شروع شد که act رو وارد workflow خودم کردم. این ابزار کل محیط اجرای GitHub Actions رو مستقیماً روی سیستم خودم و داخل کانتینرهای Docker شبیه‌سازی می‌کنه.

حالا فرآیند تست CI برای من این شکلی شده:

بازخورد زیر ۵ ثانیه: بدون اینکه حتی یک کامیت بزنم یا کدی رو پوش کنم، فقط با زدن دستور act pull_request کل پایپ‌لاین (از آنالیز استاتیک و Spotless گرفته تا تست‌های یکپارچگی سنگین) روی سیستم محلی اجرا میشه.

تاریخچه گیت کاملاً شفاف و تمیز: فقط و فقط زمانی کامیت می‌زنم که مطمئن باشم پایپ‌لاین روی سیستم خودم ۱۰۰٪ سبز شده.

پایان الگوی سمی "Push and Pray": دیگه نیازی نیست دست به دعا بشم که آیا این پوش جدید قراره سبز بشه یا قرمز!

اگر روی زمان، تمرکز و پاکیزگی Git Log پروژه‌هاتون تعصب دارید، همین امروز act رو روی سیستمتون نصب کنید و خودتون رو برای همیشه از کابوس تست CI روی سرورهای ابری نجات بدید.

https://www.linkedin.com/pulse/stop-committing-test-your-ci-deep-dive-act-local-amir-goalmoradi-uff9e/

@DevTwitter | <Amir Goalmoradi/>
  • ❤ 39
  • 👍 15
  • 🍌 9
Post #13263 5.72K
ویژگی‌های مهم JWT (فارغ از فریم ورک)

JWT یک توکن امضاشده است که اطلاعات کاربر را درون خودش دارد.

نحوه کار: سرور توکن را می‌سازد و امضا می‌کند ← کلاینت آن را در هر درخواست می‌فرستد ← سرور فقط امضا را چک می‌کند (بدون دیتابیس).

نکته کلیدی: فقط Encode است، نه Encrypt ← داده حساس داخلش نگذارید.
------------------
ساختار: سه بخش با نقطه جدا می‌شوند

- Header:

-          نوع توکن و الگوریتم امضا

- Payload:

-          داده‌ها (Claims مثل شناسه کاربر، نقش، انقضا)

- Signature:

-          امضا برای تأیید دستکاری نشدن
------------------

آیا در میکروسرویس‌ها JWT بهتر است؟

بله، اغلب اوقات. چون Stateless است و هر سرویس بدون کوئری دیتابیس مرکزی می‌تواند توکن را تأیید کند.

بهترین کاربردها:

-         احراز هویت بین میکروسرویس‌ها

-         Machine-to-Machine (سرویس به سرویس)

-         APIهای عمومی و چند‌پلتفرمی

-         سیستم‌های توزیع‌شده و مقیاس‌پذیر

بدترین کاربردها:

-         نشست کاربران وب (Session جایگزین بهتری است)

-         وقتی نیاز به ابطال آنی توکن دارید (مثل logout یا تغییر رمز)

-         ذخیره داده حساس در Payload (رمزنگاری نشده)

-         توکن‌های طولانی‌مدت بدون Refresh Token

ویژگی‌های مهم JWT

Stateless
تمام اطلاعات لازم در خود توکن ذخیره می‌شود؛ سرور نیازی به ذخیره نشست ندارد.

Self-contained
شامل Header، Payload و Signature است و می‌تواند Claimهای سفارشی (نقش، مجوزها و...) را حمل کند.

امضاشده (Signed)
با الگوریتم‌های HMAC یا RSA امضا می‌شود؛ دستکاری محتوا قابل تشخیص است.

استاندارد باز (RFC 7519)
مستقل از زبان و پلتفرم است و در هر سیستم‌عاملی قابل استفاده است.

قابل حمل (Portable)
به راحتی بین سرویس‌ها، دامنه‌ها و میکروسرویس‌ها منتقل می‌شود.

دارای انقضا (Expiration)
فیلد exp زمان اعتبار توکن را مشخص می‌کند.

غیرقابل ابطال (Non-revocable)
تا زمان انقضا معتبر می‌ماند؛ ابطال آنی نیاز به Blocklist دارد که Stateless بودن را نقض می‌کند.

حجیم (Bulky)
به دلیل داشتن Payload، معمولاً بزرگ‌تر از توکن‌های ساده است.

رمزنگاری‌نشده (Base64 Encoded)
محتوای Payload فقط Encode شده، نه Encrypt؛ بنابراین نباید داده حساس در آن قرار داد.

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

@DevTwitter | <Max Shirinzad/>
  • ❤ 33
  • 🍌 12
  • 👍 5
Post #13261 5.63K
نسخه جدید گو ۱.۲۷ بالاخره منتشر شد
این نسخه ۱۹ آگوست اومد و چند تا تغییر جدی داره که توی کار روزمره قشنگ حس می‌شه.

اولین و به نظرم مهم‌ترین تغییر، پشتیبانی از generic methodهاست.
تا قبل از این اگه می‌خواستیم روی متد از جنریک استفاده کنیم، باید خود struct والد جنریک می‌بود تا متدها بتونن ازش استفاده کنن. حالا می‌تونیم مستقیم داخل متد type parameter تعریف کنیم. این کار باعث می‌شه کد مربوط به یه تایپ، تمیزتر و منسجم‌تر داخل همون تایپ بمونه و مجبور نشیم تابع‌های جنریک رو بیاریم بیرون.

دومین تغییر مهم مربوط به encoding/json هست.
عملیات unmarshaling بهبود محسوسی داشته و علاوه بر اون، پکیج encoding/json/v2 هم به شکل رسمی اضافه شده. این نسخه جدید کنترل بیشتری روی نحوه پردازش JSON می‌ده و پیش‌فرض‌هاش سخت‌گیرانه‌تره (مثلاً UTF-8 خراب یا کلید تکراری رو رد می‌کنه). نسخه قدیمی هم همچنان کار می‌کنه.

سومین مورد که خیلی کاربردیه، اضافه شدن goroutineleak به runtime/pprof هست.
احتمالاً با این مشکل روبه‌رو شدی که یه گوروتین ساخته می‌شه و به هر دلیلی برای همیشه بلاک می‌مونه و آزاد نمی‌شه. حالا گو می‌تونه بخشی از این گوروتین‌های گیرکرده رو راحت‌تر شناسایی کنه و تو پروفایل نشون بده.

چهارمین مورد، اضافه شدن UUID به کتابخانه استاندارد هست.
برای ساختن و پارس کردن UUIDهای معمول، دیگه لزوماً نیازی به کشیدن یه dependency جداگانه نیست.

پنجمین مورد هم بهبود memory allocation هست.
تو تخصیص‌های کوچیک (مخصوصاً زیر حدود ۸۰ بایت) هزینه بعضی allocationها تا ۳۰ درصد کمتر شده. برای برنامه‌هایی که زیاد حافظه می‌گیرن، بهبود کلی حدود ۱ درصد گزارش شده.

در کنار اینا، go fix و go doc هم بهتر شدن و چند تغییر دیگه تو runtime و standard library وجود داره.
در کل Go ۱.۲۷ بیشتر از اینکه یه نسخه پر از قابلیت‌های عجیب و غریب باشه، چند تا بخش مهم و پرکاربرد رو پخته‌تر و کاربردی‌تر کرده.

مستند تغییرات Go 1.27:
https://go.dev/doc/go1.27

@DevTwitter | <Ali Moradi/>
  • ❤ 19
  • 👍 3
Post #13260 6K
خبر داغ برای لاراول‌کارا :)
نسخه Laravel 13.32 تازه منتشر شده و یکی از تغییرات جالبش، اضافه شدن یه Driver جدید برای Mercure توی سیستم Broadcasting هست.
با این قابلیت می‌تونی از Mercure برای ارسال آپدیت‌های لحظه‌ای به سمت کلاینت استفاده کنی. جالبه که برخلاف WebSocketها، این روش بر پایه Server-Sent Events کار می‌کنه و برای خیلی از پروژه‌ها ساده‌تر و سبک‌تره.
این موضوع مخصوصاً برای پروژه‌هایی که نیاز به نمایش اطلاعات لحظه‌ای دارن خیلی کاربردیه. مثلاً:
داشبوردهای زنده
وضعیت سفارش‌ها
نوتیفیکیشن‌ها
یا هر بخشی که باید بدون رفرش شدن صفحه به‌روزرسانی بشه
علاوه بر این، این نسخه چند قابلیت دیگه هم آورده که به نظرم ارزش دارن:
متدهای copyToDisk() و moveToDisk() برای Filesystem که کار با فایل‌ها رو راحت‌تر می‌کنه
پشتیبانی از Enumها توی Pause و Resume کردن Queueها
در کل اگه از لاراول ۱۳ استفاده می‌کنی، این نسخه چندتا تغییر کاربردی توی بخش‌های مختلف فریم‌ورک به همراه داره و به نظرم ارزش آپدیت کردن داره.
منبع:
https://laravel-news.com/laravel-13-32-0

@DevTwitter | <Amirreza Riahi/>
  • 👍 23
  • ❤ 4
  • 🔥 2
Post #13259 6.3K
یک ساله یکی از دغدغه‌هام حافظه جانبی هوش‌مصنوعیه.
۷ ماه پیش MCPedia رو ساختم و چند ماه تستش کردم. ایده‌های دیگه مثل codememory و mem0 و ... بررسی کردم. پیاده‌سازی با embedding و VectorDB رو انجام دادم و تست کردم.

نهایتا خروجی شد برهان:
https://github.com/pouriya/borhan

@DevTwitter | <حضرت آقا پوریا/>
  • 🍌 33
  • ❤ 13
  • 🔥 1
Post #13258 6.98K
برای Digikala یه MCP Server ساختم.

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

۱۶ ابزار، بدون API Key

https://github.com/mmdju/digikala-mcp

@DevTwitter | <Mmdj/>
  • 🔥 86
  • 🍌 12
  • 👎 4
Post #13257 8.16K
کاربری در ردیت با کمک GPT-6 نسخه‌ای دقیق از فتوشاپ رو به صورت رایگان ساخته.

این کار برای او حدود 2000 دلار هزینه داشت، اما نتیجه ارزش داشت

این نرم‌افزار با نام Photon تقریباً تمام قابلیت‌های نسخه پولی رو داره و روی لینوکس، ویندوز و مک قابل استفاده است.

https://tenzen.studio/photon/

@DevTwitter | <Reza/>
  • 🔥 148
  • 👎 9
  • 🍌 7
Post #13256 6.63K
یه skill برای نوشتار فارسی AI توی کامیونیتی ها خیلی دیده شد و چون کار قشنگی بود، به نظرم خیلی باید بیشتر دیده بشه...

یه دوست عزیزی یه skill برای برای بهتر کردن خروجی فارسی AI نوشته که خیلی از مشکلات همه رو حل میکنه:
1. قواعد نگارش فارسی مثل نیم فاصله و هکسره و اعداد فارسی و ... رو رعایت میکنه.
2. مشکل rtl نبودن نوشته توی فایل های مختلف رو حل کرده.
3. لحن های متفاوتی داره و برای کار های مختلف از لحن خاص خودش استفاده میکنه.
و چیزای دیگه که خودتون برید داخل ریپوش ببینید:
https://github.com/ali2000hos/persian-writing

@DevTwitter | <Seyed Hossein Mostafavi/>
  • ❤ 38
  • 👍 7
  • 👎 2
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →