Це питання надихнуло саме це . Хоча це інше питання вважалося локалізованим, я вважаю, що основна проблема - це щось надзвичайно поширене в нашій галузі. Я знаю, що є деякі розробники, які прочитають це і думають, що я складаю це, і тоді вони можуть відповісти, як усі піклуються про свою роботу і хочуть вчитися, але просто дивлячись на інші пости програми програмістів SE ( конкретний випадок ), Я знаю, що це не є загально правдою.
Тож скажімо, що у вашій команді (або, можливо, більшість) у вас є хтось із стандартних операційних процедур - це копіювати / вставляти і хто вважає, що все можна вирішити, якщо тільки ви додасте достатню кількість викликів функцій та змінних. Ця людина ніколи не чув про TDD, DRY або SOLID і поза 40 годин на роботі, коли вони зайняті роботою, вони жодного разу не читали жодної методики / методів / книги дизайну.
У минулому я (та інші) запитували, як вам навчати ТОВ . Але зараз я думаю, що це не правильне питання. Справжнє питання полягає в тому, як ви підходите до такої людини / колективу і робите їх цікавими щодо кращого способу ведення справ? Як ти надихаєш їх на навчання? Без цього здається, що всі викладання, зустрічі, лекції, дискусії марні, якщо вони абсолютно щасливі повертатися до свого столу і робити те, що вони завжди робили.
Я працюю з купою таких людей. Вони насправді є досить яскравими особами, але я ненавиджу, коли чую: "Я закінчую кодування, просто потрібно перефактурувати і розділити на кілька класів, щоб зробити DXM щасливим". Вони не рефактор для чистішого, читабельнішого, доступнішого коду, але лише тому, що в іншому випадку вони будуть лаятись. Я знаю, що вони здатні до навчання, просто здається, що взагалі бракує мотивації.
Коли я доставляю роботу, у неї, як правило, менше помилок, і робота, якою я володів, ніколи не ставала 5000-лінійною жахливістю класу. Інші зауважували б такі коментарі, як "ваш код набагато чистіший і легший для читання, ніж наші речі", тому вони бачать різницю. Але в той же час я відчуваю, що вони вважають, що їм платять за 40 годин незалежно від того, що роблять, тому вони насправді не проти, якщо вони проводять 3 повні дні в QA, шукаючи помилку, яку не слід було б ввести в перше місце. Або що їм потрібно тиждень, щоб змінити один клас, тому що існує стільки залежностей, які вони в кінцевому підсумку торкаються. Хоча, "можливо, цей клас повинен був бути написаний інакше", схоже, ніколи не з'являється.
Чи можна щось зробити в цих ситуаціях? Хтось домігся успіху? Або найкраще виділити таке мислення до некритичних частин проекту та мінімізувати шкоду?
ПРИМІТКА. Коли я кажу "відсутність мотивації". Я не думаю, що це відсутність мотивації працювати чи робити гарну роботу, тому що вони просто перестали дбати. Більшість нашої команди насправді зовсім навпаки. Вони напевно дбають про продукт. У нас є хлопці, які будуть працювати ніч і вихідні. Частина, яку я намагаюся пройти, - це покращені звички та навички, їм насправді не доведеться так багато працювати. Я думаю, що "40 годин" річ зробила цю публікацію занадто негативною.