Category: التطوير

توليد صور OpenGraph مذهلة تلقائيًا باستخدام Astro و Satori

2025-01-08
توليد صور OpenGraph مذهلة تلقائيًا باستخدام Astro و Satori

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

التطوير

مدير هندسة - منصة مدفوعات في Modern Treasury

2025-01-08
مدير هندسة - منصة مدفوعات في Modern Treasury

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

EVE: محرك متجهي SIMD عالي التعبيرية بلغة C++

2025-01-08
EVE: محرك متجهي SIMD عالي التعبيرية بلغة C++

EVE عبارة عن إعادة تنفيذ بلغة C++20 لمكتبة EVE SIMD القديمة (المعروفة سابقًا باسم Boost.SIMD)، والتي تُظهر كيف يمكن استخدام C++20 لإنشاء مكتبات فعّالة ومنخفضة المستوى وعالية التجريد. تدعم مجموعات تعليمات متعددة، بما في ذلك Intel SSE وAVX وARM NEON وAArch64، وجزئيًا PowerPC. وهي تعمل حاليًا، لكن قد لا تزال هناك بعض مشاكل الأداء. نرحب بالمساهمات لاختبار وتحسين المكتبة.

التطوير محرك متجهي

إعادة التحميل السريع في Rust مع Scheme مضمن

2025-01-08

تُظهر هذه المقالة كيفية تضمين مترجم Scheme الخفيف Stak Scheme داخل Rust، وهي لغة مُجمعة، لتغيير سلوك البرنامج ديناميكيًا دون إعادة تشغيل العملية. تُبرز المقالة وظيفة إعادة التحميل السريع من خلال تضمين نص برمجي Scheme في خادم HTTP من Rust. باستخدام Stak Scheme ومكتبة `stak-build`، يتم تغيير منطق مُعالِج طلبات HTTP للخادم ديناميكيًا دون الحاجة إلى إعادة تجميع برنامج Rust.

الخطايا السبع المميتة لفِرَق المنصات: تجنّبَ مُحْدِقات DevOps

2025-01-08
الخطايا السبع المميتة لفِرَق المنصات: تجنّبَ مُحْدِقات DevOps

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

التطوير فرق المنصات

شكر ساخر من مؤلف دليل Scsh

2025-01-08

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

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

2025-01-08

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

تصحيح أخطاء الكتابة التلقائي من QMK: تصحيح الأخطاء المطبعية على لوحة المفاتيح

2025-01-08

يتضمن برنامج QMK الثابت الآن وظيفة تصحيح أخطاء الكتابة التلقائي، مما يوفر تصحيحًا في الوقت الفعلي للأخطاء المطبعية مباشرةً على لوحة المفاتيح الخاصة بك. باستخدام بنية بيانات Trie، يقوم بتصحيح الأخطاء الإملائية الشائعة بكفاءة (مثل 'ouput' إلى 'output') مع الحد الأدنى من زيادة استخدام الموارد (1672 بايت لـ 71 مدخلاً، ~20 µs لكل ضغطة مفتاح). وهو غير حساس لحالة الأحرف، وقابل للتخصيص عبر قاموس، ويدعم حاليًا الأحرف الأبجدية الرقمية وعلامات التنصيص فقط. على الرغم من أنه محدود باللغة الإنجليزية، إلا أنه يحسن بشكل كبير كفاءة الكتابة للمبرمجين وغيرهم من المستخدمين المماثلين.

بناء نظام تشغيل في 1000 سطر من التعليمات البرمجية: دليل للمبتدئين

2025-01-08

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

التزامن في بايثون: الخيوط والعمليات و asyncio - غوص عميق

2025-01-08
التزامن في بايثون: الخيوط والعمليات و asyncio - غوص عميق

تلخص هذه المقالة نقاط القوة والضعف في ثلاث طرق للبرمجة المتزامنة في بايثون: الخيوط، والعمليات، و asyncio. تشارك الخيوط الموارد، وهي سهلة الاستخدام، لكنها محدودة بـ GIL؛ تمتلك العمليات مساحات ذاكرة مستقلة، متجاوزة GIL، لكن مع زيادة في الاستهلاك؛ يستخدم asyncio حلقة أحداث أحادية الخيط، معالجة المهام المرتبطة بالمدخلات/المخرجات بكفاءة، لكنها تتطلب عمليات غير مُعطلة ولها منحنى تعلم أكثر انحدارًا. يعتمد الاختيار على نوع المهمة: المهام المرتبطة بـ CPU تفضل العمليات، والمهام المرتبطة بالمدخلات/المخرجات تفضل asyncio، والخيوط مناسبة للحالات الأخرى.

إحياء مشروع سيرفو: عامان من التقدم في إيغاليا

2025-01-08

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

التطوير سيرفو محرك ويب

هايبرفيو: تطبيقات الهاتف المحمول الأصلية سهلة مثل إنشاء موقع ويب

2025-01-08
هايبرفيو: تطبيقات الهاتف المحمول الأصلية سهلة مثل إنشاء موقع ويب

