Take Time to Save Time
A difficult, yet obvious, lesson to learn is that you need to know what you’re doing before you do it. Many developers just dive into a project without the proper planning or without fully understanding what it is that they need to get accomplished.
You might get a feeling of productivity because you’ve started coding, but what does it get you? What have you actually started to code? Chances are it’s not exactly what is required, and that means you’ve wasted your time. No matter how you cut it, wasting time is not productive.
Get the requirements
If you’re going to know what you need to do, get the requirements. Hopefully the document that you get has been approved by the client, so that they know what they are getting as well.
As a developer, you need to know these requirements inside and out before you start coding. If you don’t you run the risk of coding conflicting features, or making architectural mistakes that will have to be undone down the road, wasting more time.
Plan it out
Take the time to plan out what you’re going to do to meet the requirements. Put thought into each requirement so you’ll know how every component of your application will work together. Make diagrams, notes or whatever else helps you map out what you’re going to do.
Taking the time to plan an application well will save time coding. A well designed and well planned application will also be easier to change. The application will be leaner, more organized and far less frustrating than if it were an application a developer just jumped into and started coding without planning.
Get at it
Once you’ve got your plan, double check it against the requirements. People make mistakes, and mistakes waste time, so take the time to remove them. Once you’re sure you have what you need, and you know what you’re going to do, do it.
If you’re the kind of person that just jumps in without planning, try this a couple times and see how it improves the flow of your project. It might take a bit of time to learn how to plan well, but it’s a step, and it will help.