DevTwitter | توییت برنامه نویسی – Telegram
DevTwitter | توییت برنامه نویسی
23.6K subscribers
4.36K photos
358 videos
6 files
4.1K links
توییت های برنامه نویسی و طراحی وب :)

@dvtwi

Hashtags:
devtwitter.t.me/5

DevBooks Channel:
https://news.1rj.ru/str/+AYbOl75CLNYxY2U0

Github:
https://github.com/DevTwitter

X:
https://x.com/devtwittir
Download Telegram
درباره RefreshToken و AccessToken براتون مطلبی رو آماده کردم تا بیشتر باهاشون آشنا بشیم

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

مراحل کلی رفرش توکن:
اول:کاربر لاگین می‌کنه: بعد از لاگین، سرور یه Access Token و یه Refresh Token به کلاینت می‌ده.

دوم:Access Token منقضی می‌شه: بعد از یه مدت (مثلاً ۱۵ دقیقه)، Access Token دیگه معتبر نیست.

سوم:درخواست جدید با توکن منقضی شده: وقتی کاربر یه درخواست جدید می‌فرسته، سرور خطای 401 (Unauthorized) برمی‌گردونه.

چهارم:رفرش توکن فرستاده می‌شه: کلاینت با استفاده از Refresh Token، یه درخواست به سرور می‌فرسته و یه Access Token جدید می‌گیره.

پنجم:درخواست اصلی تکرار می‌شه: کلاینت درخواست اصلی رو با Access Token جدید دوباره ارسال می‌کنه.

چطوری با Axios توی پروژه‌ها رفرش توکن رو خودکار کنیم؟
یه مشکلی که همیشه توی پروژه‌های با احراز هویت پیش میاد، منقضی شدن توکن‌هاست. کاربر کارش رو می‌کنه، یهو می‌بینه خطای 401 می‌گیره و مجبوره دوباره لاگین کنه!
این کار رو می‌شه با استفاده از Axios Interceptors به راحتی پیاده‌سازی کرد. یعنی وقتی توکن منقضی میشه، به جای اینکه کاربر رو به لاگین برگردونیم، یه درخواست جدید برای رفرش توکن می‌فرستیم و بعد درخواست اصلی رو دوباره ارسال می‌کنیم. به همین سادگی!

چطوری کار می‌کنه؟
خطای 401 رو می‌گیریم: هر وقت سرور بهمون بگه "توکنت تموم شده" (یعنی خطای 401)، وارد عمل میشیم.
رفرش توکن می‌گیریم: یه درخواست به سرور می‌فرستیم و با استفاده از Refresh Token، یه توکن جدید می‌گیریم.
درخواست اصلی رو تکرار می‌کنیم: توکن جدید رو جایگزین می‌کنیم و درخواست اصلی رو دوباره ارسال می‌کنیم.

نکات مهم:
-با کوکی‌ها کار می‌کنیم: با withCredentials: true مطمئن می‌شیم که کوکی‌ها (مثل Refresh Token) به درستی ارسال میشن.

-جلوی تلاش‌های بی‌جا رو می‌گیریم: با یه فلگ ساده (retry_) مطمئن می‌شیم که فقط یه بار برای رفرش توکن تلاش می‌کنیم.

-امنیت اولویته: همیشه حواسمون به ذخیره‌سازی امن Refresh Token باشه!

این روش نه‌تنها تجربه کاربری رو بهتر می‌کنه، بلکه باعث میشه کاربر کمتر با صفحه‌ی لاگین کلنجار بره و کارش رو سریع‌تر تموم کنه

@DevTwitter | <Soheil Seyyedi/>
👍437👎4
یدونه نرم افزار چت p2p
https://github.com/aminGhafoory/peerchat
برای بازی کردن با webrtc ساختمش
قراره بشه یدونه نرم افزار انتقال فایل بین دو تا سیستم از طریق webrtc

@DevTwitter | <krusty the clown/>
👍19
#کوته_نیوز

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

پرتقال فروش و اینا...

@DevTwitter
👍92👎5
با Go یک پروژه جدید نوشتم که برای تبدیل فایل های Json به CSV هستش
اگر دارید Go یاد میگیرید / تمرین میکنید / کار میکنید
این ریپازیتوری میتونه کمکتون کنه و به کد هاش نگاهی بکنید

https://github.com/MisaghMomeniB/Json2CSV-Go

@DevTwitter | <Misagh Momeni Bashusqeh/>
👎39👍237
یک پروژه اندرویدی اوپن سورسه که با clean Arch نوشته شده
سعی کردم توش‌ solid رو رعایت کنم
واسه درک بهتر کلین میتونید یه نگاهی بهش بندازید...
از Ktor و koin هم توش استفاده شده و همچنین برای ui از JetpackCompose استفاده شده

https://github.com/HoseinSadonasl/GitHubUsers