هايبرفيو هو تنسيق جديد للوسائط الفائقة وعميل React Native لبناء تطبيقات الهاتف المحمول التي تعمل على الخادم بسهولة إنشاء موقع ويب. يعرض الشاشات من خلال جلب محتوى Hyperview XML (HXML) من الخادم ، ويدعم العديد من تقنيات الخادم الخلفي مثل Django و Rails أو Node. التحديثات فورية من خلال تغييرات الخادم الخلفي ، مما يلغي أوقات مراجعة متجر التطبيقات الطويلة. يُعد هايبرفيو مثاليًا لتطبيقات الشبكات (الشبكات الاجتماعية ، وأسواق الإنترنت ، وتصفح الوسائط) ، ولكنه ليس مثاليًا للتطبيقات التي تعتمد بشكل كبير على البيانات دون اتصال بالإنترنت أو الحسابات المحلية.

متى سنصلح البرامج التي تدير العالم؟

2025-01-08
متى سنصلح البرامج التي تدير العالم؟

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

مقارنة خوارزميات عد الأرقام العشرية

2025-01-08
مقارنة خوارزميات عد الأرقام العشرية

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

اختبارات إمكانية الوصول الآلية في Slack: التحديات والانتصارات

2025-01-08
اختبارات إمكانية الوصول الآلية في Slack: التحديات والانتصارات

يُفصّل فريق هندسة Slack رحلته في تنفيذ اختبارات إمكانية الوصول الآلية. فشلت المحاولات الأولية لدمج Axe في مكتبة اختبار React وإطار عمل Jest نظرًا لتعقيداتها. انتقلوا إلى Playwright، مستخدمين وظائف واستراتيجيات مخصصة لأتمتة عمليات التحقق من إمكانية الوصول بنجاح ودمجها في CI/CD. وعلى الرغم من عدم إخفاء عمليات التحقق الآلية بالكامل، إلا أنهم قللوا من عبء العمل على المطورين من خلال تبسيط سير العمل، وتحسين التقارير، وإنشاء عمليات واضحة. تشمل الخطط المستقبلية مزيدًا من التحسين واستكشاف الاختبارات المدعومة بالذكاء الاصطناعي.

Streets GL: محرك خرائط ثلاثي الأبعاد في الوقت الفعلي مفتوح المصدر

2025-01-07

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

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

2025-01-07

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

أخطاء المهندسين الشائعة في قواعد البيانات الكبيرة

2025-01-07

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

التطوير

روابط سحرية: مريحة أم كارثية؟

2025-01-07
روابط سحرية: مريحة أم كارثية؟

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

HipScript: تشغيل رمز HIP و CUDA باستخدام WebGPU

2025-01-07

يسمح مُجمِّع HipScript عبر الإنترنت، الذي طوره بن شاتنجر، بتشغيل رمز HIP و NVIDIA CUDA مباشرةً على WebGPU. وهذا يعني أن بإمكان المطورين استخدام نماذج برمجة مألوفة لنشر مهام الحوسبة عالية الأداء على المتصفح، دون الحاجة إلى عمليات نقل معقدة. يتم توفير رمز مثال، مثل لعبة الحياة، لتسهيل عملية التعلم. هذا تطورٌ مهمٌ، يُفتح إمكانيات الحوسبة عالية الأداء في تطبيقات الويب.

التطوير

OmniAI (YC) توظف مهندس برمجيات كامل

2025-01-07
OmniAI (YC) توظف مهندس برمجيات كامل

تعلن OmniAI، وهي شركة ناشئة تدعمها Y Combinator، عن وظيفة شاغرة لمهندس برمجيات كامل، براتب يتراوح بين 125,000 و 175,000 دولار أمريكي بالإضافة إلى أسهم. تقوم الشركة ببناء طريقة جديدة للتعامل مع البيانات غير المنظمة، مما يتيح تحليلات واسعة النطاق كانت مستحيلة من قبل. المرشح المثالي لديه أكثر من 3 سنوات من الخبرة، وإتقان Node.js، و TypeScript، و React/NextJS، و Postgres، وفهم عميق لأنظمة LLM و OCR. تتضمن عملية المقابلة مقابلة هاتفية، ومقابلة تصميم هندسي، وتحدي ترميز في الموقع.

هاكي: عميل هاكر نيوز غني بالمميزات، مبني باستخدام فلاتر

2025-01-07
هاكي: عميل هاكر نيوز غني بالمميزات، مبني باستخدام فلاتر

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

التطوير فلاتر عميل

PCalc: رحلة تطبيق الآلة الحاسبة على مدار 20 عامًا

2025-01-07

يُعد تطبيق PCalc، وهو تطبيق حاسبة يبدو بسيطًا، ذو تاريخٍ رائعٍ يمتدّ على مدار 20 عامًا. بدأ كمشروع جامعي، صُمّم في البداية كلوحة تحكم لتدفئة مركزية! ثم حوّله مؤلفه إلى حاسبة للمبرمجين، وأصدره كبرنامج مجاني في عام 1992. بعد العديد من التكرارات ونقل المنصات، أصبح PCalc متوفرًا الآن على أنظمة iOS وMac وApple Watch، مع دمج ميزات مبتكرة. تُروي قصته شغفًا بالتكنولوجيا، وروابط مع شركة أبل، وإهداءً للكاتب الراحل دوغلاس آدمز.

