Category: التطوير

فريق تطوير مكون من شخص واحد يصل إلى مليوني مستخدم

2024-12-17

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

الجبر الخطي يُعزز محرر الرسوم التخطيطية التفاعلي

2024-12-17

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

Tig: واجهة نصية لـ Git

2024-12-17

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

مطوران ينشئان لعبة برمجة خيالية: Droste's Lair

2024-12-17

قضى مطوران أسبوعين في تطوير Droste's Lair، وهي بيئة برمجة لعبة خيالية. يقوم اللاعبون ببناء و عد الهياكل الرياضية من خلال تفاعلات سحب وإفلات بديهية، باستخدام آلية "amb" للتنفيذ المتفرّع والرجوع الذاتي. تتمحور اللعبة حول موضوع السيوف والسحر، وتقدم تحديات مثل عكس عناصر القائمة، وتوليد جميع مجموعات أوراق اللعب، وحساب طرق تغطية لوح الدومينو. تجمع Droste's Lair بذكاء بين عناصر البرمجة والألعاب، مما يوفر طريقة جديدة وجذابة لتعلم مفاهيم البرمجة والرياضيات.

فالهالا: إعادة هيكلة جافا الرائعة تقترب من الانتهاء

2024-12-17

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

التطوير فئات القيمة

إطار عمل Forked الجديد من Swift يبسط إدارة البيانات المشتركة

2024-12-17

أطلق المطور درو مكورماك إطار عمل Swift الجديد Forked، والذي يهدف إلى تبسيط إدارة البيانات المشتركة على أجهزة واحدة ومتعددة. مستوحى من آلية الدمج في Git، يدعم Forked إنشاء الفروع والدمج داخل ملف واحد، مما يحقق الاتساق النهائي. لا يحتاج إلى سجل كامل للتغييرات، بل فقط ما يكفي من الإصدارات للدمج ثلاثي الاتجاهات. يستخدم Forked الهياكل بدلاً من الفئات، ويدعم Codable، ويتكامل بسلاسة مع خدمات السحابة مثل iCloud. كما أنه يعالج مشاكل التنافس الناتجة عن الوصول المتزامن، ويدعم منطق الدمج المخصص أو خوارزميات CRDT المدمجة. يتم تحقيق مزامنة CloudKit ببضع سطور من التعليمات البرمجية.

مُجمِّع جديد من CHICKEN Scheme: CRUNCH - مُجمِّع Scheme ثابت النوع

2024-12-17

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

مايكروسوفت تطلق مكتبة Multilspy مفتوحة المصدر: تبسيط تطوير عملاء خوادم اللغات

2024-12-17

