Category: التطوير

Hurl: أداة سطر الأوامر لاختبار طلبات HTTP

2025-06-20
Hurl: أداة سطر الأوامر لاختبار طلبات HTTP

Hurl هي أداة سطر أوامر قوية تُعرّف وتُشغّل طلبات HTTP باستخدام تنسيق نص عادي بسيط. تدعم ربط الطلبات، و التقاط القيم، وتقييم الاستعلامات على رؤوس الاستجابة والهيئات، مما يجعلها مناسبة لجلب البيانات واختبار جلسات HTTP عبر العديد من واجهات برمجة التطبيقات مثل REST و SOAP و GraphQL. بُنيت باستخدام Rust وتستغل libcurl، Hurl خفيفة، وسريعة، وتتكامل بسلاسة مع خطوط أنابيب CI/CD من خلال العديد من صيغ التقارير.

التطوير

أنواع عشرية دقيقة ذات نقطة ثابتة في Rust: primitive_fixed_point_decimal

2025-06-20
أنواع عشرية دقيقة ذات نقطة ثابتة في Rust: primitive_fixed_point_decimal

تفتقر أنواع الفاصلة العائمة المضمنة في Rust إلى الدقة عند تمثيل الأعداد العشرية. توفر مكتبة `primitive_fixed_point_decimal` حلاً باستخدام أنواع صحيحة وعامل تحجيم لتمثيل الأعداد العشرية بدقة، مما يضمن دقة الكسور. توفر المكتبة نوعين: `ConstScaleFpdec`، الذي يحدد عامل التحجيم في وقت التجميع؛ و `OobScaleFpdec`، الذي يسمح بتحديده في وقت التشغيل، مما يوفر مرونة أكبر ولكن مع زيادة التعقيد. كما تعالج المكتبة الأخطاء التراكمية الناتجة عن عمليات الضرب والقسمة المتعددة، وتوفر آلية `cum_error` للتحكم. باختصار، إنها مكتبة Rust فعالة ودقيقة لأنواع النقاط الثابتة العشرية، وهي مثالية للتطبيقات التي تتطلب دقة عالية، مثل الأنظمة المالية.

التطوير نقطة ثابتة عشري

Git Smart Squash: تنظيف سجل عمليات الالتزام في Git باستخدام الذكاء الاصطناعي

2025-06-20
Git Smart Squash: تنظيف سجل عمليات الالتزام في Git باستخدام الذكاء الاصطناعي

سئمت من قضاء 30 دقيقة في إعادة تنظيم عمليات الالتزام قبل طلب السحب؟ تستخدم Git Smart Squash تقنية الذكاء الاصطناعي لتنظيم تغييراتك تلقائيًا في عمليات التزام منطقية ومنظمة بشكل جيد في ثوانٍ. تقوم بتحليل الاختلافات الخاصة بك، وتجميع التغييرات ذات الصلة معًا، وإنشاء رسائل التزام واضحة تتبع معايير الالتزام التقليدية. تدعم تقنية الذكاء الاصطناعي المحلية (Ollama) وتقنية الذكاء الاصطناعي السحابية (OpenAI، Anthropic، Gemini)، وتوفر آلية نسخ احتياطي آمنة وموثوقة لضمان حفظ عمليات الالتزام الأصلية الخاصة بك دائمًا. تتعامل حتى مع الاختلافات الكبيرة من خلال السماح لك بتقسيم عملك إلى أجزاء أصغر أو التبديل إلى مزود ذكاء اصطناعي سحابي.

RaptorCast: تصميم طبقة رسائل

2025-06-20

يعالج RaptorCast تحديات الأداء والأمان والمتانة في نشر الكتل في سلاسل الكتل Proof-of-Stake. يستخدم بروتوكول UDP لإعطاء الأولوية للسرعة، ويعوض عن فقدان الحزم باستخدام ترميز R10، ويضمن سلامة البيانات من خلال توقيعات شجرة Merkle. توزع استراتيجية البث المنظمة ذات الخطوتين البيانات بناءً على حصة المُصدق، وتستخدم التكرار لضمان توفر البيانات حتى مع فقدان الحزم والجهات الفاعلة الخبيثة. يسمح هذا النهج بنشر مقترحات الكتل بكفاءة.

