Category: التطوير

دفاع RubyGems.org متعدد الطبقات ضد الأحجار الكريمة الخبيثة

2025-08-26

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

DeepWiki: أداة الترميز الخاصة بك المدعومة بالذكاء الاصطناعي

2025-08-26
DeepWiki: أداة الترميز الخاصة بك المدعومة بالذكاء الاصطناعي

يحول DeepWiki أي مستودع على GitHub إلى ويكي قابل للتنقل على الفور، مما يعزز بشكل كبير كفاءة الترميز بمساعدة الذكاء الاصطناعي. يقدم أوضاع بحث سريعة وعميقة، ويقدم إجابات دقيقة مع روابط إلى ملفات المصدر. يتكامل خادم DeepWiki MCP بسلاسة مع بيئات تطوير متكاملة مدعومة بالذكاء الاصطناعي مثل Claude و Cursor للاستفسارات السياقية في الوقت الفعلي. يساعد DeepWiki في فهم قواعد البيانات، وتوليد أجزاء من التعليمات البرمجية، وتقييم أمان وتراخيص مكتبات المصدر المفتوح، وحتى المساعدة في مراجعة التعليمات البرمجية. سواء كنت مبتدئًا أو خبيرًا، فإن DeepWiki أداة قوية للترميز الفعال.

التطوير

كشف وحركة ثلاثية الأبعاد في الوقت الفعلي لحركة الإنسان باستخدام CSI Wi-Fi

2025-08-26
كشف وحركة ثلاثية الأبعاد في الوقت الفعلي لحركة الإنسان باستخدام CSI Wi-Fi

WiFi-3D-Fusion هو مشروع مفتوح المصدر يستخدم معلومات حالة القناة (CSI) من شبكة Wi-Fi المحلية للكشف عن حركة الإنسان في الوقت الفعلي وعرضها ثلاثي الأبعاد. يدعم الحصول على البيانات عبر ESP32-CSI و Nexmon، باستخدام شبكات CNN المتقدمة للكشف عن الأشخاص وتتبعهم، بما في ذلك التعرف على عدة أشخاص وإعادة التعرف عليهم. تسمح خط أنابيب التعلم المستمر للنموذج بالتحسين التلقائي أثناء التشغيل. يتم تقديم التصور من خلال واجهة ويب وخط أنابيب قائم على المحطة الطرفية. كما يتم توفير تكاملات اختيارية مع Person-in-WiFi-3D و NeRF² و 3D Wi-Fi Scanner.

فحص التقاط سكالا: التقنية الكامنة وراء عرض فاشل

2025-08-26

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

التطوير فحص التقاط

المُحوّل المُعلّق: تنفيذ سطر بسطر

2025-08-26

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

التطوير

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

2025-08-26

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

xv6-riscv-net: إضافة شبكة TCP/IP إلى نظام التشغيل xv6 على RISC-V

2025-08-26
xv6-riscv-net: إضافة شبكة TCP/IP إلى نظام التشغيل xv6 على RISC-V

يقوم هذا المشروع بدمج مجموعة بروتوكولات TCP/IP في نظام التشغيل xv6 القائم على RISC-V، مما يمكّنه من وظائف الشبكة. يتضمن ذلك منفذًا لنظام التشغيل microps في مساحة kernel، وهو عبارة عن مجموعة بروتوكولات TCP/IP في وضع المستخدم، بالإضافة إلى برنامج تشغيل virtio-net لمحاكاة جهاز الشبكة في QEMU، وواجهة برمجة تطبيقات socket قياسية، وأمر ifconfig بسيط. باستخدام بعض الأوامر البسيطة، يمكنك إنشاء وتشغيل QEMU، وتكوين عناوين IP، وإجراء اختبار ping على نظام xv6 من المضيف، بالإضافة إلى اختبار تطبيقات الصدى TCP/UDP.

التطوير الشبكات

دفع حدود مزامنة الوقت على لينكس: تحدٍّ بدقة 500 نانوثانية

2025-08-26
دفع حدود مزامنة الوقت على لينكس: تحدٍّ بدقة 500 نانوثانية

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

التطوير

أدوات سطر الأوامر لنظام macOS: توقف عن استخدام ~/Library/Application Support!

