کدهالیک | codehalic
3.47K subscribers
319 photos
8 videos
66 files
359 links
دوره های آموزشیمون رو از داخل سایت ببینید

https://codehalic.ir
Download Telegram
فونت زیبای استعداد (Estedad)، کاری از امین عابدی، منتشر شده در Google Fonts.

https://x.com/aminabedi68/status/2057411238829699436?s=20

https://fonts.google.com/specimen/Estedad

@codehalics | کدهالیک
👍63
پایتون ۳.۱۵ هنوز رسمی منتشر نشده، ولی بعضی از تغییرات ریزش واقعاً جذاب‌تر از فیچرای اصلین

یکی از بهترین اضافه‌ها اینه که بالاخره میشه TaskGroup توی asyncio رو تمیز و بی‌دردسر کنسل کرد. قبلاً برای متوقف کردن یه گروه تسک باید کلی حقه با Exception و suppress می‌زدیم، الان فقط:


tg.cancel()


و تمام.

یه تغییر خیلی خفن دیگه هم برای context managerهاست. از این به بعد وقتی از context manager به‌عنوان decorator استفاده می‌کنیم، روی async function و generator هم درست کار می‌کنه. قبلاً decorator عملاً همون اول تموم می‌شد و کل lifecycle فانکشن رو پوشش نمی‌داد. این تغییر کوچیکه ولی برای کسایی که ابزارهای profiling/logging می‌نویسن خیلی ارزشیه.

تو بخش threading هم بالاخره iteratorهای thread-safe اضافه شدن. قبلاً اگر چند thread همزمان از یه iterator می‌خوندن احتمال خراب شدن state یا skip شدن داده‌ها وجود داشت. الان با:


threading.serialize_iterator(...)


خیلی راحت میشه امنش کرد.

یه قابلیت بامزه هم اضافه شده برای Counter:
الان عملگر xor (`^`) هم داره 😄
یعنی میشه symmetric difference روی Counterها انجام داد. شاید استفاده روزمره نداشته باشه ولی از لحاظ کامل‌تر شدن API حرکت جالبیه.

و آخرین چیزی که خیلی دوست داشتم:
الان میشه JSON رو مستقیم به ساختارهای immutable تبدیل کرد. یعنی مثلاً لیست‌ها tuple بشن و objectها frozendict. برای caching و hash کردن داده‌ها خیلی کاربردیه.

در کل حس می‌کنم پایتون ۳.۱۵ بیشتر از اینکه فقط flashy feature داشته باشه، داره جاهای اذیت‌کننده و قدیمی زبان رو تمیز و بالغ‌تر می‌کنه؛ همون تغییرایی که شاید تیتر خبر نشن ولی برنامه‌نویس‌ها هر روز قدرشونو می‌فهمن.

https://blog.changs.co.uk/python-315-features-that-didnt-make-the-headlines.html

@codehalics | کدهالیک
پروژه‌ی Freenet یک پلتفرم همتا‌به‌همتا (peer to peer) برای ساخت اپلیکیشن‌های غیرمتمرکز است که هدفش حذف وابستگی به سرورهای مرکزی و شرکت‌های بزرگ فناوری است. در این سیستم، هر کاربر بخشی از شبکه محسوب می‌شود و داده‌ها و درخواست‌ها بین دستگاه‌های مختلف در یک شبکه توزیع‌شده جابه‌جا می‌شوند. توسعه‌دهندگان می‌توانند با ابزارهای آشنا مثل Rust و TypeScript اپلیکیشن‌هایی بسازند که بدون نیاز به سرور مرکزی اجرا شوند و روی یک شبکه جهانی از کاربران میزبانی شوند.

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

https://freenet.org/

@codehalics | کدهالیک
2
توی آموزش قوانین مهندسی نرم افزار به یه قانون جدید برمیخوریم که امروز هادی جان احمدی بررسیش کردن و من هم میخوام بهش بپردازم :

ADR (Architecture Decision Record)

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

عمو مارتین فولر راجبش تو بلاگش نوشته

https://martinfowler.com/bliki/ArchitectureDecisionRecord.html


