Category: التطوير

دراما نواة لينكس: إزالة نظام الملفات Bcachefs

2025-06-29
دراما نواة لينكس: إزالة نظام الملفات Bcachefs

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

التطوير نزاع مطورين

دالة Awk فعالة لتحليل JSON

2025-06-29

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

(akr.am)
التطوير

AGL: لغة برمجة نصية موجزة تُترجم إلى Go

2025-06-29
AGL: لغة برمجة نصية موجزة تُترجم إلى Go

AGL هي لغة برمجة جديدة تُترجم إلى Go. إنها تستخدم بناء جملة Go، ولكنها تُدخِل تحسينات مثل قيم الإرجاع المفردة، وأنواع التجميع وأنواع النتيجة/الخيار لتبسيط معالجة الأخطاء، والدوال المجهولة الموجزة، وطرق المصفوفة المدمجة. تدعم AGL تحميل عامل التشغيل، والعديد، والعام، وتوفر امتداد VSCode ودعم shebang للقشرة، مما يحسّن تجربة المطور. تتيح عملية التجميع المرنة التجميع في كود Go أو التنفيذ المباشر، مما يُسهّل التكرار والاختبار السريع.

التطوير

arXivLabs: التعاون المجتمعي على ميزات arXiv الجديدة

2025-06-29
arXivLabs: التعاون المجتمعي على ميزات arXiv الجديدة

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

التطوير

MCP: النظام البيئي الإضافي العالمي العرضي

2025-06-29
MCP: النظام البيئي الإضافي العالمي العرضي

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

طلب جواز سفر بريطاني: لعبة مغامرات بيروقراطية تم حلها باستخدام Haskell

2025-06-29

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

قضية علامة JavaScript التجارية من أوركل: معركة من أجل المصدر المفتوح

2025-06-29
قضية علامة JavaScript التجارية من أوركل: معركة من أجل المصدر المفتوح

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

التطوير

فريق من طلاب الجامعة يقوم بتشغيل Xv6 على وحدة معالجة مركزية منزلية الصنع

2025-06-28

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

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

2025-06-28
لماذا أصبح مطورو البرمجيات ذوو الخبرة أكثر أهمية من أي وقت مضى في عصر توليد التعليمات البرمجية بواسطة الذكاء الاصطناعي؟

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

مبادرة المصدر المفتوح لـ Whitesmiths C Compiler: عودة الأسطورة

2025-06-28
مبادرة المصدر المفتوح لـ Whitesmiths C Compiler: عودة الأسطورة

من المقرر أن يصبح Whitesmiths C Compiler، الذي تم إصداره في الأصل عام 1978، والذي يدعم أنظمة معمارية مثل DEC PDP-11 و Intel 8080، مفتوح المصدر! لقد منح منشئه، P.J. Plauger، إذناً للاستخدام غير التجاري. أصبحت الملفات الثنائية وبعض الشيفرة المصدرية لإصدارات تتضمن CP/M-80 ومُترجم IBM System/36 متاحة للتنزيل. سيكون هذا المُترجم ذو الأهمية التاريخية مورداً قيماً لدراسة تاريخ وتطوير لغة البرمجة C.

التطوير

بيئة Nim الأساسية على Raspberry Pi: مغامرة بدون رأس

2025-06-28
بيئة Nim الأساسية على Raspberry Pi: مغامرة بدون رأس

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

التطوير

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

2025-06-28
الذكاء الاصطناعي التوليدي: تحول في نموذج البرمجة

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

التطوير

البرمجة متعددة المراحل مع متغيرات الربط: توليد شفرة آمن وقابل للتنبؤ

2025-06-28

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

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

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

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

التطوير

برنامج تشغيل نواة مُوجز بلغة Rust: مثال وحدة التحكم Ethernet AX88796B

2025-06-28

تتناول هذه المقالة تجربة كتابة برنامج تشغيل نواة لينكس لوحدة التحكم Ethernet المدمجة AX88796B باستخدام لغة Rust. يقارن الكاتب بين إصدار Rust ونظيره بلغة C، مُسلطًا الضوء على الاختلافات في بناء الجملة، والأنواع، وواجهات برمجة التطبيقات. يتميز إصدار Rust بإيجاز ملحوظ، حيث يتكون من أكثر من 100 سطر بقليل، مُستفيدًا من وحدات الماكرو لتبسيط عملية تسجيل برنامج التشغيل، واستخدام الصفات والماكرو `#[vtable]` من أجل دمج سلس مع الرمز C الحالي. تشرح المقالة بوضوح مزايا Rust في تطوير برامج تشغيل النواة، مثل ضمانات سلامة الذاكرة من خلال المراجع، ومعالجة الأخطاء المُبسطة باستخدام `Result` وعامل التشغيل `try`، مما يوفر رؤى قيّمة لتطوير برامج تشغيل النواة بلغة Rust.

التطوير

bootc-image-builder: إنشاء صور أقراص قابلة للتشغيل من الحاويات

2025-06-28
bootc-image-builder: إنشاء صور أقراص قابلة للتشغيل من الحاويات