2025-08-26
أدوات سطر الأوامر لنظام macOS: توقف عن استخدام ~/Library/Application Support!

تخزن العديد من أدوات سطر الأوامر لنظام macOS بشكل غير صحيح ملفات التكوين في مجلد ~/Library/Application Support، مما يتعارض مع توقعات المستخدم ومواصفات XDG. تجادل المقالة بأن المكتبات ومديري ملفات النقطة الشائعة يتبعون مواصفات XDG، ويوضعون ملفات التكوين في مجلد ~/.config. يقول الكاتب إنه يجب على أدوات سطر الأوامر اتباع هذه الاتفاقية لتحسين تجربة المستخدم والاتساق؛ يجب استخدام ~/Library/Application Support فقط من قبل تطبيقات واجهة المستخدم الرسومية.

فهم تدوين بيج أو: دليل عملي

2025-08-25
فهم تدوين بيج أو: دليل عملي

يوفر هذا المقال شرحًا واضحًا وموجزًا لرموز بيج أو، وهي طريقة لوصف أداء الخوارزميات. باستخدام دالة sum في جافا سكريبت كمثال، يقارن المقال بين الاختلافات في تعقيد الوقت O(1) الثابت، و O(log n) اللوغاريتمي، و O(n) الخطي، و O(n²) التربيعي. توضح الرسوم التوضيحية وأمثلة التعليمات البرمجية تعقيد الوقت للعديد من الخوارزميات، بما في ذلك فرز الفقاعات والبحث الثنائي. يستكشف المقال أيضًا تقنيات لتحسين أداء التعليمات البرمجية، مثل تجنب indexOf داخل الحلقات، واستخدام التخزين المؤقت لتقليل الحسابات الزائدة. وأخيرًا، يشدد المقال على أهمية الاختبارات التجريبية، محذرًا من الثقة العمياء في النتائج النظرية.

ترويض ذروة الطلب المتزامن: نهج مبدئي

2025-08-25
ترويض ذروة الطلب المتزامن: نهج مبدئي

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

التطوير

PEP: صيغة ضغط فائقة الكفاءة للفن بكسل

2025-08-25
PEP: صيغة ضغط فائقة الكفاءة للفن بكسل

PEP هي صيغة ضغط صور جديدة مصممة خصيصًا لفن البكسل منخفض الألوان (≤16 لونًا مثاليًا، ويدعم ما يصل إلى 256 لونًا). وهي تستخدم ضغط "التنبؤ بالمطابقة الجزئية، من الرتبة الثانية"، وهو أبطأ من GIF و PNG و QOI بمقدار 2-10 أضعاف، لكنه غالبًا ما يضغط الصور بمقدار 20-50% أصغر من GIF/PNG (وأصغر عدة مرات من QOI). إذا كان حجم الصورة المضغوطة مهمًا، فإن PEP هو الأنسب لك. فهو يقع بين GIF و WEBP من حيث التوازن بين السرعة ومعدل الضغط. وهو حاليًا في مرحلة تجريبية، لكن تم توفير رأس C للاستخدام.

التطوير

decode-kit: مكتبة خفيفة الوزن للتحقق من صحة بيانات وقت التشغيل في TypeScript

2025-08-25
decode-kit: مكتبة خفيفة الوزن للتحقق من صحة بيانات وقت التشغيل في TypeScript

decode-kit هي مكتبة TypeScript خفيفة الوزن وخالية من التبعيات للتحقق من صحة البيانات التعسفية في وقت التشغيل. تستخدم التحقق القائم على التأكيد الذي يُحسّن أنواعك في مكانها - بدون استنساخ أو تحويلات، وبتكلفة تشغيلية ضئيلة. تقوم decode-kit بالتحقق من صحة بياناتك وتضييق نطاق نوعها مباشرةً؛ تظل قيمك الأصلية دون تغيير. تستخدم نهجًا سريع الفشل، حيث تُصدر خطأً مفصلاً عند حدوث أول خطأ في التحقق من الصحة، بما في ذلك الموقع والمخطط المتوقع. تدعم أنواع بيانات متعددة (سلاسل، أعداد، قيم منطقية، مصفوفات، كائنات) مع قواعد قابلة للتكوين، تتفوق decode-kit على مكتبات مثل Zod نظرًا لتأكيد نوعها في مكانها، مما يجعلها مثالية للتطبيقات الحرجة من حيث الأداء.

