DevTwitter | توییت برنامه نویسی
28.7K subscribers
4.71K photos
377 videos
6 files
4.44K 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
محققان امنیت سایبری یک آسیب‌پذیری در مایکروسافت ویژوال استودیو کد (Visual Studio Code) کشف کرده‌اند که به مهاجمان امکان می‌دهد توکن احراز هویت گیت‌هاب (GitHub OAuth token) کاربران را به سرقت ببرند.

تنها با کلیک روی یک لینک، مهاجم می‌تواند توکنی را بدزدد که دسترسی کامل به تمام مخازن کد (repositories) کاربر، از جمله مخازن خصوصی، را فراهم می‌کند. این آسیب‌پذیری از طریق سوءاستفاده از مکانیزم انتقال پیام (message-passing mechanism) میان پنجره اصلی VS Code و نماهای وب (webviews) عمل می‌کند و به مهاجم اجازه می‌دهد افزونه‌های مخرب نصب کرده و توکن OAuth ارسال‌شده به سرویس GitHub .dev را استخراج نماید.

این حمله همچنین از قابلیتی به نام «افزونه‌های محلی فضای کاری» (local workspace extensions) در VS Code بهره می‌برد که نصب افزونه را بدون نمایش هیچ هشدار اعتماد اضافی ممکن می‌سازد و بدین ترتیب بررسی اعتماد ناشر (publisher trust check) را دور می‌زند. گفتنی است این آسیب‌پذیری در دوم ژوئن ۲۰۲۶ به گیت‌هاب گزارش شد و تنها یک ساعت پس از آن جزئیاتش به‌صورت عمومی منتشر گردید.

مایکروسافت این آسیب‌پذیری را تأیید کرده و اعلام نموده در حال توسعه یک وصله امنیتی (fix) است، همچنین تصریح کرد که این مشکل نسخه دسکتاپ VS Code را تحت تأثیر قرار نمی‌دهد.

@DevTwitter | <Teegra/>
16👍7🔥3
Forwarded from DevTwitter Ads.
هر سال هزاران ساعت صرف یاد گرفتن فریمورک‌های جدید میشه.

ولی مهارتی که مستقیم روی درآمد، مهاجرت، مصاحبه و همکاری با تیم‌های خارجی اثر داره معمولاً میره ته لیست.

انگلیسی برای برنامه‌نویس‌ها یه درس نیست.

یه ابزار کاره.

درست مثل Git.
درست مثل Docker.
درست مثل IDE.

اگه مدت‌هاست می‌خوای این مهارت رو یادبگیری، ولی زمانش رو نداری این فرصت رو از دست نده. ما توی بازه سه ماهه بهت تمام چیزهایی که برای کارت لازم داری رو یاد میدیم تا از بابت زبان انگلیسی و مکالمه ت خیالت راحت باشه .⌛️💻

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


برای دریافت تعیین سطح رایگان و دریافت نقشه راه برای آیدی زیر بنویس " تعیین سطح" :👇

🟢@jobzlingo_admin

چنل جابزلینگو برای جلسات و آموزش های روزانه :👇

🟢@jobzlingo
👎32👍85
چرا گولنگ رو ترجیح میدم؟

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

فرض کن می‌خوای یه وب اپ یا API بنویسی. تو گولنگ، به جز درایور دیتابیس، هیچ وابستگی خارج از کتابخونه استاندارد لازم نداری. برای بیلد، تست و مدیریت وابستگی ابزار لازم همراه با کامپایلر هست.

تو جاوا برای یه وب اپ باید از Maven یا Gradle استفاده کنی چون نیاز به دیپندنسی داری حتی برای ساده ترین کارها و باید فایل pom.xml یا build.gradle بنویسی. برای اجرا کردن پروژه باید اپلیکیشن سرور نصب کنی. خلاصه قبل از اینکه حتی یه خط کد بزنی، باید یه اکوسیستم رو راه بندازی.

دیپلوی پروژه گولنگی خیلی راحترهست. بعد از `go build`، یه فایل باینری مستقل می‌گیری که می‌تونی روی هر سرور بدون اینکه گو نصب باشه، اجرا کنی.
تو جاوا باید JRE یا JDK و اپلیکیشن سرور نصب باشه، باید حواست به مدیریت وابستگی‌های native، نسخه JVM و تنظیمات GC باشه. تو گو این دردسرها رو نداری.

نبود وابستگی‌های خارجی برای گولنگ یعنی کمتر شدن دردسرهای نگهداری، آپدیت کردن (بکوارد کامپتیبل بودن و منسوخ نشدن و ...) و باگ‌های امنیتی هزار تا پکیج جانبی