يُعدّ bootc-image-builder أداةً قويةً لإنشاء صور أقراص من حاويات Fedora/CentOS bootc أو مشتقاتها. وهو يدعم أنواعًا متعددة من الصور (qcow2 وAMI وISO وما إلى ذلك) ويسمح بتخصيص المستخدمين، وأنظمة الملفات، ومعلمات النواة، وأكثر من ذلك. باستخدام Podman وQEMU، يمكن للمستخدمين إنشاء وتشغيل آلات افتراضية بسهولة. يوضح هذا الدليل كيفية استخدامه، وخياراته، وتكوينه المتقدم، مثل إنشاء صور AMI على AWS وتخصيص برنامج تثبيت Anaconda.

التطوير صورة قرص

تعبيرات غريبة في Rust: دفع نظام الأنواع إلى حدوده القصوى

2025-06-28
تعبيرات غريبة في Rust: دفع نظام الأنواع إلى حدوده القصوى

تتناول هذه المقالة بعض التعبيرات المتطرفة والمتناقضة على ما يبدو داخل نظام الأنواع القوي بلغة البرمجة Rust. من خلال تشريح أمثلة من ملف الاختبار `weird-expr.rs`، مثل الاستخدام الإبداعي لـ `return true`، والحلقات المتداخلة، وبيانات `break`، وفهم عميق للاستنتاج والتحويل للأنواع، تشرح المقالة صحتها في Rust. هذه ليست أخطاء، بل هي عرض لقوة نظام الأنواع المرن وقدرة Rust على التعبير، مما يدل على متانة النظام في التعامل مع الحالات القصوى.

التطوير

المراهق الذي صنع آلة حاسبة ماكنتوش

2025-06-28

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

التطوير

SymbolicAI: إطار عمل عصبي رمزي لأنظمة معالجة اللغة الكبيرة (LLMs)

2025-06-28
SymbolicAI: إطار عمل عصبي رمزي لأنظمة معالجة اللغة الكبيرة (LLMs)

SymbolicAI هو إطار عمل عصبي رمزي يجمع بين البرمجة الكلاسيكية في بايثون وقابلية البرمجة التفاضلية لأنظمة معالجة اللغة الكبيرة (LLMs). تصميمه النمطي يسمح بسهولة التوسيع والتخصيص، مما يتيح للمستخدمين كتابة محركاتهم الخاصة، واستضافتها محليًا، أو التفاعل مع أدوات مثل بحث الويب وإنشاء الصور. المفاهيم الأساسية هي كائنات الرمز (التركيبية والدلالية) والعقود (التي تضمن صحة الشفرة من خلال الدوال الزينة). يدعم SymbolicAI العديد من العمليات البدائية ويتكامل مع محركات عصبية رمزية مثل OpenAI و Anthropic عبر واجهات برمجة التطبيقات (APIs)، بالإضافة إلى أدوات مثل Wolfram Alpha ومحركات البحث. نظام التكوين القائم على الأولويات يبسط الإدارة.

التطوير عصبي رمزي

c4wa: مُجمِّع C إلى WebAssembly بسيط وفعال

2025-06-28
c4wa: مُجمِّع C إلى WebAssembly بسيط وفعال

c4wa هو مُجمِّع يُترجم مجموعة فرعية من لغة C إلى WebAssembly. على عكس المُجمِّعات الأخرى، فإنه يُولِّد شفرة WebAssembly بسيطة ومُحسَّنة جيدًا بدون أي شفرة إضافية أو مكتبات مُدمجة أو أي زيادة في الحجم. وهو مُتوافق تمامًا مع أي وقت تشغيل WASM مباشرةً. يدعم c4wa الحلقات، والتعليمات الشرطية، والهياكل، والمصفوفات، والمؤشرات، وميزات أخرى نموذجية في لغة C، ويمكنه إخراج شفرة بتنسيق WAT قابل للقراءة. فهو يجد توازنًا بين سهولة الاستخدام عالية المستوى للغة C وكفاءة WebAssembly منخفضة المستوى، مما يوفر للمطورين طريقة جديدة لكتابة شفرة WebAssembly عالية الأداء.

التطوير

ZubanLS: خادم لغة بايثون فائق السرعة مبني بلغة Rust

2025-06-27

في عام 2012، أنشأ المؤلف مكتبة Jedi، وهي مكتبة إكمال تلقائي لبايثون واسعة الانتشار. ومع ذلك، أصبحت قيود سرعتها واضحة. في عام 2020، أعاد المؤلف بناؤها من الصفر باستخدام Rust، مما أسفر عن ZubanLS، وهو أول خادم لغة بايثون سريع حقًا بعد خمس سنوات من العمل المتفاني. يستهدف ZubanLS المحترفين الذين يحتاجون إلى الدقة والموثوقية والسرعة، ويعالج المشكلات القديمة في أدوات مثل Mypy و Pyright من خلال إعطاء الأولوية للأداء دون التضحية بالوظائف. دعم Django، والانتقال إلى التعريف، والإكمال، وغيرها من ميزات LSP قيد التقدم. قد لا يكون الإصدار الأولي لعام 2025 مثاليًا؛ وترحب التعليقات لتشكيل التطوير في المستقبل.