التطوير

إضافة متصفح فايرفوكس: انقر على العناصر المميزة باستخدام Enter لتحسين التنقل عبر لوحة المفاتيح

2025-08-25

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

OAuth 2.0: التفويض الآمن لتطبيقات الجهات الخارجية للوصول إلى بياناتك

2025-08-25
OAuth 2.0: التفويض الآمن لتطبيقات الجهات الخارجية للوصول إلى بياناتك

OAuth 2.0 هو بروتوكول إذن يسمح للمستخدمين بمنح تطبيقات الجهات الخارجية حق الوصول إلى بيانات حساباتهم دون مشاركة كلمات المرور. تشرح هذه المقالة سير عمل OAuth 2.0 بالتفصيل، بما في ذلك إذن المستخدم، واسترداد رمز الإذن، وتبادل رمز الوصول، وتؤكد على تدابير الأمان، مثل تجنب نقل رمز الوصول مباشرةً في عناوين URL. يتم شرح المصطلحات الرئيسية لـ OAuth 2.0، مثل مالك المورد، وعميل OAuth، وخادم الإذن، وخادم الموارد، بالإضافة إلى مفاهيم القناة الأمامية والقناة الخلفية. تغطي المقالة أيضًا PKCE للتطبيقات بدون خادم خلفي.

التطوير

وكيل ذكاء اصطناعي فائق الخفة 4.4 كيلوبايت ينفذ أوامر shell عبر واجهة برمجة تطبيقات OpenRouter

2025-08-25
وكيل ذكاء اصطناعي فائق الخفة 4.4 كيلوبايت ينفذ أوامر shell عبر واجهة برمجة تطبيقات OpenRouter

وكيل ذكاء اصطناعي فائق الخفة مكتوب بلغة C يتواصل مع واجهة برمجة تطبيقات OpenRouter وينفذ أوامر shell. من بين الميزات الرئيسية: تنفيذ أوامر shell مباشرةً عبر استجابات الذكاء الاصطناعي؛ ملفات ثنائية مُحسّنة (4.4 كيلوبايت على نظام macOS، ~16 كيلوبايت على نظام Linux)؛ إدارة ذاكرة نافذة منزلقة لتحقيق الكفاءة؛ دعم متعدد الأنظمة الأساسية لأنظمة macOS وLinux. يتطلب GCC وcurl ومفتاح واجهة برمجة تطبيقات OpenRouter. يكتشف نظام البناء تلقائيًا نظام التشغيل الخاص بك ويطبق أفضل ضغط (GZEXE لنظام macOS، UPX لنظام Linux). الشيفرة مفتوحة المصدر، بدون ترخيص.

التطوير

ذاكرة تخزين مؤقتة CAS مستقلة عن الموفر مع ترميزات وخزائن توليد قابلة للتوصيل

2025-08-25
ذاكرة تخزين مؤقتة CAS مستقلة عن الموفر مع ترميزات وخزائن توليد قابلة للتوصيل

cascache هي ذاكرة تخزين مؤقتة Compare-And-Set (CAS) مستقلة عن الموفر مع ترميزات وخزائن توليد قابلة للتوصيل. وهي توفر قراءات مفاتيح مفردة آمنة (بدون قيم عتيقة)، وذاكرة تخزين مؤقتة ضخمة اختيارية مع التحقق من صحة جانب القراءة، ووضعًا موزعًا اختياريًا للنشر مع نسخ متعددة. تضمن cascache أمان CAS باستخدام لقطات توليد، وتدعم العديد من مخازن البيانات الأساسية (Ristretto، BigCache، Redis) والترميزات (JSON، Msgpack، CBOR، Proto)، وتوفر أوضاعًا محلية وموزعة لتخزين التوليد من أجل أداء عالٍ وتوافر.

التطوير

SmallJS: مُجمِّع Smalltalk-80 أنيق لـ JavaScript

2025-08-25