@DevTwitter | <HoseinSadonasl/>
👍21👎1
الان دستیار کدنویسی Gemini Code Assist رایگان شد.
نسخه GitHub هم داره، میشه با VS Code و JetBrains هم باهاش کار کرد.
https://github.com/apps/gemini-code-assist

@DevTwitter | <Soroush Ahmadi/>
👍44🔥5
This media is not supported in your browser
VIEW IN TELEGRAM
اگه دنبال تمرین و یادگیری مسائل ماشین لرنینگ هستید بخصوص برای مصاحبه و شغل این وبسایت را دیدم جالبه! کلی سوال داره که از ساده تا سخت دسته بندی شده و میتونید تمرین کنید.
Link: deep-ml.com

@DevTwitter | <Mehdi Allahyari/>
👍23👎2
آقای Greg Brockman یه راهنما برای پرامپت‌نویسی مدل‌های استدلالی مثل 01 منتشر کرده که می‌تونه کاربردی باشه.

- هدف: چیزی که می‌خواین
- فرمت خروجی: فرمت مد نظرتون برای جواب نهایی
-هشدارها: نکاتی که مدل باید حواسش باشه
- زمینه: اطلاعات بیشتر برای افزایش کیفیت خروجی

@DevTwitter | <Reza Jafari/>
👍50🔥8
این سایت خیلی خوبه! ۵۰۰ نمونه پروژه های دیتاساینس اعم از ML، LLM، ریکامندر سیستم ها و دهها موضوع دیگه که تو‌ صنعت توسط شرکت های معروف پیاده شدن رو جمع کرده.

اگر میخواین یادبگیرین تو صنعت چطوری پروژه های دیتاساینس پیاده میشن این معدن طلا رو از دست ندید!

https://www.evidentlyai.com/ml-system-design

@DevTwitter | <Nima/>
🔥18👍9
This media is not supported in your browser
VIEW IN TELEGRAM
موسسه AllenAI یک ابزار اپن سورس OCR معرفی کرده به نام olmOCR برای استخراج متن تمیز از فایل‌های PDF!
با این ابزارمیتونید در حجم بالا پردازش انجام بدید، و انواع مختلف اسناد رو با سرعت خیلی بالا مدیریت می‌کنه. می‌تونید اون رو به صورت رایگان روی سیستم خودتون اجرا کنی—با سرعت بالای ۳۰۰۰ توکن بر ثانیه، که معادل ۱۹۰ دلار برای هر میلیون صفحه میشه، یا ۱/۳۲ هزینه GPT-4o! (خیلی ارزون‌تره!)
من روی یک فایل فارسی امتحان کردم خیلی عالی بود کیفیتش.

Link: olmocr.allenai.org
Github: github.com/allenai/olmocr

@DevTwitter | <Mehdi Allahyari/>
👍317👎2
این قطعا گوگلو عصبانی میکنه، ChatGPT آپدیت جدید یه اکستنسن به سافاری اضافه میکنه که فعالش کنی موتور جستجوی پیش‌فرض میشه ChatGPT :)

@DevTwitter | <Soroush Ahmadi/>
🔥103👍5👎5
مایکروسافت Voice و Think Deeper رو داخل کوپایلت نامحدود کرد، بچه‌ها در استفاده کوتاهی نکنید.
copilot.microsoft.com

@DevTwitter | <Soroush Ahmadi/>
🔥73👍13👎52
با C++ یک پروژه جدید روی گیت‌هاب انجام دادم
این کد یک Weighted Graph رو پردازش میکنه و دو الگوریتم مهم برای کوتاه تری مسیر رو پیاده‌سازی میکنه
در کل، بهتون کمک میکنه کوتا ترین مسیر در یک گراف رو پیدا کنید
اگر قابل بود Star کنید
https://github.com/MisaghMomeniB/Graph-Pathfinder-Cpp

@DevTwitter | <Misagh Momeni Bashusqeh/>
👍42👎14🔥5
یه نفر تو ردیت از Copilot مایکروسافت خواسته بهش یاد بده چطوری ویندوز رو بدون خرید لایسنس فعال کنه، بعد کوپالیت یه دستور PowerShell بهش میده که یه اسکریپت رو از گیت‌هاب اجرا می‌کنه و در نهایت باعث فعال شدن ویندوز ۱۱ میشه.

@DevTwitter | <Geek Alerts/>
🔥155👍15👎76
به صورت کامل اومدم و سیستم asyncio.Queue و asyncio.Event و نحوه ی ساخت سیستم producer && consumer(worker) رو توضیح دادم و مثال نسبتا ساده ای رو نوشتم.
خوشحال میشم بخونید(ریپست و لایک خوشحال ترم میکنه) و نظرتون رو درموردش بهم بگید.

لینک مقاله

@DevTwitter | <Mohammad Sadeghian/>
👍32👎2
دیپ‌سیک یه سیستم فایل به اسم Fire-Flyer یا همون 3FS ساخته برای خوندن حجم زیادی از دیتاهای سمپل به صورت تصادفی، اون هم توی نودهای محاسباتی موقع آموزش مدل‌ها.

