Category: التطوير

الإشعارات الدفعية اللامركزية: الهروب من فخ التمركز؟

2025-02-04

تتناول هذه المقالة كيف تُدخِل إشعارات الدفع المحمولة المركزية في الخدمات اللامركزية، وكيفية تجنب ذلك، حتى بالنسبة للتكوينات الرئيسية. تعتمد العديد من التطبيقات اللامركزية (مثل Mastodon و Nextcloud) حاليًا على Firebase Cloud Messaging (FCM)، مما يؤدي إلى المركزية. تقترح المقالة حلاً: استخدام بروتوكول WebPush مباشرةً للتواصل مع خوادم FCM، مع دمج إطار عمل UnifiedPush، لتحقيق إشعارات دفع لامركزية. هذا يلغي الحاجة إلى بوابات مركزية ويسمح للمستخدمين باختيار خدماتهم المفضلة. وعلى الرغم من أن ليس كل الخدمات ستدعم WebPush على الفور، إلا أن الاتجاه المستقبلي هو نحو اللامركزية.

التطوير

واجهات الدردشة غير مناسبة لأدوات التطوير الحقيقية

2025-02-04

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

التطوير

DoppelBot: استبدل الرئيس التنفيذي الخاص بك بنموذج لغة كبير

2025-02-04
DoppelBot: استبدل الرئيس التنفيذي الخاص بك بنموذج لغة كبير

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

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

إنشاء مدونة روابط: مستوحاة من سايمون ويليسون

2025-02-04

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

التطوير مدونة روابط

فناء وبعث المبرمجين في عصر الذكاء الاصطناعي

2025-02-04
فناء وبعث المبرمجين في عصر الذكاء الاصطناعي

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

التطوير مستقبل العمل

Codeberg: منصة استضافة Git غير ربحية تدعم المصدر المفتوح

2025-02-04
Codeberg: منصة استضافة Git غير ربحية تدعم المصدر المفتوح

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

التطوير

روابط تنزيل إضافات VSCode المعطلة

2025-02-04
روابط تنزيل إضافات VSCode المعطلة

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

أزمة تمويل تواجه مشاريع البرمجيات المفتوحة المصدر: Freedesktop.org و Alpine Linux يبحثان عن منزل جديد

2025-02-04
أزمة تمويل تواجه مشاريع البرمجيات المفتوحة المصدر: Freedesktop.org و Alpine Linux يبحثان عن منزل جديد

يواجه كل من Freedesktop.org و Alpine Linux، وهما مشروعين مفتوح المصدر حيويين، تحديات في نقل الخوادم بسبب نقص التمويل. بعد نفاذ رصيد Google Cloud Platform الخاص بالبرمجيات المفتوحة المصدر، يسارع Freedesktop.org الآن للانتقال من Equinix، ويقترح قائده خطة جديدة: أن يدفع Freedesktop.org ثمن خوادمه الخاصة، وأن يبحث عن رعاة. أما Alpine Linux، المستخدم على نطاق واسع في الحاويات والأجهزة المضمنة، فيستهلك 800 تيرابايت من عرض النطاق الترددي شهريًا، ويحتاج إلى خوادم جديدة وبيئات تكامل مستمر. وهو يبحث حاليًا عن خوادم بالقرب من هولندا. يسلط كلا المشروعين الضوء على التناقض بين أهميتهما وتمويلهما، مما يدفع المزيد من الأفراد والمنظمات لدعم التطوير المستدام لمشاريع البرمجيات المفتوحة المصدر.

التطوير

Cline: مساعد ترميز ذكاء اصطناعي ثوري للعمل الهندسي الجاد

2025-02-04
Cline: مساعد ترميز ذكاء اصطناعي ثوري للعمل الهندسي الجاد

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

مكتبة شبكة LOD المستمرة: nv_cluster_lod_builder

2025-02-04
مكتبة شبكة LOD المستمرة: nv_cluster_lod_builder

