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
اخیرا درگیر کوچ کردن از یه سیستم مونولیت قدیمی با Symfony به میکروسرویس با Golang هستم. اونایی که تجربه این مدل کوچ کردن هارو توی سیستم های زیر بار و قدیمی دارن میدونن که مشکل اصلی دیتابیس و جلو رفتن بر اساس اسکیمای فعلی هست و این مدل کوچ ها باید تقریبا بدون Breaking Changes اتفاق بیوفته.

اینجا بود که با SqlBoiler توی زبان Go آشنا شدم.

مزایای SqlBoiler:

۱. ساخت Struct در یک چشم به هم زدن:
به جای اینکه ساعت‌ها بشینم و دستی Structهای گو رو بر اساس جدول‌های دیتابیس بنویسم، SQLBoiler در عرض چند ثانیه تمام مدل‌های Type-Safe ما رو ساخت. وقتم رو خرید، خیلی زیاد!

۲. تمرکز بر دیتابیس (Database-First):
چون دیتابیس ما از قبل وجود داشت، این ابزار خیلی راحت خودشو با Schema ما سینک کرد. انگار ساخته شده بود برای همین وضعیت!

۳. کوئری‌های ایمن و هوشمند:
دیگه نگران خطاهای احمقانه زمان اجرا (Runtime) نیستم. با تولید کوئری‌های Strongly Typed، هر اشتباهی توی نام ستون یا جدول باشه، همون موقع
کامپایل گیر میده.

۴. فقط چیزهای ضروری رو بگیر:
قابلیت Whitelist/Blacklist جدول‌ها و ستون‌ها فوق‌العاده است. توی محیط میکروسرویس که هر سرویس فقط به یه بخش دیتابیس نیاز داره، با این قابلیت فقط مدل‌های مرتبط رو تولید کردم و کد اضافی رو حذف کردم.

اینم لینک گیتهابش:
https://github.com/aarondl/sqlboiler

@DevTwitter | <Sepehr Mohseni/>
21👍8🔥2
کلید فراموش‌شده بهینه‌سازی دیتابیس : Collation در MySQL
به عنوان برنامه‌نویس، همیشه روی ایندکس و کوئری‌ها تمرکز می‌کنیم، اما یک تنظیم ساده در دیتابیس می‌تواند همه چیز را تغییر دهد: Collation
Collation چیست؟
تعیین می‌کند MySQL چگونه داده‌های متنی را مقایسه و مرتب‌سازی می‌کند.
انتخاب اشتباه = مشکلات پنهان
دو نوع اصلی:

نوع یک : ci) Case-Insensitive_)
مقایسه‌ها بدون توجه به حروف بزرگ و کوچک انجام می‌شود. برای مثال کوئری زیر همه ی مواردی مثل ali , Ali , ALI را برمی گرداند.
SELECT * FROM users WHERE username = 'ALI'

در این مثال collation ستون username برابر utf8mb4_unicode_ci می باشد.

نوع دو : bin) Case-Sensitive_)
مقایسه‌ها حساس به حروف بزرگ و کوچک است. برای مثال کوئری زیر فقط ALI
را برمی گرداند.
SELECT * FROM users WHERE username = 'ALI'

در این مثال collation ستون username برابر utf8mb4_bin می باشد.

چرا مهم است؟
عملکرد: collationهای _bin معمولاً سریع‌ترند.
دقت: اگر حساسیت به حروف بزرگ/کوچک مهم است، _bin ضروری است.
یکپارچگی داده: از ذخیره مقادیر تکراری ناخواسته جلوگیری می‌کند.

نکته طلایی:
قبل از طراحی جدول، از خود بپرسید:
"آیا در این فیلد، 'Ali' با 'ali' تفاوت دارد؟"
پاسخ این سؤال، collation مناسب را به شما می‌گوید.


@DevTwitter | <Babak Mirhosseini/>
30👍10👎1🔥1
توی این گرونی فقط پایان پشتیبانی امنیتی از ویندوز ۱۰ کم بود.
البته با یه روش میشه تا یک سال دیگه هم ازش آپدیت امنیتی رایگان گرفت.
باید تو ویندوز ۱۰ با اکانت مایکروسافت لاگین کنی و تنظیماتِ PC رو با OneDrive از طریق Windows Backup سینک کنی.
بعد تو بخش آپدیت Enroll now رو بزنی.

