Category: التطوير

تفوق على std::deque: تقديم مصفوفة Shift-To-Middle

2025-03-23
تفوق على std::deque: تقديم مصفوفة Shift-To-Middle

مصفوفة Shift-To-Middle هي مصفوفة ديناميكية مصممة لتتفوق على std::deque و std::vector والقوائم المرتبطة في عمليات الإدراج والحذف من كلا الطرفين. تحقق ذلك من خلال استخدام ذاكرة متصلة، وتحسين محلية ذاكرة التخزين المؤقت، ودعم تحسينات SIMD والعمليات المتوازية. تُظهر المقاييس تحسينات كبيرة في الأداء، خاصة على وحدات المعالجة المركزية متعددة النواة والأجهزة التي تدعم مجموعات تعليمات SIMD. المشروع مفتوح المصدر، مع توثيق واجهة برمجة التطبيقات الكامل وتقارير المقاييس المتاحة. الاشتراكات مرحب بها!

مساعدو البرمجة بالذكاء الاصطناعي: أزمة وجودية لمهندسي البرمجيات؟

2025-03-23

يُعيد ظهور مساعدي البرمجة بالذكاء الاصطناعي تشكيل دور مهندسي البرمجيات بشكل أساسي، محولين إياهم من مجرد مبرمجين إلى منسقين ومديرين لأنظمة الذكاء الاصطناعي. وقد أثار هذا التحول أزمة هوية داخل مجتمع هندسة البرمجيات. يستكشف المقال التحديات والفرص التي تقدمها هذه التحولات، مشددًا على أن القيمة الأساسية لمهندس البرمجيات تكمن في حل المشكلات وخلق القيمة، وليس مجرد البرمجة. يتطلب المستقبل مهارات اتصال أقوى، وفكرًا منهجيًا، وقدرة على التكيف من أجل الازدهار في عصر الذكاء الاصطناعي.

التطوير أزمة هوية

ثغرات أمنية حرجة متعددة في باجور تؤدي إلى تنفيذ التعليمات البرمجية عن بُعد

2025-03-23
ثغرات أمنية حرجة متعددة في باجور تؤدي إلى تنفيذ التعليمات البرمجية عن بُعد

اكتشف باحثون أمنيون العديد من الثغرات الأمنية الحرجة في باجور، وهي منصة تطوير البرمجيات التي يستخدمها فيدورا، مما يسمح بتنفيذ التعليمات البرمجية عن بُعد (RCE). نشأت إحدى الثغرات من حقن وسيطة في دالة PagureRepo.log()، مما سمح للمهاجمين بالكتابة في ملفات عشوائية وتنفيذ تعليمات برمجية عشوائية. شملت الثغرات الأخرى تجاوز المسار وعدم التعامل بشكل صحيح مع الارتباطات الرمزية. يمكن استغلال هذه الثغرات لتعديل ملفات مواصفات حزم فيدورا، مما قد يؤدي إلى إدخال تعليمات برمجية ضارة. يمكن للمهاجمين حتى الحصول على التحكم الكامل في خادم باجور من خلال الكتابة فوق ملف `/srv/git/.bashrc`. هاجر فيدورا إلى Forgejo لحل هذه المشكلة، لكن الثغرات الأمنية تبرز مشكلات حرجة في أمن سلسلة التوريد للبرمجيات مفتوحة المصدر.

التطوير

ttyd: مشاركة محطة العمل الخاصة بك عبر الويب

2025-03-23
ttyd: مشاركة محطة العمل الخاصة بك عبر الويب

ttyd أداة سطر أوامر بسيطة لمشاركة محطة العمل الخاصة بك عبر الويب. توفر مجموعة واسعة من الخيارات، بما في ذلك تحديد المنفذ، وربط واجهة الشبكة، والتحقق من صحة الهوية، وإعدادات أذونات المستخدم، ودلائل العمل المخصصة، والمزيد، مما يسمح بالتكوين المرن. تضمن الميزات المتقدمة مثل تشفير SSL، ودعم IPv6، ومرور وسيطات العميل، وصولًا آمنًا وموثوقًا إلى محطة العمل عن بُعد.