#lawsofsoftwareengineering

سورس توییت از استاد هادی احمدی

@codehalics | کدهالیک
6
کدهالیک | codehalic
توی آموزش قوانین مهندسی نرم افزار به یه قانون جدید برمیخوریم که امروز هادی جان احمدی بررسیش کردن و من هم میخوام بهش بپردازم : ADR (Architecture Decision Record) یه جور سند کوتاه و ساده‌ست که توی پروژه‌های نرم‌افزاری، تصمیم‌های مهم معماری رو ثبت می‌کنه.…
شاید بپرسید خوب چطوری باید بنویسیم
من از کف یکی از پروژه های اوپن سورس
تونستم لیست ADR هایی که نوشته رو دربیارم
به طور مثال
https://github.com/croz-ltd/klokwrk-project/blob/master/support/documentation/adr/content/0001-architectural-decision-records.md
تمام مقالات این فولدر داره راجب انواع تصمیمات معماری راجب این پروژه صحبت میکنه مثلا چه دلیلی داشته رفتن سمت استفاده از یه پکیج یا یه دیزاین پترن خاص یا تست نوشتن یا خیلی چیزای اینطوری و یه تمپلیت باحال داره که میتونین ازش کمک بگیرین یک دست بنویسید ADR هاتونو

لینک ADR ها :

https://github.com/croz-ltd/klokwrk-project/tree/master/support/documentation/adr/content


@codehalics | کدهالیک
1
کدهالیک | codehalic
شاید بپرسید خوب چطوری باید بنویسیم من از کف یکی از پروژه های اوپن سورس تونستم لیست ADR هایی که نوشته رو دربیارم به طور مثال https://github.com/croz-ltd/klokwrk-project/blob/master/support/documentation/adr/content/0001-architectural-decision-records.md…
یه نمونه خیلی جذاب تر پروژه backstage که اسپاتیفای ساختش
اولش برای خودشون ساخته بودن ولی بعدش اوپن سورسش کرده
خود همین backstage واس همین کار ساخته شده که مستندات یه سرویس یه جا دیده بشه و تیم ها بدونن هر سرویس مال کیه و ساخت سرویس جدید سریع تر بشه !
پس در واقع یه پنل داخلی برای شرکت‌های بزرگ که همه سرویس‌ها، تیم‌ها، و ابزارهای توسعه رو یکجا جمع می‌کنه
حالا خود همین پروژه که تقریبا میتونه یکی از کاراش ADR باشه هم ADR داره واس خودش !

که باز از این قسمت میتونین لیست ADR هاشو ببینید

https://github.com/backstage/backstage/tree/master/docs/architecture-decisions


https://backstage.io/

@codehalics | کدهالیک
1
Forwarded from کار باشه !
سلام سلام

یکی از دوستانم سه پوزیشن باز دارن توی سازمانشون
• Senior Python developer
• Senior Java developer
• Senior React developer

لطفا رزومه هاتون رو به آیدی زیر بفرستین:
@AhmadSharifian

#backend #frontend


💬 @job_bashe | گروه کار باشه با دسته بندی شغلی
📢 @karbashe_ir | کانال کار باشه
مایکروسافت در مقاله‌ی جدید .NET توضیح داده که C# قرار است مدل دقیق‌تری برای Memory Safety داشته باشد. در نسخه‌های فعلی، کلمه‌ی unsafe بیشتر یک هشدار کلی است؛ یعنی می‌گوید بخشی از کد ممکن است با حافظه به‌صورت مستقیم یا کم‌سطح کار کند، اما همیشه مشخص نمی‌کند دقیقاً کدام عملیات خطرناک است و چه قراردادی باید بین نویسنده‌ی API و استفاده‌کننده رعایت شود. مدل جدید تلاش می‌کند این مرز را شفاف‌تر کند: کدهایی که با pointer، حافظه‌ی unmanaged، Marshal یا APIهای حساس سروکار دارند باید صریح‌تر مشخص کنند چه پیش‌فرض‌هایی برای امن بودن لازم است.
اهمیت این تغییر در این است که C# نمی‌خواهد قابلیت‌های low-level خودش را حذف کند؛ بلکه می‌خواهد استفاده از آن‌ها قابل‌تحلیل‌تر، قابل‌بررسی‌تر و کم‌ریسک‌تر شود. وقتی کامپایلر بتواند بخش‌های حساس به حافظه را دقیق‌تر تشخیص دهد، code review بهتر انجام می‌شود، مسئولیت APIها واضح‌تر می‌شود و احتمال مخفی ماندن خطاهایی مثل دسترسی نامعتبر به حافظه، use-after-free یا buffer overrun کاهش پیدا می‌کند. به زبان ساده‌تر، هدف این نیست که C# را محدودتر کنند؛ هدف این است که هرجا برنامه‌نویس به حافظه نزدیک‌تر می‌شود، قواعد ایمنی هم شفاف‌تر و قابل اعتمادتر باشند.