nv_cluster_lod_builder هي مكتبة شبكة مستوى التفاصيل المستمر (LOD) التي توفر تحكمًا دقيقًا في التفاصيل الهندسية. تقوم هذه المكتبة بحساب مجموعات المثلثات مسبقًا، واختيار مجموعة فرعية في وقت العرض لتفاصيل تكيفية بناءً على موضع الكاميرا. هذا يؤدي إلى عرض أسرع واستخدام أقل للذاكرة مقارنة بـ LOD المنفصل، وهو أمر مفيد بشكل خاص لتتبع الأشعة. تضمن استراتيجية التقليل الفريدة انتقالات LOD سلسة بدون فجوات أو تداخلات. تعمل التسلسل الهرمي المكاني على تسريع اختيار المجموعات، بينما يعمل بث الهندسة على تقليل استهلاك الذاكرة بشكل أكبر.

التطوير عرض الشبكة

أفضل 10 من هويات OWASP غير البشرية - 2025: المخاطر الحرجة

2025-02-04

يلخص OWASP أفضل 10 من هويات غير البشرية (NHI) - 2025، المخاطر العشرة الأكثر أهمية المرتبطة باستخدام هويات غير بشرية (مثل الروبوتات والأدوات الآلية) في تطوير التطبيقات. تم تجميع هذه القائمة باستخدام بيانات انتهاكات العالم الحقيقي، والاستطلاعات، ومنهجية تقييم المخاطر OWASP، وتساعد هذه القائمة المطورين على فهم وتخفيف التهديدات الأمنية الهامة التي تفرضها NHI، والتي أصبحت حيوية بشكل متزايد لخطوط أنابيب التطوير الحديثة. الاستخدامات للمساهمة في تحسين المشروع موضع ترحيب.

OWASP تكشف عن أهم 10 مخاطر أمنية لهويات غير بشرية (NHI) لعام 2025

2025-02-04
OWASP تكشف عن أهم 10 مخاطر أمنية لهويات غير بشرية (NHI) لعام 2025

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

تعثر برامج تشغيل Rust في نظام DMA التابع لنواة لينكس

2025-02-04

تواجه جهود نواة لينكس لدمج لغة Rust في تطوير برامج تشغيل الأجهزة مقاومة داخل نظام DMA (الوصول المباشر للذاكرة). تتطلب برامج تشغيل Rust التفاعل مع طبقة تعيين DMA في النواة، مما يتطلب مجموعة من التجريدات. ومع ذلك، يعارض المُحافظ الرئيسي كريستوف هيلفيج إضافة رمز Rust إلى `kernel/dma`، مُشيرًا إلى زيادة تعقيد الصيانة. بينما اقترح مطورو Rust الحفاظ على هذه التجريدات بشكل منفصل، إلا أن هيلفيج لا يزال غير مقتنع. يُبرز هذا المأزق التحديات التي تواجه دمج Rust في النواة، حيث يعتمد مستقبله على قرار مجتمع النواة وتكيف المُحافظين الرئيسيين مع بيئة برمجة متعددة اللغات.

التطوير

الهروب من فواتير AWS المفاجئة والأنظمة المُهندسة بشكل مفرط: انتقالي إلى NearlyFreeSpeech

2025-02-04
الهروب من فواتير AWS المفاجئة والأنظمة المُهندسة بشكل مفرط: انتقالي إلى NearlyFreeSpeech

سئم الكاتب من تكاليف AWS غير المتوقعة والأنظمة المعقدة للغاية، وانتقل إلى NearlyFreeSpeech (NFS). أتاح نموذج الدفع المسبق من NFS له التحكم الكامل في التكاليف، وجعل لوحة التحكم البسيطة إدارة العديد من المشاريع سهلة. تتناول المقالة بالتفصيل عملية نقل تسعة تطبيقات إلى NFS، بما في ذلك تلك التي تستخدم Next.js وReact وExpress وغيرها من تقنيات الـstack، وتشارك التحديات والحلول التي تم مواجهتها. على الرغم من أن تطبيق Python Flask كان أكثر تعقيدًا في النقل، إلا أن الكاتب يعزو ذلك إلى اعتماد التطبيق نفسه، وليس NFS. في النهاية، حقق الكاتب تكاليف أقل وراحة بال أكبر باستخدام NFS، ويُوصي به للمطورين الآخرين.

منظف LaTeX لـ arXiv: جهز ورقتك بسهولة