وداعًا لمكبرات العمليات القديمة: دليل للبدائل الحديثة

2025-01-07
وداعًا لمكبرات العمليات القديمة: دليل للبدائل الحديثة

تنتقد هذه المقالة مكبرات العمليات LM741 و LM324/LM358 المستخدمة على نطاق واسع ولكنها عفا عليها الزمن، وتوصي ببدائل حديثة أفضل وأكثر سهولة في الاستخدام، مثل Microchip MCP6272 و MCP6022 و Texas Instruments OPA2323 و TLV3542 و OPA2356. وتفصل المقالة المعايير المهمة التي يجب مراعاتها عند اختيار مكبر للعمليات، بما في ذلك نطاق جهد الإمداد، وأقصى تيار خرج، ومدخل/مخرج Rail-to-Rail (RRIO)، ونوع مرحلة الإدخال (FET مقابل ثنائي القطب)، وحاصل ضرب معامل التضخيم-العرض الترددي، ومعدل الانحدار، والضوضاء. ويشدد الكاتب على أن العديد من المعايير غالبًا ما تُبالغ في تقديرها في مشاريع الهواة.

التقليل إلى أقصى حد: إنشاء ملف قابل للتنفيذ متعدد المنصات بحجم أقل من 400 بايت

2025-01-07

تتناول هذه المدونة تقنيات تحسين حجم الكود من مشروع Cosmopolitan Libc، باستخدام تجميع x86 وتقنيات تجميع ذكية للحد بشكل كبير من حجم الملفات القابلة للتنفيذ. تُناقش الطرق الرئيسية ترميز طول التشغيل، والأقسام اللامركزية، وإزالة الكود الميت، وترميز δzd، والوظائف المتداخلة، وتحسين printf. والنتيجة النهائية؟ ملف قابل للتنفيذ ELF بحجم أقل من 400 بايت يعمل على أنظمة Linux وFreeBSD وNetBSD وOpenBSD. يُظهر هذا الاستخدام الفعال للموارد ويقدم منظورات جديدة حول قابلية التوسع لقواعد البيانات الكبيرة.

محرك شطرنج بـ 84,688 تعبيرًا عاديًا

2025-01-07

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

مكتبة خريطة التجزئة المتوازية: سريعة للغاية وفعالة من حيث الذاكرة

2025-01-07
مكتبة خريطة التجزئة المتوازية: سريعة للغاية وفعالة من حيث الذاكرة

parallel-hashmap هي مكتبة C++ رائعة توفر مجموعة من حاويات خريطة التجزئة و btree سريعة للغاية وفعالة من حيث الذاكرة. إنها تعتمد كليًا على ملفات الرأس، ولا تتطلب عملية بناء؛ فقط انسخ الدليل إلى مشروعك. متوافقة مع C++11 والإصدارات الأحدث، فهي تتفوق بشكل كبير على unordered_map/set المضمنة في مُجمِّعك أو ما يعادلها من Boost، مع استخدام ذاكرة أقل. تدعم عمليات البحث غير المتجانسة، وسهلة الإعلان المسبق، ولديها وظيفة تفريغ/تحميل مريحة. تستند إلى مكتبة Abseil من Google وتحسيناتها، وهي مُختبرة على نطاق واسع على أنظمة Windows وLinux وmacOS.

وقت التجميع في زيج: جيد بشكل جنوني

2025-01-07

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

DiscoTool: إدارة أجهزة Arduino USB الخاصة بك بسهولة

2025-01-07
DiscoTool: إدارة أجهزة Arduino USB الخاصة بك بسهولة

DiscoTool أداة سطر أوامر قوية ومكتبة Python لاكتشاف وإدارة لوحات تطوير نوع Arduino المتصلة بـ USB. وهي تدعم macOS و Linux و Windows، وتُثبت بسهولة عبر pip دون الحاجة إلى عمليات تثبيت إضافية. يوفر DiscoTool مجموعة غنية من الأوامر، بما في ذلك الاتصال بـ REPL، وتثبيت وتحديث الوحدات، والنسخ الاحتياطي لبيانات اللوحة، والمزيد. كما يسمح بتخصيص أدوات سطر الأوامر ومتغيرات البيئة. بالإضافة إلى ذلك، تسمح وحدة Python للمطورين بدمجها في مشاريعهم للوصول بسهولة إلى معلومات الجهاز مثل الشركة المصنعة، ورقم التسلسل، والإصدار.

التطوير أداة تطوير

نماذج اللغات الكبيرة وحدود تحسين الكود التلقائي

2025-01-07
نماذج اللغات الكبيرة وحدود تحسين الكود التلقائي

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

التطوير تحسين الكود
1 2 190 191 192 194 196 197 198 213 214