متتبع بت تورنت عالي الأداء بلغة إليكسير: ExTracker

2025-06-20
متتبع بت تورنت عالي الأداء بلغة إليكسير: ExTracker

ExTracker هو متتبع بت تورنت عالي الأداء مكتوب بلغة Elixir. يتميز بانخفاض استخدام الذاكرة، وعدم الحاجة إلى تهيئة، واستخدام جميع النوى المتاحة. يدعم حاليًا HTTPS ونسخ بيانات القاعدة، ويقدم ثلاث طرق للنشر: رمز المصدر، إصدارات مُجمّعة مسبقًا، وصورة Docker. هناك نسخة تجريبية قيد التشغيل مع إحصائيات مباشرة، على الرغم من أن المشروع لا يزال قيد التطوير. تشمل الخطط المستقبلية ميزات مثل القائمة البيضاء/السوداء، وإدارة الأقران المحسّنة، ودعم GeoIP.

التطوير

Glaze: الاستيفاء السلسلي للغة C++ باستخدام Stencil و Mustache

2025-06-19

توفر مكتبة Glaze أداة قوية لاستيفاء السلاسل في لغة C++ باستخدام قوالب Stencil و Mustache. وهي تسهل تنسيق البيانات ذات الهياكل من أنواع البيانات المركبة في C++ إلى سلاسل. وتشمل الميزات استيفاء المتغيرات، والأقسام الشرطية البولينية، وتكرار الحاويات، والأقسام المتداخلة، والهروب من HTML على طراز Mustache. كما يتضمن معالجة الأخطاء والترقيم التلقائي باستخدام `glz::stencilcount`. وهذا يبسط إنشاء المخرجات الديناميكية، مثل وثائق HTML أو النصوص المنسقة، باستخدام بناء جملة القوالب المختصر.

التطوير

البرمجة الأدبية: جعل الكود أكثر قابلية للقراءة

2025-06-19
البرمجة الأدبية: جعل الكود أكثر قابلية للقراءة

البرمجة الأدبية، وهي نموذج ابتكره دونالد كنوث، تعطي الأولوية لقابلية قراءة الكود من قبل البشر بدلاً من التنفيذ الفوري بواسطة الآلة. يسمح هذا للمبرمجين بتطوير البرامج بترتيب أكثر طبيعية، مدفوعًا بالتفكير. تربط البرامج الأدبية الشروحات بلغة طبيعية مع أجزاء من الكود، مما يحسن الفهم والتعاون. أداة Literate، الموصوفة هنا، تهدف إلى تبسيط وتوسيع نظام CWEB الأصلي من كنوث وليفي. تدعم لغات متعددة، وتمييز بناء الجملة، والطباعة الجميلة في HTML، والكتابة القائمة على Markdown، وتوفر واجهة سطر أوامر لترجمة الكود وتوليد وثائق HTML. المشروع مفتوح المصدر ويقبل المساهمات.

التطوير أداة البرمجة

مسجل شريط RM2000: أداة أخذ عينات صوتية تعمل دون اتصال

2025-06-19

مسجل الشريط RM2000 هو أداة أخذ عينات صوتية تعمل بشكل كامل دون اتصال بالإنترنت، ويعطي الأولوية لتخزين العينات على المدى الطويل، ويتميز بواجهة مستخدم جميلة. تم تطويره بشكل مستقل بواسطة مارسيلو منديز باستخدام إطار عمل أسترو، وهو لا يزال قيد التطوير، وسيتم إضافة المزيد من الميزات في المستقبل. مرخص بموجب بند الكومن أولز + MIT.

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

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

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

التطوير

اختبار كود شبكة قوي باستخدام جودو: التعامل مع التأخير وفقدان الحزم