تو جاوا، پروژه‌ میانگین ده‌ها وابستگی (مثلاً Spring, Hibernate, Log4j, Guava, Apache Commons) داره. که مثلا Log4j با یه باگ امنیتی کل دنیا رو بهم ریخت. تو گولنگ تقریباً هیچ وابستگی خارجی برای کارهای روزمره ندار و استاندارد لایبرری اکثر نیازها رو جواب میده: HTTP/2 client & server, JSON, HTML templates, encryption, SQL, compression, testing, benchmarking, profiling

تو جاوا استاندارد لایبرری خوبه ولی خیلی از چیزها رو نداره مثل JSON و HTTP client که قبلاً خیلی ضعیف بود (نسخه ۱۱ به بعد بهتر شد ولی هنوز برای کارهای حرفه‌ای از Apache HttpClient استفاده می‌شه)، و باید از لایبرری خارجی استفاده کنی.

تو گو با go func() می‌تونی هزاران کار همزمان با حافظه کم (چند کیلوبایت هر گوروتین) راه بندازی و ارتباط بینشون با channel ساده و امنه. تو جاوا اما قدیم هر Thread چند مگابایت حافظه می‌خواست، پس نمی‌تونستی تعداد زیاد داشته باشی. باید از ExecutorService یا CompletableFuture استفاده می‌کردی که کلی کد اضافی داشت. الان virtual threadها اومدن بهتر شده، ولی هنوز مدیریتش سخت‌تر از گوروتین گولنگ است.

سینتکس گولنگ واقعا ساده‌ست، تو چند روز می‌تونی کامل یاد بگیری. ارور هندلینگ صریح (با `if err != nil`) شاید اولش عجیب باشه ولی باعث میشه خطاها رو فراموش نکنی.
جاوا ولی پر از جزئیاته: try-catch-finally, type erasure، anonymous classes، try-with-resources, Reflection و کلی نکته ریز.

کد گولنگ به اسمبلی کامپایل می‌شه، سرعتش نزدیک C++ هست و مصرف حافظه‌ش کمه (سرویس ساده با چند مگ راه می‌افته). جاوا روی JVM اجرا می‌شه که حتی برای Hello World حداقل ۵۰-۱۰۰ مگ حافظه می‌گیره. البته با تنظیمات حافظه‌ و GC یا Native Image می‌شه حافظه رو به سطح گولنگ رسوند، ولی نیاز به دانش و کار بیشتری داره.

خلاصه با گولنگ هزینه نگهداری، راه‌اندازی و دیپلوی سرویس کمتر از جاوا یا زبان‌های معروف دیگه‌ست. مخصوصاً اگر توی یه استارتاپ یا تیم کوچیک هستی که نمی‌خوای وقتت رو صرف مدیریت Maven, Tomcat, JVM flags و این حرفا کنی. گو بهت اجازه میده سریع بنویسی، سریع اجرا کنی، و بدون دردسر دیپلوی کنی.

@DevTwitter | <Yousef Rostami/>
👍94👎2315
وقتی هر میلی‌ثانیه اهمیت دارد، Redis دیگر یک انتخاب نیست؛ یک ضرورت است.

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

ابزار Redis فراتر از یک Cache ساده است. این فناوری به یکی از اجزای کلیدی معماری سیستم‌های مدرن تبدیل شده؛ از مدیریت میلیون‌ها Session همزمان گرفته تا پردازش داده‌های Real-Time، Message Streaming و Distributed Caching.

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

بسیاری از تیم‌های مهندسی زمانی به ارزش واقعی Redis پی می‌برند که با رشد کاربران و افزایش ترافیک مواجه می‌شوند؛ جایی که بهینه‌سازی چند Query دیگر کافی نیست و معماری سیستم باید هوشمندانه‌تر عمل کند.

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

@DevTwitter | <Ahmad Mahboubi/>
41🍌6👍5
مبحث بسیار مهم و سوال مصاحبه‌ای فرانت‌کارها

سوال ساده‌ست:
“چطور یه منوی چندسطحی رو type-safe تعریف می‌کنی؟”
بیشتر افراد اشتباه میکنن و رد میشن.

خیلی سادست خب
نوعی که به خودش ارجاع می‌ده ( Recursive Types in TypeScript )
همین یه خط، بهت اجازه می‌ده ساختار هر عمقی رو کاملاً type-safe مدل کنی
بدون any. بدون حدس زدن. بدون باگ‌های runtime

@DevTwitter | <Mohsen Karimvand/>
👎24👍15🔥3
نویدیا امروز Nemotron 3 Ultra رو شیر کرد
مدل ۵۵۰B MoE اوپن‌سورس برای ایجنت‌های طولانی‌مدت.

