Dev Perfects – Telegram
Dev Perfects
41 subscribers
9.23K photos
1.26K videos
468 files
13K links
بخوام خیلی خلاصه بگم
این کانال میاد مطالب کانالای خفن تو حوزه تکنولوژی و برنامه نویسی رو جمع میکنه

پست پین رو بخونید
https://news.1rj.ru/str/dev_perfects/455


ارتباط:
https://news.1rj.ru/str/HidenChat_Bot?start=936082426
Download Telegram
Forwarded from Gopher Academy
🔵 عنوان مقاله
A look into how JavaScript source maps work

🟢 خلاصه مقاله:
خلاصه‌ای از ساخت‌وکار source map در JavaScript: کدی که در مرورگر اجرا می‌شود معمولاً پس از transpile، bundle و minify با کد اصلی تفاوت دارد. source map پلی است میان این دو تا بتوانید در DevTools مثل کد اصلی breakpoint بگذارید و خطاها را بخوانید. یک source map فایل JSONی است با فیلدهایی مثل version، file، sources، names، sourcesContent و یک رشته mappings که با Base64 VLQ فشرده شده و با بخش‌های دلتایی موقعیت‌های کد تولید‌شده را به سطر/ستون‌های فایل‌های اصلی (و در صورت وجود، نام‌ها) نگاشت می‌کند. ابزارهایی مثل TypeScript و Babel نگاشت را هنگام تبدیل می‌سازند، Webpack/Rollup/esbuild آن‌ها را ترکیب می‌کنند و Terser در مرحله minify این زنجیره را حفظ می‌کند؛ این همان chain شدن source map است. مرورگر از طریق دستور sourceMappingURL (فایل خارجی یا data URI) map را می‌خواند و با رعایت CORS آن را decode کرده و در DevTools نمایش و دیباگ را بر اساس کد اصلی ممکن می‌سازد؛ همچنین پلتفرم‌هایی مثل Sentry با دریافت map می‌توانند stack traceهای production را de-minify کنند. در عمل، به خاطر اندازه و حریم خصوصی، بهتر است در production از الگوهایی چون hidden-source-map یا nosources-source-map، میزبانی امن، و فشرده‌سازی/کش استفاده کنید. محدودیت‌ها شامل دقت ستونی ناقص در برخی تبدیل‌ها، کدهای dynamic/eval، ناسازگاری مسیرها و سوگیری‌های نگاشت است. بهترین رویه‌ها: فعال‌سازی map در تمام مراحل build، اعتبارسنجی در DevTools، اطمینان از CORS مناسب برای ابزار خطا، کنترل نسخه ابزارها و آزمون remap شدن خطاها در CI.

#JavaScript #SourceMaps #WebDev #Debugging #DevTools #Bundlers #Performance

🟣لینک مقاله:
https://golangweekly.com/link/176649/web


👑 @gopher_academy
Forwarded from Linuxor ?
یکی از تلخ ترین اتفاقاتی که برای برنامه نویس ممکنه بیفته اینه که زبان، فریم ورک و یا حتی معماری اشتباهی برای اپلیکیشن در نظر بگیره و کلی کد بزنه و بعدش مجبور باشه همچی رو از اول بنویسه.

اون موقع دیگه گند زدید، کاریش هم نمی‌شه کرد ولی برای اینکه خودتون آروم بشید بگید این که MVP بود😂


@Linuxor
یک رپو دیگه برای علاقه مندان به تجربه امنیت و باگبانتی و Ai ابزار جذاب HackGPT Enterprise یه ابزار حرفه‌ای و پیشرفته برای تست نفوذه که با هوش مصنوعی و یادگیری ماشین کار می‌کنه
با HackGPT می‌تونید آسیب‌پذیری‌های سیستم‌ها رو پیدا کنید، گزارش‌های کامل و دقیق بگیرید و حتی از چارچوب‌های امنیتی مثل OWASP، NIST و ISO27001 پیروی کنید.

این ابزار با معماری میکروسرویس‌ها و پشتیبانی از Docker و Kubernetes، مقیاس‌پذیری بالایی داره و می‌تونید روی ابرهای مختلف مثل AWS، Azure و GCP استقرارش بدید.

https://github.com/yashab-cyber/HackGpt/

@DevTwitter | <POURYA/>
Forwarded from Go Casts 🚀
کتاب Understanding Distributed Systems
نکاتی که هر developerی در مورد distributed applicationها باید بدونه


چرا همه درباره Distributed Systems حرف می‌زنن؟ 🤔