https://devblogs.microsoft.com/dotnet/improving-csharp-memory-safety/

@codehalics | کدهالیک
👍2
کدهالیک | codehalic
مایکروسافت در مقاله‌ی جدید .NET توضیح داده که C# قرار است مدل دقیق‌تری برای Memory Safety داشته باشد. در نسخه‌های فعلی، کلمه‌ی unsafe بیشتر یک هشدار کلی است؛ یعنی می‌گوید بخشی از کد ممکن است با حافظه به‌صورت مستقیم یا کم‌سطح کار کند، اما همیشه مشخص نمی‌کند…
نگاه فنی‌تر به Memory Safety جدید در C#


تغییر اصلی اینه که در C# 16، مفهوم unsafe دقیق‌تر می‌شه. قبلاً وقتی روی یک متد unsafe می‌ذاشتیم، یعنی داخلش اجازه داریم با pointer و عملیات سطح پایین کار کنیم. اما مدل جدید بین دو چیز فرق می‌ذاره: APIای که از caller انتظار رعایت شرط ایمنی دارد و بخشی از کد که واقعاً عملیات خطرناک انجام می‌دهد.
مثلاً اگر متدی از caller می‌خواهد pointer معتبر بدهد، خود signature می‌تواند unsafe باشد. اما داخل بدنه، جایی که pointer واقعاً dereference می‌شود، باید با unsafe { } مشخص شود:
public static unsafe byte Read(byte* ptr)
{
unsafe
{
return *ptr;
}
}

اینجا unsafe بیرونی یعنی caller مسئول است pointer معتبر بدهد؛ ولی unsafe داخلی دقیقاً محل دسترسی خطرناک به حافظه را نشان می‌دهد.
چرا این مهم است؟
چون خطر اصلی صرفاً وجود pointer نیست؛ خطر اصلی جایی است که از آن pointer برای خواندن یا نوشتن حافظه استفاده می‌کنیم. مدل جدید کمک می‌کند این نقاط پنهان نمانند، مخصوصاً وقتی با IntPtr، Marshal، NativeMemory یا interop کار می‌کنیم.
همچنین unsafe APIها باید بهتر مستند شوند؛ مثلاً با بخش‌هایی مثل:
/// <safety>
/// Caller must ensure ptr points to valid readable memory.
/// </safety>

این باعث می‌شود در code review دقیق‌تر بفهمیم چه چیزی بر عهده‌ی caller است و چه چیزی داخل متد تضمین شده.

@codehalics | کدهالیک
👍2
یه مقاله جالب توضیح می‌داد چرا شرکت‌های ژاپنی این‌قدر وارد حوزه‌های مختلف می‌شن. مثلاً شرکتی که از توالت و سرامیک شروع کرده، امروز قطعه‌ی حساس برای صنعت نیمه‌هادی می‌سازه.

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

به نظرم تو نرم‌افزار هم همین اتفاق می‌افته. تیمی که فقط با تعویض فریم‌ورک و ابزار جلو می‌ره، مزیت عمیق نمی‌سازه. مزیت واقعی وقتی ساخته می‌شه که تیم domain رو بفهمه، history تصمیم‌ها رو بدونه، codebase رو مثل یک موجود زنده بشناسه و آدم‌ها زودبه‌زود عوض نشن.

