نظام إداري
نظام إداري حل محل الورق في معهد تقني، ويعمل على أجهزة المعهد نفسها.
Laravel · Blade · MySQL · Tailwind CSS · Laravel Breeze
اقرأ القصة كاملةأداة واحدة لمشكلة واحدة، تحلّ محل جدول البيانات الذي ضاق بعملك.
برنامج لفريقك أنت، لا للجمهور. أرسم خريطة لسير العمل عندك اليوم، ثم أبني أصغر أداة تلغي الخطوات اليدوية.
بعض المشكلات لا تحتاج إلى منتج، وإنما تحتاج إلى أداة واحدة تؤدّي عملًا محدَّدًا لفريق محدَّد.
تبدو هذه الأدوات بسيطة، وغالبًا ليست كذلك. فالقواعد موجودة في رؤوس الناس، ولكل فريق استثناءات لم يكتبها أحد. والبيانات موزّعة عادةً بين جدول بيانات ونظام قديم وبريد أحد الموظفين في وقت واحد. ويجب أن تناسب الأداة طريقة العمل القائمة، وإلا تُركت بعد شهر. والصلاحيات مهمة، لأنه لا ينبغي أن يرى الجميع كل شيء.
لذلك أبدأ بمتابعة سير العمل الحالي وتدوينه. ثم أبني أصغر نسخة تلغي أسوأ خطوة يدوية، ونستعملها قبل أن نضيف المزيد. وإن كان لا بد من بقاء نظام قديم، فأربط الأداة به ولا أستبدله. ويقوم جزء من هذا العمل على Laravel وMySQL، إلى جانب أدوات Next.js.
نتحدث حتى أستطيع أن أعيد عليك فكرتك كما تقصدها تمامًا.
نبدأ بمحادثة، بالعربية أو الفرنسية أو الإنجليزية. تصف الفكرة بكلماتك أنت، وأسألك عن الناس الذين تستهدفهم، وعمّا يفعلونه اليوم، وعمّا تريد أن يحدث. ثم أكتب ما سمعته منك وأرسله إليك لتصححه.
ما تحصل عليه في النهايةملخص مكتوب للفكرة: الهدف، والمستخدم، والافتراضات، ومعنى النجاح.
أكتشف ما هو موجود بالفعل، وأين يترك المستخدمين عالقين.
أراجع المنتجات التي يستعملها جمهورك اليوم، المجانية منها والمدفوعة، وأقرأ ما يشكو منه الناس في آراء المستخدمين والمنتديات ونقاشات الدعم، وأنظر في طريقة المنافسين في التسعير. ثم أكتب لك الفجوات الحقيقية، والفجوات التي لا تستحق أن تلاحقها.
ما تحصل عليه في النهايةتقرير عن السوق والمنافسين، فيه الفجوات مرتَّبة وروابط الأدلة عليها.
نتفق على ما سيكون عليه المنتج، وتراه قبل أن يُبنى.
أحوّل الفجوات إلى منتج تستطيع أن تراه بعينك. أبدأ بالشكل: ماذا يفعل المنتج، ومن يسجّل الدخول إليه، وما وظيفة كل شاشة. ثم أصنع شاشات قابلة للنقر تفتحها على هاتفك، فتستعملها وتخبرني بما لا يبدو صحيحًا، فأغيّره قبل أن يُكتب سطر واحد من الكود.
ما تحصل عليه في النهايةنموذج قابل للنقر يضم الشاشات الأساسية، مع قائمة الميزات المتفق عليها.
أقسّم البناء إلى حزم عمل، لكل حزمة نطاقها وسعرها.
المشاريع الكبيرة تتعثّر حين تُبنى كلها مرة واحدة. لذلك أقسّم البناء إلى حزم عمل، ولكل حزمة نطاقها الخاص وسعرها الخاص وشيء يعمل في نهايتها. توافق على كل حزمة قبل أن تبدأ، ولا يُطلب منك أبدًا أن تلتزم بالمشروع كاملًا من البداية.
ما تحصل عليه في النهايةخطة مكتوبة لحزم العمل: نطاق كل حزمة وسعرها والنتيجة التي تنتهي بها.
يُبنى المنتج بالترتيب، وترى نسخة تعمل كل أسبوع.
أبني حزمة عمل بعد حزمة، وأبدأ بالجزء الذي يحمل أكبر قدر من المخاطرة. وفي كل أسبوع رابط حقيقي تفتحه وتستعمله، فلا شيء يبقى مخفيًا إلى النهاية. وإذا تأخّر شيء عن الموعد الذي قلته لك، فستسمع ذلك مني أولًا.
ما تحصل عليه في النهايةمنتج يعمل على رابط مباشر، يُحدَّث كل أسبوع، والكود في مستودع تملكه أنت.
يُطلق المنتج، وأبقى بعد ذلك حتى يعمل كما ينبغي فعلًا.
الإطلاق مرحلة، وليس خط النهاية. أنقل المنتج إلى اسم نطاقك وحساباتك، وأتابع أول المستخدمين الحقيقيين، وأصلح ما يعترضهم. ثم أسلّمك ما تحتاج إليه لتشغيله. وإن أردت أن أستمر معك، فسأبقى.
ما تحصل عليه في النهايةالمنتج يعمل على اسم نطاقك، ومعه الحسابات والكود ودليل تسليم مختصر.
نظام إداري حل محل الورق في معهد تقني، ويعمل على أجهزة المعهد نفسها.
Laravel · Blade · MySQL · Tailwind CSS · Laravel Breeze
اقرأ القصة كاملةإن لم تكن تعرف إلى أي نوع تنتمي فكرتك، فهذا سؤال طبيعي، وسبب وجيه لأن نتحدث.