Я працюю над розробкою програмного забезпечення вже більше 10 років, і мені світається, що мені рідко вдається створити щось "нове". Я усвідомлюю, що «нове» - це невиразний термін, але я би визначив його як будь-що - від очевидного нового масштабного проекту до нової великої функції в існуючому проекті (скажіть щось, що вимагало б певної думки в його розробці, і це може знадобиться 2 тижні або більше для завершення). Можливо, груба інструкція є чимось новим, якщо вона вимагає письмової специфікації. Я думаю, що більшість програмістів знають, про що я говорю - ти в зоні, швидко пишеш тонну коду.
У будь-якому випадку, думаючи про те, що я зробив, я вважаю, що менше, ніж 10% мого часу витрачається на "нову" роботу. Є такі речі, як "адаптувати цю існуючу систему до роботи в цьому новому середовищі", що, безумовно, вимагає багато планування, але власне кодування та "нові речі" зводиться до того, щоб в багатьох місцях у коді вносяться невеликі зміни. Так само і для невеликих запитів на функції - якщо я знаю, що робити, їх часто можна закінчити за годину, а якщо я цього не роблю, це просто багато читання коду та з'ясування того, що робити (що мене засмучує, бо я вчуся набагато краще, роблячи, а не читаючи).
Взагалі я відчуваю, що більшість часу я насправді нічого не створюю. Я начебто припускав, що це було так у більшості місць - новий продукт вийде досить швидко, і в цей момент усі будуть схвильовані і швидко вибивають код, але потім, як тільки він буде живий, він переходить у режим технічного обслуговування, де деякі наступні зміни вважатимуться "новими та творчими".
Я помиляюся? Я точно описую більшість завдань програмування, чи більшість програмістів відчувають, що вони часто створюють нові речі?