2025-06-19
اختبار كود شبكة قوي باستخدام جودو: التعامل مع التأخير وفقدان الحزم

كان أكبر تحد واجهه المؤلف أثناء تطوير لعبة Little Brats! هو الجانب متعدد اللاعبين عبر الإنترنت: تزامن أجهزة الكمبيوتر مع تأخير متغير مع الحفاظ على جانب "لعبة الحركة السريعة" كان بعيدًا عن البساطة. تتناول هذه المقالة رحلة المؤلف، مع التركيز على تعويض التأخير، وتقنيات التنبؤ/المصالحة، ومنهجيات الاختبار القوية. باستخدام فئة ENetMultiplayerPeer في Godot وأمر `tc` في Linux لمحاكاة ظروف الشبكة (التأخير وفقدان الحزم)، يقارن المؤلف أداء أوضاع الشبكة الموثوقة وغير الموثوقة، مع توفير رسومات واستنتاجات ثاقبة. تبرز العملية تعقيدات إنشاء لعبة عبر الإنترنت مستقرة وتقدم نصائح عملية للمطورين.

ما وراء أسطورة "المهندس العشرة أضعاف": بناء فرق عظيمة، وليس نجومًا خارقين

2025-06-19
ما وراء أسطورة

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

التطوير

EnrichMCP: نظام إدارة العلاقات الكائنية (ORM) لوكلاء الذكاء الاصطناعي

2025-06-19
EnrichMCP: نظام إدارة العلاقات الكائنية (ORM) لوكلاء الذكاء الاصطناعي

EnrichMCP هو إطار عمل بلغة بايثون يُمكّن وكلاء الذكاء الاصطناعي من فهم بياناتك والتفاعل معها مثل نظام إدارة العلاقات الكائنية (ORM). بناءً على بروتوكول سياق النموذج (MCP)، يضيف طبقة دلالية تُحوّل نماذج بياناتك إلى أدوات مُكتشفة ومنمّقة. يدعم نماذج SQLAlchemy وواجهات برمجة التطبيقات REST والمنطق المُخصص، ويُولّد تلقائيًا أدوات مُنمّقة، ويتعامل مع العلاقات، ويُوفر اكتشاف المخطط، ويُجري التحقق من الصحة باستخدام Pydantic. يمكن لوكلاء الذكاء الاصطناعي استكشاف نماذج البيانات، واستعلام البيانات، والتنقل في العلاقات بنفس سهولة المُطوّرين الذين يستخدمون نظام إدارة العلاقات الكائنية (ORM).

التطوير

إغلاقات ذات نطاق دلالي في بيئة uxn شبيهة بلغة Lisp

2025-06-19

يصف الكاتب niënor، وهي بيئة شبيهة بلغة Lisp لآلة uxn الافتراضية، مع التركيز على نهجه المبتكر في تنفيذ الإغلاقات ذات النطاق الدلالي. وبدلاً من النهج المعقد المتمثل في نسخ الدوال واستبدال المتغيرات غير المرتبطة في وقت التشغيل، يضيف niënor بذكاء متغيرات البيئة كمعلمات إلى دوال lambda في وقت التجميع. وفي وقت التشغيل، يتم إنشاء دالة مُغلّفة (بوابة) لإرسال متغيرات البيئة هذه. هذا يتجنب إنشاء الكود في وقت التشغيل وحسابات العناوين المعقدة، مما يوفر حلاً فعالاً وأنيقاً للإغلاقات. كما يتضمن النظام malloc و free لإدارة الذاكرة الديناميكية لهذه الإغلاقات.

التطوير

عام/محمي/خاص: خاصية زائدة في البرمجة الشيئية؟

2025-06-19

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

وكلاء البرمجة: طريقة جديدة لقياس تجربة المطور

2025-06-19
وكلاء البرمجة: طريقة جديدة لقياس تجربة المطور

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

التطوير

جيميني: ثورة في استخراج بيانات نتائج الانتخابات

