←back to thread

268 points behnamoh | 1 comments | | HN request time: 0.437s | source
1. RedBeetDeadpool ◴[] No.28688883[source]
This seems to follow my experience, although I attributed it to the Pareto principle.

80% of the feature will take 20% of the time. The last 20% will take 80% of the time once you factor in all the other things like:

  - getting the feature working correctly to all specifications.
  - thinking about larger scale impact of your code and how your team might react to it, and deciding on which implementation to take.
  - resolving missing edge cases.
  - previously undescribed features the design team overlooked, but is now obviously wrong now that they can see it in action.
  - time it takes to roundtrip the review process.
  - resolving unrelated bugs that code changes may have created.
  - writing tests.
  - manual testing.
  - fixing bugs found in regression tests.
  - deployment and deployment related errors (happens rarely, but you have to average it out).
Just getting to "I got this feature working!", seems to only be a small part of the whole process.