باختصار حول ما هو الأكثر إثارة للقلق في العالم الحديث للتنمية ولماذا تحتاج إلى إثبات والتعلم والاختبار وعدم كسول.
أنا مطور ، لكنني لم أكتب الرمز منذ وقت طويل
نيتشروم أنت لست مطورًا.
إذا كنت تعتقد أن كتابة التعليمات البرمجية هي مطلب اختياري لمطور جيد ، فالرجاء النزول من هذا الكوكب. هناك العديد من الفرص للعيش عليها ، لكن توقف عن كتابة الكود. يمكنك الذهاب إلى الإدارة ، أو الانتقال إلى إدارة شؤون الموظفين ، أو الانتقال إلى منصب رفيع ، أو الذهاب إلى الدير. ولكن في أي من هذه الحالات ، تتوقف عن أن تكون مطورًا إذا لم تعد تكتب الشفرة.
لماذا؟ أولاً: الكود ليس دراجة ، إذا لم تمارس ، فإنك تنساه. ثانياً: يتعرض المطورون للإهانة عندما يحاول "مدير من نوع ما" تمثيل شخصياتهم (نعم ، بشكل عام ، هذا صحيح بالنسبة لأي مهنة). ثالثًا: إنه مضر بـ CSV ؛ إذا انتقلت إلى منطقة / صناعة أخرى ، فقم بتنمية مهارتك مع الكاريزما مرة أخرى ، ولا تسحب الإشارات إلى النجاحات السابقة (انظر الخطيئة الأخيرة).
من الأمثلة.
- كنت مرة في مقابلة في المكتب الأمريكي. هناك ، في إحدى المراحل ، بدأ رجل نبيل قدم نفسه كرئيس تنفيذي في طرح لعبة شرسة حول روبي عن ورقة (بمعنى القوالب المعدة في Google). للأسئلة حول ما إذا كان يكتب الكود نفسه ولماذا هذا الفحش يطلب من المتقدمين ، فقد قلب المحادثة بلطف وطلب التركيز على المهام.
- هناك مدير موارد مألوف يعمل كطبيب نفساني في أوقات فراغه. إذن هذا الرجل المحترم ، حتى الآن ، يكتب الشفرة في وقت فراغه وأحيانًا يمكن أن يفاجئ المرشح بمعرفته الفضولية إلى حد كبير في منطقة تبدو غير معتادة. يبدو أنه ليس مبرمجًا ، لكن الجميع يأخذونه بنفسه.
أجريت الاختبارات ، لماذا اختبر التطبيق بيدي؟
إن الاعتماد على نتائج الاختبار فقط (حتى لو كان من بينها دمى الاندماج من طرف إلى طرف) هو خطيئة خطيرة. مرة واحدة على الأقل أثناء تطوير أي ميزة ، يلزمك استخدام يديك واستخدامها للنقر خلال الدورة الكاملة لهذه الميزة. أولاً ، ستكون على دراية أفضل قليلاً بالمنصة وكيف يراها المستخدم ، وليس كيف يتم ترتيبها بالداخل. وثانياً ، أنت تتبع سيناريو جديدًا وحسًا عاديًا وقد تجد شيئًا واضحًا لك ، لكنك غير مرئي في الاختبارات التلقائية. في أي حال ، تعتبر الاختبارات التلقائية إضافة إلى التحقق اليدوي من قبل المطور ، وليس بديلاً عنها.
على الفور سأقول عن الميزات. أنا لا أتحدث عن الاختبار اليدوي الكامل من قبل المطور ، فهناك رجال جودة مدربون خصيصًا لهذا الغرض. أنا أتحدث عن الحاجة إلى تشغيل مشروع محلي والحد الأدنى من التحقق من أي تغييرات هناك. ثم في autotests ، على البكر ، مرحلة ، preprod وهمز.
لذا نعم ، يجب أن يكون هناك holivars حول تعقيد العديد من المشاريع و "عدم القدرة" على تشغيل محليا. أنا شخصياً لا أؤمن بمثل هذه المشاريع الملحمية. ولكن في الكسل والجشع - أعتقد. لذلك ، دعنا نتجاوز بإيجاز المشاكل المحتملة لإطلاق مشروع محليًا.
- مشروع صغير مستقل - لا توجد عقبات أمام الوطنيين!
- العديد من التكامل الخارجي. لذلك لديك صناديق رمل لكل منهم. إما أن يكون لديك بذرة أو برامج محاكاة محلية للخدمات الخارجية. أو لديك مشاكل كبيرة سيتم إطلاقها قريبًا.
- الكثير من الخدمات الصغيرة. خلاصة القول هي الفقرة السابقة. الفرق الوحيد هو أن إمكانيات مضاهاة محلية تتوسع. على سبيل المثال ، مجموعة من عمال الإرساء لديهم خدمات ميكروية حقيقية بدلاً من أدوات الروتين.
- هناك حاجة إلى الكثير من البيانات للمشروع للعمل. ولكن نادرًا ما تحتاج إلى مجموعة بيانات متعددة تيرابايت بأكملها من أجل التطوير. وإذا كنت لا تزال في حاجة إليها ، فستكون هناك عدة حالات للمطورين لهذا الغرض. على سبيل المثال ، 2-3 حالات ضخمة لكل فريق من 10-15 مطور. نعم ، إنها ليست مريحة ومكلفة للغاية للأعمال التجارية ، لكنك ستدفع أكثر مقابل التطوير على الإنتاج ، والذي سيتم تنفيذه بغض النظر عن رغبات كبار المديرين.
- متراصة وحشية تعمل على حديد محدد وفقط في المرحلة الصحيحة من القمر. إذا كان الأمر كذلك ، فمن المرجح أنك في مؤسسة دموية والحس السليم لا يعمل هناك.
أنا أعرف بالفعل ما يكفي ولم يعد بإمكاني التعلم
باختصار: "من لا يتطور فهو يحط".
في العلوم النظرية ، هناك حالات يمكنك فيها معرفة الأساس والتوقف عنده. كل شيء أكثر أو أقل استقرارا ، وثبت ولا يتغير هناك. لحسن الحظ ، لا تتغير القوانين الفيزيائية كل خمس سنوات. لذا ، إذا لم تذهب إلى أحدث العلوم ، فيمكنك العيش وحتى العمل. هنا ، على سبيل المثال ، العناصر الأساسية الموجودة على طول الكفاف: حلها Feynman في Los Alamos بعد الحرب العالمية الثانية والآن يتم حلها بنفس الأساليب التحليلية تقريبًا.
لكن مع التطوير والبرمجة ، لن ينجح ذلك. لم يتم العثور على لغة برمجة إلهية ثابتة واحدة (المفهوم من الانهيار الجليدي مثير للاهتمام ، لكنه لم يفتح بعد). تتغير سرعة التكنولوجيا من عقدين من الزمن في حالة أنظمة التشغيل وقواعد البيانات إلى شهرين في حالة JavaScript. وإذا لم تتطور ، فيمكنك في غضون عام أو عامين أن تخسر المستوى إلى حد كبير ، وفي فترة الخمس سنوات فقط تحصل على صفر.
لكي لا أكون شاملاً بشأن سرعة التغيير التكنولوجي ، سأقدم بعض الأمثلة. يوجد كتاب لتعبئة زجاجات Kernigan and Soldering 1992. باستخدامه ، يمكنك تعلم يونكس جيدًا ولا تتفاجأ من التغييرات التي حدثت بعد 15 عامًا. يمكنك أن تأخذ كتاب Tom Kite حول Oracle 8 ، الذي تم إصداره في عام 2000 تقريبًا ولا تفاجأ تمامًا بالاختلافات التي حدثت في الإصدار 18c. ولكن أي كتاب عن JS قبل خمس سنوات يمكن وضعه بأمان على تأجيج.
أنا بارد بما فيه الكفاية ولا أستطيع إثبات ذلك
في رأيي ، هذا هو الأصعب والأكثر شيوعًا.
لسوء الحظ أو لحسن الحظ ، تحتاج إلى إثبات مهاراتك ومدى ملاءمتها المهنية والعقلانية طوال حياتك. عندما تتوقف عن القيام بذلك ، قد تجد أنك إما متقاعد ، أو كنت تعاني من الخرف ، أو كنت قد أصابتك للتو. في أي حال ، يجب أن ترى أخصائي.
تواتر الأدلة مختلفة. في حالة الأصدقاء والأقارب ، فإن الدليل ليس ضروريًا في كثير من الأحيان. وفي حالة الغرباء - بشكل منتظم وكامل. الأماكن التي تحتاج إلى دليل متنوعة للغاية: في المقابلات ، في المؤتمرات ، إلى الزملاء الجدد ، عشاق جدد ... حتى في المتجر ، إذا كان الشراء أكثر تعقيدًا من البراز.
إذا كنت تعتقد أن قصة خبرتك دون تأكيد المهارات طبيعية وكافية ، فقم بزيارة كوكب مجاور. بالنسبة لي ، وهذا ما يسمى fipping والغطرسة.
فيما يتعلق بالأمثلة في هذا المجال ، فهو ضيق ، لأن معظمها سلبي ، وأعتقد أن القارئ نفسه سيتذكر شيئًا مناسبًا من تجربته. وبسبب الإيجابي ، يكون الأمر أكثر صعوبة ، حيث لا يتم ملاحظته وينتج عنه ببساطة حوار بناء. لذلك ، أثق في تجربة حياة القارئ ، وآمل أن يكون الجميع قدوة جيدة.