برنامج Go: تحويل تقرير مراجعة الأمان JSON إلى تقرير Markdown

2025-03-23
برنامج Go: تحويل تقرير مراجعة الأمان JSON إلى تقرير Markdown

برنامج Go بسيط يحول ملف `security-audit.json` إلى ملف `security-audit.md` لاستخدامه في خطوط أنابيب CI. تم توفير مثال لتقرير، بالإضافة إلى أمثلة لدمج CI (`dependency-audit.yml` و `dependency-audit-only-when-detected.yml`)، حيث يقوم الأخير بإنشاء مشكلة في GitHub فقط إذا تم اكتشاف ثغرات أمنية. يسمح البرنامج بتخصيص مسارات ملفات الإدخال والإخراج، ويقدم خيارًا للفشل إذا لم يتم العثور على أي ثغرات أمنية.

التطوير مراجعة الأمان

تعزيز خصوصية سفاري: دليل عملي

2025-03-23
تعزيز خصوصية سفاري: دليل عملي

تتناول هذه المقالة إعداد المؤلف لتعزيز خصوصية سفاري. يستخدم iCloud Private Relay لإخفاء عناوين IP وتشفير استعلامات DNS، بالإضافة إلى ثلاث إضافات: Wipr (حاجز إعلانات)، StopTheMadness Pro (مكافحة التتبع)، وHush (حاجز ملفات تعريف الارتباط والواجهة المنبثقة). تُظهر الاختبارات حماية قوية ضد تتبع الويب، على الرغم من أن تفرد بصمة الإصبع لا يزال مجالًا للتحسين. تُدرج مقارنات مع تكوينات Firefox وBrave، مما يُظهر في النهاية رضا المؤلف عن إعداد سفاري الذي اختاره.

التطوير

شركة ناشئة في مجال العقارات مدعومة من YC تبحث عن مهندس TypeScript

2025-03-23
شركة ناشئة في مجال العقارات مدعومة من YC تبحث عن مهندس TypeScript

تبحث شركة ناشئة مدعومة من Y Combinator (S24) عن مهندس TypeScript للانضمام إلى فريقها الذي يعمل على إحداث ثورة في مجال العقارات. يقومون ببناء منصة ذكاء اصطناعي متطورة تقوم بأتمتة سير عمل وسطاء العقارات، بما في ذلك المراسلة وإدارة الصفقات والتفاعل مع العملاء. يقدم هذا المنصب راتباً يتراوح بين 100000 و 150000 دولار و نسبة من الأسهم تتراوح بين 0.5% و 2.5%. يجب أن يكون لدى المرشحين خبرة في استخدام الذكاء الاصطناعي لتسليم التعليمات البرمجية بسرعة، وتقديم ميزات موجهة للمستهلك، وفهم جيد للنماذج الحالية للذكاء الاصطناعي.

كتابة تعليمات برمجية صديقة لوحدة المعالجة المركزية: دليل للبرمجة المدركة للأجهزة

2025-03-23
كتابة تعليمات برمجية صديقة لوحدة المعالجة المركزية: دليل للبرمجة المدركة للأجهزة

تستخدم هذه المقالة تشبيه مطعم السيارات لتفسير ثلاثة مفاهيم أساسية في بنية وحدة المعالجة المركزية: خط أنابيب التعليمات، وذاكرة التخزين المؤقت، والتنفيذ التنبؤي. ويجادل الكاتب بأن فهم هذه الآليات وكتابة التعليمات البرمجية التي تعمل معها (البرمجة المدركة للأجهزة) يمكن أن يحسّن بشكل كبير أداء البرامج. وتتناول المقالة تقنيات تحسين التعليمات البرمجية، مثل فك ضغط الحلقات للاستفادة من التنفيذ الفائق، وتحسين تصميم بنية البيانات وأنماط الوصول للاستفادة القصوى من ذاكرة التخزين المؤقت، لزيادة الكفاءة. وفي النهاية، يشدد الكاتب على أن كتابة التعليمات البرمجية الفعالة تقتصر على كتابة تعليمات برمجية نظيفة وسهلة الصيانة أولاً، ثم إجراء عملية تحديد الملف الشخصي للتعرف على الاختناقات في الأداء، وأخيراً تطبيق مبادئ البرمجة المدركة للأجهزة للتعامل مع هذه الاختناقات.

