01 / تطوير منتجات
Basket
قائمة تسوق منزلية مشتركة تُبقي الجميع على اطلاع بما اشتُري وما بقي.
- الحالة
- قيد التطوير
- المنصة
- الويب وAndroid
- التركيز
- القوائم المشتركة، المزامنة دون اتصال
بدأ Basket من مشكلة صغيرة متكررة: أن يشتري شخصان الشيء نفسه لأن أيًا منهما لم يعرف أن الآخر أخذه بالفعل. القائمة في تطبيق ملاحظات لا تحل ذلك؛ إنها تسجّل ما تذكّر شخص كتابته، ولا شيء عن الجهة التي تشتريه.
المنتج مبني حول قائمة مشتركة لها إحساس بالملكية. يمكن حجز العناصر قبل جولة التسوق وتأكيد شرائها خلالها. تبقى القائمة نفسها عبر المتصفح وAndroid والفراغات التي ينقطع فيها الاتصال.
المشروع قيد التطوير النشط. كل ما يوصف هنا هو اتجاه المنتج والنسخة الحالية، وليس منتجًا تجاريًا مكتملًا.
ما يشمله
قوائم منزلية مشتركة
قائمة واحدة لكل منزل، يراها كل أفرادها، مع فهم مشترك لما هو مطلوب.
حجز العناصر
يمكن لأحد أفراد المنزل حجز عنصر قبل التسوق كي لا يشتريه شخص آخر.
التأشير أثناء التسوق
ينتقل العنصر من مطلوب إلى مشترى بلمسة واحدة، وتتحدث القائمة للجميع.
مزامنة فورية
تتزامن التغييرات بين الأجهزة فور حدوثها، لتتطابق قائمة المتجر مع قائمة المنزل.
العمل دون اتصال أولًا
تُحفظ التعديلات التي تُجرى دون اتصال محليًا وتُعاد عند عودة الجهاز إلى الشبكة.
الويب وAndroid
عميلان يتشاركان نموذجًا واحدًا، ويعمل تطبيق Android كمواطن أول.
إشعارات فورية
إشارة هادئة عندما يتغيّر شيء يحتاج فرد آخر إلى معرفته.
السجل والتفضيلات
سجل بسيط للتغييرات الأخيرة، وتفضيلات لكل عضو لا تزعج الآخرين.
الإنجليزية والفرنسية والعربية
توطين كامل للواجهة، بما في ذلك تخطيط من اليمين إلى اليسار للعربية، وليس ترجمة النصوص وحدها.
ملاحظات تقنية
العمل دون اتصال قيد تصميمي، لا حالة خطأ
محل البقالة من أقل الأماكن موثوقية للاتصال بالشبكة، ما يجعل سلوك العمل دون اتصال جزءًا من جوهر المنتج لا خيارًا احتياطيًا. يحتفظ Basket بالحالة المحلية مصدرًا للحقيقة على الجهاز، ويصفّ التغييرات أثناء الانقطاع.
عند إعادة الاتصال تُعاد التغييرات المصفوفة بالترتيب. الجزء المثير ليس الصف نفسه، بل تحديد ما يحدث عندما يعدّل عضوان العنصر نفسه وهما دون اتصال. الاتجاه الحالي يفضّل قواعد بسيطة قابلة للتفسير على دمج تلقائي لا يستطيع المستخدم توقعه.
ثلاث لغات واتجاهان
إضافة الفرنسية مسألة ترجمة في الأساس. إضافة العربية مسألة تخطيط. يتبدّل التنقل والمسافات واتجاه الأيقونات ومحاذاة القوائم عندما تعمل الواجهة من اليمين إلى اليسار.
بناء ذلك في طبقة المكونات منذ البداية أرخص بكثير من إضافته لاحقًا، لذا يستخدم التخطيط خصائص منطقية وأنماطًا واعية بالاتجاه بدلًا من قيم يسار ويمين ثابتة.
المزامنة الفورية تحتاج خادمًا مملًا
يبقى الخادم مرجعًا وتظل العملاء متفائلة. يُطبَّق التغيير فورًا على الجهاز ثم يُوفَّق مع استجابة الخادم. وعند التعارض يقبل العميل حالة الخادم ويخبر المستخدم بما تغيّر.
هذا تصميم أقل إثارة من المزامنة بين الأقران، وأسهل بكثير في التشخيص في التاسعة مساءً داخل سوبرماركت.
ما يأتي بعد ذلك
- 01تقوية قواعد التعارض عند التعديلات المتزامنة دون اتصال.
- 02طرح نسخة Android أمام عدد صغير من الأسر الحقيقية.
- 03توسيع سجل النشاط ليصبح سهل المسح لا مجرد تسجيل.
السابق
مشروع مزرعة الزيتونالتالي
UtilitGate