Documenting/communicating what you do is important but when it becomes a process it can really be detrimental. Every new feature won’t take the same amount of time and having to spent time writing down my approach for a task that will only take a few days will likely just limit me. That time could be spent on writing (more) tests which is also a form of documentation. If we say that 9/10 times a solution is good, the time saved not writing down the approach could accumulate to 1 rewrite. Basically for me it boils down to some of the agile values and principless:
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Working software is the primary measure of progress.
- The most efficient and effective method of conveying information to and within a development
team is face-to-face conversation.
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Working software is the primary measure of progress.
- The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
https://agilemanifesto.org/principles.html