Samaradorlik siri samarali menejer emas, balki sifat kodidir

Eng ahmoqona kasblardan biri bu dasturchilarni boshqaradigan menejerlardir. Hammasi emas, lekin o'zlari dasturchi bo'lmaganlar. Kitoblardagi usullardan foydalangan holda samaradorlikni (yoki "samaradorlikni" oshirishnimi?) "ko'tarish" mumkin deb o'ylaydiganlar. Xuddi shu kitoblarni o'qishga ham ovora bo'lmasdan, video lo'lilarga tegishli.

Hech qachon kod yozmaganlar. Dasturchilar haqida Gollivud filmlari yaratilganlar - ular buyruq satridan foydalanib elektron pochta xabarlarini tomosha qiladiganlar. Ko'rsatkichlar, muddatlar va o'z maoshidan boshqa hech narsa qiziqtirmaydiganlar.

Ko'pchilik bo'lganlar.

Ammo ular boshqa sababga ko'ra ahmoqdirlar. Ular samaradorlikni yoki hech bo'lmaganda samaradorlikni xohlashadi (keling, menejer, Google farqi nimada), birini yoki boshqasini tushunmasdan. Umuman olganda, mohiyatini tushunmasdan, natijani olish jarayoni, bu jarayonda yuzaga keladigan yo'qotishlar, rivojlanish xarajatlari. Qisqasi, dasturchi bilan xuddi qora qutidek ishlash.

Ular dasturchilar boshqaruviga aynan bir sababga ko'ra yugurib kelishdi: shov-shuv, pul, bozor va bir xil ahmoqlar to'plami. Yo'qolgan joy bor.

Agar mexanik yig'ish ishlab chiqarishda shov-shuv bo'lsa, biz u erda yugurardik. Stansiya vagonlari yomon. Dekabr oyida mahallamizda archa sotuvchi yigit ta’tilda IT-menejer ekaniga hayron boβ€˜lmayman.

Qisqasi, iloji bo'lsa, bu yigitlarni bo'yniga otib tashlang. Xavotir olmang, ular ish topadilar. Ularning hech biri o'zlari dasturchi bo'lmaguncha hech qachon munosib ish qilmaydi. Chunki u oβ€˜zi boshqarayotgan jarayonning mohiyatini, mexanizmini, mantiqini tushunmaydi.

Xo'sh, menejerlar haqida etarli. Endi dasturchilar uchun gap. Yuqori sifatli kod yozishni o'rganish orqali rivojlanish samaradorligini qanday oshirish mumkin.

Samaradorlikni oshirish uchun siz sifatni yo'qotmasdan muammolarni tezroq hal qilishingiz kerak. Muammolarni tezroq hal qilish uchun siz darhol yuqori sifatli kod yozishingiz kerak. Va "yuqori sifatli", "yozish" va "darhol". Keling, metafora bilan tushuntiraman.

Yuqori sifatli kod yozish chet tilida to'g'ri gapirishga o'xshaydi. Tilni bilmasangiz, unda o'z fikringizni shakllantirishga ko'p vaqt sarflaysiz.

Agar siz zudlik bilan biror narsa aytishingiz kerak bo'lsa, siz shunchaki ba'zi so'zlarga yopishib olasiz, ko'pincha to'g'ri emas, siz maqolalarni, to'g'ri so'z tartibini unutasiz, fe'l zamonlari va yomon talaffuz haqida gapirmang.

Agar javobni shakllantirishga vaqtingiz bo'lsa, siz lug'at yoki onlayn tarjimonni ochib, fikringizni shakllantirishga ko'p vaqt sarflashingiz kerak bo'ladi. Biroq, tuyg'u hali ham yoqimsiz bo'ladi: siz javobni aytasiz va bu to'g'ri yoki yo'qligini bilmaysiz. Kod bilan ham xuddi shunday - u yozilganga o'xshaydi, u ishlayotganga o'xshaydi, lekin u sifatlimi yoki yo'qmi - bu sir.

Bu ikki barobar vaqtni behuda sarflash bo'lib chiqadi. Javob topish uchun vaqt kerak. Bu javobni shakllantirish uchun ham vaqt kerak - va unchalik ham kam emas.

Agar yuqori sifatli kod yozish mahorati mavjud bo'lsa, javobni tarjimaga qo'shimcha vaqt sarflamasdan, darhol, boshda pishib etishi bilanoq shakllantirish mumkin.

Yuqori sifatli kod yozish mahorati arxitekturani loyihalashda yordam beradi. Siz shunchaki noto'g'ri, amalga oshirib bo'lmaydigan yoki qo'ldan-qo'l variantlarni boshingizda ko'rib chiqmaysiz.

Xulosa qilib aytganda: yuqori sifatli kod yozish mahorati muammoni hal qilishni sezilarli darajada tezlashtiradi.

