I see a plenty of questions on Quora like “I am X years old, is it too late to start learning programming?” Many of these questions are asked by people around their 20s. Well, I believe I might know the answer, and it is not a cliche ‘It is never too late mate!’ I would say ‘It depends on how much you have left.’ Yes, I mean until you die. I assumed that the reason WHY you want to learn to program is to make your app or a game. I’ll try to estimate the time you will need, taking games into account because I kinda know the subject. I won’t even try to estimate apps or web services, as they aren’t areas of my expertise. However, if you want to try to do that for these fields, you’re more than welcome. In the article, I’ve prepared a table that estimates how much time do you need from total zero programming knowledge to finishing your game. I’ve included different kinds of games so that you can have a better picture of that. You may have a small “haha, right…” on your face right now, that’s okay because I’m basing on my experience and convictions. If you think numbers can be more accurate, feel free to add your two cents in the comments, and we’ll make it better. Now click ‘read more…’ and check out the numbers.
First, let’s make some assumptions
- You’ve got a daily job, ~40 hours per week,
- You’re pretty motivated. It means that if you can go out with friends, to the cinema or play a game a whole evening twice a week, now you can do this twice per month because you rather be programming.
- I’m NOT estimating the time needed for graphics/sounds creation.
- Some of the games (marked as ‘Solo’) you can make all by yourself, some of them require a team (‘Team’). While estimating the second ones, I assumed that you need to learn by doing some smaller projects first, then you need to be hired by a company.
- In ‘Solo’ projects by ‘learn’ I mean that you understand what you’re doing and what people in tutorials say. The code you’ll write won’t be the most robust (well-planned and fast) code ever written, though. Companies usually (especially these bigger ones) are more demanding than that, so the learning time is longer in that case.
- You use existing engine (Unity, Unreal Engine, Game Maker, the one that a company uses, etc.)
- You’re learning by reading AND practice (article lecture -> coding attempt -> tutorial -> next coding attempt).
- More advanced games require (a bit) more advanced math from you that you need to learn as well.
So as you may see, if you’ve got plenty of free time and you’re HIGHLY motivated, time probably will be significantly shorter.
If you just want to make a game, with only a little understanding of what’s going on, time probably will be significantly shorter as well. But I don’t think that’s the case if you particularly asked about ‘learning.’
OK, enough talk, here’s a table
*The time is not the time that particular game was made in, it is just my estimation (running away with me)