FAQ: I want to start my own project, how long it will take?
The answer to the question is complicated because many factors can affect the time taken to finish the project.
The most important factor however is the focus required to keep going at a project even when it seems that it is boring. If you lack that focus your project will never get finished!
Some factors to take into account
- Have you undertaken and completed a project before?
- Have you written a similar program before?
- Are you familiar with the language/tools/libraries you will be using?
- How much time can you personally allocate to the project per week?
- How many projects at once are you working on?
- Do you have other commitments such as family, job, sport, etc?
- Do you have any other people helping you with the project?
- Does your project depend on someone else's project being completed first?
- Are you familiar with using Source Code Management tools?
- Are you familiar with project management?
It is very hard to give accurate time estimates unless you have done the work before and know how long it will take you. Even in the large companies making software there are problems with estimation.
Of course the biggest factor in any project is "Complexity"
The more features your project has the more complex it is. The less you understand about the problem you are trying to solve the more complex it is.
Simple programs take less time to complete.
Complex programs take more time to complete.
In general I find most people underestimate the time it takes to complete a project.
Some sample estimates from my point of view are (which is limited mainly to game programming) these are times I believe it would take me to complete each task. Assuming I worked approx 18 hours per week.
Tic Tac Toe -> hours
Breakout -> weeks
Tetris -> weeks
Space Invaders -> a few months
Shoot em up like R-type -> 6 - 18 months
Pacman type game -> weeks
2D Platform game -> 6 months
Nethack Style RPG game -> months
simple 2D RPG game -> 1 - 2 years
simple 3D RPG game -> more than 2 years
simple Multiplayer 2D RPG -> 1 - 3 years
very simple 3D shooter -> 1 year - 2 years
3D shooter on par with Quake -> 5 years
3D shooter on par with Quake 4 -> 10 years
3D shooter on par with Crysis -> 50 years
MMORPG like World of Warcraft -> 200 years
Last edited by RIchard James13; February 6th, 2008 at 11:05 PM.
Where does it say I know what I'm talking about?