Novemade
كل المقالات

تجربة في المتصفح لكل منتج، وسُلّم من أربع درجات يُبقيها صادقة

أحد عشر منتجًا، وإحدى عشرة تجربة، والجزء المُحرج: اثنتان منها تشغّلان شيفرة المنتج نفسه، وقول أيُّ اثنتين هو جوهر الأمر.

ملاحظة تقنية · · قراءة 7 دقيقة

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

الجزء الصعب لم يكن بناءها قط. كان تسميتها.

كلمة «قابل للعب» كانت تحمل ادّعاءين مختلفين

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

هناك أربع درجات الآن، وكل تجربة تقول على أيّها تقف:

  • شيفرة المنتج الحقيقية — شيفرة المنتج نفسه، منقولة بلا تعديل، مع تسجيل بصمة SHA-256 للنسخة بجانبها.
  • مواد المنتج الحقيقية — مواد المنتج المنشورة نفسها: تسجيلات، ورسوم، وملفات محتوى، تُحرّك حلقة مكتوبة هنا.
  • إعادة بناء تفاعلية — ميكانيكا أُعيد بناؤها هنا، تستخدم محتوى المنتج الحقيقي في كل موضع يوجد فيه.
  • عرض موجَّه — جولة. لا يُحسب فيها شيء، وهي تقول ذلك.

«شيفرة المنتج الحقيقية» تعني شيئًا لأن «عرض موجَّه» تُستخدم بصدق في منتج مجاور. اليوم تقف تجربتان على الدرجة العليا. هذا العدد مُستخرَج من فهرس التجارب بدل أن يُكتب في جملة، للسبب نفسه الذي يسري على كل رقم آخر هنا.

ما تُثبته البصمة فعلًا

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

في 30 سبتمبر نشر ZUPI لعبة جديدة على App Store. لعبة مختلفة: Pulse Shield يُحمل فوق Pulse Core، وتهديدات مدرَّعة، وWarden كل خمسة مستويات. اللعبة التي كان محرّكها منقولًا هنا هي السابقة — بالون أحمر تحت مظلة — واجتاز فحص البصمة كل بناء على الإطلاق في تلك المدة، لأن النسخة بقيت نسخة أمينة للمستودع الذي أتت منه.

البصمة تُثبت أن النسخة أمينة للمستودع الذي أتت منه. ولا تستطيع إثبات أن ذلك المستودع لا يزال هو المنتج.

ثلاثة أيام شغّل هذا الموقع اللعبة الخطأ تحت جملة تقول «المحرّك نفسه الذي تستخدمه نسختا iOS وAndroid». لم يكن شيء معطوبًا. كانت كل الفحوص خضراء. حُذف المحرّك المنقول، وتجربة ZUPI الآن إعادة بناء تفاعلية، مكتوبة من بيانات المتجر وموسومة بذلك — ادّعاء أضعف، وصحيح.

الدرجة الأكثر إثارة من الدرجة العليا

Forgotten Town لعبة مبنية بـ Flutter وFlame. لا تدخل نسختها في صفحة ويب بوزن يقبله هذا الموقع، فحلقة الدمج فيها مكتوبة للمتصفح. وكل ما تعمل عليه تلك الحلقة ملك للعبة: الرقعة، والسلسلة، والرسوم، والطلب الأول بما يطلبه من قطعة وما يدفعه من عملات، مقروءة من ملف المحتوى الذي تحمّله النسخة المنشورة لا مُعاد كتابتها.

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

روبوت يلعبها كلها قبل كل نشر

التجربة التي تتوقف بصمت عن الوصول إلى نهايتها أسوأ من لا تجربة، فكل واحدة منها تُقاد في متصفح حقيقي قبل النشر: ابدأ، تفاعل، اصل إلى نتيجة، أبلِغ. ويعمل ذلك بعدة لغات، لأن التجربة قد تتعطل في واحدة دون غيرها.

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

ما يكلّفه هذا

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