۵ برابر سریع‌تر و هزینه تا ۳۰٪ کمتر. کاملاً اوپن، وزن‌ها و دیتا روی هاگینگ‌فیس موجوده.

فقط مسیله اینه ۸ بیتش ۶۰۰ فاکینگ گیگ حافظه یکپارچه میخواد.

میدونم همتون ۴ تا h200 خونه دارید منتظر این مدلید.

@DevTwitter | <Kaveh/>
🍌68👍96
سرور مجازی مفت!

از اینجا میتونید ارزون ترین سرور ها رو پیدا کنید:

https://serverhunter.com

بعضیاش قیمت سالانش کلا 3 دلاره و کریپتو هم قبول میکنن

@DevTwitter | <ixAbolfazl/>
39🔥5👍1
بیاید ببینیم معماری ECS که خیلی از گیم انجین ها مثل Unity DOTS و Bevy ازش استفاده میکنن و به شدت cache friendly هست چیه و چطوری پیاده سازی میشه. تو این ویدیو لایبرری که خودم توسعه دادم رو با هم بررسی میکنیم. خوشحال میشم ببینید و نظرتونو بگید بهم

http://youtube.com/watch?v=ImSqMEct8Ys

@DevTwitter | <Rouzbeh Sabzehei/>
👍164🔥3
یه راهنما برای استفاده از Claude توی ریسرچ (با تمرکز روی فیزیک و ریاضی) نوشتم. نسخه‌ی اولیه‌اشه و در طول زمان هی بهترش میکنم.

https://github.com/Mexregkan/claude-for-researchers/

@DevTwitter | <Mehregan/>
34👍5🍌5
بالاخره C# Tutor رو open-source کردم و گذاشتمش روی GitHub.

این چند وقت داشتم روی یه مجموعه Skill برای Codex کار می‌کردم که هدفش کمک به یادگیری بهتر C# و .NET هست. نه فقط در حد اینکه یه جواب سریع بده، بلکه سعی کنه مفاهیم رو درست توضیح بده، کد رو بررسی کنه، خطاها رو قابل فهم‌تر کنه و وقتی لازم شد پیشنهاد بده چطور می‌شه کد رو تمیزتر، قابل نگهداری‌تر و حرفه‌ای‌تر نوشت.

مثلاً می‌تونه توی چیزهایی مثل OOP، clean code، refactor، async، LINQ، تست‌نویسی، performance، design patterns و حتی ساختن تمرین یا مسیر یادگیری کمک کنه.

چیزی که برام مهم بود اینه که جواب‌ها تا جای ممکن بر اساس داکیومنت رسمی C# و .NET باشن، نه صرفاً توضیح‌های کلی و حدسی.

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

https://github.com/yappologistic/CSharp-Tutor

@DevTwitter | <E Gurl/>
26👍8🍌5
This media is not supported in your browser
VIEW IN TELEGRAM
مدل ChatGPT امکان ارسال مستقیم ایمیل رو هم اضافه کرد! یعنی از نوشتن تا ویرایش و ارسال؛ همه چیز داخل همون پنجره چت انجام میشه.

بنظرم مرز بین «کمک کردن» و «انجام دادن کارها» در ChatGPT، هر روز داره کمرنگ‌تر میشه!

@DevTwitter | <mohammad seymari/>
👍60🔥6👎3
ترکیب Node.js و Next.js یکی از بهترین انتخاب‌ها برای ساخت وب‌اپلیکیشن‌های سریع، مقیاس‌پذیر و مدرن است.

با Node.js در بک‌اند، سرعت و انعطاف بالایی در مدیریت درخواست‌ها، APIها و پردازش داده‌ها داریم.
و با Next.js در فرانت‌اند، تجربه‌ای عالی برای کاربر، رندر سمت سرور، سئو بهتر و عملکرد بهینه به دست می‌آوریم.

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



@DevTwitter | <Hossein mehdizadeh/>
👎96👍6014
من یک وب‌سایت ساده برای استخراج و حل جدول‌های روزنامه توسعه داده‌ام که قابلیت ثبت‌نام و ذخیره پیشرفت کاربران را نیز فراهم می‌کند. این ویژگی امکان ادامه حل جدول را در دستگاه‌های مختلف فراهم می‌سازد. همچنین، این برنامه تا حدی با دستگاه‌های همراه سازگاری دارد.
تلاش می‌شود تا از این پس، به‌طور منظم جدول‌های روزانه نیز به پلتفرم افزوده شوند.

لینک مخزن کد:
https://github.com/BlankuApp/PersianCrossword

