Web performance - الجزء الأول
بسم الله الرحمن الرحيم
الحمد لله ربّ العالمين، يُحب من دعاه خفياً، ويُجيب من ناداه نجيّاً، ويزيدُ من كان منه حيِيّاً، ويكرم من كان له وفيّاً، ويهدي من كان صادق الوعد رضيّاً، الحمد لله ربّ العالمين.
Web performance - 1
بناء أي موقع إلكتروني يحتاج مجموعة من المتطلبات الأساسية، ومن هذه المتطلبات ال HTML, CSS وال JS، لكن، بناء موقع إلكتروني يمكن استخدامه بشكل جيد أو ملائم للأشخاص يحتاج معرفة أكثر تحيط بالمتطلبات الأساسية، أكان ذلك من خلال تطبيق المتطلبات الأساسية بطريقة إحترافية أو من خلال بناء تسلسل مناسب لمجموعة ال Actions أو ال Events التي تتم في الموقع الإلكتروني…إلى آخره، بناء على ذلك، كيف يمكن أن تجذب المستخدمين لاستخدام موقعك؟، وكيف يمكن أن تحافظ عليهم؟، كيف يمكنك بناء تجربة جيدة للمستخدمين (Good UX)؟
في هذه المقالات سنبدأ معا بإذن الله تعالى في جزئية محددة، وهي التأكد من أن المحتوى تم تحميله بسرعة وأن هذا المحتوى وهذا الموقع قابل للتفاعل مع المستخدمين بأفضل طريقة وبأسرع وقت!، باختصار، ما سنتحدث عنه هو ال Web Performance، وهو أحد الأجزاء والعناوين المتعلقة بال UX، فإن كنت متحمسا لذلك، فاستعن بالله -سبحانه وتعالى-، وانطلق معنا في هذه الرحلة…
لقد تحدثنا في المقدمة أن ال Web performance هو إحدى الأجزاء المهمة في ال UX، فوجود موقع ذو كفاءة عالية يعطي ويبني تجربة جيدة للمستخدمين، وهذا يشمل جميع العمليات التي يمكن أن تحسن من أداء الموقع وتجعله أسرع، أو جعل بعض عمليات المعالجة البطيئة تبدو أسرع وإن لم تكن كذلك في الحقيقة!، وهذا يقودنا إلى السؤال الأول، لماذا نحتاج إلى تحسين الأداء وبناء تجربة جيدة من هذا المنطلق أساسا؟
لنجيب على السؤال السابق، علينا أن نعي أن ال Web performance يشير إلى جزئين، وهما، سرعة تحميل المحتوى الخاص بالموقع وسرعة عرضه على المتصفح (Content Load & Content Render)، ثم مدى القدرة على التفاعل بين المستخدم وهذا ال Content، هذه المعطيات تعطينا إشارة مهمة لأهم المساوئ التي قد تواجه المستخدمين أثناء تصفحهم التطبيق الخاص بك، ويمكن إجمالها ب:
-
الموقع صاحب الأداء السيء: سيتأخر في عرض البيانات
-
الموقع صاحب الأداء السيء: ستكون استجابته بطيئة لأي Input من خلال المستخدم
-
الموقع صاحب الأداء السيء: سيبني تجربة سيئة وهذا يعني ترك الموقع أو الاستغناء عنه أو البحث عن خدمة بديلة
-
الموقع صاحب الأداء السيء: قد يستحيل الوصول إلى البيانات الخاصة به خصوصا باختلاف الدول وشبكات الإنترنت الخاصة بها، أو من خلال محدودية الأجهزة التي يستخدمها المستخدمين في تلك الدول.
والآن يمكننا القول، أننا نهتم بوجود أداء جيد لأننا نهتم بإيصال ما لدينا إلى أكبر قدر ممكن من المستخدمين، ثم المحافظة عليهم وتوفير التكاليف الغير ضرورية وإزالتها عنهم، لذلك، يكون الحكم النهائي في مسألة التجربة الجيدة لل Web performance عائد للمستخدم بعد تجربته للموقع والتعامل معه، أي أن أسمى هدف يمكن تحقيقه هو أن ترى المستخدمين يلاحظون الأداء الجيد للتطبيق الخاص بك، والذي ينعكس من خلال العديد والكثير من المتغيرات التي طرحناها سابقا في هذا المقال…، لكن هنا نقطة مهمة وحساسة جدا، وهي أن تجربة المستخدم الشخصية هي تجربة تعبر عن تصور ذاتي، هذا التصور لوحده لا يمكن اعتباره معيارا في الحكم باعتباره جزء منفصل عن مجموعة من المكونات، لذلك توجد هناك مجموعة من الأدوات وطرق القياس والوسائل التي ستجعلنا نحسب الوقت المستغرق أو اللازم لل Content Load وال Content Render، وهذا سيجعلنا نفكر بطريقة جميلة وهي، أننا سنهتم في ردة الفعل السلبية للمستخدمين عند تعاملهم مع الموقع، لأن معظم الزوار سيشعرون على الفور أن هذا الموقع بطيء وأداءه سيء، بذلك، ومن خلال هذه الطريقة أو الآلية، سنضمن بشكل تقني أن الموقع فعلا لديه أداء رائع من خلال وسائل القياس والفحص، ونتأكد من ذلك من خلال ردة الفعل الخاصة بالزوار، وبهذين الشقين، يصبح لدينا موقع يملك Good UX.
والآن، هل تعتقد أن هناك علاقة ما بين ال Web Performance وال Web Accessibility؟
الجواب نعم، هناك علاقة، فال Web Performance يمكن اعتباره جزء أو فرع من ال Web Accessibility.
ملاحظة: ال Web Accessibility هي مجموعة المبادئ التي تجعل من الموقع الخاص بك قابل للاستخدام من قبل أكثر عدد من الأشخاص يمكن تحقيقه، وهذا يعني أن جميع المستخدمين لموقعك يجب أن يحظوا بفرصة للحصول على ما تقدمه من خدمات، وهذا يراعي سرعة الجهاز ونوعه والتجربة وطبيعة المستخدم الذي يجلس خلف الجهاز ونحو ذلك…، كلما زادت قدرتك وقدرة الموقع الخاص بك على استيعاب عدد أكبر، كلما كان موقعك أفضل من ناحية خدمية ومجتمعية وتقنية، وغالبا ما ستحقق نتائج أفضل من غيرك!
بناء على ما سبق، نصل إلى قاعدة جميلة وهي أن تقليل الوقت اللازم لل Content Download & Content Render سيحسن من التجربة الخاصة بالمستخدمين وعدد العمليات التي سيقومون بها، وهذا يقودنا إلى مصطلح يسمى ب Conversion rate، ويقصد بهذا المصطلح المعدل الذي يتم استخدامه لقياس وحساب كمية المستخدمين الذين حققوا الهدف الذي جاؤوا من أجله، باختصار هي نسبة المستخدمين الذين حققوا ما جاءوا لأجله من العدد الكلي للمستخدمين بناء على ال Business model الذي تم بناؤه، لهذا يؤثر ال Web Performance هنا بشكل خطير، فالمستخدم يتوقع أن يصل للمحتوى المطلوب أو أن تتحمل البيانات وأن يشاهدها أو يتفاعل مع ما يريده في ثانيتين أو أقل من ذلك!، وعادة ما يخرج المستخدمين من الموقع أو يصيبهم شعور بأن الموقع سيء بعد 3 ثواني، بل وقد يفقدون الثقة في الموقع الخاص بك!
وقبل أن نودعكم إلى الجزء الثاني…هناك مصطلح جميل مفيد لقياس ووضع الأهداف الخاصة بال Performance، وهو
ال performance budget: ويمثل هذا المصطلح مجموعة القيود أو القواعد التي ستضعها لوضع حد معين يعد أو يشير تجاوزه لوجود مشكلة ما، ويمكن تطبيق ذلك على ال file, filetype…إلى آخره، ومن الأمثلة الشائعة على ذلك، منع وجود bundle file حجمه أكبر من 2 ميجا أو أن الجافا سكربت الخاصة بالموقع يجب أن يكون أقصى حجم لتحميلها على الموبايل هو 170KB…إلى آخره، ويمكن تحقيق ذلك من خلال ال Timing Based وال Quantity Based وال Rule Based…
يتبع في الجزء الثاني إن شاء الله…
ملاحظة: بعض المعلومات أو التعريفات أو الاستخدامات كانت بشكلها العام مثل الحديث عن ال Performance و Perceived performance، سنتحدث عنها ونفصل الكلام فيها بشكل أدق بالأجزاء القادمة من هذه المقالات بإذن الله تعالى…
* المرجع الأساسي لهذه المقالات هو موقع mozilla