وقتی اولین بار با سیستم‌های توزیع‌شده آشنا شدم، فکر می‌کردم فقط برای شرکت‌های بزرگ مثل Google و Amazon کاربرد داره. اما حقیقت اینه که امروز تقریباً هر اپلیکیشنی که ازش استفاده می‌کنیم، یه سیستم توزیع‌شده‌س - از Instagram گرفته تا دیجی‌کالا.

سیستم‌های توزیع‌شده چهار مشکل اساسی رو حل می‌کنن:
1️⃣ وقتی ترافیک بیشتر از ظرفیت یه سرور میشه (Scalability)
2️⃣ وقتی نمی‌خوایم با down شدن یه سرور، کل سیستم از کار بیفته (Resiliency)
3️⃣ وقتی کاربرا از سراسر دنیا دارن به سیستم request می‌زنن (Performance)
4️⃣ وقتی می‌خوایم سیستم رو راحت maintain و توسعه بدیم (Maintainability)

اما این قدرت با چالش‌هایی همراهه: نودها باید با هم communicate کنن، باید coordinate بشن، و باید در برابر failure مقاوم باشن. Leslie Lamport یه جمله معروف داره که می‌گه: "سیستم توزیع‌شده جاییه که failure یه کامپیوتری که حتی نمی‌دونستی وجود داره، می‌تونه سیستم تو رو خراب کنه."
اگه دارید روی backend کار می‌کنید یا قراره شروع کنید، درک این مفاهیم دیگه optional نیست - الزامیه. چون دیگه داریم همه چیز رو distributed می‌سازیم.


نکاتی از فصل اول کتاب Understanding Distributed Systems

با تشکر از جناب Roberto Vitillo برای این کتاب درجه یک!


#understanding_distributed_systems
#roberto_vitillo

@gocasts
Forwarded from Gopher Academy
🔵 عنوان مقاله
Livecore: A Low-Pause Core File Dumper for Linux Processes

🟢 خلاصه مقاله:
این مقاله Livecore را معرفی می‌کند؛ ابزاری برای گرفتن core file از فرایندهای در حال اجرای Linux با وقفه بسیار کم. این ابزار که در یک جلسه «vibe coding» توسط Brad Fitzpatrick (عضو پیشین تیم Go) ساخته شده، امکان ساخت آنی و کم‌اختلال snapshot از حافظه و وضعیت اجرای فرایند را فراهم می‌کند تا بدون متوقف کردن سرویس، داده‌های لازم برای عیب‌یابی به‌دست آید. به‌جای تکیه بر crash یا توقف کامل فرایند، Livecore با بهره‌گیری از goref و قابلیت‌های Linux تلاش می‌کند تصویری دقیق و با سربار اندک تهیه کند و برای بررسی با ابزارهای post-mortem به کار رود. نتیجه، ابزاری عملی برای تیم‌های توسعه و SRE است که به observability کم‌اختلال—به‌ویژه در سرویس‌های Go روی Linux—نیاز دارند.

#Livecore #Linux #CoreDump #Debugging #Go #Observability #BradFitzpatrick #goref

🟣لینک مقاله:
https://golangweekly.com/link/176630/web


👑 @gopher_academy
This media is not supported in your browser
VIEW IN TELEGRAM
اگه دنبال یه آلترنیتیو برای Claude Code می گردید که اکثر Providerهارو ساپورت کنه بهتون Crush رو پیشنهاد می دم!

با go نوشته شده و من خیلی تجربه خوبی داشتم وقتی توی دو سه روز گذشته!

https://github.com/charmbracelet/crush

@DevTwitter | <Von Datawarehausen/>
Forwarded from Reza Jafari
سوالی که بارها و بارها مطرح شده، اینه که:
«چه لپ‌تاپی برای کار با یادگیری ماشین مناسبه؟»

دوستان، اگه تو حوزه‌ی یادگیری ماشین (Machine Learning) یا علم داده (Data Science) فعالیت می‌کنین، لازم نیست از همون اول سراغ لپ‌تاپ‌های خیلی گرون و قدرتمند برین. واقعیت اینه که بخش بزرگی از کار ما—از تحلیل داده گرفته تا آموزش مدل‌ها—به‌راحتی می‌تونه روی فضای ابری (Cloud) انجام بشه.

یعنی به‌جای این‌که کلی هزینه کنین برای لپ‌تاپی با کارت گرافیک RTX و رم ۳۲ گیگ، می‌تونین یه لپ‌تاپ سبک، قابل‌اعتماد و خوش‌ساخت بگیرین و محاسبات سنگین‌تون رو بسپُرین به سرورهای ابری.
(در ضمن، اگه در آینده در شرکتی مشغول به کار بشین، معمولاً خودشون زیرساخت لازم رو در اختیارتون می‌ذارن، پس نگران هزینه‌ی Cloud نباشین.)