2025-02-04
منظف LaTeX لـ arXiv: جهز ورقتك بسهولة

هل سئمت من تنظيف رمز LaTeX الخاص بك قبل إرساله إلى arXiv؟ أداة `arxiv-latex-cleaner` من Google Research تسهل عليك هذه المهمة! هذه الأداة تزيل تلقائيًا الملفات المساعدة، والتعليقات، والرموز والصور غير المستخدمة، وتغير حجم الصور، وتضغط ملفات PDF، وتضمن أن ورقتك تلبي حدود حجم arXiv. تدعم قواعد الاستبدال للتعبير النمطي المخصصة، وتتعامل مع جعل صور TikZ خارجية. جهز ورقتك للإرسال في بضع خطوات فقط!

التطوير تنظيف الاكواد

Rust بدون حالة الهلع: هل يمكن لـ Rust استبدال C في برمجة أنظمة المستوى المنخفض؟

2025-02-03

تتناول هذه المقالة إمكانية استخدام Rust بدلاً من C في برمجة أنظمة المستوى المنخفض، مع التركيز بشكل خاص على مكتبة Protocol Buffers المسماة upb. شك الكاتب في البداية في قدرة Rust على منافسة C من حيث الأداء وحجم الكود، لكنه اكتشف تقنية تُسمى "Rust بدون حالة الهلع". وهذا يعني تجنب استخدام `panic!()`. تتعمق المقالة في مبادئ ومزايا وتحديات Rust بدون حالة الهلع، بما في ذلك حجم الكود، والخروج غير القابل للاسترداد، وزيادة التكلفة أثناء وقت التشغيل. توضح المقالة كيفية كتابة كود Rust بدون حالة الهلع باستخدام تقنيات مثل الاستفادة من مكتبة libc، وخيارات التحسين، و `std::hint::assert_unchecked`، مع التأكيد على الاحتفاظ بعمليات التحقق من تجاوز الحد الأقصى في وضع التصحيح للتحقق من الاتساق الإضافي. على الرغم من أن هذه التقنية تتطلب جهدًا دقيقًا وقد تتطلب تجنب معظم المكتبة القياسية، إلا أنها تعد بتقديم أداء وحجم كود مكتبة C مع الحفاظ على ضمانات أمان Rust.

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

ميل سبرينغ: عميل بريد إلكتروني مفتوح المصدر أسرع وأخف وزناً

2025-02-03
ميل سبرينغ: عميل بريد إلكتروني مفتوح المصدر أسرع وأخف وزناً

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

إصدار Windows 11 Insider يحصل على زر Copilot في Paint

2025-02-03
إصدار Windows 11 Insider يحصل على زر Copilot في Paint

يقدم إصدار Windows 11 Insider الجديد (26120.3073) زر Copilot في Microsoft Paint، مما يبسط الوصول إلى ميزات الذكاء الاصطناعي التوليدية مثل Cocreator و Image Creator و Generative Erase و Remove Background. كانت هذه الميزات موجودة بالفعل، لكن الزر يحسن سير العمل. تتضمن التحديثة أيضًا بحث الصور في السحابة (لأجهزة الكمبيوتر Copilot+ فقط) وإصلاحات للأخطاء في شريط المهام، ومنطقة الإعلام، و مستكشف الملفات. هذه نسخة تجريبية للمستخدمين الداخليين؛ لم يتم الإعلان عن توفرها لإصدار Windows 11 الثابت.

التطوير

اسم عائلتي هو "Null"، وهو يُعطل الإنترنت

2025-02-03
اسم عائلتي هو

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

التطوير

SCQA: إطار عمل لقصة آسرة

2025-02-03
SCQA: إطار عمل لقصة آسرة

SCQA هو إطار عمل لتنظيم المعلومات باستخدام الموقف (Situation)، والتعقيد (Complication)، والسؤال (Question)، والإجابة (Answer) لإنشاء سرد واضح وجذاب. تستخدم المقالة اللعب في العلاج الطبيعي كمثال، تُظهر كيف يُحوّل SCQA عملية رتيبة إلى قصة آسرة، مما يُحسّن من تفاعل المريض. يُطبّق هذا الإطار في العديد من المجالات - الأعمال، والسياسة، والعلوم - ووسائل الإعلام - رسائل البريد الإلكتروني، والعروض التقديمية، والكتب، والمدونات - يُحسّن SCQA التواصل والوضوح.

