مناقشة تفصيلية عن أهم المشاكل التي يواجهها مطوِّرو البرامج على الويب

مجموعة من الرؤى حول أهم الشكاوى للمطور، تم جمعها من عدة محادثات.

قبل بضعة أشهر، نشر بول كينلان مقالة حول المشاكل التي يواجهها المطوّرون في عام 2021، لذا من المناسب أن تبدأ هذه المقالة بإطلاعك على آخر خبرتها في الربعَين الأخيرَين. وقد تغيّرت الأرقام قليلاً، ولكن الترتيب لم يتغيّر.

التحدّي الربع الأول من عام 2021 الربع الثاني من عام 2021 الربع الثالث من عام 2021 الربع الرابع من عام 2021
مواكبة التغييرات التي تطرأ على منصة الويب أو معايير الويب. 27% 26% 27% 22%
هي متابعة عدد كبير من الأدوات أو أطر العمل الجديدة والحالية. 26% 26% 25% 21%
جعل التصميم أو التجربة تعمل بنفس الطريقة عبر المتصفحات. 26% 28% 24% 21%
الاختبار على مختلف المتصفحات 23% 24% 20% 20%
فهم إجراءات الأمان وتنفيذها. 23% 25% 20% 19%

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

مناقشات المطوّرين

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

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

من بين الميزات الشائعة بين جميع المطوّرين أنّهم يستخدمون جميعًا نظام إدارة محتوى (CMS) أو إطار عمل لأداء عملهم. ذُكرت كلّ من Wordpress وReact و Bootstrap وAngular وTailwind، ولم يكن أي من المطوِّرين يستخدم منصة vanilla Web Platform في إنتاج المحتوى. يعد اختيار إطار عمل عند بدء المشروع تحديًا، وغالبًا ما يأخذ المطورون في الاعتبار المتطلبات غير الفنية. على سبيل المثال، ما إذا كان من السهل الاستعانة بمطوّر للعمل باستخدام إطار العمل هذا. لا يمكننا معالجة الشكاوى الخاصة بالمطوّرين إذا لم يتم تضمين أُطر العمل وأنظمة إدارة المحتوى في الحلّ.

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

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

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

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

يتفق معظم المطوّرين على أنّ التوافق هو أكبر التحديات. وبفضل جهودنا، مثل Compat 2021 وInterop 2022، نحن نعمل على تحسين الأداء، ولكن من الواضح أنّ المطوّرين لا يعتبرون هذه المشكلة قد تم حلّها حتى الآن.

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

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

الخلاصة

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

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

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