<p dir="ltr">Hi,<br>
It is certainly unusual, but I almost always start by writing user documentation,  before coding.<br>
There is some interests to do so.<br>
First, documentation exists at end of project because it exists at beginning. <br>
Second, documentation describe simple things like you would need as a user, and not complicated things as consequences of bad coding. Coding is then driven by this goal, and generally simplify the code itself. <br>
Third, coders know the goal to achieve at start and do not loose time in, finally, unneeded things.<br>
I really recommend to do this experience. <br></p>
<p dir="ltr">"Envoyé depuis mon mobile " Eric</p>
<br><br>---- Grzegorz Junka a écrit ----<br><br><br>> - I have said several times that we write code because it is quicker to<br>> write it from scratch, than to discover code that does what we want, or<br>> modify code that does almost what we want but not quite.<br>><br><br>That's very true, but it applies all the way through. The more time has <br>been invested into some code the more time it would be needed to write <br>it from scratch. For example, I would prefer Elixir's convention of <br>listing the object on which the operation is being performed as the <br>first argument in library function calls over the OTP convention of <br>listing it as the last argument. But I am not going to rewrite OTP <br>libraries for that small inconvenience.<br><br>Very often understanding an existing application and fixing issues is <br>easier and quicker than writing a new one from scratch, especially if <br>one only need to understand a specific or small part of it, and even <br>more if the existing application supports plugins allowing to skip large <br>parts of its code in custom modules.<br><br>This should be a lesson for those who design applications and its <br>interfaces, and in my opinion putting effort into designing the <br>application properly is more important than documenting everything, <br>because it's always a trade-off. Very often the documentation isn't <br>there not because it's not needed, but because there was not enough <br>resources to put it there in the first place.<br><br>If the architecture is good then the documentation can always be added <br>later. But if the architecture is not good, then no matter how much <br>documentation is written, it will be quickly outdated by the constant <br>and often fixes and patches to that architecture to make it working.<br><br>Grzegorz<br>_______________________________________________<br>erlang-questions mailing list<br><a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a><br><a href="http://erlang.org/mailman/listinfo/erlang-questions">http://erlang.org/mailman/listinfo/erlang-questions</a><br>