Насправді всі відповіді були сказані на смерть у численних місцях тут і деінде. Або, принаймні, я чув це до смерті. Вивчіть свій IDE, навчіться вводити швидше, використовувати фреймворки, використовувати генерацію коду тощо, тощо. Так, звичайно, ці речі допоможуть, і я сумніваюся, що є багато програмістів, які є майстрами всіх. Але, будучи типом програміста, який задає ці запитання та відвідує сайти, такі як Stack Overflow, ви вже знали про ці речі . Ви просто хотіли, щоб сюди вони повторилися, чи ви просто хотіли трохи вийти?
Але що робити, якщо нам вдалося дійти до цього стану? Я маю на увазі освоїти всі ці пропозиції? Що було б тоді? Ну. Я б здогадався, що часові лінії ще більше скоротяться. І знову ми повернемось до сприйняття якості. Я маю на увазі, наше ремесло безумовно прогресувало та ставало дедалі продуктивнішим протягом десятиліть. Але чи підвищилася якість за цей час (виключаючи звичайні роки)?
Моя відповідь проста: якісне програмне забезпечення вимагає часу ! Ви можете торгувати лише одним за іншим (якість / швидкість). Але так, ми всі знаємо, що, однак, ми не чесні щодо того, наскільки цей компроміс часто закінчується на швидкості кінця шкали. А ми ще більші брехуни на початку проектів!
Я кажу, що ви тут не винні. Проблема полягає в уявленні людей про те, як довго потрібно зайняти якісне програмне забезпечення. Ми обманюємо себе в думці, що ми здатні створити якісне програмне забезпечення з типами часових ліній, які наші менеджери або навіть ми здогадуємося. Ми не робимо якісне програмне забезпечення . Ми пишемо програмне забезпечення, яке працює, але іноді із спалахами якості у певних куточках програми.
То що ми можемо з цим зробити? Ми не можемо просто переконати своїх начальників у тому, що нам потрібно подвоїти чи потроїти інвестиції у кожен із наших проектів. Я кажу веду за прикладом. Створіть справді чудовий фрагмент програмного забезпечення як побічний проект. Покладіть на це свій час і не йдіть на компроміси. Весь час звертайте увагу на те, як ви прогресуєте. Зверніть увагу на зовні незв'язані завдання, яким вам довелося вкласти несподіване кількість часу, і подивіться, чи можете ви це виправдати. Порівняйте це з усіма іншими проектами, над якими працювали. Будьте жорстоко чеснимиз собою та всіма аспектами цього аналізу. Чи можна зайвими речами, які ви зробили зі своїм якісним програмним забезпеченням, нехтувати в «реальних» проектах на роботі? Але, можливо, ваша спроба зазнала невдачі. Що було причиною? Вам нудно і просто поспішили, щоб виконати основні риси? Я ще повинен щось подібне зробити сам, тому я закінчую цю думку з деяким сумнівом - але я маю намір реально піти. Я буду тримати вас у курсі :).
Нарешті, я вважаю, що більшість (якщо не всі) оцінки ефективності є вивернутими та надзвичайно маніпулятивними. Ви не можете забезпечити якість та швидкість роботи дроселів на 100%. Ваш начальник повинен забивати вас проти стандарту, встановленого організацією. Стандарт організації на компроміс між якістю та швидкістю. Давайте уявимо, що OrangeSoft Inc. очікує 33% якості та 66% швидкості. Тож якщо ви пишете код, який містить, можливо, третину одиниць тестів, як це слід, але доповнюючи його швидкістю та скороченим терміном доставки, ви повинні набрати майже 100% за ваш огляд! (Це досить грубі аналогії, але ви розумієте). Але натомість, що трапляється, це те, що Боб пише код надзвичайно швидко, але це, як відомо, баггі. Тож на огляді його виконання він набере 3/5 за якість та 5/5 за швидкість. Керол, з іншого боку, пише код набагато повільніше, але видає значно менше помилок. Вона набирає 5/5 за якість, але 3/5 за швидкість. Так чи інакше, Боб і Керол приєднаються до підвищення. Чи можливо будь-якому працівникові отримати ідеальний бал? Це справедливо?