Hey everyone! So I’m having great fun learning to code and getting into comp sci. (I love how the internet allows you to learn stuff) anyway, just a question based around timescales.
I just need to make sure I’m being realistic in my ambitions. So I’m interested to know about two type of applications. How long would it take for one person to build a website similar to khan academy assuming they had to build it from scratch and knew how it was all going to work before hand, and obvs all the vids etc are already made.
(This probs shows my naïveté - is this actually a thing?), and secondly, a simple multiplayer game. I have some projects in mind that I would like to create but I just wanted to ask if I am dreaming a bit if I wanted to do this all byself and see sunlight occasionally!
I guess another way of asking is if you knew what you were doing how Long it would it take! Anyways, thanks for reading! Looking forward to so some awesome replies! Rich
Figuring out how long any project is going to take is a matter of experience, which is why I would set smaller targets for sub-pieces until you're done. Goals for yourself, NOT for public sharing or announcing.
It IS entirely possible to solo projects, but you have to figure out the scale vs. time you can invest. You're not going to make a Witcher 3 by yourself within one life-time alone... but there are hundreds of really good small indie games put together my single developers or really small teams.
However you end up at an estimate for yourself though, ALWAYS "Mr. Scott" it. "Ach laddy, ya didnae tell 'im how long it'd really take?!?"
Because I do a lot of freelance work for clients on full stack solutions (back end, front end, from scratch) I ALWAYS Mr. Scott my estimates. That means I figure out how long it would REALLY take me, then I DOUBLE IT when I tell the client.
It is ALWAYS better to deliver ahead of time than to miss a deadline, particularly when you have no clue what might go bits-up face-down along the way. You have to give yourself that fudge factor as I've seen far too many people make their time estimates on the assumption that everything will go right on the first try... Give yourself some leeway for if something goes awry!
It's relatively simple to do an MVP (minimum viable product):
The invisible parts of the app are harder:
A game (pre-alpha) prototype would be relatively simple.
A fully functional game would be harder due to:
Before you fully commit to building a game, I would highly recommend reading these items just to see how complex seemingly simple problems can be.
I also recommend you start with one small portion of a game system such as a map or minimap or terrain tiling. Even a small system like that can take a generous amount of time to create or implement using plugins.
Games have a wide variety of complexity, anywhere from Pong which can be built by one person in a day to MMOs which take hundreds of people a decade to build. Saying "I want to build a game" is a difficult thing to realistically plan until you have a good idea of what you want to build.
Finally, I recommend you create an outline document of what systems are needed and what you hope to accomplish. That will help you estimate how much time it will take to make a project.
Mark
Much of the time is in the "details".
If by "like Kahn academy" you mean "a website that can show videos, possibly search then and organized into courses, in modern browsers with 100 visits a day", that's something an experienced person could do in some weeks, I think. Like a proof of concept.
If instead you mean "how long would it have taken one person to make all the features of Kahn academy, just as polished and stable, with quizes and statistics and teacher mode and ..., all with many thousands of visits", then you're suddenly measuring in years.
So really, it's hard to tell...