ثغرة أمنية حرجة في وسيط Next.js: CVE-2025-29927

2025-03-23

اكتشف باحثون أمنيون ثغرة أمنية حرجة (CVE-2025-29927) في وسيط Next.js، مما يؤثر على جميع الإصدارات تقريبًا من 11.1.4 إلى أحدث إصدار. تسمح هذه الثغرة للمهاجمين بتجاوز وسيط، بما في ذلك المصادقة والترخيص، من خلال التلاعب برأس `x-middleware-subrequest`. يمكن أن يؤدي هذا إلى تجاوز آليات الأمان وحتى هجمات حجب الخدمة عن طريق تسميم ذاكرة التخزين المؤقت. أصدر فريق Vercel تصحيحات؛ يجب على جميع مستخدمي Next.js الترقية على الفور.

التطوير

كائنات القيمة الأنيقة في روبي: غوص عميق في فئة `Data`

2025-03-23
كائنات القيمة الأنيقة في روبي: غوص عميق في فئة `Data`

تستكشف هذه المقالة إنشاء كائنات القيمة في روبي، وتدعو إلى استخدام فئة `Data` الحديثة. توفر `Data` طريقة ملائمة لتعريف كائنات ثابتة، متساوية في القيمة، وتدعم طرق تهيئة متعددة، بما في ذلك الوسائط المسماة، والوسائط الموضعية، والأشكال الشبيهة بالهاش. كائنات `Data` ثابتة بطبيعتها، قابلة للمقارنة بالقيمة والنوع، وتسمح بتعريف طرق مخصصة، مما يحسن من قابلية قراءة وسهولة صيانة الكود. تقارن المقالة بين `Data` و `Struct`، وتسلط الضوء على ميزة الثبات في `Data`، بالإضافة إلى معالجة قابلية تغيير الكائنات المتداخلة.

argp: محلل قوي لمعلمات سطر الأوامر وفقًا لمعيار GNU بلغة Go

2025-03-23
argp: محلل قوي لمعلمات سطر الأوامر وفقًا لمعيار GNU بلغة Go

argp مكتبة Go توفر محللًا قويًا لمعلمات سطر الأوامر يتوافق مع معايير GNU. تتميز بميزات مثل المساعدة المدمجة، ومسح حقول الهياكل، ودعم الأنواع المركبة (المصفوفات، والشرائح، والهياكل)، والأوامر الفرعية المتداخلة. يتبع argp قواعد معلمات GNU، ويعالج الخيارات القصيرة والطويلة، وقيم الخيارات، والقيم المتعددة، ومجموعات الخيارات. كما يوفر تحميل التكوين، والعد، والإضافة، ودعم مصادر البيانات المخصصة، مثل قواعد بيانات MySQL. يمكن للمطورين استخدام argp لإنشاء أدوات سطر أوامر قوية بكفاءة.

المبرمج ذو الإنتاجية الصفرية الذي أنقذ الفريق

2025-03-23

أدخلت شركة استشارات برمجيات مقاييس أداء فردية، وحصل مبرمج اسمه تيم على درجة صفر باستمرار. أراد المدير طرده، لكن قائد فريقه رفض. لم يُسلم تيم أي كود فردي، لكنه عمل مع زملائه في الفريق، محسناً مهاراتهم وجودة الكود، مما زاد من كفاءة الفريق وإنتاجيته بشكل عام. هذه القصة تبرز حدود قياس المساهمات الفردية في الأنظمة المعقدة، مؤكدةً على أهمية التعاون الجماعي والفعالية العامة.

