قرأت مؤخرا مقالا من Shopify Engineering عن قرار Shopify الانتقال بتطبيقاتها للموبايل من React Native إلى التطوير Native باستخدام Swift وKotlin.
الجزء المثير للاهتمام بالنسبة لي لم يكن مجرد الانتقال من React Native إلى Native، ولكن السبب وراء تغير القرار.
عندما اختارت Shopify React Native في 2020، كان الهدف واضحا: تقليل تكرار العمل بين iOS وAndroid، وتمكين المطورين من العمل عبر المنصتين، وتقليل الوقت المطلوب للحفاظ على نفس المميزات في كلا التطبيقين.
لكن مع التطور الكبير في قدرات أدوات الـ AI وCoding Agents، تغيرت إحدى الفرضيات الأساسية التي بني عليها القرار.
أصبح من الممكن استخدام الـ AI للمساعدة في تنفيذ نفس الـ feature على المنصتين، بالإضافة إلى الترجمة بينهما، والاختبار، والمراجعة.
وهنا وجدت درسا مهما جدا يتجاوز موضوع React Native نفسه:
اختيار التكنولوجيا ليس قرارا أبديا.
التكنولوجيا التي كانت مناسبة قبل عدة سنوات قد تحتاج إلى إعادة تقييم عندما تتغير الأدوات والظروف المحيطة بها.
وبالنسبة لي كمطور Frontend عملت لسنوات مع Magento، أرى أن هذه الفكرة تنطبق على تطوير الويب أيضا.
ليس السؤال دائما:
"أي Framework أفضل؟"
أحيانا السؤال الأهم هو:
"هل ما زالت الأسباب التي جعلتنا نختار هذه التكنولوجيا موجودة؟"
ومع دخول AI بشكل أكبر في عملية تطوير البرمجيات، أصبح من المهم أن نعيد التفكير في طريقة بناء التطبيقات، وليس فقط في طريقة كتابة الكود.
والأهم أن Shopify لا تتعامل مع الـ AI باعتباره بديلا عن المهندس. عملية التطوير لديهم تعتمد على الاختبارات، والمراجعة، والتحقق البصري، والموافقة البشرية قبل الانتقال للخطوة التالية.
الأدوات ستتغير باستمرار.
لكن القدرة على إعادة تقييم قراراتنا التقنية عندما تتغير الظروف ستظل من أهم مهارات مهندس البرمجيات.
لا يوجد تعليقات بعد، كن أول من يبدأ النقاش