هناك العديد من الظروف التي يمكن أن تكون محفزات لإنشاء برامج ضعيفة: الأدوات المستخدمة ، وجودة الاتصال في الفريق ، والصفات الشخصية للمطورين ، والمنهجيات ، وما إلى ذلك. وهناك شيء واحد منهم هو أصل كل شخص آخر تقريبًا: المشاكل الخيالية.
لم يكن من المقرر أن تكون معظم البرامج المعقدة أو zagabovannoy معقدة ، وأكثر من ذلك ، zagabovannoy. تم إنشاؤه ببساطة لتنفيذ تلك المهام التي تكمن في أساس الخطة الأصلية.
قصة بودكاست
لنفترض أنك تسجل بودكاست شائعًا وفي مرحلة ما تفكر في إنشاء موقعك الخاص - حسنًا ، كما تعلم ، بمعلومات عن البودكاست الخاص بك ، وسجلات الأعداد السابقة ، والمقالات ، وربما بعض الإعلانات. في الواقع ، كم يمكنك مشاركة الأرباح مع بعض الناشرين الخارجيين؟
وهكذا قررت تعيين أشخاص يقومون بإنشاء هذا الموقع لك. تكتب لهم متطلبات واضحة للغاية:
- تحميل موقع سريع في أمريكا الشمالية
- دعم تنزيل الإصدارات السابقة من البودكاست والبث المباشر للتيار
- يجب ألا ينخفض البث أو يتجمد خلال الدقائق الـ 15 الأولى لـ 99.99٪ من المستخدمين. غير مرغوب فيه أبدًا ، ولكن مع ذلك.
- التكامل مع Google Adwords (وفي المستقبل ، ربما مع نظائرها)
- التكامل مع عمليات البث على Facebook ، لأنك تنفق عمليات البث هناك. إذا كان بإمكانك إنشاء حل بديل يسمح لك بالتدفق بشكل أكثر ملاءمة - حتى أفضل.
أنت تقدم هذه المتطلبات للمطورين ، وربما تتواصل معهم قليلاً. شهرين. يظهرون لك عرضًا توضيحيًا وأنت مغطى ببقع حمراء. يصبح من الواضح أنك ألقيت للتو 15000 دولار في الهاوية. ما أظهروه لك غير مقبول على الإطلاق من أي جانب ، مجرد حفنة من القمامة. تريد أموالك ، لكن القطار غادر بالفعل.
إن الغضب من رؤية موقع ظاهر أمر بسيط للغاية. في الافتتاح الأول ، تجمد كل شيء. ثم يبدو أنها تعمل وسألت عن كيفية تغيير نوع الإعلان الذي سيتم عرضه على الموقع. لقد أظهروا لك واجهة تطور ودراجة لهذا ، وهو أمر غير واقعي ببساطة لإتقانه بنفسك. تدفقات الفيسبوك بطيئة. كل شيء فظيع.
لكن فريق التطوير لا يفهم لماذا أنت منزعج. من وجهة نظرهم ، حققوا إنجازًا رائعًا ، بعد أن صنعوا مثل هذا المنتج المعقد في شهرين فقط. لقد وضعوا كل مواهبهم فيه ، روحهم كلها. احكم بنفسك على الميزات الرائعة التي أضافوها إليها:
- نظام توصية مذهل
- خوارزمية التعرف على الكلام التي تعرض الترجمة تحت البث الخاص بك في الوقت الحقيقي !!!
- يتم تحميل الصفحة الرئيسية للموقع في 200 مللي ثانية في أي مكان في العالم
- تتم كتابة بروتوكول البث والعميل من الصفر ، وتمت إضافة Facebook بواسطة مكون إضافي. يمكنك إضافة ملحقات لمنصات أخرى في أي وقت!
- من الممكن الاندماج مع 20 منصة إعلانية مختلفة
أنت ترى بالفعل ما هي المشكلة ، أليس كذلك؟ لقد طلبت منتجًا محددًا للغاية ومتخصصًا للغاية مع بعض الميزات الإضافية التي تحتاجها. سمعها فريق التطوير بشكل مختلف. بالنسبة لهم ، تحولت كل ما هو "مرغوب فيه" و "أكثر ملاءمة" و "في المستقبل" إلى مهمة مثيرة لتطوير منتج مشترك وقابل للتوسيع وقابل للتوسع ومتكامل بنسب هائلة ، يمكنك خلاله حل مجموعة من المشاكل المثيرة للاهتمام. حسنًا ، وبالطبع ، لا يوجد شيء يمكن تشتيت انتباهه عن طريق التفاهات مثل التلميع وإضفاء الوظيفة الأساسية للمنتج على المثالية - لدينا أي مقياس ، ليس هناك وقت لاستبداله الآن!
مشكلة أخرى هي أنك على الأرجح لم تتواصل مباشرة مع المطورين المباشرين للنظام. لقد لعبت هاتفًا فاسدًا: لقد تحدثت مع بعض البائعين الذين سلموا المهام إلى شخص من الإدارة الوسطى لشركته ، وكتبوا مواصفات العمل هناك ، وأعطوها لمدير المشروع ، وكتب المواصفات الفنية وأعطاها لقائد الفريق ، الذي قسمها إلى مهام وسلمت للمطورين. حسنًا ، فهم كل من المطورين أيضًا مهامهم وأدركوها في سياق فهمهم.
آلية تجنب الواقع
المشاكل التخيلية أكثر إثارة للاهتمام لحلها من المشاكل الحقيقية. يلعب الأشخاص الأذكياء جدًا ألعابًا معقدة ، ويحلون مسائل الرياضيات ، ويكتبون كتبًا حول موضوعات مجردة - مجانًا أو تقريبًا مجانًا. في الوقت نفسه ، فإن مبرمج الطبقة المتوسطة لتطبيقات الهاتف المحمول القياسية سيضع لك فاتورة كبيرة جدًا. هذا ليس بسبب صعوبة العثور على مبرمج عادي من العبقري. هذا لأنه من السهل والممتع القيام بمهام مثيرة للاهتمام ، ولكن ليس روتينًا.
يرغب معظم المبرمجين في العمل على مهام مثيرة للاهتمام والحصول على أموال جيدة مقابل ذلك. هذا صعب التحقيق. بالطبع ، يمكنك التكهن حول "مشكلة مثيرة للاهتمام" ، ولكن بالنسبة لمعظم المطورين فهي شيء قريب جدًا من حدود مجال المشاكل القابلة للحل نظريًا. شيء يصعب تحقيقه ، ولكنه ممكن.
امنح الشخص العقلاني العديد من المهام الروتينية غير الأوتوماتيكية ، وستجلبه عاجلاً أم آجلاً إلى المقبض. لكن دماغ الإنسان ، بعد ملايين السنين من التطور ، طور عددًا قليلاً من الحيل المختلفة للحفاظ على نفسه في حالة ملائمة. بما أن ضحايا العنف قادرون على الهروب إلى عالم خيالاتهم ، فإن ذلك محكوم ببراءة لسنوات من تطوير المشاريع أو العمل الحر على الإنترنت بمرور الوقت في العثور على الخلاص في حل المشكلات الخيالية.