التطوير مقاييس الأداء

تصحيح أخطاء حالة السباق: فخ RtlRunOnceExecuteOnce

2025-03-23
تصحيح أخطاء حالة السباق: فخ RtlRunOnceExecuteOnce

واجه أحد الزملاء مشكلة تعارض صعبة خلال جلسة تصحيح أخطاء أسبوعية: فشل قسم حرج في منع خيطين من دخول نفس كتلة التعليمات البرمجية، مما أدى إلى فشل تسجيل مزدوج لـ `TraceLoggingRegister`. كشف التصحيح العميق عن السبب الجذري: أعادت دالة الإعداد `InitializeCriticalSectionOnce` لـ `RtlRunOnceExecuteOnce` قيمة `STATUS_SUCCESS` (0) بشكل غير صحيح. هذا أدى إلى اعتقاد `RtlRunOnceExecuteOnce` بأن الإعداد فشل، مما تسبب في إعادة تهيئة القسم الحرج في كل مرة يتم فيها استدعاء الدالة، وبالتالي إطلاق حالة السباق. كان الحل هو تغيير قيمة الإرجاع إلى `TRUE`، أو بشكل أنيق أكثر، استبدال `CRITICAL_SECTION` بـ `SRWLOCK`. يبرز هذا المثال كيف يمكن أن تؤدي أخطاء دقيقة في قيمة الإرجاع إلى عواقب وخيمة، ويشدد على أهمية اختيار البدائي المناسب للمزامنة.

التطوير

arXivLabs: مشاريع تجريبية بالتعاون مع المجتمع

2025-03-23
arXivLabs: مشاريع تجريبية بالتعاون مع المجتمع

arXivLabs هو إطار عمل يسمح للمشاركين بتطوير ومشاركة ميزات arXiv الجديدة مباشرةً على موقعنا الإلكتروني. وقد تبنى الأفراد والمنظمات التي تعمل مع arXivLabs قيمنا المتمثلة في الانفتاح والمجتمع والتميز وخصوصية بيانات المستخدمين. يلتزم arXiv بهذه القيم ويعمل فقط مع الشركاء الذين يلتزمون بها. هل لديك فكرة لمشروع سيضيف قيمة لمجتمع arXiv؟ تعرف على المزيد حول arXivLabs.

التطوير

LunaJoy توظف مُختبرًا يدويًا أوليًا لضمان الجودة

2025-03-23
LunaJoy توظف مُختبرًا يدويًا أوليًا لضمان الجودة

تعلن منصة LunaJoy للصحة النفسية عن وظيفة شاغرة لمُختبر يدوي أوليًا لضمان الجودة. تتخصص LunaJoy في الصحة النفسية للمرأة على مدار حياتها، وتقدم خدمات العلاج النفسي، وتقييم الأدوية، وعلاج التغذية، والتدخلات الجسدية والعقلية، من خلال التكامل المباشر مع عيادات التوليد وأنظمة الرعاية الصحية. يتطلب المرشح المثالي معرفة بدورة حياة تطوير البرمجيات (SDLC)، وتطوير حالات الاختبار، وأدوات تتبع الأخطاء (مثل JIRA)، وأنواع الاختبار المختلفة (الوظيفية، والانحدار، وقابلية الاستخدام، وما إلى ذلك). كما تُعد معرفة قواعد البيانات وخبرة اختبار واجهة برمجة التطبيقات من المزايا الإضافية. توفر LunaJoy العمل عن بُعد، وتعويضات ومزايا تنافسية، وبيئة عمل شاملة.

هام: تحديث أمني من Next.js لإصلاح ثغرة أمنية حرجة

2025-03-22
هام: تحديث أمني من Next.js لإصلاح ثغرة أمنية حرجة