2025-06-19

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

التطوير

Kubernetes بعد 10 سنوات: تأملات ورؤية للمستقبل

2025-06-19

تتناول هذه المقالة رحلة Kubernetes التي استمرت عشر سنوات، من أصولها كـ نظام Borg الداخلي في Google إلى مكانتها الحالية كحجر زاوية لعصر الحوسبة السحابية الأصلية. يثني الكاتب على نجاحاتها في تنظيم الحاويات، وإدارة البنية التحتية، وجدولة الوظائف، ولكنه يبرز أيضًا أوجه القصور: قيود YAML، واعتماد etcd، ونقص مدير حزم Helm. وتشمل المقترحات لـ Kubernetes 2.0 استبدال YAML بـ HCL، ودعم الخلفية البديلة لـ etcd، وإنشاء مدير حزم أصلي لتحسين سهولة الاستخدام والأمان. تشمل الاقتراحات الأخرى اعتماد IPv6 افتراضيًا ودمج IPSec لتبسيط طوبولوجيا الشبكة.

محرك بحث Marginalia: الكشف المحسّن عن التغييرات وحالة الاتصال بالإنترنت

2025-06-19

قام فريق محرك البحث Marginalia بتنفيذ نظام جديد يسمى 'ping-process' للكشف عن حالة الاتصال بالإنترنت للخادم والتغييرات المهمة على موقع الويب، بما في ذلك عمليات نقل الملكية وإيقاف تشغيل النطاقات. يستخدم النظام بشكل أساسي طلبات HTTP HEAD واستعلامات DNS لتحليل تفاصيل الشهادة، وموقف الأمان، ورؤوس الخادم لتحديد التغييرات. يتم تخزين البيانات في جداول 'لقطة' و 'حدث'، حيث تحتوي الأولى على المعلومات الحالية والثانية على الأحداث التاريخية. لقد تغلب النظام على تحديات الجدولة والتحقق من صحة الشهادات، مما أظهر نجاحًا أوليًا في تحديد النطاقات المتوقفة. تشمل الخطط المستقبلية تحسين نموذج الكشف عن تغييرات الملكية ودمجه في استراتيجيات الزحف لتحقيق المزيد من الكفاءة.

RoureXOS 2.0: نظام تشغيل خفيف الوزن تمت إعادة كتابته بلغة Rust

2025-06-19
RoureXOS 2.0: نظام تشغيل خفيف الوزن تمت إعادة كتابته بلغة Rust

تمت إعادة كتابة نظام التشغيل RoureXOS بلغة Rust لإصداره الثاني. يمكن تشغيل هذا النظام الخفيف الوزن في محاكي QEMU (باستخدام صورة ISO المُقدّمة) وعلى نظام x86_64 بدون نظام أساسي (التمهيد من USB). تغطي التعليمات المُفصّلة تثبيت التبعيات، وتجميع النواة، وإنشاء صورة ISO، وتشغيل المحاكاة في QEMU، وحتى الشبكات باستخدام SLIP. تُسهّل الخطوات الواضحة تجربة هذا النظام الجديد.

التطوير

رسم العوالم باستخدام تقنية ريمارشينج: رحلة في شيفر GLSL

2025-06-19
رسم العوالم باستخدام تقنية ريمارشينج: رحلة في شيفر GLSL

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

التطوير ريمارشينج

OpenAPI: ثورة في تطوير واجهات برمجة التطبيقات

2025-06-19
OpenAPI: ثورة في تطوير واجهات برمجة التطبيقات

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

التطوير

Strudel: أبدع موسيقى باستخدام البرمجة

2025-06-19
Strudel: أبدع موسيقى باستخدام البرمجة