عدد وتعقيد المشاكل المخترعة هي وظائف مستوى خيال المبرمج وتعقيد مهامه الحقيقية. وتجدر الإشارة إلى أن هذا النهج نفسه ليس فريدًا لمطوري البرامج. يجد المدراء ، ومندوب المبيعات ، والموارد البشرية ، والدعم ، والمحامون والمحاسبون طرقهم الفريدة الخاصة بهم لخلق المشاكل غير الموجودة والتغلب عليها بطوليًا. إنهم ينخرطون في قرارات تتجاوز كفاءتهم ، ويتحدثون في الاجتماعات حيث يكون وجودهم شكليًا خالصًا ، وما إلى ذلك. كما أنهم يبالغون في تقدير حجم المشاكل ودورهم في حلها ("يجب أن يكون تطبيق يوميات الكلب الجديد متوافقًا مع 101٪ من اللائحة العامة لحماية البيانات منذ اليوم الأول! لا يمكننا الانتظار حتى يشكو العميل!"). إنهم يضخمون الموظفين لخلق مظهر لأهمية عمل فريقهم ، ثم التعامل مع مشاكل النمو والتوسع والخدمات اللوجستية (وستكون هناك دائمًا مثل هذه المشاكل في فريق كبير).
العديد من المطورين أذكياء ، لكن العديد من مهامهم غبية جدًا. يجبر هذا التناقض الأشخاص الأذكياء على التفكير في أمور أخرى ، على الرغم من عدم وجودها في الواقع ، ولكنها مهام مثيرة للاهتمام.
هندسة الهاتف المدللة
في بعض الأحيان ، لا تكون المشكلات الخيالية نتيجة لأوهام المطورين الملل. في بعض الأحيان يكون هذا نتيجة "هاتف مكسور".
أعمل لحسابهم الخاص في بعض الأحيان. عندما بدأت للتو ، لم أستطع تحمل فرز العملاء. وهذا يعني الحاجة إلى اصطحاب الجميع في صف واحد وملاحظة أكثر الأشكال تنوعًا في انحرافات النفس البشرية بكل الألوان. لقد رأيت سلاسل من مئات الرسائل حول موضوع تفاصيل النموذج غير المادي تمامًا. رأيت الناس يغيرون كل فقرة من المواصفات كل أسبوع. كان لدي عملاء سألوا لمشاريع بعض المواقع التافهة عن فرصة الخروج معهم على الفور إلى ICO أو ربط الذكاء الاصطناعي بهم.
كان هناك عملاء منطقيين تمامًا ، ومع ذلك ، افتقروا إلى المعرفة (أو المفردات؟) للتعبير عن جميع متطلباتهم في تركيبات مفهومة. هذا في حد ذاته ليس مشكلة. جزء من عمل مطوري البرامج هو على وجه التحديد مجموعة المتطلبات وكتابة المواصفات. هذا هو ما نتقاضاه ، بما في ذلك المال ، ويمكن حتى أن يتم هذا العمل بشكل أو بآخر بشكل طبيعي إذا كان لديك وصول عادي إلى العميل ووقت كافٍ. المشكلة هي أنه في بعض الأحيان لا يكون هذا الوصول وهناك العديد من الوسطاء بينك.
معظم الشركات تحب أن يكون لديها "مندوب مبيعات" في وظائف منفصلة. هؤلاء هم الأشخاص المميزون الذين يبحثون عن العملاء المحتملين ، ويناقشون المهام والمواعيد النهائية والأسعار معهم. هؤلاء الأشخاص هم الذين يمكنهم معرفة أكثر فائدة وطرح معظم الأسئلة. لكن هؤلاء ليسوا الأشخاص الذين سيكتبون هذا المشروع. بين مندوبي المبيعات والمبرمجين هناك طبقات 2 أو 3 أو 4 أو أكثر من المديرين والمهندسين والمحللين وقادة الفرق من المستويات المتوسطة والدنيا. نعم ، يمكن أن يكون أشخاص مهرة للغاية. ولكن لا يزال - هذه طبقات إضافية. بغض النظر عن مدى صعوبة محاولتهم ، ستتغير المعلومات التي تمر عبرهم. شخص ما يتجاهل شيئًا (في رأيه) غير مهم ، وآخر سيوضح شيئًا غير محدد ، ولكن (في رأيه) واضح ، والثالث سيحل محل الصياغة الغبية بالمصطلح الصحيح (كما هو متأكد) - والآن لم يعد من الممكن التعرف على المهمة الأولية. يمكن لمندوب المبيعات إلقاء عبارة للعميل مثل "ولكن بالنسبة لـ 39،999 يمكننا القيام بذلك على blockchain أيضًا". إذا كان العميل يعض ، فسيضطر فريق التطوير إلى تحريك أدمغته على مستويين أدناه ، ولكن كيف يمكن القيام بذلك على blockchain. ولكن تم بيعها ودفعها بالفعل ، سنفعل ذلك.
وهكذا ، تضيع المشكلة الأصلية في المضاربة وإعادة التفكير. فجوة بين المشاكل الجديدة المُختَرَعة (إذا لم تكن هناك فجوة فيها) وهناك أشخاص يريدون ملؤها بمشاكلهم الخيالية وحلولهم الرائعة. لأنها ما زالت حرية وليست روتينية.
التعقيد الاصطناعي والانتقاء الطبيعي
غالبًا ما يكون هناك جانب أكثر قتامة. يمكن أن يصبح اختراع المشاكل والأساليب الخيالية لحلها محركًا لنمو الشركة ، وربما في المستقبل ، ربما يكون عملها الرئيسي ، أهم جزء من وجودها ، والذي لا يمكن التخلي عنه.
طالب: "الأشخاص الذين يتم اختيارهم لحل المشكلات المعقدة ليس لديهم حافز لحل المشاكل البسيطة"
هل سمعت عن المهندسين الثلاثة الأوائل الذين اكتشفوا فجأة أن الخدمات المصرفية عبر الإنترنت ، بشكل عام ، أمر بسيط؟ لقد ابتكروا برمجيات بسيطة وبالتالي خالية من المتاعب ، واستخدموا التقنيات ولغات البرمجة الصحيحة ، ثم نقلوا جميع البنوك الرئيسية إلى منصتهم.
لا لم تسمع؟ هذا لأن هذا لم يكن. ولكن ما حدث ، وسيظل - فرقًا منفصلة عن آلاف المبرمجين الذين يعملون في بنوك مختلفة ولمدة نصف عام تقريبًا قادرة على استخدام الفريق بأكمله لتنفيذ ميزة مثل "معاملة الاسترداد". هكذا تتم كتابة البرامج المصرفية ، نعم.
وهذا ، بالطبع ، ليس لأن نقل رقم من عمود إلى آخر أمر صعب للغاية ، لا. ليس صعبا. هنا ، قم بفهرسة الإنترنت بالكامل ، ثم اعرض نتائج البحث ذات الصلة في جزء من الثانية - وهذا أمر صعب. ومع ذلك ، قام به اثنان من الرجال في المرآب. وللرجوع عن الصفقة ، هناك حاجة إلى 1000 شخص وستة أشهر.
المشكلة هنا هي أن النظام البيئي المصرفي جيد بشكل لا يصدق في مهمته الرئيسية - دعم النظام البيئي المصرفي. العجلات تدور ، والأوراق تسرق ، وغدا سيكون كل شيء كما كان بالأمس. كل شيء لديه الجمود. وإذا كنا نعمل على حل مشكلة وهمية على مدى السنوات الخمس الماضية ، فسوف نعمل على حلها غدًا أيضًا.
"من الصعب جعل الشخص يفهم شيئًا إذا حصل على راتبه لعدم فهمه." - أبتون سنكلير
ويستمر الجميع في العمل على المهام الوهمية ، لأنه إذا توقفوا للحظة ونظروا إلى المهام الحقيقية ، فسيصبح من الواضح أن نظامهم بالكامل معطّل. فجأة ، قد يتضح أن Vasya ، الجالس في هذا الركن ، كان يراقب حالة مزرعة الخوادم الداخلية على مدى السنوات العشر الماضية ، والتي تم الانتقال منها إلى AWS بنجاح قبل 5 سنوات. فجأة اتضح أن كل عمل ماشا هو إرسال تقارير داشا لشخص ما. مثل هذا الوعي صعب للغاية ويحاول الناس لا شعوريًا تجنب المواقف التي يمكن أن تحدث فيها عن طريق الخطأ.
ونستمر في حل المشاكل الخيالية.