How fast should I be progressing?

Started by
19 comments, last by Anri 13 years, 9 months ago
How fast should I be progressing? I've been learning C++ on and off for about a year but I'm just beginning to learn about classes now. I learned some C but I couldn't get past sockets and networking and that. I tried to learn SDL but never got anywhere with it really probably because I didn't know enough C++...

I have only finished the first 7 or 8 ProjectEuler.net problems and I feel I should be well able to do at least 20.

Gamewise, I've only ever made Tic-Tac-Toe and other basic games. Not exactly where I would like to be after a year of learning!

So how fast should I be learning? I know I'll probably never know a language to it's entirety but I should know a workable amount of it.

I know the question is very vague but all responses are appreciated!
Advertisement
Well, learn at your own pace would be the answer given to most with your question. Are you having problems sitting down to learn the language, or is it just that you haven't had the time? Is there any particular reason as to why you have been learning C++ "on and off" throughout the past year? If it's just a question of the time it takes you to undestand a concept, then my original response stands: learn at your own pace.

No one expects the Spanish Inquisition!

Why don't you make more complex games?
I say give yourself a good 10 - 20 years, then start to worry your lagging behind. Serious.
Well everybody learns at different speeds but thats mostly down to how much time you put into whatever it is your learning.

You can compare yourself to my story if you like:
Aged 5~6: I got my first game console ever (The SNES), since then I've had a deep seated love for video games and more-so, how they were created. Not know that I could actually have attempted creating them myself I thought nothing of it and assumed only certain people could do it. So I settled for creating games on paper, drawing and cutting out characters and trying to define sets of rules for the board-games (ofcourse, at that young age the rules werent well defined and the games nigh-impossible to play).

Aged 13~14: We got our first family PC which was a Windows 95 desktop. For me, it had its usages in creating PowerPoint animations of stick figures fighting (DBZ style) and that was about it, since we had no internet and the fact that I didn't really know games were created on desktop PC's, the thought of trying to create a game never crossed my mind.