Strudel بيئة برمجة موسيقية قائمة على جافا سكريبت، تُدمج لغة أنماط Tidal Cycles في جافا سكريبت. حتى بدون معرفة مسبقة بلغة جافا سكريبت أو Tidal Cycles، يمكنك بسهولة إنشاء مقطوعات موسيقية ديناميكية. يدعم Strudel ترميز الموسيقى المباشر، والتلحين الخوارزمي، والتكامل مع إعدادات الموسيقى الحالية لديك. ستساعدك البرامج التعليمية وأمثلة التعليمات البرمجية على البدء بسرعة، مما يسمح لك بإنشاء أعمال موسيقية رائعة.

التطوير برمجة موسيقية

مراقبة استخدام رموز كود كلود في الوقت الفعلي: تتبع وتوقع استهلاكك

2025-06-19
مراقبة استخدام رموز كود كلود في الوقت الفعلي: تتبع وتوقع استهلاكك

توفر أداة مراقبة المحطة الطرفية هذه، Claude Code Usage Monitor، تتبعًا في الوقت الفعلي لاستخدام رموز Claude AI الخاصة بك. تتميز بأشرطة تقدم مرئية للرموز والوقت المتبقي، وحسابات معدل الاحتراق، وتوقعات حول موعد نفاد رموزك. تدعم الخطط Pro و Max5 و Max20 و Max المخصصة، وتتحول تلقائيًا إلى Max المخصصة عند تجاوز حدود Pro، وتتضمن تنبيهات وأوقات إعادة تعيين قابلة للتخصيص. تعمل الواجهة النظيفة على تحسين تجربة المستخدم.

التطوير

ثورة مُحافظي المصادر المفتوحة: مُحافظ libxml2 الوحيد لم يعد يُعطي الأولوية لمشاكل الأمن

2025-06-19

أعلن المُحافظ الوحيد لـ libxml2 أنه لن يعود يُعامل مشاكل الأمن بشكل مختلف عن الأخطاء، مما أثار جدلاً داخل مجتمع المصادر المفتوحة. يجادل الكاتب بأن هذا يعكس استياءً متزايدًا بين المُحافظين بشأن استغلال الشركات لبرامج المصادر المفتوحة. تم التمييز بين المصادر المفتوحة الشخصية التعاونية (مثل Debian و BSD) واستخدام الشركات للبرامج مفتوحة المصدر لتحقيق الربح. يتوقع الكاتب مستقبلاً يُشدد فيه مجتمع المصادر المفتوحة بشكل متزايد على هذا التمييز، مما قد يُغيّر التفاعلات مع الشركات.

إعادة اكتشاف متعة البرمجة من خلال مشاريع اللعب

2025-06-19

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

التطوير مشاريع اللعب

محرر Zed يُطلق مُصحح أخطاء جديدًا وقويًا

2025-06-19
محرر Zed يُطلق مُصحح أخطاء جديدًا وقويًا

أعلن فريق محرر Zed عن إطلاق مُصحح الأخطاء المرتقب بشدة، والذي يدعم لغات برمجة شائعة مثل Rust و C/C++ و JavaScript و Go و Python. صُمم مُصحح الأخطاء ليكون سريعًا، وسهل الاستخدام، وقابل للتكوين، ويستخدم بروتوكول مُصحح الأخطاء (DAP) ونظامًا مبتكرًا للمُحددات لإعداد جلسات تصحيح الأخطاء تلقائيًا. تتميز هندسته المعمارية، المُقسمة إلى طبقات بيانات وواجهة مستخدم، بالكفاءة وقابلية التوسع، مما يُمهد الطريق لتصحيح الأخطاء التعاوني في المستقبل. بالإضافة إلى ذلك، فهو يوفر قيم متغيرات مُضمنة جاهزة للاستخدام باستخدام Tree-sitter، ويدعم تصحيح الأخطاء الذي يتم تشغيله بواسطة لوحة المفاتيح.

التطوير مُصحح أخطاء

الهروب من كابوس النصوص الملصقة: WYSINWLB

2025-06-19