@DevTwitter | <Soroush Ahmadi/>
👎52🔥7👍41
دوستان اگر دنبال یادگیری شبکه هستید یه سر به ریپوی آزشبکه من بزنید. تمرین های جالبی داره توش.

https://github.com/mm3906078/Networking-101

@DevTwitter | <mr.salehi/>
232👍8👎3🔥1
ابزار باحالی پیدا کردم، امکان اینو میده که بشه از دستورات اسکرین‌شات گرفت توی یک قالب خاص.

https://github.com/homeport/termshot

@DevTwitter | <Sohrab Behdani/>
16👍6👎2🔥1
یک هشدار به همه کسانی که مصاحبه شغلی دارند که کد review هم دارد!
نویسنده از تجربه‌ای را بازگو می کند که با ایجاد فشار روانی بر وی، او را متقاعد کرده بودن که کدهای آلوده nodejs را روی سیستم برای review اجرا کند که در آخرین لحظه شک کرده و ماجرا کشف می شود.

https://blog.daviddodda.com/how-i-almost-got-hacked-by-a-job-interview

@DevTwitter | <VAHID NAMENI/>
24🔥3👍2👎1
یه مخزن جذاب تو گیت‌هاب هست که بهت یاد می‌ده چطور فقط با CSS بدون نیاز به جاوااسکریپت، کلی کار خفن مثل انیمیشن و منو درست کنی!

برای کسایی که دنبال سایت‌های سبک و سریع هستن عالیه.

اگر دوست داری کدهات ساده‌تر و بهینه‌تر باشن، حتما یه سر بهش بزن!

لینکش

https://github.com/you-dont-need/You-Dont-Need-JavaScript

@DevTwitter | <Farhad Safari/>
43👍7🔥5👎3
پشماتون بریزه

دقتِ خیلی زیاد نکنید به فنا می‌رید.

rnicrosoft[.]com

@DevTwitter
🔥148👍183
یه سایتی هست به اسم «موزه طراحی وب» که نسخه‌های قدیمی وب‌سایت‌ها و اپ‌های معروف رو جمع کرده.
این‌ها اولین نسخه‌های Windows 98 و توییتر هستند.
نوستالژی خالص

https://webdesignmuseum.org

@DevTwitter | <Mohammad/>
🔥356👍3
تجربهٔ شگفت‌انگیز و مفید یک میلیون نود کوبرنیتیز:

https://github.com/bchess/k8s-1m

@DevTwitter | <Amiria/>
🔥26👎1
این‌ها یه سری Ruleهای خیلی ساده است که من استفاده می کنم موقعی که می خوام با AI کد برای Rust تولید کنم.

حتما به این روش GitHub Spec-Kit یه نگاهی بیاندازید.

https://github.com/github/spec-kit

@DevTwitter | <Von Datawarehausen/>
🔥215👍4
مصاحبه 2 ساعت و نیمه با Andrej Karpathy درباره LLM ها و اینکه دست کم یک دهه تا رسیدن به AGI فاصله داریم و حتی اگر هم به آن برسیم به معنی خدایی درون یک جعبه نیست!

این ابزارهای LLM محتوای بی خاصیت زیاد تولید میکنند و بخش زیادی از ادعاها مارکتینگ بیش نیست!

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

@DevTwitter | <Max Shahdoost />
👍3911🔥2👎1
#کدبوک

راهنمایی کاربردی برای پیاده‌سازی یادگیری ماشین با قدرت و ایمنی Rust:

- آموزش ساخت مدل‌های ML از پایه تا پیشرفته با Rust
- کار با کتابخانه‌هایی مثل ndarray، linfa و smartcore
- پیاده‌سازی الگوریتم‌های طبقه‌بندی، خوشه‌بندی و رگرسیون
- ترکیب عملکرد بالا با مدیریت حافظه ایمن برای پروژه‌های داده‌محور