SmallJS هو تطبيق مجاني مفتوح المصدر للغة Smalltalk-80 الأنيقة والقوية، والذي يُترجم إلى JavaScript ويعمل على المتصفحات الحديثة أو Node.js. تسمح بنيته القائمة على الملفات بالتطوير في بيئة التطوير المتكاملة المفضلة لديك، مع دعم افتراضي لـ Visual Studio Code، بما في ذلك تمييز بناء الجملة و تصحيح الأخطاء. SmallJS موجه نحو الكائنات بالكامل وقابل للتخصيص بدرجة عالية، ويحافظ على نظائر JS المألوفة لأسماء الفئات والطرق. يضم مكتبات مدمجة لكل من بيئات المتصفح (معالجة DOM، الأحداث، CSS) و Node.js (خادم HTTP، Express، قواعد البيانات، نظام الملفات، تعدد مؤشرات الترابط). يتم توفير العديد من مشاريع الأمثلة لمساعدتك على البدء بسرعة.

التطوير

فن تصميم واجهات برمجة التطبيقات: تحقيق التوازن بين البساطة والمرونة

2025-08-25

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

التطوير

بايثون 2025: علوم البيانات مهيمنة، والبرمجة غير المتزامنة وراست في صعود

2025-08-25
بايثون 2025: علوم البيانات مهيمنة، والبرمجة غير المتزامنة وراست في صعود

كشفت دراسة استقصائية لعام 2025 حول مطوري بايثون أن علوم البيانات تشكل الآن أكثر من نصف تطوير بايثون، حيث تقود بانداس ونامباي الطريق. على الرغم من استخدام العديد من الإصدارات القديمة من بايثون، إلا أن الإصدارات الأحدث توفر مكاسب كبيرة في الأداء (تصل إلى 42%). يشهد تطوير الويب انتعاشًا، مع ازدهار إطار عمل FastAPI. يتم دمج لغة راست بشكل متزايد لتعزيز الأداء. تكتسب البرمجة غير المتزامنة وتقنيات تعدد الخيوط زخمًا، حيث يوفر بايثون 3.14 دعمًا كاملاً للخيوط الخالية من GIL. تعد الوثائق أهم مورد تعليمي، وتزداد شعبية أدوات الذكاء الاصطناعي بسرعة.

التطوير

التصميم الذكي وأوجه القصور في دالة std::adjacent_difference في لغة C++

2025-08-25

تتناول هذه المقالة فلسفة تصميم خوارزمية `std::adjacent_difference` في مكتبة C++ القياسية. تحسب هذه الخوارزمية الفروقات بين العناصر المتجاورة في تسلسل الإدخال، مع نسخ العنصر الأول إلى المخرجات. على الرغم من أن هذا التصميم يضمن التناظر مع خوارزمية `std::partial_sum`، مما يعكس التفاضل والتكامل في حساب التفاضل والتكامل، إلا أنه يحد أيضًا من قابليته للاستخدام العام، حيث أن الفرق بين عناصر من نوع عشوائي قد يكون من نوع مختلف. وتقدم المقالة أيضًا أوجه تشابه مع المشتقات والتكاملات في حساب التفاضل والتكامل، موضحة سبب تصميم الخوارزمية ومقارنتها مع دالة `deltas` الأكثر مرونة في لغة Q. والخلاصة هي أنه على الرغم من أن نية Stepanov الأصلية كانت سليمة، إلا أن الخوارزمية تفتقر إلى قابلية الاستخدام العام؛ يوفر `pairwise_transform` في C++23 بديلاً أكثر مرونة.

التطوير

كابوس الخوارزميات: حل O(EV+VlogVlogK) لحساب المسارات ذات الطول K

2025-08-25

تتناول هذه المقالة مشكلة خوارزمية تبدو بسيطة: إيجاد عدد المسارات ذات الطول K بين العقدتين A و B في رسم بياني موجه غير موزون. بدءًا من خوارزميات البحث أولاً في العرض BFS والبرمجة الديناميكية الأساسية، يتعمق الكاتب في تقنيات أكثر تقدمًا، بما في ذلك أسّ المصفوفة، والتكرارات الخطية، ووظائف التوليد، ومتعددات حدود الإزالة، وخوارزمية Berlekamp-Massey. والنتيجة هي حل مذهل O(EV+VlogVlogK)، أسرع بكثير من أساليب O(EK) أو O(V³logK) التقليدية. يشرح الكاتب بوضوح مبادئ هذه الخوارزميات والصلات بينها، مع تسليط الضوء على تعقيد المشكلة وأناقة الحل.