شاید مهم‌ترین دارایی یک تیم نرم‌افزاری خود کد نباشه؛ حافظه‌ی جمعی تیمه.

https://davidoks.blog/p/why-japanese-companies-do-so-many

@codehalics | کدهالیک
👍84
یه نفر اومده سراغ یکی از ساده‌ترین چیزهایی که توی نرم‌افزارها مدام اتفاق می‌افته: تبدیل عدد به متن. مثلاً اینکه عدد 123456 بشه «123456». کاری که معمولاً برنامه‌ها انجام می‌دن اینه که عدد رو چند بار تقسیم می‌کنن، رقم‌ها رو یکی‌یکی درمیارن، یا از یه‌سری جدول آماده کمک می‌گیرن. اما ایده‌ی این مقاله این بوده که بیایم این مسیر قدیمی رو دور بزنیم. عدد رو به تکه‌های ۸ رقمی شکسته، بعد با قابلیت‌های جدید پردازنده، چندتا رقم رو هم‌زمان حساب کرده؛ یعنی به‌جای اینکه CPU رقم‌ها رو دونه‌دونه بسازه، همه رو موازی جلو برده. برای این کار هم از AVX-512 و ضرب‌های سریع استفاده کرده تا تقسیم‌های سنگین تا حد زیادی حذف بشن. جالب‌تر اینکه الگوریتم قبل از اجرا یه نمونه‌گیری کوچیک هم می‌کنه تا بفهمه جنس عددها شبیه همه یا نه، بعد خودش مسیر سریع‌تر رو انتخاب می‌کنه. نتیجه‌اش؟ یه کاری که خیلی معمولی به نظر می‌رسه، توی بعضی حالت‌ها زیر دو نانوثانیه انجام می‌شه.


https://onlinelibrary.wiley.com/doi/10.1002/spe.70079

@codehalics | کدهالیک
🔥6❤‍🔥1
ازم پرسید به عنوان یک فرانت اند دولوپر useEffectEvent رو بلدی ؟؟

من بلد نبودم شما یاد بگیرین :

وقتی داخل useEffect نیاز به دسترسی به آخرین مقدار props/state داری ولی نمی‌خوای Effect reconnect بشه.
این هوک دقیقاً برای حل همین مشکل ساخته شده.

https://react.dev/reference/react/useEffectEvent

Abolfazl

@codehalics | کدهالیک
12👍5
بازگشایی اینترنت بین الملل مصوب شد

🔹ستاد راهبری و ساماندهی فضای مجازی صبح امروز دوشنبه (چهارم خردادماه) به ریاست دکتر عارف معاون اول رئیس جمهور تشکیل جلسه داد و بازگشت اینترنت به وضعیت قبل از دی ماه 1404 مصوب شد.

🔹این مصوبه برای رییس جمهور ارسال شد و در صورت تایید رئیس جمهور جهت اجرا برای وزارت ارتباطات ارسال خواهد شد.

