Time estimation in software engineering seems to be the most difficult task.
Time estimation becomes a bit easier for well-managed projects where most of the design decisions have been made and there is enough internal tooling and resources. But it is still not perfect. Things become more difficult for teams with limited resources and external pressure on deadlines. More often than not, the projects get delivered, some more polished than others.
When it comes to time estimation, solo developers working on their side projects face a real challenge. It becomes worse if there is no external motivation or revenue potential for the project. Building something for fun or learning might end up in an unfinished project that never sees a launch day.
Although launching a side project is not necessary, it does help in closure and moving on to the next big thing. If you do want to finish your next side project and cannot find the time or motivation, try avoiding these pitfalls.
Too Many Features
Side projects should be straightforward by design. If it has dozens of trivial and non-trivial features, it is on its way to becoming a startup. Think about the reason you are building your project. If it is for fun, then pick the top three to five features to include in the first version and move ahead.
Think of yourself as a resource even when you are working alone. Ask yourself how much you can deliver while working a few hours a week and assign achievable tasks to yourself. Don't forget to look for tools and services outside of your site that you can use to handle some of the work.
Set a soft and hard deadline for yourself once you have a clear idea of what you are trying to build. Give yourself enough buffer to catch up.
Don’t fall into the trap of doing irrelevant market research and user surveys before coding. As a developer, your strength lies in development. Creating a production-ready product would be easier to market than a landing page.
Too much planning will ruin the flow and give you a false sense of accomplishment. Don’t create an extensive task list and roadmap before you start coding. Once you have your first few features finalized and an estimation of how much time it will take, start working on your project. You can always revise the estimate and drop or add another feature along the way.
Burden of Launch Day
Don’t worry too much about the launch. You don’t have to showcase your launch and post links everywhere. Keep it simple and ensure that your project ends up on an accessible platform. You can share the links to your project later.
In conclusion, if you are a developer working on a side project for fun or learning purposes, Then it's better to jump ahead and target finishing the project and avoid these pitfalls.
Top comments (1)
Nice and simple article