کدهالیک | codehalic
Ir al canal en Telegram
دوره های آموزشیمون رو از داخل سایت ببینید https://codehalic.ir
Mostrar más3 977
Suscriptores
-4224 horas
-1027 días
-11630 días
Archivo de publicaciones
3 977
این گزارش ۱۵ اکتبر منتشر شده و امروز که ۱۸ اکتبره داشتم به یه چیز تلخ فکر میکردم...
یادم میاد اواخر دهه ۸۰، دقیقاً تو بحبوحه ورود شبکه 3G به ایران و داستان رایتل و ممنوع اعلام شدن تماس تصویری، یه مقاله خیلی باحال توی یکی از نشریههای معروف تکنولوژی اون موقع (مثل کلیک جامجم و عصر ارتباط) خوندم با این مضمون که: «دنیا ذوقزده از 4G، ما همچنان در حسرت 3G!»
الان تقریباً ۱۵ سال از اون روزها میگذره و انگار فقط اسم تکنولوژیها عوض شده. این پست رو که مینوشتم دوباره همون حس سراغم اومد؛ اینکه کلود و آنتروپیک و تسلا و شرکتهای آمریکایی الان درگیر چه چالشهایی هستن و ما اینجا هر روز درگیر چیایم! واقعاً این دنیا به ما یه زندگیِ نرمال و اینمدلی بدهکاره...
@codehalics | کدهالیک
3 977
بازم یه مقاله خفن از تیم آنتروپیک درباره کد ریویو که سوال اساسی این روزهای کساییه که دارن با AI کار میکنن!
ادی اوسمانی (Addy Osmani) که خیلیهامون با کتابهاش و سالها مدیریتش توی تیم کروم گوگل میشناسیمش، به همراه دو تا از مهندسهای ارشد Anthropic یه گزارش خیلی خفن دادن بیرون درباره اینکه چطوری کدهای پروژه Claude Code رو ریویو میکنن.
داستان از این قراره که الان ۹۰ درصد کدهای خودِ این ابزار رو ایجنتها مینویسن و تعداد تغییرات روزانه توی مونوریپوی شرکت از ۲۵۰۰ تا رسیده به بالای ۳۰ هزار تا در روز! توی این مقیاس، دیگه اینکه یه آدم بشینه خط به خط کدها رو بخونه عملاً غیرممکنه. برای همین، اومدن خوندن کدها رو کامل سپردن به خودِ ماشینها و نتیجهش هم عجیب بوده: تعداد PRهای مرج شده ۲ برابر شده، ولی کدهایی که به خاطر باگ مجبور به ریورت کردنشون شدن ۴۰ درصد کمتر شده.
مکانیزم کارشون اینجوریه که قبل از اینکه اصلاً PR باز بشه، خود کلود تستها و بیلد رو اجرا میکنه و یه سابایجنت دیگه با کانتکست کاملاً جدید کد رو چک میکنه. وقتی هم که PR باز میشه، چندتا ایجنت به صورت موازی و بر اساس قوانین فایلهای CLAUDE.md و REVIEW.md دنبال باگ و مشکلات امنیتی میگردن و بعد یه گروه دیگه از ایجنتها به این یافتهها رأی میدن تا گیرهای الکی و سلیقهای فیلتر بشه و فقط باگهای واقعی بمونه.
یه سوتی جالب هم که اولش داده بودن این بود که یه بار ایجنتِ نویسنده و ایجنتِ ریویوکننده افتاده بودن تو لوپ و تا صبح ۵۰ بار کد رو پاسکاری و ادیت کرده بودن! الان برای اینکه این اتفاق نیفته، سقف ۳ دور ریویو گذاشتن و هر باگی هم که از زیر دست سیستم در بره و باعث خرابی بشه رو مستقیم میکنن تست روزانه (Eval) تا ریویوکننده هر روز روی باگهای واقعی قبلی تست بشه و باهوشتر بشه.
بعد از این مرحله، یه سیستم هوشمند بر اساس سطح ریسکِ کد تصمیم میگیره که تغییرات کمریسک بدون نیاز به تایید انسان مرج بشن و بخشهای حساس مثل پرداخت و CI حتماً تایید ۱ تا ۲ نفر از بچههای تیم رو بگیرن. یه نکته خیلی باحال دیگه هم اینه که قبلاً برنامهنویسها PR بقیه رو میخوندن تا کدبیس رو یاد بگیرن، ولی الان هیچکس کل کد رو تو ذهنش نداره و هر وقت بخوان دست به بخشی از پروژه بزنن، به خود کلود میگن همون تیکه رو در لحظه براشون توضیح بده و تصویرسازی کنه.
کل این مقاله داره یه پیام واضح میده: کار ما برنامهنویسها دیگه چک کردن سینتکس و خوندن خطبهخط کدها نیست؛ کار اصلی الان طراحی معماری، تعیین جهت محصول و قبول کردن مسئولیت نهایی کدیه که میره روی پروداکشن.
https://claude.dev/blog/solving-code-review-at-anthropic/
@codehalics | کدهالیک
3 977
یکی از دوستامون رفته گواهی اون دورهای رو گرفته که وسط قطعی اینترنت درستش کرده بودم؛ همونی که توش یاد میدادم چطوری بدون اینترنت بینالملل برنامهنویسی کنین.
هرچی فکر میکنم این مدرک رو فقط میخواد بذاره تو پرونده ارائه بده به سفارت برای پناهندگی. وگرنه هیچ دلیل دیگهای به ذهنم نمیرسه که کسی بخواد گواهی همچین دورهای رو از کدهالیک بگیره!
@codehalics | کدهالیک
3 977
Repost from کار باشه !
💻 همکاری با کدهالیک | جذب مدرس برنامهنویسی
ما توی «کدهالیک» قصد داریم تیم آموزشیمون رو بزرگتر کنیم. برای همین دنبال برنامهنویسهای باتجربهای میگردیم که علاوه بر کار فنی، به آموزش دادن هم علاقه دارن و قبلاً سابقه تدریس داشتن.
اگر توی یکی از حوزههای زیر تخصص داری و میتونی مفاهیم رو روان و کاربردی به بقیه منتقل کنی، خوشحال میشیم در کنارت باشیم:
🔹 فرانتاند:
HTML/CSS - JavaScript - TypeScript - React - Next.js - Vue
🔹 بکاند:
Python (Django / FastAPI) - Node.js - PHP (Laravel) - C# (.NET) - Golang
🔹 موبایل:
Flutter - React Native - Kotlin - Swift
🔹 هوش مصنوعی و دیتا:
Machine Learning - Data Science - LLMs
🔹 دواپس و امنیت:
Docker - Linux - CI/CD - Cyber Security
🔹 مبانی و مهندسی نرمافزار:
الگوریتم و ساختمان داده، گیت (Git) و طراحی سیستم (System Design)
➖➖➖➖➖➖➖➖➖➖
📌 شرایط همکاری با ما:
• داشتن سابقه تدریس (آنلاین، حضوری، بوتکمپ یا ضبط دوره)
• تسلط فنی و تجربه کار روی پروژههای واقعی بازار کار
• فن بیان خوب و توانایی توضیح دادن مفاهیم به زبان ساده
• خوشقولی و تعهد کاری
🤝 ما چطوری کار میکنیم؟
توی کدهالیک تمام کارهای مربوط به مارکتینگ، پشتیبانی و زیرساخت با تیم ماست تا مدرس بتونه با خیال راحت فقط روی کیفیت آموزش تمرکز کنه. شرایط مالی و تسویهحساب هم کاملاً شفاف، منظم و منصفانهست.
➖➖➖➖➖➖➖➖➖➖
📩 ارسال رزومه:
اگر مایل به همکاری هستی، رزومهت رو به همراه یک نمونه کوتاه از تدریس قبلیت (ویدیو یا لینک) و حوزهای که تدریس میکنی به آیدی زیر بفرست تا با هم صحبت کنیم:
👉 @codehalic_support
🔗 https://t.me/codehalic_support
#backend #frontend #fullstack #ai #dba
➖➖➖➖➖➖➖➖➖➖
💬 @job_bashe | گروه کار باشه با دسته بندی شغلی
📢 @karbashe_ir | کانال کار باشه
3 977
یه جوری از وایبکد شدن tsc-ts تعجب میکنن انگار یادشون رفته همین چند وقت پیش کل PS5 رو با اون عظمتش توی پروژه AnyPS5 وایبکد کردن که مستقیم روی PC اجرا بشه! پورت کردن یه کامپایلر با AI که دیگه اینقدر تعجب نداره.
@codehalics | کدهالیک
3 977
تیم Vercel Labs تو یه حرکت آزمایشی و عجیب به اسم tsc-ts، اومده کامپایلر جدید تایپاسکریپت ۷ رو که مایکروسافت تازه برای بالا بردن سرعت با زبان Go بازنویسی کرده بود (tsgo)، دوباره به خود زبان تایپاسکریپت برگردونده و با ابزاری به اسم scriptc مستقیم به کد نیتیو تبدیلش کرده! با اینکه تستهای اولیه نشون میده این نسخه حتی ۲ تا ۳ برابر سریعتر از نسخه Go مایکروسافته، اما واکنش برنامهنویسا بهش خیلی ضد و نقیض بوده؛ خیلیا میپرسن چرا اصلاً باید کد Go رو دوباره به تایپاسکریپت ترجمه کرد به جای اینکه همون کدای قدیمی تایپاسکریپت ۶ رو کامپایل کنن، و از طرفی هم حدس میزنن این پروژه صرفاً یه پورت ماشینی با هوش مصنوعی (Vibe-coding) باشه. در نتیجه، tsc-ts فعلاً بیشتر شبیه یه قدرتنمایی فنی و تبلیغاتی برای ابزار scriptc است تا یه جایگزین واقعی، و نشون میده که توی دنیای امروز با کمک هوش مصنوعی و کامپایلرهای نیتیو، مرز بین زبانهای برنامهنویسی چقدر جابهجا شده، هرچند هنوز برای اعتماد به این پروژهها توی محیط واقعی زوده.
https://github.com/vercel-labs/tsc-ts
@codehalics | کدهالیک
3 977
+1
بچهها سرتیفیکیت دورههای کدهالیک بالاخره فعال شد و از همین الان میتونید برای دورههایی که کامل ضبط شدن (چه رایگان و چه پولی) گواهی پایان دوره بگیرید و با یه کلیک مستقیم به پروفایل لینکدینتون اضافهش کنید؛ فقط حواستون باشه دورههایی که هنوز در حال ضبط هستن فعلا گواهی ندارن. برای گرفتن گواهی دورههای رایگان، باید حداقل نصف هر ویدیو رو توی سایت دیده باشید و به اندازه نصف زمان کل دوره هم از ثبتنامتون گذشته باشه، و برای دورههای پولی هم چون ویدیوها توی اسپاتپلیره، فقط لازمه به اندازه کل تایم دوره از تاریخ ثبتنامتون گذشته باشه که اگه زودتر درخواست بدید خود سایت بهتون میگه چقدر دیگه باید صبر کنید. هر گواهی یه لینک اختصاصی برای استعلام و فایل PDF داره، فقط موقع درخواست اسمتون رو با دقت وارد و تایید کنید چون بعد از صدور، اسم قفل میشه و دیگه خودتون نمیتونید تغییرش بدید.
@codehalics | کدهالیک
3 977
توی این مقاله که به تازگی خوندم نویسنده به این موضوع پرداخته که چرا اکثر برنامهنویسها توی خوندن کد ضعیفن و چطور میشه این مهارت رو، بهخصوص تو دوران هوش مصنوعی، بهتر کرد. اون میگه برخلاف متنهای معمولی که خطی و برای انسان نوشته میشن، کد برای اجرا توسط کامپیوتر چیده شده، معمولا به شکل diff خونده میشه و وابستگیهاش توی کل codebase پخش شدن، برای همین خوندن خطبهخط کد از بالا به پایین باعث میشه جریان اصلی برنامه رو گم کنیم. راهحل پیشنهادی اون تکنیک dyadic scanning عه، یعنی به جای خوندن ترتیبی، چند دور کد رو به شکل غیرخطی مرور کنیم؛ اول یه مسیر اصلی مثل happy path رو بگیریم و فقط ببینیم کدوم تابع داره کدوم تابع رو صدا میزنه و بقیه چیزها رو مثل یه black box در نظر بگیریم، بعد توی دورهای بعدی بریم سراغ جزئیات و call-siteهای مختلف (حتی بیرون از خود diff) و در نهایت وقتی ساختار کلی دستمون اومد، یه بار کل diff رو از اول تا آخر بخونیم تا نکات عجیب رو شکار کنیم. اون همچنین تاکید میکنه که با وجود پیشرفت LLMها، هنوز نمیشه خوندن کد و code review رو کامل به هوش مصنوعی سپرد، چون مشکل کدهای تولیدشده با AI معمولا باگ نیست بلکه مسئله alignment و تفاوت در ارزشهای فنیه؛ مثلا یه ایجنت ممکنه برای حل یه race condition بیخطر که از قصد نادیده گرفته شده بوده، یه diff سههزار خطی و بیش از حد پیچیده تولید کنه که فقط یه مهندس با خوندن دقیق کد میتونه جلوش رو بگیره.
https://www.seangoedecke.com/how-to-read-code
@codehalics | کدهالیک
3 977
تیم مهندسی Anthropic به خاطر اینکه ایجنتهای Claude کدنویسی رو به شدت سریع کردن و تعداد mergeهای روزانه توی monorepo اونها ظرف چند ماه بیش از ده برابر شده و به بالای ۳۰ هزار تا در روز رسیده، به این نتیجه رسیدن که git دیگه جوابگوی این مقیاس نیست و توی پنج ماه یه سیستم source control اختصاصی به اسم Scion ساختن و کامل بهش مهاجرت کردن. مشکل اصلی این بود که git برای کار آفلاین و توزیعشده طراحی شده، ولی توی Anthropic تقریبا همه کلاینتها ایجنتها و CI jobهایی هستن که همیشه آنلاینن و روزانه ۲۵ میلیون بار عملیات checkout انجام میدن که باعث میشد نگهداری صدها git mirror داخلی عملا غیرممکن بشه. برای همین، معماری Scion رو بر پایه آنلاین بودن دائمی کلاینتها، استفاده از changeset به جای packfileهای سنگین، و انجام تمام عملیات سنگین مثل commit و rebase و blame مستقیم روی سرور و ذخیره روی Spanner و blob storage چیدن تا کلاینتها فقط با sparse checkout یا از طریق API فایلهای مورد نیازشون رو بگیرن. نتیجه این شده که یه تیم هفت نفره با کمک خود مدلهای داخلی مثل Claude Mythos Preview و Claude Tag، کل این سیستم و ابزار code review جدیدشون به اسم Antique رو ساختن که مصرف منابع زیرساخت رو ۲۰۰ برابر کمتر کرده و سرعت checkoutها رو از چند دقیقه به چند ثانیه رسونده.
https://www.anthropic.com/engineering/redesigning-source-control
@codehalics | کدهالیک
3 977
تیم TanStack از یه پروژه جدید به اسم redact رونمایی کرده که در واقع یه نسخه خیلی سبکتر و سریعتر از React عه و با یه پلاگین ساده Vite، بدون اینکه نیاز باشه حتی یه خط از کدهای برنامهتون یا ایمپورتها رو عوض کنید، جایگزین React اصلی میشه. ایده اصلی redact اینه که همه APIها و رفتارهای روزمره React رو حفظ کنه، اما با حذف پیچیدگیهای زمانبندی همزمان و رفتن سراغ رندرینگ سنکرون، حجم باندل نهایی رو تا حدود ۶۶ درصد نسبت به React 19.3 کمتر کنه. طبق بنچمارکها، این جایگزینی باعث شده سرعت آپدیتهای state و رندرینگ سمت سرور به شکل چشمگیری بالا بره، هرچند به خاطر همین معماری ساده، قابلیتهایی مثل transitionها بدون وقفه اجرا میشن و بخشهایی مثل useActionState یا React DevTools عملا کار نمیکنن، ولی جالبه بدونید که همین الانش هم سایت شخصی Tanner Linsley روی پروداکشن با موفقیت روی این runtime جدید بالا اومده و داره بدون مشکل کار میکنه.
https://github.com/TanStack/redact
@codehalics | کدهالیک
3 977
یه اپ برای مدیریت clipboard توی مک. دیگه با خیال راحت چندین چیز رو میشه کپی کرد و انتخاب کنی کدومش paste بشه.
موارد مشابه از ۱۰ دلار تا ۱۰۰ دلار قیمتشونه. ممکنه ورژن متن باز هم باشه اما این نسخه رو من کاستومایز کردم.
لینک گیتهاب: https://github.com/sonatina-dream/copywren
Sonata
@codehalics | کدهالیک
3 977
به آینده خوش اومدین! شرکت تسلا از ماشینهای پرنده خودش رونمایی کرد!
تسلا رودستر، ماشینی که میتونه روی هوا پرواز کنه! با فشار گازی که به زمین وارد میکنه، از روی بقیه ماشینها میپره!
یعنی قبل از تصادف، با این حرکت میتونین از روی بقیه ماشینها بپرین! یا موقع سقوط در دره، میتونین خیلی آروم فرود بیاین!
این ماشین صفر تا صد رو در یک ثانیه پر میکنه!
@codehalics | کدهالیک
3 977
مدل DeepSeek V4.1 Flash الان روی OpenCode رایگانه
اینجا امتحانش کنید: https://opencode.ai
@codehalics | کدهالیک
3 977
سونی رسما افتاده توی بازی موش و گربه با هکرها...
بعد از انتشار جیلبریک جدید PS5، یه فروشگاه غیررسمی به اسم Overdrive روی GitHub منتشر شد که امکان دانلود مجانی بیشتر از ۱۶۰۰ تا بازی PS4 و PS5 رو به یوزرها میداد.
سونی سریع وارد عمل شد و صفحه اصلی پروژه رو از GitHub پایین کشید، اما چند ساعت بعد نسخههای کلون شده اون بالا اومدن.
حتی یکی از دولوپرها با مهندسی معکوس همون سورس، نسخه جدیدی ازش رو ارائه کرده که حالا میگن آرشیوش به ۱۸۰۰ تا بازی رسیده و مهار کردنش تقریبا غیرممکن شده.
کار به جایی رسیده که هکرها حتی تونستن بازیهای Steam رو هم روی PS5 بالا بیارن.
BehradJavad
@codehalics | کدهالیک
3 977
آدم با خودش فکر میکنه خب من پلیاستیشنم و کسی که دیگه با سیستم من کاری نداره، ولی یهو یه نفر از راه میرسه و کل معماری سیستمت رو با کمک Claude از صفر میسازه! پروژه AnyPS5 الان به جایی رسیده که ۱۰۰ درصد شیدرها رو روی PC پورت کرده و ۸۷ درصد لایبرریهای داخلی PS5 رو هم کامل پیادهسازی کرده؛ یعنی فقط ۱۳ درصد دیگه مونده تا بازیهای پلیاستیشن ۵ به صورت کاملاً نیتیو روی کامپیوترهای عادی اجرا بشن.
امیدوارم شرکتهای بسیار خفن ایرانی که هنوز برای استخدام سفته میگیرن و فکر میکنن کدهای پروژه ناموس بیزینسشونه یه کم به خودشون بیان. دوران اینکه صرفاً «کد زدن» و «پروداکت ساختن» به تنهایی ارزش رقابتی یک بیزینس باشه، توی سال ۲۰۲۶ رسماً به پایان رسیده.
https://github.com/boykopovar/AnyPS5
@codehalics | کدهالیک
3 977
ابزار جدیدی به نام FigCraft منتشر شده که در واقع یک نسخه متنباز و رایگان از فیگما است که به طور کامل با زبان Rust بازنویسی شده است. این نرمافزار بدون نیاز به ساخت اکانت، اشتراک ماهانه یا اینترنت کار میکند و تمام قابلیتهای کلیدی فیگما مثل اتولایوت، کامپوننتها، متغیرها، پروتوتایپینگ و حتی Dev Mode برای خروجی گرفتن کدهای مختلف را در خود جای داده است. علاوه بر سرعت بالا و اجرای آفلاین، امکان همکاری همزمان روی فایلها و اتصال به ایجنتهای هوش مصنوعی از طریق سرور MCP و خط فرمان نیز در آن فراهم شده و هماکنون برای سیستمعاملهای مک، ویندوز، لینوکس و وب در دسترس است.
https://getartcraft.com/apps/figcraft
@codehalics | کدهالیک
3 977
حالا باگ کجاست؟ خیلی ساده است ممکنه گول بخورن !
فرض کنید دقیقاً همون لحظهای که الگوریتم به صورت تصادفی ۲ تا ترد اضافه میکنه، GC هم شروع به کار میکنه و Throughput سیستم به شدت میریزه پایین! الگوریتم بیچاره گول میخوره و فکر میکنه اضافه کردن اون ۲ تا ترد باعث افت پرفورمنس شده، پس سریع تردها رو میکُشه! یا برعکس، یه لحظه ترافیک سبک میشه و الگوریتم فکر میکنه اضافه کردن ترد باعث معجزه شده و بیخود ترد میسازه. نتیجه این میشه که سیستم دچار Thrashing (نوسان شدید) میشه و مدام در حال ساختن و کشتن تردهاست!
این ایده رو امشب باهم بررسی میکنیم که چطوری تیم دات نت تونستن جلوی این موضوع رو بگیرن تا به این موضوع برسیم خوشحال میشم راجبش فکر کنین بنظرم فکر کردن به این مسائل مهندسی خیلی خیلی ذهن مارو برای حل مسائل پیش رومون باز میکنه
@codehalics | کدهالیک
3 977
اینم حیفم میاد راجبش صحبت نکنم چون ایده بسیار بسیار جذابی داره
ایده الگوریتم Hill Climbing دقیقاً مثل اینه که توی یه کوهستان کاملاً مهآلود بخواید با چشم بسته به نوک قله برسید؛ تنها راهش اینه که یه قدم آزمایشی بردارید، اگر دیدید رفتید بالاتر، به همون مسیر ادامه بدید و اگر دیدید رفتید پایینتر، برگردید عقب. توی داتنت هم Runtime از قبل نمیدونه دقیقاً چند تا ترد برای سرور شما بهینه است (چون تردِ کم باعث صف کشیدن ریکوئستها میشه و تردِ زیاد هم با Context Switching شدید، CPU رو خفه میکنه). برای همین الگوریتم Hill Climbing میاد به صورت آزمایشی ترد اضافه میکنه و خروجی سیستم (Throughput) رو میسنجه؛ اگر دید با اضافه کردن ترد، تسکهای بیشتری در ثانیه انجام میشن، به ساختن ترد ادامه میده، اما به محض اینکه ببینه اضافه کردن ترد جدید باعث افت پرفورمنس شده، میفهمه به قله رسیده و جلوی ساخت تردهای بیشتر رو میگیره.
@codehalics | کدهالیک
3 977
یه سوال جذابی که همیشه توی مصاحبهها میپرسن اینه که وقتی یه برنامه Node.js رو ران میکنیم، واقعاً چند تا ترد توی سیستمعامل ساخته میشه؟ خیلیها میگن ۱ دونه، یا اگر حرفهایتر باشن میگن با ۴ تای libuv میشه ۵ تا! اما اگر یه اسکریپت ساده نود رو ران کنید و توی لینوکس تردهای اون Process رو بشمارید، میبینید که بین ۷ تا ۱۱ ترد بالا میاد. واقعیت اینه که فقط Event Loop و اجرای کد جاوااسکریپت شما روی ۱ ترد (Main Thread) انجام میشه؛ در کنارش موتور V8 معمولاً ۴ تا ترد بکگراند برای کارهای Garbage Collection و JIT Compilation (بهینهسازی کدها) میسازه، ۱ ترد برای هندل کردن سیگنالها و Inspector بالا میاد، و به محض اینکه اولین عملیات File System یا Crypto رو انجام بدید، ۴ تردِ پیشفرضِ libuv هم بهشون اضافه میشن و جمعاً ۱۱ تا ترد رو تشکیل میدن.
@codehalics | کدهالیک
