logoinside-circleouter-circle

Get Appointment

البرمجيات في الفضاء!

Blog Image

البرمجيات في الفضاء!

"الفضاء، الحدود النهائية..."

 

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

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

 

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

 

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

 

إليك قائمة بأدوات البرمجيات المستخدمة في مشاريع استكشاف الفضاء:  

- HTCondor  

- PostgreSQL  

- Python  

- Angular  

- JavaScript  

- TypeScript  

- Dockers  

- Kubernetes

Starlink و SpaceX

تُكتب البرمجيات في مشروع "ستارلينك" باستخدام لغات برمجة معروفة. وبسبب موثوقيتها وقدرتها على البرمجة على مستوى العتاد (bare-metal)، يعتمد "ستارلينك" على لغة C++ لمعظم الأكواد في أقماره الصناعية. كما تستخدم الشركة لغة بايثون في بعض النماذج الأولية، لأنها أسرع عمومًا في عملية التطوير. يتماشى هذا مع ما يستخدمه المطورون في تقنيات المركبات الذاتية.

 

بيئة التكامل المستمر لدى "سبيس إكس" تعتمد بشكل أساسي على HTCondor، وتتم إدارة البيانات الوصفية باستخدام PostgreSQL. بالإضافة إلى ذلك، تستخدم الشركة لغة بايثون لتشغيل اختبارات الخلفية، تنظيم عمليات البناء، وخدمات الويب. أما الواجهة الأمامية لهذه الخدمات فتستخدم Angular، وجافا سكريبت، وبعضًا من TypeScript. فيما يخص تقنية الحاويات (containerization)، تستخدم "سبيس إكس" Dockers وبعضًا من Kubernetes.

 

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

اختبار الأكواد وفحصها بشكل مستمر

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

 

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

 

 

الشركات الناشئة
تكنولوجيا الفضاء
SpaceX
ناسا
مشاركة