أصدرت Next.js الإصدار 15.2.3 لإصلاح ثغرة أمنية حرجة (CVE-2025-29927) قد تسمح بالوصول غير المصرح به. تكمن الثغرة في معالجة رأس `x-middleware-subrequest` في برنامج الوسيط، مما قد يسمح للمهاجمين بتجاوز عمليات التحقق الأمنية الحرجة مثل المصادقة. يُنصح جميع عمليات نشر Next.js ذاتية الاستضافة التي تستخدم `next start` و `output: 'standalone'` بالتحديث على الفور. كما تتوفر تصحيحات لإصدارات Next.js 14.x و 13.x.

التطوير

ترميز الاهتزاز: الضجيج مقابل الواقع

2025-03-22
ترميز الاهتزاز: الضجيج مقابل الواقع

يُنتقد في هذا المقال الاتجاه الحديث على وسائل التواصل الاجتماعي المتمثل في "ترميز الاهتزاز" (Vibe Coding)، والذي يعتمد على نماذج اللغات الكبيرة (LLMs) لإنشاء الاكواد. على الرغم من أن وكلاء LLMs مثل Cursor يمكنهم إنشاء نماذج أولية للكود بسرعة، إلا أن الكاتب يجادل بأن هذا مجرد سطح المشكلة. في الواقع، تكافح LLMs مع المشاريع المعقدة، وتفتقر إلى الاهتمام بالتفاصيل، وهي غير مناسبة لتطوير البرمجيات الإنتاجية. يستخدم الكاتب خبراته الشخصية وأمثلة لتوضيح قيود وكلاء LLMs، مثل ارتكاب أخطاء بسيطة، وسوء إدارة السياقات المتعددة، وعدم وجود ذاكرة طويلة المدى. على الرغم من أن LLMs يمكن أن تحسن كفاءة التطوير، إلا أنها لا تستطيع استبدال المطورين البشريين بالكامل، خاصة في السيناريوهات التي تتطلب موثوقية وأمانًا عاليين. يستنتج الكاتب أن "ترميز الاهتزاز" قد يسمح بإنشاء نماذج أولية بسرعة، ولكن البرمجيات الموثوقة لا تزال تحتاج إلى مبرمجين ذوي خبرة.

التطوير

تنفيذ أوامر shell الآمنة: نهج جديد لربط السلاسل

2025-03-22

تتناول هذه المقالة طرقًا آمنة لتنفيذ أوامر shell باستخدام مدخلات المستخدم، وتجنب ثغرات حقن الأوامر. يبدأ الكاتب بمثال ضعيف، ثم يعرض ثلاثة حلول محسّنة: استخدام `execFile` بدلاً من `exec`، و تمرير الوسائط عبر متغيرات البيئة، واستخدام الربط الآمن مع قوالب السلاسل في JavaScript. كما تقارن المقالة نهجًا مشابهًا في لغات أخرى مثل Python و Swift، وتنتهي بحل Python ذكي بشكل مدهش (ولكن ليس جاهزًا للإنتاج) يستخدم الدوال الزخرفية والتعبيرات العادية لتحقيق الربط الآمن.

لوغاريتمات المصفوفات و استيفاء التحويلات: فهم التحويلات كحقول سرعة

2025-03-22

تتناول هذه المقالة كيفية استيفاء مصفوفة التحويل T بسلاسة لنقل نقطة x من موقعها الأولي إلى موقعها المحول بواسطة T. المفتاح هو استخدام الأسّيّات و لوغاريتمات المصفوفات. برفع T إلى قوة t (T^t = e^(log(T)*t))، يمكننا الحصول على التحويل T(t) في الزمن t. ومن المثير للاهتمام، أن log(T) يمثل مجال سرعة التحويل؛ حاصل ضربه في النقطة x يعطي متجه السرعة في تلك النقطة. تشرح المقالة هذا المبدأ الرياضي بالتفصيل، مع تقديم مثال تفاعلي وروابط شفرة توضح استيفاء التحويلات و تصور المصفوفة كحقل سرعة.

كود كلود الآن يقوم بتصحيح أخطاء Node.js في الوقت الفعلي: دراسة حالة اتصال MongoDB

2025-03-22
كود كلود الآن يقوم بتصحيح أخطاء Node.js في الوقت الفعلي: دراسة حالة اتصال MongoDB

