Unless you have a design, no matter how provisional, you SHOULD NOT start coding a solution.
Category: Aphorism
Find a “tool set”.
Find a tool set that works for you and master it. Don’t jump about among different tool sets. Analyse the range available and make an informed decision. If you can’t make an informed decision, make an emotional decision. Either way, make a decision, then get on with it. There is no one correct solution.
When should you code?
Unless you understand the problem, how do you expect to produce a functional solution.