@codehalics | کدهالیک
🗿14🤣1
کدهالیک | codehalic
مقاله درباره‌ی یه ایده‌ی خیلی عجیب ولی باحال توی رمزنگاریه: اینکه گاهی «چیزی که نمی‌تونیم ثابت کنیم» می‌تونه خودش تبدیل بشه به ابزار امنیتی. اول از یه مفهوم به اسم اثبات بدون افشای اطلاعات یا Zero-Knowledge Proof شروع می‌کنه؛ یعنی من می‌خوام به تو ثابت کنم…
چند وقت پیش توی کانال درباره‌ی یه مقاله‌ی خیلی باحال از Quanta نوشتم؛ مقاله‌ای درباره‌ی اینکه گاهی «چیزی که نمی‌تونیم ثابت کنیم» خودش می‌تونه تبدیل بشه به ابزار امنیتی. ایده‌اش از Zero-Knowledge Proof شروع می‌شد؛ اینکه بتونی ثابت کنی چیزی رو می‌دونی، بدون اینکه خود اون چیز رو افشا کنی. خلاصه‌ی ساده‌اش این بود که در امنیت، همیشه مسئله فقط این نیست که «چیزی قابل شکستن هست یا نه»، گاهی مسئله اینه که آیا اساساً می‌شه راه شکستن یا ناامن بودنش رو ثابت کرد یا نه.
این چند روز دوباره یاد همون مقاله افتادم، وقتی دیدم هنوز در سال ۲۰۲۶، با این حجم از کراولرها، بات‌ها و ربات‌های اسکمر، بعضی سایت‌ها توی سناریوی Forgot Password خیلی راحت جواب می‌دن: Email Not Found. یعنی اگر من ایمیل یک نفر رو داشته باشم، می‌تونم برم توی مسیر بازیابی رمز عبور و بفهمم آیا اون آدم قبلاً عضو اون سایت بوده یا نه. این دقیقاً همون جاییه که UX Writing فقط مسئله‌ی شفاف‌نویسی نیست؛ مسئله‌ی مرز بین اطلاع‌رسانی کافی و افشای داده‌ی پشت سیستم هم هست.
وقتی محصول به من می‌گه «ایمیل یافت نشد»، در واقع داره فرض می‌کنه من حق دارم این اطلاعات رو بدونم. در حالی که با تقریب خوبی، نه. پیام‌هایی مثل «اگر این ایمیل در سیستم ثبت شده باشد، لینک بازیابی رمز عبور ارسال خواهد شد» شاید از نظر تجربه کاربری کمی گنگ‌تر باشن، اما از نظر امنیت و حریم خصوصی رفتار بالغ‌تری دارن. چون به کاربر واقعی کمک می‌کنن، بدون اینکه به فرد ناشناس اطلاعات اضافه بدن.
ما خیلی وقت‌ها درباره‌ی امنیت محصول به‌عنوان چیزی جدا از حریم خصوصی حرف می‌زنیم، در حالی که این دو در عمل به‌شدت به هم گره خوردن. اتحادیه اروپا درگیر کوکی‌ها و قوانین پیچیده‌ایه که خیلی وقت‌ها به UX آسیب می‌زنن، اما هم‌زمان هنوز چنین مسئله‌های ساده‌ای توی محصول‌ها دیده می‌شه. به نظرم امنیت نباید بعد از حریم خصوصی بیاد؛ امنیت باید طوری طراحی بشه که از همان ابتدا مراقب حریم خصوصی آدم‌ها هم باشد.
همون مقاله‌ی Quanta از یک زاویه‌ی عمیق‌تر می‌گفت گاهی «ندانستن» یا «نتوانستن برای اثبات» می‌تونه بخشی از مدل امنیت باشه. شاید در طراحی محصول هم باید همین‌قدر جدی به این فکر کنیم که چه چیزهایی را اصلاً نباید به کاربر ناشناس بگوییم، حتی اگر گفتنش از نظر UX ساده‌تر و واضح‌تر به نظر برسد.
مقاله باحالیه، اگه نخوندین یه سر بهش بزنین:

https://www.quantamagazine.org/how-unknowable-math-can-help-hide-secrets-20260511/

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

سورس پست لینکدین

@codehalics | کدهالیک
4👀1
متأسفانه نوبرکلاد، یکی از استارتاپ‌های خوش‌فکر و آینده‌دار حوزه کلاد، زیرساخت و خدمات دواپس، نتوانست مسیر فعالیت خود را در شرایط موجود ادامه دهد و به کار خود پایان داد.

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

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

@codehalics |کدهالیک
💔11🕊1😇1
کدهالیک | codehalic
بازگشایی اینترنت بین الملل مصوب شد 🔹ستاد راهبری و ساماندهی فضای مجازی صبح امروز دوشنبه (چهارم خردادماه) به ریاست دکتر عارف معاون اول رئیس جمهور تشکیل جلسه داد و بازگشت اینترنت به وضعیت قبل از دی ماه 1404 مصوب شد. 🔹این مصوبه برای رییس جمهور ارسال شد و در…
فوری

بازگشایی اینترنت بین‌الملل ثابت شروع شد