التطوير

مغامرة لِيسْب في مياه سي الميتة

2025-06-27

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

التطوير لِيسْب

مجتمع لينكس: حصن الحرية أم قفص الإقصاء؟

2025-06-27

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

التطوير

zenta: التأمل للبرمجة في المحطة الطرفية

2025-06-27
zenta: التأمل للبرمجة في المحطة الطرفية

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

التطوير

تحسين أداء ضرب المصفوفات في BQN: حجب ذاكرة التخزين المؤقت وقسمة الغلبة

2025-06-27

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

التطوير

حساب أعداد فيبوناتشي بسرعة فائقة على وحدة معالجة الرسوميات باستخدام ثراست

2025-06-27
حساب أعداد فيبوناتشي بسرعة فائقة على وحدة معالجة الرسوميات باستخدام ثراست

تُظهر هذه المدونة كيفية إجراء حسابات متسلسلة لأعداد فيبوناتشي بسرعة كبيرة جدًا باستخدام برمجة وحدة معالجة الرسوميات و مكتبة ثراست من إنفيديا. تبدأ المدونة بشرح خوارزمية المسح، ثم تُظهر كيفية استخدام عمليات المسح في ثراست لإجراء عمليات الجمع والضرب البسيطة، مع توسيع نطاق ذلك إلى عمليات المصفوفة. وأخيرًا، تُوضح المدونة كيفية حساب أعداد فيبوناتشي بكفاءة باستخدام عمليات المصفوفة و عملية المسح، مع استخدام الحساب النمطي لتجنب تجاوز الأعداد الصحيحة. قام الكاتب بحساب F99999999 (mod 9837) في 17 ميلي ثانية فقط على وحدة معالجة رسوميات إنفيديا جي فورس RTX 3060 موبايل.

محلية ذاكرة التخزين المؤقت وأداء جمع المصفوفات: تجربة مفاجئة

2025-06-27

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

من Flutter و Rust إلى Rust خالصة: دراسة حالة لتبسيط تطوير تطبيقات الذكاء الاصطناعي

2025-06-27

يشارك مطور تطبيق الذكاء الاصطناعي الصغير BoquilaHUB تجربته في الانتقال من بنية Flutter/Rust إلى تطبيق Rust خالص باستخدام egui. في البداية، استخدم flutter_rust_bridge لربط واجهة مستخدم Flutter مع نهاية خلفية Rust، لكن واجه المطوّر إحباطًا بسبب زيادة حجم التعليمات البرمجية المُولّدة، وتعقيدات FFI، وتحديات تصميم واجهة برمجة التطبيقات متعددة اللغات. وقد ثبت أن التحول إلى egui، وهي مكتبة واجهة مستخدم رسومية تعتمد على Rust، وإعادة كتابة واجهة المستخدم خلال عطلة نهاية الأسبوع، أمرٌ تحويلي. لقد بسّط النهج القائم على Rust خالصة تعقيد المشروع، وحسّن من قابلية قراءة وصيانة التعليمات البرمجية، وحقق مكاسب كبيرة في الأداء. يسلط المطور الضوء على سهولة استخدام egui في القضاء على مشكلات تحديث واجهة المستخدم الشائعة في Flutter وإدارة الحالة المعقدة، مما أدى إلى تطبيق أسرع وأكثر استجابة.

التطوير

SigNoz: مطلوب مناصِر مطوّرين لمراقبة التطبيقات مفتوحة المصدر

2025-06-27
SigNoz: مطلوب مناصِر مطوّرين لمراقبة التطبيقات مفتوحة المصدر

يبحث مشروع SigNoz، وهو مشروع عالمي مفتوح المصدر لمراقبة التطبيقات، يضم أكثر من 21000 نجمة على GitHub وأكثر من 6000 عضو في مجتمع Slack، عن مناصِر مطوّرين. يتضمن هذا الدور الانخراط مع المجتمع، وإنشاء مدونات وفيديوهات تركز على المطورين، وعرض SigNoz في ملتقيات ومؤتمرات، ومساعدة المستخدمين في الإعداد وحالات الاستخدام. ستعمل على منتج عالمي لبنية تطوير التطبيقات، وستشارك في مجتمع المصادر المفتوحة، وستحظى بدعم YC وشركات رأس المال الاستثماري البارزة في الولايات المتحدة. يتطلب الأمر خبرة 1+ سنة في هندسة البرمجيات، والقدرة على العمل على أكواد بلغات مختلفة وطرق نشر متعددة (مثل k8s وDocker)، والمشاركة الفعالة في مجتمعات المطورين، وفهم النظام البيئي الأصلي للسحابة، Kubernetes، وOpenTelemetry أمر إضافي.

بلندر 5.0 لنظام لينكس يحصل على دعم HDR تجريبي (Wayland/Vulkan)

2025-06-27

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

التطوير بلندر 5.0
1 2 50 51 52 54 56 57 58 213 214