توسيع مشكلة هيلبرت العاشرة: إثبات عدم القدرة على الحل لحلقات أوسع

2025-02-03
توسيع مشكلة هيلبرت العاشرة: إثبات عدم القدرة على الحل لحلقات أوسع

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

معايير قياس استرجاع التعليمات البرمجية: التحديات ونهج Voyage AI

2025-02-03
معايير قياس استرجاع التعليمات البرمجية: التحديات ونهج Voyage AI

تعتمد أدوات المساعدة في البرمجة الحديثة بشكل كبير على استرجاع التعليمات البرمجية، لكن طرق التقييم الحالية غير كافية. تسلط أبحاث Voyage AI الضوء على مشاكل في مجموعات البيانات الحالية، بما في ذلك الملصقات الضوضاء، وعدم وجود تقييم للتفكير الخوارزمي العميق، وتلوث البيانات، مما يؤدي إلى تقييمات نماذج غير موثوقة. لمعالجة ذلك، تقترح Voyage AI طريقتين لإنشاء مجموعات بيانات استرجاع التعليمات البرمجية عالية الجودة: إعادة استخدام مجموعات بيانات الأسئلة والأجوبة، والاستفادة من مستودعات GitHub والمشاكل/التذاكر. كما قامت Voyage AI ببناء مجموعة اختبارات المعايير الداخلية الخاصة بها، والتي تشمل العديد من لغات البرمجة، ومجموعات بيانات متنوعة من الأسئلة والأجوبة، ومعايير قياس محددة للمنطقة، وتقييم العديد من نماذج تضمين التعليمات البرمجية. برز نموذج Voyage-code-3 كأفضل نموذج أداءً.

حكمة مطور كبير: تجنب إعادة الكتابة والترميز بكفاءة

2025-02-03

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

التطوير

زيادة سرعة بنسبة 57.5% في مكتبة `time` بلغة Rust من خلال إعادة كتابة الخوارزمية

2025-02-03

بعد خمس سنوات من صيانة مكتبة `time` بلغة Rust، قام المؤلف بتحسين الأداء بشكل كبير. من خلال إعادة تصميم خوارزمية `Date::to_calendar_date`، واستخدام دوال أفيني إقليدية وحسابات عدد صحيح ذكية، تمكن المؤلف من تجنب عمليات الفاصلة العائمة والتفرعات، مما أدى إلى تحسين الأداء بنسبة 57.5٪. الخوارزمية الجديدة أسرع بكثير ليس فقط عند حساب التاريخ والشهر معًا، ولكن أيضًا عند حسابهما بشكل منفصل. كانت هذه مهمة غير تافهة، لكن المؤلف يعتقد أن مكاسب الأداء تستحق الجهد المبذول.

التطوير

httptap: مراقبة طلبات HTTP/HTTPS على Linux

2025-02-03
httptap: مراقبة طلبات HTTP/HTTPS على Linux

httptap أداة سطر أوامر لنظام Linux تراقب طلبات HTTP و HTTPS التي يقوم بها أي برنامج دون الحاجة إلى امتيازات المسؤول. يحقق ذلك عن طريق تشغيل البرنامج المستهدف في مساحة اسم شبكة معزولة واعتراض حركة المرور على الشبكة الخاصة به. مكتوب بلغة Go، httptap خالٍ من التبعيات وقابل للتنفيذ بسهولة. يعرض معلومات مفصلة حول الطلب، بما في ذلك عناوين URL، وأكواد حالة HTTP، وأجسام الطلب، وأجسام الاستجابة، ويدعم تصدير البيانات إلى ملفات HAR. يدعم httptap أيضًا DoH (DNS عبر HTTPS) ويتعامل مع عمليات إعادة توجيه HTTP.

التطوير

تعزيز أداء الكتابة على HDD باستخدام dm-writecache في لينكس

2025-02-03
تعزيز أداء الكتابة على HDD باستخدام dm-writecache في لينكس