يسمح لك البرنامج المساعد @hyperdrive-eng/mcp-nodejs-debugger لخادم MCP بتصحيح أخطاء كود Node.js أثناء التشغيل. توضح هذه المقالة كيفية استخدام هذا البرنامج المساعد لتصحيح أخطاء تطبيق Node.js الذي يتصل بقاعدة بيانات MongoDB Atlas، مع عرض خطأ اتصال أثناء التشغيل. من خلال تعيين نقاط توقف في كود كلود وتنفيذ تعليمات JavaScript مخصصة، يمكن للمطورين فحص متغيرات تكوين MongoDB لتحديد المشكلات، مثل بيانات الاعتماد غير الصحيحة أو عناوين IP غير المصرح بها. الحل يتضمن استخدام مثيل MongoDB محلي أو تكوين الوصول إلى الشبكة وبيانات اعتماد MongoDB Atlas بشكل صحيح.

استيفاء السلاسل في AmigaDOS: ما وراء الأقواس المتعرجة {}

2025-03-22

تستكشف هذه المدونة المرونة والميزات الخاصة باستيفاء السلاسل في نصوص شل AmigaDOS. بينما يستخدم AmigaDOS بشكل افتراضي '<' و '>' للاستيفاء، فإنه يسمح بالتخصيص من خلال توجيهات '.BRA' و '.KET'. تُظهر التجارب استخدامًا ناجحًا لأزواج مختلفة من الأحرف، بما في ذلك أحرف ASCII قابلة للطباعة وغير قابلة للطباعة (مثل BEL و NAK). هذا يبرز قوة محلل نصوص AmigaDOS وقدرته على التعامل مع المدخلات غير المعتادة.

مشروع مفتوح المصدر من Mozilla.ai: تسريع رسم الخرائط في OpenStreetMap باستخدام الذكاء الاصطناعي

2025-03-22
مشروع مفتوح المصدر من Mozilla.ai: تسريع رسم الخرائط في OpenStreetMap باستخدام الذكاء الاصطناعي

أصدرت Mozilla.ai مشروعًا مفتوح المصدر يُسمى OpenStreetMap AI Helper Blueprint، مُصممًا لتسريع عملية رسم الخرائط على OpenStreetMap. يُدمج هذا المشروع بذكاء نموذج كشف الكائنات YOLOv11 ونموذج التجزئة SAM2 لتحديد وتحديد ملامح الخريطة تلقائيًا (مثل حمامات السباحة)، مما يُعزز الكفاءة. يقوم المستخدمون بتدريب النماذج في بيئات Colab المُقدمة، ثم التحقق من النتائج يدويًا، مما يُحسّن بشكل كبير سرعة رسم الخرائط مع الحفاظ على مراقبة الجودة. يُبرز هذا كيفية قيام نماذج الذكاء الاصطناعي الخفيفة والودودة للمستخدمين المحليين بتعزيز المشاريع التي يقودها المجتمع دون الاعتماد على نماذج اللغات الكبيرة.

التطوير رسم الخرائط

Landrun: صندوق رمل خفيف وآمن لنظام لينكس

2025-03-22
Landrun: صندوق رمل خفيف وآمن لنظام لينكس

Landrun هو صندوق رمل خفيف لنظام لينكس يستخدم Landlock LSM، ويمتاز بأمان على مستوى النواة وبتكلفة منخفضة. يُتيح التحكم الدقيق في الوصول إلى الدلائل، ويدعم مسارات القراءة والكتابة، مع إمكانية السماح بتنفيذ الأوامر بشكل اختياري. كما يتضمن التحكم في الوصول إلى شبكة TCP (الربط والاتصال). يتطلب نظام لينكس بالإصدار 5.13 أو أحدث مع تمكين Landlock LSM (الإصدار 6.8 أو أحدث للقيود الشبكية). يُوفر Landrun واجهة سطر أوامر لسهولة تكوين أذونات صندوق الرمل، بما في ذلك القراءة فقط، والقراءة/الكتابة، والتنفيذ، ومنافذ TCP محددة للربط والاتصال. يضمن وضع بذل أقصى جهد انخفاضًا سلسًا على أنظمة لينكس الأقدم. مثالي لتشغيل التعليمات البرمجية غير الموثوقة أو الضارة المحتملة بأمان.