لینک وب‌سایت حل جدول:
https://blankuapp.github.io/PersianCrossword/

@DevTwitter | <H E/>
72👍17🔥5
شاهکار جدید گوگل برای اجرای آفلاین هوش مصنوعی: Gemma 4 QAT

مدل‌های جدید Gemma 4 انقدر هوشمندانه فشرده شدن که کوچیک‌ترین نسخه‌ش کمتر از ۱ گیگابایت رم می‌خواد و راحت روی گوشی موبایل اجرا می‌شه. بدون نیاز به اینترنت و با حفظ کامل حریم خصوصی.

@DevTwitter | <Behrad Javed/>
🔥1087👍7
یکی یه راه پیدا کرده واسه اینکه بفهمی یوزر از حالت Incognito کروم استفاده میکنه یا نه!

میاد با cache api تعداد ۵۱۲ تا آیتم ‍۱ بایتی تولید میکنه، بعد سایز cache رو با http://navigator.storage.estimate() چک میکنه:

سایزش تو حالت عادی باید حدود ۳۹۳ کیلوبایت باشه، ولی روی incognito حدود ۸۵ کیلوبایته چون incognito از حافظه رم استفاده میکنه! لزوما هک نیست ولی متد جالبیه :)

@DevTwitter | <Amir/>
51🔥14🍌7
ویدئوی کامل ضبط‌شده‌ی نخستین جلسه‌ی دوره‌ی رایگان «ورود به دنیای هوش‌مصنوعی»

https://www.youtube.com/watch?v=YVsoJnHK0ow&t=2s

@DevTwitter | <علی شریفی زارچی/>
119👎111🍌22
دستور wc یکی از ساده‌ترین و در عین حال پرکاربردترین ابزارهای یونیکسی است؛ اما پشت خروجی به ظاهر ساده‌ی آن، جزئیات جالبی درباره پردازش متن و کدگذاری کاراکترها وجود دارد.
در این ویدئو یک پیاده‌سازی مینیمال از wc را با زبان Rust از صفر می‌نویسیم و مرحله‌به‌مرحله بررسی می‌کنیم که چگونه می‌توان:
• تعداد خطوط (Lines) را محاسبه کرد
• تعداد کلمات (Words) را شمرد
• تعداد بایت‌ها (Bytes) را به دست آورد
همچنین درباره تفاوت شمارش بایت و کاراکتر، نحوه کار UTF-8 و تفاوت آن با ASCII صحبت می‌کنیم تا درک بهتری از پردازش متن در سیستم‌های یونیکسی داشته باشیم.


ویدئو:
https://www.youtube.com/watch?v=boSeilowUWo

سورس کد:
https://gist.github.com/behdanisohrab/a7a94717d9d1888b61a12816cbca898f

@DevTwitter | <Sohrab Behdani/>
18👍5🍌1
Forwarded from DevTwitter Ads.
🌱 از مبانی سئو تا آشنایی با سئوی تکنیکال

🔥 به مدت محدود می‌تونی دوره «آموزش کاربردی سئو» کوئراکالج رو با ٪۴۰ تخفیف ویژه انتشار ثبت‌نام کنی!

✔️ مفاهیمی که توی این دوره یاد می‌گیری:
🔹 تحقیق کلمات کلیدی (Keyword Research)
🔹 سئوی داخلی (OnPage SEO)
🔹 آشنایی با اجزای سئوتکنیکال و اسکیماها
🔹 استفاده از ابزارهای سئو مانند Google Analytics و Search Console
🔹 استراتژی‌های سئو برای بهبود رتبه در نتایج جستجو
🔹 تکنیک‌های آف‌پیج (Off-Page SEO) و ابزارهای تحلیل اون
و خیلی چیزهای دیگه!

🔗 quera.org/r/iekdw
5👍4👎4
سر قطعی اینترنت مجبور بودیم با بچه ها قطره چکونی نت مصرف کنیم. سر همین با AI طی دو ساعت یه سیستم نوشته بودم که مصرف افراد رو مانیتور میکرد
ریفکتور سرویس بک اندش رو تازه تموم کردم. احتمالا تو روزای آینده براش داکیومنتم بنویسم. دوست داشتید یه نگاه بندازید.

https://github.com/navidmadannezhad/manitor

@DevTwitter | <Navid/>
50💔10👍3
یه تجربه جالبی که امروز با opendray.dev داشتم اینه که به کداکس گفتم تو PM باش اینم اسکیل‌هات github .com/phuryn/pm-skills

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

حالا وسط انجام پروژه خود مسنجری که نوشتن با هم صحبت می‌کنند رو هم باگ فیکس می‌کنن

@DevTwitter | <Nima/>
🔥387👎3