أصدرت مايكروسوفت مكتبة بايثون مفتوحة المصدر تُدعى Multilspy، وهي مصممة لتبسيط عملية بناء التطبيقات حول خوادم اللغات. تدعم Multilspy لغات متعددة (Java وRust وC# وPython)، وتُسهّل عملية تنزيل ملفات الخادم الثنائية، وإعداد/إزالة خوادم اللغات، وتوفر واجهة برمجة تطبيقات سهلة الاستخدام. تتفاعل مع خوادم اللغات للحصول على نتائج التحليلات الثابتة، مثل إكمال التعليمات البرمجية، وتعريفات الرموز، والمراجع – وهي أمور بالغة الأهمية في تقنيات توليد التعليمات البرمجية بمساعدة الذكاء الاصطناعي مثل Monitor-Guided Decoding.

أفضل الممارسات لتمثيل الميراث في قواعد بيانات SQL Server

2024-12-17

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

جعل QEMU أسرع بعشر مرات باستخدام هذه الحيلة الغريبة

2024-12-17

أثناء تصحيح أخطاء اختبارات NixOS ، اكتشف Linus Heckemann أوقات نسخ بيانات بطيئة للغاية (أكثر من ساعتين) على جهاز افتراضي QEMU. كشفت تحليلات الأداء باستخدام perf أن خادم 9p الخاص بـ QEMU استخدم قائمة مرتبطة غير فعالة (تعقيد O (n)) للبحث عن الملفات. من خلال التبديل إلى جدول هاش الذي يوفره glib (تعقيد O (1)) ، قلل وقت الاختبار إلى 7 دقائق وساهم بنجاح في تحسين مشروع QEMU.

التطوير بروتوكول 9p

أدفنت أوف كود على نينتندو دي إس: تحدي برمجة راست على نظام مضمن

2024-12-16

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

التطوير نينتندو دي إس

مبادئ تصميم لغات البرمجة التعليمية: لماذا عدم وجود توافق في الآراء؟

2024-12-16

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

انقطاع خدمة كبير في OpenAI: خدمة قياس عن بُعد جديدة تسبب تعطلاً رئيسيًا

2024-12-16

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

واجهة برمجة التطبيقات الجديدة غير الشفافة لـ Go Protobuf تُحسّن الأداء والأمان

2024-12-16

أصدر فريق Go واجهة برمجة تطبيقات جديدة غير شفافة لـ Go Protobuf، تعمل جنبًا إلى جنب مع واجهة برمجة التطبيقات الموجودة Open Struct. تُحسّن واجهة برمجة التطبيقات الجديدة هذه الأداء من خلال فصل التعليمات البرمجية المُولّدة عن تمثيل الذاكرة الأساسي، مما يؤدي إلى تحسين الأداء وتقليل عمليات تخصيص الذاكرة، كما تُمكّن عمليات تحسين مثل فك التشفير الكسول. ومن خلال إخفاء حقول الهياكل والوصول إليها فقط من خلال أساليب الوصول، تمنع هذه الواجهة الأخطاء المتعلقة بالشارات والعمليات المشتركة غير المقصودة. تتضمن عملية الترحيل تمكين واجهة برمجة التطبيقات الهجينة، واستخدام أداة `open2opaque`، ثم التبديل إلى واجهة برمجة التطبيقات غير الشفافة. تبقى واجهة برمجة التطبيقات Open Struct الموجودة مدعومة.

(go.dev)
التطوير

تغيير غير متوافق في GRUB2 يتسبب في حلقة تمهيد إعداد BIOS

2024-12-16

عانى نظامي Debian و Kali Linux الخاصان بالكاتب من حلقات تمهيد بعد تحديث GRUB2 الذي أضاف الأمر `fwsetup --is-supported`. لم تتعرف إصدارات GRUB القديمة على هذه المعلمة. نشأت المشكلة من وجود وحدة `efifwsetup.mod` قديمة، متبقية من استعادة نسخة احتياطية للنظام، مما تسبب في تعارض بين تكوين GRUB الجديد والوحدة القديمة. تم حل المشكلة عن طريق تثبيت حزمة `grub-efi-amd64-bin`. يبرز هذا أهمية التوافق مع الإصدارات السابقة في تحديثات البرامج، وضرورة مراعاة الآثار الجانبية المحتملة عند إجراء تغييرات جزئية في برامج معقدة مثل GRUB2.

التطوير حلقة تمهيد

ملخص مؤتمرات روبي: نظرة عامة عالمية

2024-12-16

موقع Ruby Video Talks هو موقع يجمع معلومات عن مؤتمرات مطوري روبي في جميع أنحاء العالم. من الأحداث الكبرى مثل RubyConf 2024 (70 محاضرة) و Rails World 2024 (46 محاضرة) إلى الاجتماعات الإقليمية الأصغر، يوفر الموقع تقويماً شاملاً. يبرز المتحدثين الرئيسيين مثل Matz ويوفر وظائف بحث حسب التاريخ والموقع والموضوع، مما يسهل البحث عن الأحداث ذات الصلة. كما يتم سرد المؤتمرات القادمة في عام 2025، مثل Balkan Ruby و Friendly.rb، مما يعد بفرص أكثر لجمهور روبي.

إعادة كتابة جريئة لمحرر إيماكس باستخدام جويل

2024-12-16

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

التطوير إيماكس جويل ليس

إعادة كتابة SQLite بلغة Rust: يحقق Limbo انخفاضًا بنسبة 100 ضعف في زمن الوصول

2024-12-16

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

(avi.im)

Converge توظف مهندسًا كاملًا متقدمًا: بناء منصة قياس تسويقية بملايين الدولارات

2024-12-16

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

مكوّن تكامل Xiaomi Home Assistant مُطلق رسميًا

2024-12-16

أطلقت Xiaomi رسميًا مكوّن تكامل Xiaomi Home Assistant، مما يسمح للمستخدمين بدمج أجهزتهم الذكية Xiaomi IoT في Home Assistant. يدعم المكوّن طرق تثبيت متعددة، بما في ذلك استنساخ Git و HACS والتثبيت اليدوي. يحتاج المستخدمون إلى تسجيل الدخول باستخدام حساب Xiaomi الخاص بهم؛ ويتم دعم حسابات متعددة واختيار المنطقة. يدعم المكوّن معظم أجهزة Xiaomi المنزلية الذكية، لكنه يستثني حاليًا أجهزة Bluetooth والأشعة تحت الحمراء والأجهزة الظاهرية. تشمل طرق التحكم التحكم عبر السحابة والتحكم المحلي (يتطلب بوابة مركزية Xiaomi أو أجهزة مزودة ببوابة مدمجة). يقوم بتعيين MIoT-Spec-V2 إلى كيانات Home Assistant. يدعم المكوّن أيضًا لغات متعددة ووضع تصحيح الأخطاء، مع إعطاء الأولوية لخصوصية المستخدم وأمانه، ولكنه يتطلب تخزينًا دقيقًا لملفات التكوين.

خطأ المبرمج بمليون دولار: خلل برمجي مع تحول دراماتيكي

2024-12-16

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

جمعية موديليكا: نمذجة النظم المعقدة بكفاءة

2024-12-16

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

نظام تخزين شبكي بسيط للغاية: frood، نظام Alpine initramfs

2024-12-16

يقدم الكاتب نظام تخزين شبكي يسمى frood، وهو فريد من نوعه لأنه عبارة عن صورة initramfs كبيرة تحتوي على نظام Alpine Linux كامل. هذا التصميم يؤدي إلى سرعة تشغيل عالية وتقليل التآكل على أجهزة التخزين. الإعداد بسيط للغاية؛ توجد الملفات مباشرة في الصورة، مما يلغي الحاجة إلى لغات وصفية معقدة أو أدوات تكوين. يتم تتبع حالة النظام باستخدام Git، وكل عملية تشغيل هي بمثابة بداية جديدة، مما يمنع الفوضى في التكوين. تتضمن المقالة تفاصيل عملية بناء النظام، بما في ذلك استخدام برنامج نصي alpine-make-rootfs، وتثبيت الحزم الأساسية، وكتابة نصوص التشغيل. كما يتم وصف اختبارات QEMU وإجراء تحديث صورة النظام. باختصار، frood هو نظام تخزين شبكي خفيف الوزن، سهل الصيانة والنشر، وتستحق فلسفته التصميمية البسيطة أن يتم محاكاتها.

التطوير

حالة HTTP/3 الحالية: التحديات والفرص على طريق التبني

2024-12-16

مواصفات HTTP/3 مكتملة ولكنها تنتظر النشر النهائي. دعم الخادم مرتفع بشكل مدهش، خاصة بين المواقع الإلكترونية الرائدة. قامت شركات كبرى مثل Cloudflare بتمكين HTTP/3، وتدعم المتصفحات ذلك على نطاق واسع. ومع ذلك، لا يزال دعم العميل، مثل curl، غير مكتمل، ويعود ذلك إلى حد كبير إلى تأخر تطوير مكتبات TLS التي تدعم QUIC. تم تأجيل دعم QUIC من OpenSSL، بينما تواجه البدائل مثل BoringSSL و quictls قيودًا. على الرغم من أن HTTP/3 يعد بتحسينات في السرعة، إلا أن الفوائد الفعلية تعتمد على ظروف الشبكة. يعتمد التبني الواسع النطاق على إصدار المواصفات ومكتبات TLS الناضجة.

التطوير

Vec::drain في Rust: الاستفادة من Drop لضمان الأمان

2024-12-16

تتناول هذه المقالة بالتفصيل طريقة Vec::drain في Rust وتطبيق Drop الخاص بها، حيث تُظهر كيف تمنع آلية الملكية الأخطاء الدقيقة المتعلقة بالذاكرة وغيرها. تعمل Vec::drain على تحسين الأداء من خلال الاحتفاظ بإشارة قابلة للتعديل إلى المتجه الأصلي وقراءة/تحديث التخزين الأصلي فقط. يكمن المفتاح في تطبيق Drop الخاص بهيكل Drain، والذي يستخدم DropGuard لضمان أنه حتى إذا تم إسقاط المُكرر قبل الأوان، فسيتم نقل العناصر المتبقية بأمان إلى المتجه الأصلي، مما يضمن سلامة الذاكرة. تشرح المقالة بالتفصيل تفاصيل تنفيذ Drain و DropGuard، مع معالجة حالات خاصة مثل الأنواع ذات الحجم الصفري ومنشأ المؤشرات.

التطوير

الوضع الجديد --shuffle في GNU Make: اكتشاف أخطاء خفية في عمليات البناء المتوازية

2024-12-16

لمدة أحد عشر عامًا ، عانت عمليات البناء المتوازية في GNU Make من أخطاء يصعب إعادة إنتاجها. بناءً على ذلك ، تم تطوير وضع جديد `--shuffle` لإعادة ترتيب أهداف Makefile بشكل عشوائي ، محاكياً ترتيب بناء غير حتمي. كشف هذا بشكل فعال عن أخطاء خفية في أكثر من 30 حزمة ، بما في ذلك gcc و vim و ghc. يُعد الآن جزءًا من GNU Make 4.4 ، ويمكن الوصول إلى هذا الوضع عبر `make --shuffle` أو متغير البيئة `GNUMAKEFLAGS=--shuffle`. تساعد هذه الميزة القوية المطورين على تحديد حلول مشكلات بناء متوازية ، مع إبراز التحسين المستمر لأدوات تطوير البرمجيات.

معادل تحميل جديد من جوجل، PReQuaL: ما هو أبعد من معادلة تحميل وحدة المعالجة المركزية

2024-12-16

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

رحلة مهندس برمجيات في تصميم بمساعدة الحاسوب والطباعة ثلاثية الأبعاد: رافع كاميرا ويب مُفرط التصميم

2024-12-16

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

إصدار Adélie Linux 1.0-BETA6: تحسين التوافق والميزات الغنية

2024-12-16

أصدرت Adélie Linux إصدارها التجريبي 1.0-BETA6، والذي يدعم أنظمة ARM و POWER و x86 32 بت و 64 بت، بما في ذلك الهواتف الذكية، وأجهزة ألعاب الفيديو، والكمبيوترات العملاقة. يتضمن هذا الإصدار أكثر من 35 حزمة جديدة، وتحديثات لـ GCC 13 و LLVM 18 و Rust 1.80 ونواة لينكس 6.6 LTS، بالإضافة إلى دعم محسّن لـ GRUB و Wayland. تم إصلاح العديد من الأخطاء، وتم تحسين تجربة المستخدم. على الرغم من وجود بعض المشاكل المعروفة، إلا أن فريق Adélie يعمل بنشاط على حلولها، ويرحب بتقارير الأخطاء والتعليقات.

التطوير توزيع لينكس

Cyphernetes: أتمتة إدارة عناقيد Kubernetes الأصلية في السحابة

2024-12-16

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

التطوير عمليات أتمتة
1 2 3 5 7 8