Я багато років провів, керуючи та керуючи командами розвитку. За своєю природою я трохи OCD з точки зору коду і дуже чорно-білий. Я на досвіді дізнався, що вибирати свої бої - це одне з найважчих навичок навчитися керівництву команди. Так, стандарти важливі. Так, читабельність та ремонтопридатність надзвичайно важливі. Так, всі ми повинні прагнути писати єдиний, відповідний стандартам код. Хоча розробники - це люди, але не засоби генерації коду. У нас є особистості, думки, нам нудно, і ми хочемо вчитися новому.
На оглядах коду на роботі я бачив код і шаблони, які вважаю "розумними", хоча не обов'язково додають до загальної якості або ремонтопридатності бази коду.
Гаразд ... тому вони не додають, але чи применшують це? Ми говоримо лише про особисті переваги в стилях кодування, або написання коду зовсім непотрібне (наприклад, використання дерев виразів та відображення лише тому, що користуватися деревами експресії та відображенням цікаво)? Якщо це колишній, відпустіть його. Частина задоволення бути розробником - це придумати творчі рішення проблем. Можливо (і більшість з нас не любить цього визнавати), ми іноді відчуваємо заляканість підходів, яких ми не розуміємо, і або не хочемо просити, або не маємо додаткової енергії для вивчення нового підходу.
Тепер, коли творчість призводить до непотрібного коду та абсолютно невиправданої складності, то, безумовно, будьте голосовими і зробіть свою справу. Бути гравцем команди є важливим, але за це потрібно (та притягнути до себе інших) відповідальність. Огляди кодексу - це відповідальність настільки ж, як забезпечення якості та навчання. Ви збираєтесь наступити на кілька пальців, але якщо вам здається, що у вас є вагомий аргумент, чому зусилля (гроші) потрібно витратити на перезапис робочого коду, а его буде піддаватися синьому процесу, і ви хочете ризикувати, щоби хтось захопився їхнім ремеслом. , тоді вам не слід ухилятися від того, щоб покласти його на стіл. Якщо ви керівник команди, це ваша робота. Будьте в курсі впливу, і робіть це. Якщо ви не керівник команди і не маєте повноважень, тоді покладіть це на вирішення команди.
Найкращий спосіб прищепити відповідальність у вашій команді - заохочуючи інших притягувати вас до відповідальності. Якщо ви залишаєтесь відкритими і не закриваєте людей, коли вони пропонують поліпшити ваш код, ви можете виявити, що вони сприйнятливіші до ваших пропозицій.