به‌جاش بهتره دنبال لپ‌تاپی باشیم که مشخصاتش متعادل و کارآمد باشه:

پردازنده‌ی خوب (حداقل Intel i7 یا Ryzen 7)

رم ۱۶ گیگابایت

و یه SSD سریع

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

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

جمع‌بندی:
به‌جای خرید لپ‌تاپ سنگین و گرون، یه دستگاه متعادل بگیرین و قدرت محاسباتی مورد نیازتون رو از Cloud بگیرین. این‌طوری هم جیبتون در امانه، هم کارتون حرفه‌ای‌تر پیش می‌ره، و هم ذهنتون از دغدغه‌ی “کدوم GPU بهتره؟” راحت می‌شه.

@reza_jafari_ai
Forwarded from Linuxor ?
اگه اهل یادگیری عمیق و هوش مصنوعی‌ای،NVIDIA یه مخزن داره برای دیپ لرنینگ. توش کلی مدل آماده از پروژه‌های خفن مثل بینایی کامپیوتری، پردازش زبان، و سیستم‌های توصیه‌گر هست که با GPUهای انویدیا بهینه شدن، اینارو دیگه خود NVIDIA نوشته و بهینه تر ازش فکر نکنم بتونید پیدا کنید

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

github.com/NVIDIA/DeepLearningExamples


@Linuxor
Forwarded from Linuxor ?
گوگل امروز یه چیزی معرفی کرده به اسم Agent Sandbox برای اجرا و کنترل امن هوش مصنوعی‌های عاملی (اونایی که خودشون تصمیم می‌گیرن، کد می‌زنن و کار انجام می‌دن) روی Kubernetes و GKE. ایده‌ش اینه که هر عامل توی یه محیط جدا و موقتی اجرا بشه تا اگه خطا کرد یا خرابکاری کرد، به بقیه سیستم آسیب نزنه. با این کار می‌شه عامل‌هایی داشت که آزادن کار کنن، ولی همچنان تو چارچوب امن.

cloud.google.com/blog/products/containers-kubernetes/agentic-ai-on-kubernetes-and-gke


@Linuxor
Forwarded from Gopher Academy
🔵 عنوان مقاله
Claude Code Can Debug Low-Level Cryptography

🟢 خلاصه مقاله:
** فیلیپو که به‌خاطر کارهای مداومش روی رمزنگاری در Go شناخته می‌شود، به‌تازگی پیاده‌سازی‌ای از الگوریتم امضای پساکوانتومی ML-DSA ساخته است. او هنگام توسعه با باگی روبه‌رو شد که در سطح پایین رخ می‌داد و با روش‌های معمول به‌سادگی آشکار نمی‌شد.

او از Claude Code کمک گرفت و این ابزار توانست همان «باگ سطح پایینِ نسبتاً پیچیده» را شناسایی کند و علت ریشه‌ای مشکل را روشن سازد. این تجربه نشان می‌دهد که دستیارهای کدنویسی مبتنی بر هوش مصنوعی می‌توانند در پروژه‌های حساسِ رمزنگاری نیز به کشف سریع‌تر خطاها کمک کنند—البته همچنان نیاز به آزمون‌های قابل بازتولید، اعتبارسنجی سخت‌گیرانه و بازبینی انسانی باقی است.

#Cryptography #PostQuantum #MLDSA #Go #Debugging #AI #CodeAssistants #ClaudeCode

🟣لینک مقاله:
https://golangweekly.com/link/176658/web


👑 @gopher_academy
یک سایت پیدا کردم از این طراحی های قشنگ قشنگ میشه درست کرد.

https://excalidraw.com

@DevTwitter | <Reza Ghasemi/>
Forwarded from محتوای آزاد سهراب (Sohrab)
بیلد موفق از پارچ دبیان ادیشن.
صرفاً باید تست بشه.
فقط و فقط روی UEFI اجرا میشه که باید برطرف بشه.

@SohrabContents
Forwarded from Linuxor ?
خبر خوب برای ایرانی ها، تلگرام مجددا درآمد ایرانی هارو از تبلیغات توی کانال ها فعال کرده

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

درآمد تلگرام به ازای هر هزار بازدید حدودا 1$ برای کانال داران است.


@Linuxor
امکان سرویس‌دهی در سطوح مختلف به کمک Feature Flagها