واجه الكاتب مهمة محبطة تتمثل في فك تشابك العلامات المتداخلة `` و `

` يدويًا من المحتوى المنسوخ. كانت التنسيقات فوضوية، تم إنشاؤها آليًا للمظهر بدلاً من الصحة الدلالية، مما جعل النص غير قابل للتحرير تقريبًا. يجادل الكاتب بأن هذه التجربة السيئة للتحرير ستثني المستخدمين العاديين، وابتكر مصطلح "WYSINWLB: What You See Is Not What Lies Beneath" لتسليط الضوء على مشكلة البساطة الخادعة للنصوص المنسوخة.

التطوير

ربط الخلفية Elixir و Go باستخدام مُغلف Crystal

2025-06-19
ربط الخلفية Elixir و Go باستخدام مُغلف Crystal

احتاج فريق Mozi إلى توصيل تطبيق Elixir Phoenix LiveView جديد بخلفية Go موجودة. لقد استكشفوا NIFs و Ports ، لكنهم اختاروا في النهاية نهج عقدة C من Erlang ، باستخدام Crystal لكتابة مُغلف C لتحسين الصيانة. هذا يفك ارتباط قواعد البيانات في وقت التجميع والتشغيل ، باستخدام `Node.list` في Elixir للكشف عن اتصال عقدة C و S6 لإعادة التشغيل داخل الحاوية. على الرغم من وجود عقوبة في الأداء عند عبور الحد C / Go ، إلا أن هذا مقبول لحالة الاستخدام الخاصة بهم. والنتيجة هي مزيج أنيق من ثلاث لغات (Elixir و Crystal و Go) يحسن من الصيانة.

التطوير

تحديث بروتوكول سياق النموذج (MCP): أمان ووظائف محسّنة

2025-06-19

أصدر بروتوكول سياق النموذج (MCP) إصدارًا جديدًا مع تحديثات رئيسية تتضمن ما يلي: إزالة دعم معالجة دفعات JSON-RPC ؛ إضافة دعم لإخراج الأداة المُبَنية ؛ تصنيف خوادم MCP كخوادم موارد OAuth ، مع إضافة بيانات وصفية للموارد المحمية لاكتشاف خادم المصادقة المقابل ؛ اشتراط تنفيذ مؤشرات الموارد من قِبل عملاء MCP كما هو موضح في RFC 8707 لمنع خوادم ضارة من الحصول على رموز الوصول ؛ توضيح الاعتبارات الأمنية وأفضل الممارسات في مواصفات التفويض وفي صفحة جديدة لأفضل الممارسات الأمنية ؛ إضافة دعم للاستخراج ، مما يسمح للخوادم بطلب معلومات إضافية من المستخدمين أثناء التفاعلات ؛ إضافة دعم لروابط الموارد في نتائج استدعاء الأداة ؛ اشتراط تحديد إصدار البروتوكول المتفق عليه عبر رأس MCP-Protocol-Version في الطلبات اللاحقة عند استخدام HTTP ؛ تغيير SHOULD إلى MUST في عملية دورة الحياة ؛ وتغييرات أخرى في المخطط ، مثل إضافة حقل _meta لأنواع الواجهة الإضافية ، وإضافة حقل context إلى CompletionRequest ، وإضافة حقل title لأسماء العرض سهلة الاستخدام. سجل التغييرات الكامل متوفر على GitHub.

إمكانية الوصول في لينكس: معاناة مطور متطوع

2025-06-19
إمكانية الوصول في لينكس: معاناة مطور متطوع

يعبر مطور من GNOME عن إحباطه من تحديات تحسين إمكانية الوصول على سطح مكتب لينكس. على الرغم من الاستثمارات الكبيرة من مؤسسة GNOME وساعات لا حصر لها من العمل التطوعي، إلا أن التقدم قليل التقدير، وقد طغت عليه الانتقادات السلبية والظالمة. تكشف المقالة عن شركات تستفيد من GNOME دون المساهمة، داعية مجتمع لينكس إلى الاعتراف بتفاني مطوري إمكانية الوصول ومعالجة المشكلات النظامية التي تعيق التقدم.

التطوير
1 2 56 57 58 60 62 63 64 213 214