How do you become a good programmer?

I'm an aspiring game programmer and I just started writing my first program with the help of a tutorial of course. But as I was blindly copying the code on screen, I wondered. How do people do this?!?!? Seriously. Do you have to memorize all these codes? Do you look the codes you need and their functions you need in a book? How do you do it? I know everyone learns differently but if you can tell me how you did it then maybe I can find a way that works for me. Thanks.

Comments

  • It takes lots and lots of practice to become a good programmer, I'm talking 1000's of hours over many years. Following a tutorial gives you an understanding of programming and but really only improves your skills on following instructions not your ability to code.

    What I did at the start was go line by line trying to figure out what it actually does and make a few modifications here and there in the process to better help figure out how it works. I failed so badly when I first started to program on my own, and by that I mean getting a project/problem and writing it from scratch, line by line character by character via Notepad. I often had to go back to my books or google to figure out what to do based on what people have done already. If I found a solution on the net or in a book, rather then copy and paste, I would write it out myself and just keep modifying until, one it worked and two, that I understood how it worked, that's something I would STRONGLY recommend new coders to do, or else you'll never really learn.

    To this day I still look up google for seemingly simple things like creating a switch statement, I don't remember every single data type or their function's, usually I have to google it to jog my memory but that's also part of being a programmer if you can't figure out a problem chances are someone else has and you need to be able to find it on the internet as well.

  • We don't memorize 'all those codes'. We memorize some basic stuff that we use a whole lot; that goes for both program logic and language/library features. The rest of the time, we look up the language/library features in the documentation, and we invent the program structure ourselves. The ability to invent program structure- to see a computation problem, think it over, and build from raw logic an algorithm that solves it- is really the meat of what programming is about, and no one really becomes a programmer until they are able to do that at least a little.

    Don't be afraid to use documentation. Documentation is important, because you can't possibly keep all that stuff in your head, and even if you could, it would be a bad use for your head. However, documentation isn't everything. Where language and library features end and program logic begins, you have to stop relying on documentation and turn to real reasoning. Yes, there are tricks for program logic, particular algorithms and techniques that are known to work well and that you can draw on when you write your program, but you still have to think over how to apply them in each particular circumstance.

    There is no magic bullet for learning how to do programming well. Unless you happen to be a supergenius, you actually do have to start from the bottom and work your way up with practice and vigilance, just like everybody else. The good news is, the more you learn, the easier it gets. :)

  • I used to be in the exact same position as you, daunted by the syntax and never expecting to ever be able to remember it all.

    In time you will obtain the following skills.

    - Memorize the syntax, keywords, that you will need.

    - Be able to program fluently without referring to tutorials.

    - Create your own programs from a simple idea with just what you know.

    - An amazing logical thinking brain.

    What you will need:

    - Dedication, I have coded almost every day for 4 years and know my fair share of languages (of course everyone has their own preferences).

    - Time, simply put, a lot of those everydays have spanned into all nights too.

    - The acceptance of failure, you're going to make a lot of mistakes, the good thing about programming is you can just fix and recompile

    - A good playlist

    I began at 12 with Visual Basic, then spanned to C# and Java

    Somewhere along the line I also learned C++, C, Python and many more, simply out of this hunger to learn.

    I currently am studying Software Engineering and acing every subject.

    I taught myself everything from online reading and tutorials and playing around.

    I definitely recommend you do this.

  • Just copying someone else's code wont get you very far in the long run. You have to have a good understand of what is going on.

Sign In or Register to comment.