اکثر فایل‌سیستم‌های سنتی برای استفاده‌های عمومی طراحی شدن اما توی آموزش مدل‌ها، ما معمولا دیتاهارو به صورت تصادفی انتخاب و می‌خونیم. یعنی چی؟ یعنی اینکه نمی‌تونیم از تکنیک‌های معمولی مثل کش کردن (Read Cache) یا پیش‌خوانی (Prefetching) استفاده کنیم. چون دیتاهایی که الان خوندیم، به این زودی‌ها دوباره خونده نمی‌شه. پس این ابزارها اینجا بی‌فایده‌ان.

به خاطر همین مسئله خوندن تصادفی مهمه و 3FS اومده و این ویژگی‌های کش و پیش‌خوانی رو کلا حذف کرده. چرا؟ چون هم بی‌فایده بودن، هم حافظه سیستم رو الکی اشغال می‌کردن و ممکنه بود روی کارهای دیگه تاثیر منفی بذارن.

بعضی‌ها پرسیدن که چرا از سیستم‌فایل‌های دیگه مثل Ceph یا MinIO و SeaweedFS استفاده نکنیم. جواب ساده‌ست، سرعت. این سیستم‌ها برای این حجم از دیتا و این نوع دسترسی تصادفی طراحی نشدن. اما 3FS تونسته به سرعت ۶.۶ ترابایت بر ثانیه برسه.

https://arxiv.org/html/2408.14158v2

@DevTwitter | <Soroush Ahmadi/>
👍39🔥4👎1
This media is not supported in your browser
VIEW IN TELEGRAM
ساختن اپلیکیشن‌های realtime صوتی و تصویری با استفاده از پروتکل های WebRTC و Websocket خیلی سخته. الان یک لایبرری جدید اومده به اسم FastRTC و عالیه!
بعضی از ویژگی‌های کلیدی:
- تشخیص صدا به صورت اتوماتیک و نوبت‌دهی صحبت
- می‌تونی هر مدل LLM، صوتی یا تصویری رو بهش وصل کنی
- رابط کاربری خودکار Gradio برای تست کردن
- می‌تونی برای استفاده توی محیط واقعی، به هر اپلیکیشن FastAPI وصلش کنی
- پشتیبانی از تماس تلفنی
توی ریپو کلی مثال داره! الان میتونید انواع اپلیکیشن های پیشرفته realtime برای صدا و تصویر درست کنید.
Github: https://github.com/freddyaboulton/fastrtc

@DevTwitter | <Mehdi Allahyari/>
🔥27👍17👎3
Forwarded from Afrasiab
This media is not supported in your browser
VIEW IN TELEGRAM
یک پروژه اندرویدی با Clean Arch و اصول solid و تا حدودی ماژولار با کامپوز و هیلت و ktor و رتروفیت با رعایت استاندارد های گوگل

پروژه خیلی تمیزیه و بنظرم میتونه مفید باشه.
لینک گیت هاب :‌
https://github.com/MahdiPorkar-github/CryptoTracker

@DevTwitter | <Mahdi/>
👍20👎5
#کوته_نیوز

اسکایپ داره درشو میذاره

@DevTwitter
👍597👎1🔥1
یکی از منابع خوب واسه cveهای جدید و دسته‌بندی‌شون + PoCهای موجود، استفاده از
cvedb.shodan.io
هست، میتونه منبع خوبی برای ابزارهاتون باشه.

پ.ن: زیاد سریع نیست و راه‌های بهتری هست واسه پیاده‌سازیش اما چون پابلیک هستش اوکیه.

@DevTwitter | <Radmehr/>
👍10🔥3
مدل‌های قبلی OpenAI بیشتر روی استدلال تمرکز داشتن. ولی GPT-4.5 بیشتر روی یادگیری بدون نظارت تمرکز کرده، یعنی بهش کلی دیتا دادن و گذاشتن خودش یاد بگیره.

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

تضمینی اینکه هیچوقت قرار نیست رایگان باشه و احتمالا توی پنل Plus هم با کلی محدودیت ارائه میشه چون خیلی گرونه، یعنی ۱ میلیون توکن میشه ۷۵ دلار که احتمالا برای هر کاری مناسب نباشه.

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

اما نقدها هم به این مدل زیاد هستن، مثلا توی ریاضی، برنامه‌نویسی و بنچمارک‌های دیگه عملکردش در سطح مدل‌هایی مثل Grok 2.0 یا Claude 3.7 بوده و خیلی‌ها گفتن ارزش این مقدار هزینه بیشتر رو نداره.

تاکید می‌کنن که GPT-4.5 فعلا استدلال نمی‌کنه، ولی در آینده مدل‌های هیبریدی میسازن که استدلال هم داشته باشه. مثل کاری که Claude انجام داد.

@DevTwitter | <Soroush Ahmadi/>
👍32👎5🔥5