Aged 15~16: At this time we had another family PC with a dial-up connection! (woo.. not). Having recently been removed from school (not worth digressing into here, but it wasn't because I was distrubtive or anything like that) sitting home on the PC browsing the internet, I finally had a chance to research into game dev! One quick search on google churns out gamemaker 6.0 and so it began.. (One of the greatest days in my entire life, the day I discovered gamemaker).

Aged 17~18: Having become somewhat accomplished in gamemaker and its use, I had left a trail of unfinished games (mostly due to lack of assets and overcoming my laziness to create them) and examples for the forums to feast upon if they so wished to. During my time with gamemaker, a friend of a friend introduced me to DevC++ (this is jumping back to 16~17) and at that time I'm not sure but I think I didn't even know what C++ was. The transition between gamemaker to C++ is kind of fuzzy as I jumped around a bit from gamemaker, to C# to C++ and back again, but im pretty sure I was nigh 18 (if not 18) when I actually sat down to learn C++ properly.

Side note: Actually, in my early days of 'C++' I was actually programming in C, using all its functions, idioms, etc. instead of the standard stuff, this was mostly because I didnt like the fact that C++ used << and >> for input and output and it was, at that time easier to get to grips with. Yes.. I am a syntactic sugar addict, but I soon changed my mind, after a dear overseas friend of mine showed me classes and basically carried me through learning the ++ side of C (classes, polymorphism, encapsulation, inheritance, The STL, etc.).. Well actually thats a bit of an over-statement, but he did help in a big way, whenever I had questions and stuff.

Aged 18~21 (although im not 21 yet): The past three years have been spent learning (properly) as much C++ as I can (also full time education) and still, I have no substantial projects to show for it. While my knowledge of C++ itself is to a good standard IMO, and many times have I been to this forum in order to help those that require it, I've yet to work on anything that is more than a simple practice application, or SDK (SFML, Direct3D, etc) test. Which, like you, is bugging the heck out of me (and there are others, believe me).

Conclusion:
So, if you were to ask me "Do you think im not progressing fast enough?" I would say "heck no, your doing fine". Do it because you love to program, theres really no rush. If you dont love to program and want to just make a game, C++ isn't for you and you should try a higher level language or game engine.

I've got stuff on the tip of my tounge which I would like to add to this but cant bring it up for some reason. So I'll have to leave you with this link to an article that I think you may like (or dislike, depends on your perspective):

Teach Yourself Programming in 10 Years

PS: Sorry about the wall of text.

[Edited by - CodeCriminal on July 13, 2010 9:35:34 AM]
Thanks for the quick responses!

I love to program but I constantly feel frustrated and de-motivated because I can't work out the answer to a problem or even how I would approach it. I would like to make more complex games but that's sorta hard when you don't know how!

The reason I'm learning on and off is because I'm doing a lot of other things at the moment too. In the last year I've learned (X)HTML, CSS, &#106avascript, PHP, MySQL and bits of C. Also, studying and school is taking up a lot of my time meaning I only have ~2 hours a day during school time. I would have thought that I'd progress quicker though...

Ah well, I'll wait the 10-20 years and I'll see how I do ;P
Quote:Original post by soitsthateasy
In the last year I've learned (X)HTML, CSS, &#106avascript, PHP, MySQL and bits of C.


This may be another source of your trouble: you're hopping around trying to learn a little of everything, but not spending enough time on any one topic to really make progress. Not to make assumptions though, as learning many of these could be related to specific tasks at hand, but you sound like I did before I finally went back to school for CS studies. Structured learning helps you plow through the tedious/unmotivated topics that you still NEED TO KNOW before other subjects will make much sense.

I remember the frustration of aiming too high, scratching the surface of a new API, engine, or language only to discover I have n-thousand questions and need 7 reference books to get up to speed, searching for an "easier" option and getting similar results in other languages, and then quitting due to the scale of the task in front of me. If I had just started at page 1 of one of several recommended books, and gone through linearly while actually attempting all the boring exercises, and stayed focused on JUST that language, I might have seen some return on my otherwise wasted time.

For comparison's sake, I'm 26, have been a CS student (so actually programming seriously) for 3 years, and only recently have I felt like I can sit down and design barely-complex programs. But they work, I don't beat my head against the wall for hours on end (as often), and I actually have fun with it. Not to mention learning new languages and concepts happens faster now that a lot of the basics have been etched into my skull via academia.

Edit: Not to preach the values of schooling, as YMMV. TLDR version: stay focused on one language and keep going even if it feels dull/pointless. A solid foundation will make future learning more attainable and allow for less frustration when tackling bigger game ideas.

Hazard Pay :: FPS/RTS in SharpDX (gathering dust, retained for... historical purposes)
DeviantArt :: Because right-brain needs love too (also pretty neglected these days)

Game making is hard.

Be a man and go make games! ;)
My timeline is like this:

5 or 6: Got my first video game
lot of years of drawing and conceptualizing ideas
15: I asked my friend how they got graphics into a game and found out about programming languages. I then attempted to try programming, but I kind of never got into it.
the next year: I found GameDev and started taking art more seriously. After a few projects that didn't work out, I got the opportunity to work on an MMO. After being frustrated, I decided to begin taking programming seriously (with a little inspiration from some games).
This year: I started learning Java and now have the basis of OO down and have even helped program a game. Now, I'm trying to create a game on my own.

So, it's really been about a year but I made major progress. Get a hard-copy book and just sit down and read. Just get away from the distractions on the computer. Then, go apply the concepts. Cpp probably isn't the best language to start with, but be sure to just keep programming. Sometime, everything will just click.
C++: Where your friends have access to your private members
My time line:

at the age of 13, we had some Pascal in elementary school (some months). It was hard, I didn't like it. I didn't continue.
At the age of 16, we had some more Pascal in high-school (some months). It was hard, but I got the "feeling" of it. I didn't continue.

At the age of 19, we had C in university (one semester, Borland c++ 2.0). I had never heard of it before but I "felt" it from the very beginning, and the end of the semester, we were introduced to graphics: Dos, VGA stuff.

That time (so after a half year of weak C studies) I started my first game: A Scorched Earth clone, with almost every features the original version had. It was jumping into the deep see, but it was totally worth it. I didn't know a thing about game programming, but as I progressed and faced more and more problems, I learned by doing, I learned problem solving, now, I can solve anything that I encounter.

The game took a year to finish (FINISH!), and I still play with it sometimes.
My code is a crap, but I get things done.

the best way is DOING it. Reading books without actually coding is almost a waste of time (IMHO)

This topic is closed to new replies.

Advertisement