Page 1 of 1

Need opinions on Programming Experience

Posted: Tue Jun 01, 2010 2:34 pm
by GameDevver4Evr
Heya guys, just need a reality check on this, because I'm not too sure if I'm even doing alright or good, etc. I don't really have any tutors, I have been all self taught and I don't have any friends to help me out with programming, which makes it a bit difficult for me. Though I have posted here a couple times for help, which is well appreciated :) .

Well basically I started programming exactly 1 year ago just about. Right now I'm at the point where I've made a Tic Tac Toe game with some Player2 AI (graphics in SDL). Studied a lot of C++ extensively, still actually getting into the more advanced bits of it, and file IO. Made basic Pong clone in SDL, though I haven't finished it, and another thing I'd like to mention is that I'm using much of Lazyfoos' tutorials to guide me on a lot of the basic stuff in these games, the concepts I understand well, but is this cheating myself in anyway?, cause it seems like I depend on it a lot to figure out what I'm doing.

All this time still seems like I haven't really figured out how to take an existing library and use it for what it's worth. Though I can handle APIs alright as long as I've got good resources on them. I've also touched up on some engineering, design patterns, and UML, which I'm comfortable with using in projects/ or trying to use. I read a lot of books on these subjects.

Anyways, the point of this post is that it seems like a lot of the code I'm writing comes from another source of information, like lazyfoos' tutorials for example, and if that didn't exist, I guess I would be screwed, or have a lot more headaches on hand, lol. I mean of course tutorials are a wonderful way of learning how to do something, but when it comes to you needing to figure it out on your own, it's not gonna help much. So basically I don't want to set myself up for failure down the road if I'm depending on this stuff too much. I've solved a lot of problems on my own as well, I mean didn't constantly depend on lazyfoo, but needed a lot of it as a basis. Guess you could say this applies for a lot of other things as well, which I have no basis on.

So what suggestions might you guys have?, How do you go about developing your Problem Solving skills?, Does anyone have any styles they like to learn in?, or do most people just dive right into it and work out a problem until it gets solved? Do you just try random things till it works?, do you always read off other codes to learn? And am I doing alright for this first year?/ and or heading in the right directions.

Thanks guys. I just need feedback, sorry the post was a bit long.
:) :) :) :) :) :) :) :) :)

Re: Need opinions on Programming Experience

Posted: Tue Jun 01, 2010 5:25 pm
by dandymcgee
The short answer: Yes.

It sounds like you are doing well. Relying on tutorials isn't something to avoid, they are there for just that reason. What should be avoided is direct copy/paste without any effort being put forward to understand what is going on. It doesn't seem like that's the case here, so keep doing what you're doing. Just keep practicing and building your experience, that's the only way you're going to figure out what techniques work best for you.

Re: Need opinions on Programming Experience

Posted: Tue Jun 01, 2010 5:46 pm
by GameDevver4Evr
dandymcgee wrote:The short answer: Yes.

It sounds like you are doing well. Relying on tutorials isn't something to avoid, they are there for just that reason. What should be avoided is direct copy/paste without any effort being put forward to understand what is going on. It doesn't seem like that's the case here, so keep doing what you're doing. Just keep practicing and building your experience, that's the only way you're going to figure out what techniques work best for you.
Thanks dandymcgee for the response, I've found that actually typing it out myself from someone Else's code helps out a bit also, it's almost as if it can help fill in any missed details from just learning the concepts/reading over. Copy/pasting is like you said, pretty pointless. Seems like there is so much out there we need to learn, but not enough time to learn it lol, thanks for the insights.

Re: Need opinions on Programming Experience

Posted: Thu Jun 03, 2010 1:29 am
by EccentricDuck
Yah, going by tutorials isn't a bad thing at all. As a matter of fact, I've found that one of the best ways to learn is to look at different tutorials about the same thing and see how they differ. You'll often notice different styles of coding or something that differs between the two. If you're not sure why someone did something when the other person didn't then that's a good thing - it means you have a question that you can look up and learn from (and use it to make a decision about your own programming). Some of the times I learned the most from were cases where one person did something one way, another did something another way, and I wanted to know why that was the case (see a fairly recent thread called "Fixing Bad Code" for an example). This usually results in me doing a google search and following that up by a forum post in this or other forums.

Another way to make the most of tutorials is to make sure you totally understand where they're coming from. When a tutorial says, "Do XYZ", it's in your best interest to know why XYZ is being done and what X, Y, and Z really mean. I've spent hours on simple concepts looking up X, Y, and Z and I'm usually glad for doing so - I honestly feel like I learn more practical experience from those searches and experiments than the simple tutorials. Don't feel bad for spending inordinate amounts of time on a simple topic if it means you get it inside and out - tutorials can really help with this by providing a reference point and a place to branch out from.

That being said I'm still definitely a novice, but what I said is what's worked best for me so far. I probably started programming around the same time or just before you and I'm definitely starting to feel grateful for the time I sunk into tutorials and the questions that kept coming up while working with the tutorials or my own projects.