🔹در پی دستور رئیس جمهور به وزیر ارتباطات برای بازگشایی اینترنت بین الملل: تا ساعت ۱۵ امروز سه شنبه (۵ خردادماه) حاکی از ادامه روند بازگشایی است و توقفی در اجرای حکم رئیس جمهور صورت نگرفته است.

@codehalics | کدهالیک
🕊1
کدهالیک | codehalic
فوری بازگشایی اینترنت بین‌الملل ثابت شروع شد 🔹در پی دستور رئیس جمهور به وزیر ارتباطات برای بازگشایی اینترنت بین الملل: تا ساعت ۱۵ امروز سه شنبه (۵ خردادماه) حاکی از ادامه روند بازگشایی است و توقفی در اجرای حکم رئیس جمهور صورت نگرفته است. @codehalics |…
یه توصیه اکید بهتون دارم اگر که اینترنتتون وصل شد (قاعدتا تا الانم وصل بودید ولی حجم و هزینه اینترنتتون بصرفه نبوده که آپدیت کنین ) اولین کاری که انجام باید بدید آپدیت کردن همه دیوایس هاتونه چون توی این ۹۰ روز تا دلتون بخواد زیرو دی اومده
هم سرور ها هم گوشی موبایل و هر چیزی که آپدیت میگیره رو آپدیت کنید حتما !
مخصوصا سرویس هایی که این چند وقت شنیدید که هک شدن مثل پنل های هاست و ...

@codehalics | کدهالیک
8
یه پست بامزه و جالب امروز راجب به استفاده از ai دیدم که ترجمش رو براتون میزارم حس و حال های مشترکی با خود من داره و همینارو منم حس کردم و جالب بود !

از حرف زدن با هوش مصنوعی خسته شده‌ام.

چند ریپازیتوری در GitHub پیدا کردم که بدافزار پخش می‌کردند. از AI پرسیدم باید چه کار کنم، اما جواب مفیدی نداد. بعد در GitHub یک بحث باز کردم. کسی جواب داد، اما دقیقاً همان متن AI بود. وقتی گفتم، کامنت حذف شد. نفر بعدی هم دوباره همان پاسخ AI را فرستاد.

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

اخیراً هم در Reddit با کسی در حال گفتگو بودم، اما بعد از چند پیام فهمیدم دارم با یک AI صحبت می‌کنم.

مشکل فقط AI نیست؛ این است که آدم‌ها هم دیگر فکر نمی‌کنند، فقط پاسخ AI را کپی می‌کنند و می‌فرستند.

از حرف زدن با AI خسته شده‌ام. می‌خواهم با انسان‌ها صحبت کنم.


https://orchidfiles.com/im-tired-of-ai-generated-answers/

@codehalics | کدهالیک
👍11
یه باگ امنیتی مهم توی FastAPI (و Starlette) وجود داره که باعث میشه با دستکاری هدر Host، مسیر درخواست جعلی ساخته بشه و در بعضی حالت‌ها بشه احراز هویت یا دسترسی به APIها رو دور زد.

https://badhost.org/

@codehalics | کدهالیک
2
کلودفلر یه فیچری داده بیرون به اسم Cloudflare Flagship یک سرویس مدیریت Feature Flag است که به توسعه‌دهنده‌ها اجازه می‌دهد قابلیت‌های نرم‌افزار را بدون نیاز به انتشار مجدد کد کنترل کنند. با استفاده از آن می‌توان فیچرها را برای درصدی از کاربران فعال کرد، به‌صورت مرحله‌ای rollout انجام داد یا بر اساس قوانین و ویژگی‌های کاربر آن‌ها را محدود یا فعال کرد. این سرویس با Cloudflare Workers و استاندارد OpenFeature سازگار است و امکان مدیریت ساده و انعطاف‌پذیر ویژگی‌های اپلیکیشن را فراهم می‌کند.

https://developers.cloudflare.com/flagship/

پ.ن : این ویژگی از چند وقت پیش برای عده ای فعال شده بود ولی الان وارد فاز پابلیک بتا شده !

@codehalics | کدهالیک