تقريرين يسلطان الضوء على فجوات المعرفة وأفضل الممارسات للامتثال لقانون المرونة السيبرانية في البرمجيات مفتوحة المصدر

2025-03-22
تقريرين يسلطان الضوء على فجوات المعرفة وأفضل الممارسات للامتثال لقانون المرونة السيبرانية في البرمجيات مفتوحة المصدر

أصدرت مؤسسة لينكس تقريرين بحثيين رائدين يستكشفان استراتيجيات يقودها المجتمع للتصدي لأمن البرمجيات مفتوحة المصدر وقانون المرونة السيبرانية التابع للاتحاد الأوروبي (CRA). يحلل التقرير الأول كيف تلبي ثلاثة مشاريع تابعة لمؤسسة لينكس الحد الأدنى من متطلبات الامتثال لقانون CRA، مع تقاسم أفضل الممارسات. ويكشف التقرير الثاني عن ثغرات كبيرة في المعرفة داخل نظام البرمجيات مفتوحة المصدر فيما يتعلق بالوعي بقانون CRA، حيث أن العديد من المستجيبين غير ملمين بالقانون ويفتقرون إلى الاستعداد للامتثال. توصي التقارير بأن يتولى المصنعون دورًا أكثر نشاطًا في أمن البرمجيات مفتوحة المصدر، داعيةً إلى زيادة التمويل والدعم القانوني لتعزيز ممارسات الأمن الأفضل.

FizzBee: نمذجة الاستبعاد المتبادل ومكامن الخطر في Redlock

2025-03-22
FizzBee: نمذجة الاستبعاد المتبادل ومكامن الخطر في Redlock

تتناول هذه المقالة تجربة الكاتب في استخدام FizzBee، وهي لغة مواصفات رسمية جديدة مبنية على Starlark، لنمذجة خوارزميات الاستبعاد المتبادل والتحقيق في المشاكل المتعلقة بخوارزمية Redlock. من خلال نمذجة الأقسام الحرجة، والأقفال، والإيجارات، ورموز السياج، يكشف الكاتب عن قيود تحمل Redlock للأخطاء، مما يدل في النهاية على أن رموز السياج لا تحل مشاكل الاستبعاد المتبادل تمامًا. يختتم الكاتب بمناقشة سهولة استخدام FizzBee ونقاط ضعفها مع تسليط الضوء على أهمية المواصفات الرسمية في تصميم الخوارزميات. وقد كشف التمرين العملي بشكل غير متوقع عن عيوب دقيقة في فهم الكاتب لرموز السياج، مما يؤكد أهمية الأساليب الرسمية.

الغوص في أعماق PyTorch: المصفوفات، وAutograd، وكتابة النوى

2025-03-22

تقدم هذه المدونة شرحًا تفصيليًا لآليات PyTorch الداخلية، بما في ذلك هياكل بيانات المصفوفات، والتفاضل التلقائي (Autograd)، وكتابة النوى. تبدأ بشرح التنفيذ الأساسي للمصفوفات، بما في ذلك مفهوم الخطوات وكيفية استخدامها لإنشاء مناظر مصفوفة. بعد ذلك، تتعمق في كيفية عمل Autograd، مع توضيح كيفية حساب التدرجات من خلال الانتشار العكسي. وأخيرًا، تقدم المدونة دليلًا عمليًا لكتابة نوى PyTorch، بما في ذلك كيفية استخدام أدوات PyTorch للتحقق من الأخطاء، وإرسال النوع، والتوازي. هذا البرنامج التعليمي ممتاز للمطورين الذين لديهم بعض الخبرة في PyTorch والذين يرغبون في فهم آلياتها الداخلية أو المساهمة في الكود.