تتناول هذه المقالة وحدة dm-writecache الأساسية لنظام لينكس، والتي تستفيد من محرك أقراص NVMe SSD كذاكرة تخزين مؤقتة للكتابة إلى محركات الأقراص الصلبة الأبطأ، مما يحسن بشكل كبير أداء الكتابة العشوائية. يُظهر الكاتب زيادة في السرعة بمقدار عشرات المرات من خلال تجارب تقارن سرعات الكتابة العشوائية مع وبدون dm-writecache. تغطي المقالة أيضًا طرق وأدوات التخزين المؤقت الأخرى مثل bcache و ReadyBoost، مع شرح تفصيلي لطريقة تهيئة dm-writecache باستخدام LVM2 وأداة dmsetup للمستخدمين الذين لا يمتلكون LVM2. أخيرًا، تلخص المقالة المكاسب الكبيرة في الأداء التي تحققت باستخدام dm-writecache، وتقترح استخدام مساحة NVMe المتبقية لتخزين البيانات مؤقتًا من محركات أقراص أخرى أبطأ.

التطوير

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

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

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

التطوير

هندسة عكسية لتنسيق تدفق الأنواع من Apple: داخل imessage-exporter

2025-02-03

تُفصّل هذه المقالة عملية الهندسة العكسية لبروتوكول تسلسل البيانات الثنائية الخاص من Apple، وهو typedstream، والذي قام به مشروع imessage-exporter. لم يُوثّق typedstream، والذي يُستخدم لتخزين بيانات iMessage، وهو ليس جزءًا من واجهات برمجة التطبيقات العامة من Apple. من خلال تحليل بيانات BLOB في قاعدة بيانات iMessage، حدد المؤلف أنماطًا ضمن تنسيق typedstream، مثل 0x84 الذي يُشير إلى بداية كتلة بيانات مع البايت التالي الذي يُشير إلى الطول، و0x86 الذي يُشير إلى نهاية الكتلة. باستخدام هذه الأنماط، نجح المؤلف في إلغاء تسلسل بيانات typedstream، مما حقق وصولًا متعدد المنصات إلى بيانات iMessage.

زخارف JIT في بايثون: ثلاث استراتيجيات للتنفيذ

2025-02-03

تتناول هذه المقالة نمط زخارف JIT الشائع في بايثون، وتحديداً استخدامه في مكتبات JAX و Triton. يقوم الكاتب بتنفيذ ثلاث زخارف JIT من الصفر باستخدام مثال مبسط: القائم على AST، والقائم على bytecode، والقائم على التتبع. تقوم الطريقة القائمة على AST بتغيير شجرة النحو المجردة مباشرةً؛ أما الطريقة القائمة على bytecode فتستغل مُفسّر bytecode الخاص ببايثون؛ والطريقة القائمة على التتبع تُنشئ IR تعبيري من خلال تتبع تنفيذ الدالة وقت التشغيل. تُفصّل المقالة مزايا وعيوب كل طريقة، وتستخدم JAX و Numba كأمثلة لتوضيح استراتيجياتها في التطبيقات الواقعية.

التطوير ترجمة JIT

إنشاء آلة افتراضية لـ WebAssembly بلغة C: استعراض مشروع جانبي استمر لمدة ستة أشهر

2025-02-03

خلال ستة أشهر، كرس الكاتب وقته الإضافي لإنشاء آلة افتراضية لـ WebAssembly بلغة C، أطلق عليها اسم Semblance. ساعد هذا المشروع في التخلص من دورة المشاريع الجانبية قصيرة الأجل، وسمح بغوص عميق في مواصفات WebAssembly الأساسية. تُفصّل المقالة البنية، مع تغطية فك تشفير الوحدات، وحلّ الاستيرادات، وإنشاء مثيلات الوحدات، وتنفيذ التعليمات. يشارك الكاتب التحديات والخبرات المكتسبة، والتي تُوجت بتنفيذ برنامج "Hello, World!" بنجاح. لم يُحسّن هذا المشروع مهارات الكاتب فحسب، بل وضع أيضًا أساسًا قويًا للمساهمات المستقبلية في بيئات التشغيل ذات المستوى الصناعي.

التطوير
1 2 169 170 171 173 175 176 177 213 214