Expanding this question on how I learnt to pass from problem description to code Two people mentioned TDD.
Would it be good for a starter to get into TDD ( and avoid bad habits in the future ? ) Or would it be too complex for a stage when understand what a programming language is?
TDD is meant to be simpler than the ‘traditional’ method (of not testing it till the end) – because the tests clarify what you understand of the problem. If you actually didn’t have a clear idea of what the problem was, writing tests is quite hard.
So for a beginner, writing tests gets the thinking juice going in the right direction, which is contractual behaviour, not implementation behaviour.