no ! a _design_ document. how this new thing will fit together with other things that are already existing in the system. what it’s interactions are going to look like, what are the assumptions, what are the limitations etc etc.
Honestly? I usually look at the previous implementation and try to make some changes to fix an issue that I discovered during testing. Rarely an actual bug - usually we just changed our mind about what the intent should be.
> When you go to write a line of code, how do you decide what to write?
depends ofcourse, what am i writing for ? a feature, a bugfix, refactor ... ?
Let's say a new feature. Do you just type random letters, or do you have some kind of plan ahead of time?
new feature implies design document to gather the thoughts, followed by an intense review etc.
So... a specification.
no ! a _design_ document. how this new thing will fit together with other things that are already existing in the system. what it’s interactions are going to look like, what are the assumptions, what are the limitations etc etc.
So... a specification.
hang on ...
Honestly? I usually look at the previous implementation and try to make some changes to fix an issue that I discovered during testing. Rarely an actual bug - usually we just changed our mind about what the intent should be.