هر محصول در کنار خدمت‌رسانی اصلیش، کلی قابلیت و فیچر جانبی داره که باعث می‌شن تجربهٔ کاربر بهتر بشه و یا درآمدش بالاتر بره.
مثلاً توی یه فروشگاه مثل دیجیکالا، علاوه بر مسیر اصلی تجربهٔ کاربر، یعنی جستجو، مشاهدهٔ محصول، اضافه کردن به سبد خرید، پرداخت و ثبت سفارش، ده‌ها قابلیت دیگه هم وجود داره:
لایو اینفلونسرها، سیستم recommendation، تبلیغات فروشنده‌ها، ثبت‌نام و احراز هویت کاربرهای جدید، و موارد مشابه.

همهٔ این‌ها برای کسب‌وکار مهمن، اما وقتی شرایط نرمال نباشه و فشار زیادی روی سرورها بیاد، اهمیتشون با هم برابر نیست.
مثلاً سیستم recommendation به اندازهٔ فرآیند ثبت سفارش حیاتی نیست.

بنابراین باید مکانیزمی داشته باشیم که بتونیم در مواقع ضروری بعضی قابلیت‌ها رو موقتاً غیرفعال کنیم.
یکی از راه‌حل‌ها استفاده از Feature Flagهاست؛ ابزاری که در زمان کوتاه و با تغییراتی اندک، امکان حذف بخش‌هایی از محصول رو از مسیر درخواست کاربر فراهم می‌کنه.

@aminrbg
تو دات نت 10 قراره این امکان فراهم بشه که فایل csproj رو نداشته باشیم !

مایکروسافت حسابی تو این ورژن های اخیر داره دست و پا میزنه به فرم زبان های مدرن تر برسونه سی شارپ رو و این آپدیت حسابی چشمو گرفت
احتمالا اوایل نوامبر منتشر شه و LTS خواهد بود


https://www.youtube.com/watch?si=gZLfBcsHQiya8U3A&v=j4tLg4bMZK4&feature=youtu.be
این ویدئو کامل این قضیه رو پوشش میده، حقیقتش از شیوه ایمپورت کردن پکیج ها زیاد خوشم نیومد و اینکه از این به بعد فلو کار و پیاده سازی یه سری چیزا چجوری میشه همچنان برام سواله
ولی خب !

@DevTwitter | <Taqi/>
This media is not supported in your browser
VIEW IN TELEGRAM
فقط با یک پرامپت هر لیندینگ پیج یا سایت استایتیکی که دوست داری سریع و رایگان برای خودت بساز!

یکی از کاربردی ترین ابزار هایی که میتونید استفاده کنید DeepSite است ، در ویدئو من یک پرامپت ساده بهش دادم و نتیجه رو میتونید ببینید!

https://huggingface.co/deepsite

@DevTwitter | <POURYA/>
Forwarded from یه شعر (Poem Bot)
مولانا | دیوان شمس | رباعیات | رباعی شمارهٔ ۲۱۶

این نعره عاشقان ز شمع طرب است
شمع آمد و پروانه خموش این عجب است
اینک شمعی که برتر از روز و شب است
بشتاب تو جان که شمع دل جان طلب است

#مولانا | گنجور
📍@iipoem
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
⚡️ فعال‌سازی TRIM با fstrim.timer
اما TRIM چیست؟
وقتی فایل‌ها روی SSD حذف می‌شوند، داده‌ها فیزیکی روی NAND SSD پاک نمی‌شوند بلکه فقط به سیستم فایل اعلام می‌شود که فضا آزاد است.
در اینجا SSD برای نوشتن مجدد نیاز دارد ابتدا آن سلول‌ها را پاک کند. اگر این پاک‌سازی انجام نشود، نوشتن جدید کندتر می‌شود.
و TRIM به SSD اطلاع می‌دهد کدام بلاک‌ها دیگر استفاده نمی‌شوند تا قبل از نوشتن جدید پاک‌سازی انجام شود.

2️⃣ دستور فعال‌سازی
sudo systemctl enable fstrim.timer
sudo systemctl start fstrim.timer

این سرویس هفتگی به‌طور خودکار TRIM را روی همه پارتیشن‌های SSD انجام می‌دهد.
بدون این timer، TRIM فقط در صورت اجرای دستی sudo fstrim / انجام می‌شود.

3️⃣ تأثیر بر عملکرد
نوشتن فایل‌های جدید سریع‌تر می‌شود (به‌خصوص در SSDهای قدیمی یا پر).
طول عمر SSD افزایش می‌یابد، چون پاک‌سازی مداوم بلوک‌ها باعث کمتر شدن چرخه‌های write/erase می‌شود.

تاثیر در خواندن معمولاً کمتر محسوس است، اما نوشتن heavy I/O خیلی سریع‌تر خواهد بود.