التطوير تطوير النوى

استعادة نظام لينكس بعد حذف مجلد /lib عن طريق الخطأ

2025-03-22

يشرح هذا المنشور كيفية استعادة نظام لينكس بعد حذف المجلد المهم `/lib` عن طريق الخطأ. يستكشف الكاتب عدة طرق، من استخدام أدوات موجودة مثل busybox الثابت، إلى إنشاء ونقل برنامج C صغير جدًا تم تجميعه بشكل ثابت لاستبدال الملفات الأساسية. يغطي الدليل خطوة بخطوة تقنيات باستخدام أوامر bash المضمنة ونقل الملفات عبر الشبكة، مما يوفر حلاً لتجنب إعادة تثبيت نظام التشغيل.

FastOpenAPI: مُنشئ OpenAPI قائم على Pydantic

2025-03-22
FastOpenAPI: مُنشئ OpenAPI قائم على Pydantic

FastOpenAPI هي مكتبة لإنشاء وتكامل مخططات OpenAPI باستخدام Pydantic وأطر عمل متنوعة، بهدف توفير تجربة سهلة للمطورين مشابهة لتجربة FastAPI. تدعم Falcon وFlask وQuart وSanic وStarlette وTornado، مع توفير توجيه على غرار FastAPI من خلال توجيه الوكيل. تتميز بسهولة التثبيت باستخدام pip، بالإضافة إلى واجهات Swagger UI وReDoc UI للوصول المريح إلى الوثائق. يتضمن المشروع أمثلة شاملة واختبارات قياسية لتسهيل الاستخدام وتقييم الأداء.

التطوير تكامل الأطر

تطور بنية التطبيقات وصعود الأوركسترا الخفيفة

2025-03-22
تطور بنية التطبيقات وصعود الأوركسترا الخفيفة

من بنية الثلاث طبقات في التسعينيات إلى عالم مايكروسيرفيس اليوم، شهدت بنية التطبيقات تحولًا جذريًا. ولتنسيق العمليات في الخلفية الموزعة، ظهرت طبقة الأوركسترا. ومع ذلك، فإن حلول افعلها بنفسك الحالية معقدة وصعبة الصيانة، بينما أنظمة الأوركسترا المخصصة تُدخِل تعقيداتها الخاصة. تُقدّم هذه المقالة نهجًا جديدًا: دمج وظائف الأوركسترا في مكتبة خفيفة الوزن واستخدام قاعدة بيانات لإبقاء حالة التنفيذ، مما يلغي طبقة الأوركسترا المنفصلة، ويُبسّط عملية التطوير والاختبار وإصلاح الأخطاء، مما يؤدي في النهاية إلى بنى تطبيقات أكثر موثوقية وكفاءة.

روبي: لغة غير متوقعة لثورة الذكاء الاصطناعي؟

2025-03-22

تتميز نماذج اللغات الكبيرة (LLMs) ببراعتها في توليد الأكواد، لكن نوافذ السياق المحدودة لديها تعيق العمل مع قواعد البيانات الكبيرة للرموز. يستكشف هذا المقال "قوة" البرمجة بمساعدة نماذج اللغات الكبيرة: كم عدد الرموز اللازمة للتعبير عن برنامج؟ يُجادل الكاتب بأن بايثون تتفوق على جو بالنسبة لنماذج اللغات الكبيرة بسبب إيجازها، مما يسمح بمزيد من الميزات ضمن حدود الرموز. علاوة على ذلك، يُطرح روبي، المعروف بأناقته وإيجازه، كلغة مثالية لنماذج اللغات الكبيرة نظرًا لاستخدامه الفعال للرموز. على الرغم من استمرار التحديات مثل التحقق من النوع، فإن تصميم روبي الذي يركز على الإنسان يجعله، بشكل ساخر، في طليعة المنافسة بالنسبة لنماذج اللغات الكبيرة.

التطوير
1 2 131 132 133 135 137 138 139 213 214