کدهالیک | codehalic
Kanalga Telegram’da o‘tish
دوره های آموزشیمون رو از داخل سایت ببینید https://codehalic.ir
Ko'proq ko'rsatish3 967
Obunachilar
-6124 soatlar
-1607 kun
-17730 kun
Postlar arxiv
3 966
حالا بیاید یه ترکیب بهشدت خفن و کاربردی رو بهتون بگم که خودم این روزا تو پروژهها دارم حسابی ازش جواب میگیرم!
ببینید، وقتی داریم با تمپلیتانجینهایی مثل Razor کار میکنیم، آوردن فریمورکهای سنگینی مثل React وسط کار خیلی منطقی به نظر نمیرسه؛ چون عملاً هدفمون اینه که یه پروژه یکپارچه داشته باشیم که هم بکاند رو هندل کنه و هم فرانتاند رو. اینجاست که بهجای رفتن سراغ گزینههای قدیمی مثل همین jQuery بزرگوار، دست میذاریم روی HTMX که واقعاً کار باهاش لذتبخش و جذابه!
ایده پشت HTMX بهشدت ساده و آشناست؛ دقیقاً همون منطقی رو داره که Tailwind CSS بهمون یاد داد: «همونطور که واسه استایل دادن نیازی نیست فایل HTML رو ول کنی و بری سراغ نوشتن فایلهای CSS مجزا، برای هندل کردن رفتارها و ریکوئستها هم نیازی نیست HTML رو ول کنی و درگیر نوشتن کدهای طولانی جاوااسکریپت بشی!»
به این شکله که مثلاً فقط با اضافه کردن چندتا اَتریبیوت (Attribute) ساده به همون تگ HTML، میتونی یه ریکوئست بزنی و فقط یه بخش خاص از صفحه رو آپدیت کنی. فرض کنید میخوایم با کلیک روی یه دکمه، اطلاعات رو از بکاند بگیریم و تو یه
div نشون بدیم:
HTML
<button hx-get="/users/list" hx-target="#user-list" hx-swap="innerHTML">
لیست کاربرا رو بیار
</button>
<div id="user-list">
<!-- دیتایی که از سمت سرور میاد (مثلا یه پارشیال ویو از Razor) مستقیم میشینه اینجا -->
</div>
فقط با همین اَتریبیوتها، خودش ریکوئست GET رو میفرسته به روت سرور، جواب رو میگیره و بیسروصدا (بدون رفرش شدن کل صفحه) جایگزین محتوای اون div میکنه. به همین تمیزی! همون حس یکپارچگی بکاند رو نگه میداری، دردسرهای ستاپ فریمورکهای جاوااسکریپتی رو نداری و همهچیز سریع، سبک و جمعوجور پیش میره.
https://htmx.org/
@codehalics | کدهالیک3 966
لعنت بهت JQuery تمام تروماهای زندگیم توی برنامه نویسی رو از تو دارم با اون $ مسخره ات !
$(document).ready(function() {
console.log("codehalic");
});
هنوزم سینتکسش میبینم ازش بدم میاد !
@codehalics | کدهالیک
3 966
کتابخانه jQuery بیستساله شد؛ ابزاری که سال ۲۰۰۶ توسط John Resig متولد شد و با اون ساختار سادهاش تمام عذابهای DOM manipulation، زدن درخواستهای Ajax و دردسرهای cross-browser تو مرورگرهایی مثل IE6 رو کلاً شست برد. با اینکه این روزها فریمورکهای مدرن، تفکر declarative و قابلیتهای نیتیو مرورگر مثل querySelectorAll و fetch جایگزینش شدن، اما هنوز روی حدود ۶۶ درصد از سایتهای وب به لطف سیستمهایی مثل WordPress داره کار میکنه. جیکوئری نهتنها ورود به برنامهنویسی فرانتاند رو برای همه راحتتر کرد، بلکه جامعهای رو ساخت که پایهگذار تمام فریمورکها و ابزارهای مدرن وب امروز شد.
@codehalics | کدهالیک
3 966
رفقا، از مشارکت فوقالعادهتون بینهایت ممنونم! استقبالتون از این چند تا سوال بینظیر بود و حسابی منو شرمنده کردین. ❤️
فرم رو همچنان تا ساعت ۱۲ باز میذارم تا بتونم نظرات ارزشمند بقیه دوستان رو هم بخونم. فیدبکهای شما نقش خیلی مهمی تو ارتقای کیفیت دورههای برنامهنویسی «کدهالیک» داره.
پس اگه هنوز فرصت نکردین شرکت کنین، خیلی خوشحال میشم با ثبت نظرتون تو این مسیر بهم کمک کنین! 🙏✨
@codehalics | کدهالیک
3 966
از طریق این سایت میتونین بازی نوستالژی Gta Vice City رو تنها روی مرورگر اجراش کنین با کیفیت بسیار عالی و کاملا روان اجرا میشه !
https://quenq.com/apps/vice-city-online
@codehalics | کدهالیک
3 966
بچهها یه لطفی بهم بکنید 🙏
میخوام دوره بعدی رو شروع کنم ولی نمیخوام چیزی بسازم که فقط به نظر خودم باحال میاد و آخرش به درد کسی نخوره.
اگر بنده رو قابل دونستین خوشحال میشم بتونم 2 دقیقه از وقتتون رو داشته باشم تا بهتر بتونم دوره برای کدهالیک بسازم !
https://survey.porsline.ir/s/hJOiF1XN
@codehalics | کدهالیک
3 966
میکروتیک یه آسیبپذیری جدی تو RouterOS پیدا کرده و پچش رو گذاشته رو همه کانالهای ۶ و ۷؛ نسخههای ۶.۴۹.۲۱، ۷.۲۳.۵، ۷.۲۴.۲ و بالاتر رو بزنید، بعد از آپدیت لاگ و کنسول رو چک کنید که Flagged نخورده باشه و کانفیگ عجیب و غریب (یوزر یا اسکریپت ناشناس) نداشته باشه، خودشون گفتن جزئیات رو فعلاً نمیگن تا همه فرصت آپدیت داشته باشن.
https://mikrotik.com/supportsec/september-2026-vulnerability/
@codehalics | کدهالیک
3 966
اگر در پروژههاتون از ایجنتهای کدنویسی مثل Cursor، Claude Code یا Codex استفاده میکنید و میخواهید ظاهری بسیار شیک و متمایز (مخصوصاً برای ابزارهای هوش مصنوعی) بسازید، این سایت فوقالعاده کاربردیه.
سایت Libraries.dev مجموعهای از افکتها و کامپوننتهای مدرن UI رو ارائه میده که با ابزارهای AI سازگاری کامل دارن.
https://libraries.dev/
@codehalics | کدهالیک
3 966
نکته جالب ویدیو رونمایی GPT-6 Astra ادای احترام به یکی از تاریخیترین دمویهای تاریخ علوم کامپیوتر بود !
کلیپی که اول ویدیو منتشر شد متعلق به پروژهای معروف به نام "Put-That-There" محصول سال ۱۹۸۰ در آزمایشگاه MIT هستش.
در این دموی سال ۱۹۸۰، محققان برای اولین بار سیستمی را نشان دادند که همزمان صدای انسان و اشاره یا دستور حرکتی را میفهمید.
کاربر با اشاره به صفحه و گفتن عبارت «یک دایره زرد اونجا بکش» یا «این را بگذار آنجا» با سیستم تعامل میکرد.
شرکت OpenAI این کلیپ ۴۶ ساله را در ابتدای ویدیو قرار داده تا خط سیر تاریخ تعامل انسان و کامپیوتر را نشان دهد
از روزهایی که کنترل یک دایره ساده با دستور صوتی یک رؤیای آزمایشگاهی بود، تا امروز که هوش مصنوعی میتونه به عنوان یک اپراتور تمامعیار بسیاری از کار هامون رو انجام بده !
#gpt6
@codehalics | کدهالیک
3 966
اوپنایآی از مدل جدید خودش یعنی GPT-6 Astra رونمایی کرد که یه جهش غولآسا در هوش، Computer Use و امنیت سایبری به حساب میاد.
این مدل با ثبت رکوردهای فوقالعادهای مثل ۹۹.۹٪ تو بنچمارک ARC-AGI-3 و ۱۰۰٪ تو ExploitBench، نهتنها تو حل مسائل پیچیده ریاضی و کشف آسیبپذیریهای Zero-day بیرقیبه، بلکه میتونه فرآیندهای واقعی مثل طراحی مدار PCB تو KiCad، ساخت صحنههای ۳بعدی تو Blender و Unreal Engine یا تست خودکار وبسایتها رو مستقیماً پشت سیستم انجام بده.
برخلاف نسخههای قبلی، Astra تا ۶۵٪ توکن خروجی کمتری مصرف میکنه، سرعت بهشدت بالاتری داره و مکانیزم Alignment جدیدش احتمال هالوسینیشن یا دور زدن قوانین دسترسی رو کاملاً صفر کرده؛ خلاصهش اینکه با یه مدل فوقالعاده کاربردی، ارزانتر و امن طرفیم که رسماً فاز جدیدی از اتوماسیون کارهای پیچیده دسکتاپ رو شروع کرده!
@codehalics | کدهالیک
3 966
تقریباً تو هدر تمام پروژههای وب عادت کردیم تکهکد
<meta name="viewport" content="width=device-width, initial-scale=1.0"> رو کپیپیست کنیم، اما وقتشه که بالاخره initial-scale=1.0 رو بریزیم دور! این عبارت سالها پیش توسط اپل معرفی شد تا جلوی باگهای چرخش صفحه و زوم شدنهای ناخواسته تو نسخههای خیلی قدیمی iOS رو بگیره. اما سالهاست که مرورگرهای مدرن اون مشکلات رو کلاً حل کردن و نوشتن <meta name="viewport" content="width=device-width"> به تنهایی برای ریسپانسیو شدن صفحه کفایت میکنه.
https://vale.rocks/micros/20260902-1350
@codehalics | گدهالیک3 966
وقتی میگم الکامپ امسال تقلیل فناوری به سیرک بود، دقیقاً از چی حرف میزنم؟
از اینکه رسماً پوکه کپسول خریدی، تهش دو گرم طلا ریختی، سرش یه چیپ ۵۰ سنتی NFC چسبوندی و اسمش رو گذاشتی محصول فناورانه بومی!
از هوش مصنوعی پرسیدم کجای دنیا چسبوندن برچسب NFC روی قالب پلاستیک روتکنولوژی حساب میکنه؟
@codehalics | کدهالیک
3 966
امروز رفتم الکامپ و تنها واژهای که حق مطلب رو ادا میکنه یک کلمهست: فاجعه!
بیخیال گلایههای تکراری درباره اختلالات چندماهه اینترنت؛ حرف سر فلسفه وجودیِ یک نمایشگاه فناوریه. شعار و تعریف رسمی الکامپ چیه؟ *«بستری برای معرفی آخرین دستاوردها، خدمات و محصولات پیشرو در حوزه فناوری اطلاعات و ارتباطات.»*
اما واقعیتِ ویترین امسال چی بود؟
* فروش طلای آبشده!
* پکیجهای «چگونه ریسلر آمازون شویم؟»
* کیبورد گیمینگ با برچسب ایرانی!
* و منتگذاشتن سرورهای ابری...
تو عصری که دنیای تکنولوژی با سرعت نور حول OpenAI، Anthropic و مدلهای پیشرفته هوش مصنوعی میچرخه، ما هنوز اصرار داریم نسخههای کپیپیست، کمکیفیت و منقضیشدهی ۱۰ سال پیش دنیا رو بیاریم، اسمش رو بذاریم «فناوری بومی» و دور هم برامون دست بزنیم.
برگزاری این شوهای نمایشی، درست بعد از ماهها اختلال شدید اینترنت، هیچ دستاوردی رو معرفی نمیکنه؛ فقط مثل یک آینه عریضوطویل، عمق عقبافتادگی ما از جریان اصلی جهان رو به رخ میکشه.
گاهی برگزار نشدن یک رویداد، خیلی محترمانهتر از برگزاریشه. واقعاً جلوی غرفه فلان شرکت ابر و سرور چه حرفی میشه زد؟ بگیم دمتون گرم که قیمتها رو سه برابر کردید و کیفیت رو نصف؟
@codehalics | کدهالیک
3 966
وقتی بکاند پروژه C# باشه و فرانتاند TypeScript، بزرگترین دردسر اینه که مجبوری ساختار دیتا (مثل DTOها) رو دو جا تعریف کنی و اگه فیلدی تو بکاند عوض بشه، تازه تو Runtime ارورها خودشون رو نشون میدن. اما با معماری Monorepo و ابزار Nx میشه یه Type Safety یکپارچه و فولاستک ساخت! راهحلش اینه که به کمک OpenAPI موقع بیلد شدن پروژهی داتنت، کانترکتهای API به صورت اتوماتیک تولید بشن؛ بعد ابزاری مثل
openapi-ts این خروجی رو میخونه و تایپهای فرانتاند رو دقیقاً از روش جنریت میکنه. شاهکارِ Nx اینجاست که با سیستم قدرتمند Task Graph خودش، این پروسه رو به هم زنجیر و هوشمندانه کش (Cache) میکنه؛ یعنی به محض اینکه اسپل یه پراپرتی رو تو کدهای C# تغییر بدی، Nx خودش جریان رو میفهمه، تایپها رو آپدیت میکنه و خطای ناهماهنگی فرانتاند رو همون لحظه تو زمان کامپایل (Compile Time) مچگیری میکنه تا دیگه هیچوقت باگهای ناشی از تغییر API به پروداکشن نرسن!
https://nx.dev/blog/dotnet-openapi-type-safety
@codehalics | کدهالیک3 966
سنپپی روی کدهالیک فعال شد! از این به بعد میتونید هزینهها رو ۴ قسطه یا آخر ماه تسویه کنید.
به همین مناسبت، ظرفیت محدود ماک اینترویو و بررسی رزومه رو برای همین آخر هفته با ۵۰٪ تخفیف باز کردم.
اگر دارین برای مصاحبه فنی آماده میشین یا توی مسیر شغلی و معماری پروژههاتون به یک فیدبک واقعی نیاز دارین، این فرصت رو از دست ندین:
🔹 ماک اینترویو فنی:
https://codehalic.ir/mentorship/book/mock-interview
🔹 بررسی رزومه و منتورینگ:
https://codehalic.ir/mentorship/book/resume-review
ظرفیت زمانهای این آخر هفته محدوده.
@codehalics | کدهالیک
3 966
تو نسخه ۱۹ پُستگرِس بالاخره یه قابلیت جدید و نجاتبخش به اسم WAIT FOR اضافه شد که مشکل قدیمی و رو اعصاب تاخیر رپلیکیشن (Replica Lag) رو کلاً حل میکنه. تا پیش از این وقتی دیتا رو روی پرایمری مینوشتی و بلافاصله از رپلیکا میخوندی، به خاطر تاخیر همگامسازی، دیتای قدیمی (Stale Data) میگرفتی و راهکارهایی مثل Sleep زدن یا روت کردن دوباره کوئری به پرایمری هم واقعاً افتضاح بودن. حالا با این دستور، سِشِن (Session) متصل به رپلیکا رو بلاک میکنی تا زمانی که پروسه Replay شدن WAL به یه LSN مشخص برسه و دیتا کاملاً آپدیت و قابل خوندن بشه؛ این کار کلاً ۱ تا ۲ میلیثانیه اوورهِد داره. البته چند تا نکته فنی هم داره؛ مثلاً چون این دستور نباید اسنپشات نگه داره (تا جلوی آپدیت شدن WAL گرفته نشه)، تو سطح ایزولیشن بالاتر از READ COMMITTED یا داخل فانکشنها اجرا نمیشه و پولرهایی مثل PgBouncer تو حالت Transaction Mode ممکنه سشن و کوئری رو بندازن رو کانکشنهای مختلف و کار رو خراب کنن. جالبتر اینکه پیشنهاد این قابلیت از سال ۲۰۱۶ مطرح بوده و ۳ بار ریورت شده تا بالاخره تو پستگرس ۱۹ به ثبات رسیده.
@codehalics | کدهالیک
3 966
اگه تو زیرساختتون از Keycloak برای احراز هویت استفاده میکنید سریعتر دستبهکار بشید چون یه آسیبپذیری خیلی بحرانی با نمره ۹.۱ کشف شده که تو این باگ، هکر بدون نیاز به هیچ دسترسی یا تایید ایمیل و فقط با دونستن یوزرنیم یا ایمیل ادمین، میتونه لاگین بازیابی رمز عبور رو دور بزنه و مستقیم پسوورد اکانت رو عوض کنه تا به تمام سیستمهای پشت Keycloak دسترسی پیدا کنه. تمام نسخههای زیر ۲۶.۷.۲ آسیبپذیرن و اگه الان شرایط ارتقا به نسخه ۲۶.۷.۲ رو ندارید، حتماً همین امروز قابلیت Forgot password رو از تنظیمات Realm به صورت موقت خاموش کنید.
https://fireup.pro/news/keycloak-cve-2026-18963-critical-password-reset-flaw?via=dailydev
@codehalic | کدهالیک
3 966
تو دنیای معماری نرمافزار یه توهم عجیب جا افتاده که فکر میکنیم هرچی دیاگرام سیستم شلوغتر باشه و از ابزارهای توزیعشده و صفهای پیامرسان بیشتری استفاده کنیم، یعنی معمار خفنتری هستیم! خیلیا به جای پیدا کردن مرزهای واقعی دامین، سریع سیستم رو به دهها میکروسرویس خرد میکنن فقط برای اینکه بگن ما هم داریم تو اسکیل بالا کار میکنیم. اما واقعیت اینه که عیار یه مهندس سنیور به اضافه کردن زیرساختهای دهنپرکن نیست؛ بلکه دقیقاً اونجایی مشخص میشه که باید پیشبینی کنه وقتی سیستم زیر بار تراکنشهای سنگینه، اگه یه سرویس تایماوت داد، ایونتی دو بار ارسال شد یا دیتابیس تو خطاهای همزمانی گیر کرد، چطوری باید سیستم رو ریکاوری کرد. در نهایت، هنر معماری به خلق پیچیدگیهای بیدلیل نیست، بلکه به طراحی سادهترین و تمیزترین ساختاریه که بشه ساعت ۳ صبح روزِ بحران به راحتی دیباگش کرد.
رفرنستون میدم به اصل KISS که قبل تر راجبش صحبت کردیم !
@codehalics | کدهالیک
https://blog.devgenius.io/microservices-are-not-a-sign-youre-a-senior-engineer-bd79bef44b20
@codehalics | کدهالیک
3 966
با این سایت میتونین یه سری گردینت های زیبا رو با ترکیب رنگی هایی که باهم هارمونی دارند بسازین !
هم بدرد لندینگ میخوره و هم به درد خیلی چیزای دیگ
3 966
این روزا تقریباً روزی دو سه تا مقاله و پست میبینیم که همهشون دارن درباره ترس از اپراتور شدن برنامهنویسها و راهکارهای حفظ قدرت تحلیل صحبت میکنن. اما بیشتر از اینکه بخوایم عجولانه دنبال راهحل و فرمول بگردیم، واقعیت اینه که خودِ آینده مشخص میکنه دقیقاً چطوری باید از هوش مصنوعی استفاده کنیم؛ حتی اگه تهش قرار باشه ما فقط یه دستیار ساده و عادی برای اون باشیم.
تمام این توصیهها و چارچوبهایی که الان متخصصها ارائه میدن، لزوماً درست از آب درنمیاد. خیلیا اصرار دارن که حتماً باید درک عمیق فنی و جزییات کد رو حفظ کنیم تا از رده خارج نشیم، اما سرعت رشد AI نشون میده که به زودی به نقطهای میرسیم که اصلاً نیازی نباشه اون جزییات رو بدونیم. هوش مصنوعی اونقدر کامل و بدون خطا سیستمها رو مدیریت میکنه که دونستن یا ندونستن منطق زیرین کد برای انسان عملاً فرقی ایجاد نمیکنه و قطعاً همین اتفاق هم میافته بنظر من !
این که مینویسن که بشینید عمیق یاد بگیرین که چی به چیه مطمینم نهایت برای یک سال آینده جواب بده این موضوع هم قطعا انقد پیشرفت میکنه که ما باید روی جنبه های دیگ ای که هنوز برامون مشخص نیست زوم کنیم !
@codehalics | کدهالیک
