Hard Time Programming!

Started by
11 comments, last by Matt328 12 years, 4 months ago
Hello,

I've been trying to make games for over a year now, and seeing as i have nothing of worth, i'm starting to think there's something wrong.

Here's the problem.

I know how the language functions (C# and Java) but as soon as i have to program something myself, everything i've learned so far, just disappears from my head.
I just sit there thinking.
What do i do?
I understand everything when i look at others programming.
This bothers me a lot seeing as my biggest dream is to make a living off game development.

I am diagnosed with Asbergers, and i hope that has nothing to do about it.

Does anyone know what might be the problem?
It would mean a lot to me if i could figure out why this is.
Advertisement
Its pattern memory, and you form it from doing. Asbergers has nothing to do with it, in fact, it should probably help you if anything.

Its one of two problems.

a- programming is hard
b- experience is the best teacher


So basically, keep at it, start small, implement, code, debug, repeat, learn something slightly difficult, implement, code, debug, repeat.

Eventually it will sink in. If it doesn't after a while, pick a new profession.

I know how the language functions (C# and Java) but as soon as i have to program something myself, everything i've learned so far, just disappears from my head.


Then you didn't learn it.


I understand everything when i look at others programming.
[/quote]

Reading code is always easier than writing code.


I am diagnosed with Asbergers, and i hope that has nothing to do about it.
[/quote]

Ignoring the likelihood of over-diagnosis of Asberger's Syndrome, it's decidedly possible where something that inhibits cognitive development impacts doing tasks that heavily require cognitive skill...


Does anyone know what might be the problem?
[/quote]

If I were to take a guess:

The same problem that everyone else has. They read something and think that they know it. To get more skill, you need to take what you've read and apply it. Then you need to spend the time to practice. Practice solving problems. Practice designing programs. As Serapth says, you need to start small. The biggest problem that beginners run into is trying to do too much too quickly. If you don't know how to even approach a problem, you've gone too far.

Best of luck.
To continue with the two options Serapth mentioned, there are times when I've been programming for hours and hours day after day and I just tend to "lose focus" (if that's the proper word) on what I'm doing. This comes and goes often and quickly (thank goodness) but what I found that helps me (your mileage may vary) is every day for my personal projects I always make a new "to-do" list of things that need to get done, that I want to get done, and that I'd like to add that will finish the "bigger picture." As projects are always evolving you may encounter something new that you didn't think of the day prior. Just need to have a priority list of what "to-do."


Basically you need to set a goal of what you want to make, break it down. And keep breaking it down until you have manageable "chunks" that you can attack and work on. Perhaps your issue is you have no direction when you look at your own projects. So try making a design template (figure out what you want to make, break it down, and then go from there.) and see how that works.


Start with any size project you want IMO, granted you might get discouraged from attempting something rather large and will most likely fail. But know that starting with something simple, as a text based guessing game in a console will give you quick results and a sense of "I can do this." (abet it might be a very small program that isn't the point, it's about getting experience.)



Good luck!
Wow, quick and awesome answers!

Truly appreciated!

The part about a to-do list is just amazing, i can't believe i didn't think of that sooner!
All the projects i've had haven't had any proper planning, which probably led me to be confused about where and how to start.
And that i just need to keep going.


Thanks Serapth, Telastyn, and Zern.

You gave me insight on what i was doing wrong. :)

Definitely gonna plan more next time!
Something that I think gets a lot of people is that programming as a skill has little to do with a specific programming language. The most relevant skills are things like logic, software design, managing complexity, and others; these skills are almost entirely language -agnostic. An implementation of a program in any particular language is relatively trivial. That's why knowing the syntax, key words, and so on of a language does not equal programming skill.

I would bet that you aren't doing much or any design before sitting down to code, and that sounds like trouble for a new programmer to me. That was certainly my experience, and unless you happen to have some special flair for managing information programs bigger than "hello world" will quickly become awkward and unmanageable.

My suggestions, to be taken with those above, are to start small, plan in advance what your program should do, make a conceptual (read: little to no code) design of how that should be done, then plan out/code specific data structures to execute your conceptual model.

There's still a long way to go in developing your skills, but having specific, bite-sized goals and a plan to achieve them will get you past the blank project stage and let you start using your c# knowledge.

-------R.I.P.-------

Selective Quote

~Too Late - Too Soon~

One thing too to consider is when you start coding something on your own, its invaluable to make a flowchart or CRC cards or something.

Too often I see people try and program from the top of their head and it just gets too overwhelming and they fail.

If you've gone through some programming books and understand the concepts, you should be able to make some visual layout of your program and apply what you've learned to create it. You may not remember all of the syntax up front but if you can do something like "Create loop here that does this" and "Create struct here to store this data" etc etc on paper the coding part will be much easier and you can look up any syntax you forgot along the way.
Three things helped me when learning to program years ago.

1. Program as many different types of applications with every new concept you learn. (All the books in the world will never make you a good programmer, unless you learn the practical side)

2. Learn problem solving skills. (Thinking outside the box will allow you to be more creative in finishing a task)

3. Drawing diagrams for what you need to do, and how to get there. (Sometimes writing down what you need, and how you want the code to work helps if you're stuck)

I would also invest is learning how to Debug code properly, this can help you solve countless mistakes when learning.
GameDev Journal: http://www.gamedev.n...-rooks-journal/

OpenChess - 1.0 done!

Classic RPG #1 - Task 9 -> January 1st 2013

I've been trying to make games for over a year now, and seeing as i have nothing of worth, i'm starting to think there's something wrong.


6 1/2 years programming (on and off) now. It took me 4 years to have something of 'worth', it'll take another 1 year to have something worth selling as an indie.
Others can certainly do it faster than that with more discipline/determination, but really, 1 year of programming? It's very good that you've kept at it for a year! Not having anything to show for it so far is pretty normal, I gather.

[quote name='Drakeon' timestamp='1324397107' post='4895745']
I've been trying to make games for over a year now, and seeing as i have nothing of worth, i'm starting to think there's something wrong.


6 1/2 years programming (on and off) now. It took me 4 years to have something of 'worth', it'll take another 1 year to have something worth selling as an indie.
Others can certainly do it faster than that with more discipline/determination, but really, 1 year of programming? It's very good that you've kept at it for a year! Not having anything to show for it so far is pretty normal, I gather.
[/quote]

What's that saying? That it takes 10 years to become a good programmer? (Older link but always comes to mind)

This topic is closed to new replies.

Advertisement