* فایل PDF این کتاب رو میتونید از کانال DevBooks که لینکش توی بیو هست دانلود کنید.

@DevTwitter
👍102👎2🔥1
یه ابزار باحال برای به اشتراک گذاری صفحه‌نمایش که با go مخصوص developerها نوشته شده
- کیفیت بالا و تاخیر کم
- می‌تونیم روی سرور خودمون بالا بیاریم
- نصب ساده با داکر
-امنیت بالا اگر براتون مهم باشه

https://github.com/screego/server

@DevTwitter | <Milad Niroee/>
115👎2👍1🔥1
#کوته_نیوز

ماکروسافت تو آپدیت اخیر ویندوز 11 ریده به localhost روی HTTP/2.

یعنی IIS و اینا به فنا رفته.

منبع: نداریم

@DevTwitter
👍443🔥2
چالش جاوااسکریپت: this واقعاً به چه چیزی اشاره می‌کند؟
اگر بتوانید با اطمینان توضیح دهید که چگونه this در شرایط زیر عمل می‌کند، شما دارای دانش فنی خوبی از جاوااسکریپت هستید:
1-تابع معمولی (Function): this به شیء Global اشاره می‌کند
2-متد (Method): this به همان شیء اشاره می‌کند
3-توابع Arrow (=>): آن‌ها this خاص خود را ندارند؛ بلکه آن را از محیط بیرونی (Lexical Scope) به ارث می‌برند.
چرا closure ها شکت میخورند و چطوری this رو در داخل closure ها درست کنیم ؟
چالش واقعی زمانی است که شما از یک تابع معمولی به عنوان Callback یا Closure داخل یک متد استفاده می‌کنید، مانند این مثال:
همانطور که مشاهده میکنید هنگامی که تابع معمولی درونی رو وقتی به صورت arrow function بازنویسی میکنیم this به جای اشاره به حالت global به درستی به صورت Lexical به usercorrected اشاره میکند.

@DevTwitter | <Mojtaba Vahedi/>
👍3011👎2🔥1
راهنمای امن کردن سرور لینوکسی

https://github.com/imthenachoman/How-To-Secure-A-Linux-Server/

@DevTwitter | <Mohammad/>
👍18🔥1
#دراز_نیوز

بیش از ١۴ هزار وب‌سایت وردپرسی هک شدند و بدافزار منتشر کردند

وردپرس یکی از محبوب‌ترین سیستم‌های مدیریت محتوا در اینترنت است و بیش از ۴٣ درصد از تمام وب‌سایت‌ها بر پایه وردپرس اجرا می‌شوند. همین موضوع باعث شده تا حملات سایبری به آن بسیار نگران‌کننده باشند و حالا گزارشی درباره هک‌شدن بیش از ١۴ هزار وب‌سایت وردپرسی منتشر شده که در آن هکرها از تکنیک جدیدی استفاده کرده‌اند.

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

وب‌سایت‌های هدف، با نوعی دانلودر جاوااسکریپتی چندمرحله‌ای به نام CLEARSHORT آلوده شده‌اند که وظیفه توزیع بدافزار را برعهده داشته است. سپس این گروه از تکنیک جدیدی به نام EtherHiding استفاده کرده که توسط CLEARSHORT فعال می‌شود.

@DevTwitter | <Digiato/>
👍3212🔥1
یک صفحه خیلی کاربردی از سایت GeeksforGeeks که لیستی از پروژه‌های قابل اجرا در یادگیری ماشین رو دسته‌بندی کرده — از سطح ساده تا حرفه‌ای.

ویژگی خوبش اینه که برای پروژه‌ها توضیحات و کد کامل و دیتاست رو هم قرار داده.

اگه دنبال شروع پروژه‌های واقعی هستید و نمی‌خواید وقتتون رو صرف گشتن بین ایده‌های پراکنده کنید، این منبع می‌تونه نقطه شروع خیلی خوبی باشه.
https://www.geeksforgeeks.org/machine-learning/machine-learning-projects/

@DevTwitter | <Amirreza M./>
👍237