Lekin bu hammasi emas. Kigiz etiklar menejerlari tufayli bitta muammo bor - bizda yuqori sifatli kod yozish uchun sabab yo'q. Menejer kodga qaramaydi, mijoz kodga qaramaydi. Biz kamdan-kam hollarda bir-birimizga kodni ko'rsatamiz, faqat ba'zida, "tekshiruvchi" yoki davriy refaktoring mavjud bo'lgan ba'zi loyihalarda.

Ma'lum bo'lishicha, ko'p hollarda shiddatli kod ishlab chiqarishga yoki mijozga ketadi. Shiddatli kodni yozgan odam barqaror neyron aloqani hosil qiladi - bu nafaqat yomon kod yozish mumkin, balki bu ham zarur - bu qabul qilinadi va hatto buning uchun pul to'laydi.

Natijada, yuqori sifatli kod yozish mahorati umuman rivojlanish imkoniyatiga ega emas. Shartli xodim tomonidan yozilgan kod hech qachon hech kim tomonidan tekshirilmaydi. Oddiy dasturlashni o'rganishining yagona sababi - bu ichki motivatsiya.

Ammo bu ichki motivatsiya rejalar va samaradorlik va mahsuldorlikka bo'lgan talablarga zid keladi. Bu qarama-qarshilik yuqori sifatli kod foydasiga hal etilmagani aniq, chunki ular hatto yomon kod uchun odamlarni tanqid qilishmaydi. Va rejani bajarmaganligi uchun - shunga qaramay.

Nima qilishim kerak? Men birlashtirilishi mumkin bo'lgan ikkita yo'lni ko'raman va taklif qilaman.

Birinchisi, kodingizni kompaniya ichidagi kimgadir ko'rsatishdir. Reaktiv tarzda emas (so'ralganda/majburlanganda), lekin faol ravishda (uh, do'stim, mening kodimga qarang, iltimos). Bu erda asosiy narsa shakarli snotni joylashtirmaslik, kodni tanqid qilishni xushmuomala shaklda qo'yishga urinmaslikdir. Agar kod ahmoq bo'lsa, biz shunday deymiz: kod axlat. Albatta, tushuntirishlar va uni qanday yaxshilash bo'yicha tavsiyalar bilan.

Ammo bu yo'l ham shunday. Uning qo'llanilishi kontakt sodir bo'lgan nuqtaga bog'liq. Agar ish allaqachon ishlab chiqarishga kirgan bo'lsa va kod ahmoq ekanligi ayon bo'lsa, uni qayta ishlashdan foyda yo'q. Aniqrog'i, sabablar - ko'rsatkichlar ham pasayadi. Menejerlar shoshilib sizni samaradorlik talablari bilan ezib tashlashadi. Va ularga bema'ni kod albatta xatolar ko'rinishida qaytib kelishini tushuntirishga urinmang - bu sizga teskari ta'sir qiladi. Siz faqat buni boshqa qilmaslik majburiyatini olishingiz mumkin.

Agar ish hali topshirilmagan bo'lsa yoki endigina boshlangan bo'lsa, kodga (yoki uning loyihasi, g'oyasiga) shilinish juda amaliy ma'noga ega bo'lishi mumkin - odam buni odatdagidek bajaradi.

Ikkinchi yo'l, eng zo'r, ish bo'lmagan vaqtlarda ochiq manbali ishlab chiqishni amalga oshirishdir. Maqsad nima: bir guruh dasturchilar, ya'ni dasturchilar sizning kodingizni ko'rish va bu haqda gapirish. Kompaniya ichidagi hammaning vaqti yo'q. Ammo butun dunyodagi dasturchilarning hali hech qanday ishi yo'q va agar siz amaliy nuqtai nazardan foydali narsa yozsangiz, ular albatta ichkariga qarashadi.

Asosiy hiyla, menimcha, ishlamaydigan vaqtlarda kod yozish, chunki kodning sifati va natijani etkazish tezligi o'rtasidagi ziddiyat ishlamaydi. Eng kamida bir yil davomida rivojlanishingizni yozing. Na muddatlar, na texnik xususiyatlar, na pul, na xo'jayin sizga bosim o'tkazmaydi. To'liq erkinlik va ijodkorlik.

Faqat erkin ijodda siz ajoyib kod nima ekanligini tushunasiz va his qilasiz, til va texnologiyaning go'zalligini ko'rasiz va biznes vazifalarining jozibasini his qilasiz. Xo'sh, siz yuqori sifatli kod yozishni o'rganasiz.

To'g'ri, bu sizning shaxsiy vaqtingizni o'tkazishingizni talab qiladi. Har qanday boshqa rivojlanish kabi. Bunga xarajat sifatida emas, balki o'zingizga investitsiya sifatida qarang.

Manba: www.habr.com

a Izoh qo'shish