Parquet v2: مكاسب الأداء مقابل تحديات تبني النظام البيئي

2025-08-25

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

التطوير

أداء نظام الملفات في الذاكرة في Rust: بشكل مدهش، لا يهم

2025-08-25

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

سبينج: أداة مراقبة متقدمة لتأخر HTTP/TCP في المحطة

2025-08-25

سبينج أداة حديثة لسطر الأوامر لمراقبة تأخر HTTP/TCP مع عرض مرئي في الوقت الحقيقي، وتوقيت المراحل، وتحليلات متقدمة. تدعم بروتوكولات HTTP وTCP، تعرض أوقات الاستجابة، واكتشاف القيم الشاذة، والإحصائيات في واجهة مستخدم تفاعلية في المحطة أو من خلال مخرجات نصية بسيطة وJSON. تشمل الميزات فترات زمنية قابلة للتخصيص، وأعداد، وعتبات، ونطاقات ألوان متعددة. سهلة التثبيت عبر pip وتنتج لقطات شاشة جذابة للتعاون، تساعد سبينج في تشخيص مشاكل تأخر الشبكة في الطبقات 4+.

بوابة ContextForge MCP: توحيد REST وMCP وA2A

2025-08-25
بوابة ContextForge MCP: توحيد REST وMCP وA2A

بوابة ContextForge MCP هي بوابة قوية ووكيل وسجل MCP يجمع بين خدمات MCP وREST، مما يوحد الاكتشاف والتحقق من الصحة وتحديد معدل السرعة والملاحظة والخوادم الظاهرية وبروتوكولات النقل المتعددة وواجهة إدارة اختيارية في نقطة نهاية نظيفة واحدة لعملاء الذكاء الاصطناعي لديك. تعمل كخادم MCP متوافق تمامًا، ويمكن نشرها عبر PyPI أو Docker، وتتوسع لتشمل بيئات متعددة العناقيد على Kubernetes مع اتحاد وتخزين مؤقت مدعوم من Redis. النسخة الحالية (0.6.0) تعتبر نسخة ألفا/بيتا أولية، وليست جاهزة للإنتاج. يجب استخدامها فقط للتطوير المحلي أو الاختبار أو التجريب.

التطوير البوابة

Git Annex: إتقان بياناتك أينما كانت

2025-08-25

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

التطوير إصدار التحكم

حساب ديون بطاقات الائتمان باستخدام التعليمات البرمجية: هل الرياضيات ضرورية للمبرمجين؟

2025-08-24
حساب ديون بطاقات الائتمان باستخدام التعليمات البرمجية: هل الرياضيات ضرورية للمبرمجين؟

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

التطوير

وضع WAL في SQLite: التوازن بين المتانة والأداء

2025-08-24

يُستخدم وضع WAL (سجل الكتابة المسبقة) في SQLite غالبًا لتحقيق إنتاجية كتابة أعلى، لكنه يُحارب متانة البيانات مقارنةً بوضع السجل الافتراضي. تتحكم خاصية pragma `synchronous` في عدد مرات استدعاء fsync، والقيمة الافتراضية هي NORMAL. في الوضع NORMAL، يتم مزامنة ملفات WAL قبل كل نقطة تفتيش، وملف قاعدة البيانات بعدها، لكن معظم المعاملات تفتقر إلى عمليات المزامنة. بالنسبة للتطبيقات التي لا تعتبر فيها المتانة أمرًا بالغ الأهمية، يكون الوضع NORMAL كافيًا. لتحقيق متانة مضمونة في حالة انقطاع التيار الكهربائي، فإن `synchronous=FULL` يضيف مزامنة ملف WAL بعد كل عملية تأكيد معاملة، مما يزيد من المتانة على حساب سرعة الكتابة. هذا التفسير، الذي جاء نتيجةً لمخاوف بشأن احتمال تضحية SurrealDB بالمتانة من أجل أداء الاختبارات المعيارية، يُوضح نهج SQLite.

(avi.im)

الحيلة الخبيثة: تصحيح رمز مصدر دالة بايثون ديناميكيًا أثناء وقت التشغيل

2025-08-24

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

1 2 17 18 19 21 23 24 25 213 214