Jump to content

  • Log In with Google      Sign In   
  • Create Account


Hard Time Programming!


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
12 replies to this topic

#1 Drakeon   Members   -  Reputation: 102

Like
0Likes
Like

Posted 20 December 2011 - 10:05 AM

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.

Sponsor:

#2 Serapth   Crossbones+   -  Reputation: 5311

Like
0Likes
Like

Posted 20 December 2011 - 10:12 AM

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.

#3 Telastyn   Crossbones+   -  Reputation: 3726

Like
1Likes
Like

Posted 20 December 2011 - 10:25 AM

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.


Reading code is always easier than writing code.

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


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?


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.

#4 Zern   Members   -  Reputation: 134

Like
0Likes
Like

Posted 20 December 2011 - 10:26 AM

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!

#5 Drakeon   Members   -  Reputation: 102

Like
0Likes
Like

Posted 20 December 2011 - 12:12 PM

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!

#6 Khaiy   Crossbones+   -  Reputation: 1342

Like
0Likes
Like

Posted 20 December 2011 - 12:18 PM

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.

#7 Chrono1081   Members   -  Reputation: 108

Like
0Likes
Like

Posted 20 December 2011 - 12:42 PM

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.

#8 Black-Rook   Members   -  Reputation: 1563

Like
0Likes
Like

Posted 21 December 2011 - 12:43 AM

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

#9 Servant of the Lord   Crossbones+   -  Reputation: 18487

Like
1Likes
Like

Posted 21 December 2011 - 01:03 AM

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.
It's perfectly fine to abbreviate my username to 'Servant' rather than copy+pasting it all the time.
All glory be to the Man at the right hand... On David's throne the King will reign, and the Government will rest upon His shoulders. All the earth will see the salvation of God.
Of Stranger Flames - [indie turn-based rpg set in a para-historical French colony] | Indie RPG development journal

[Fly with me on Twitter] [Google+] [My broken website]

[Need web hosting? I personally like A Small Orange]


#10 Starnick   Members   -  Reputation: 1178

Like
0Likes
Like

Posted 21 December 2011 - 08:49 PM


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.


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

#11 Servant of the Lord   Crossbones+   -  Reputation: 18487

Like
0Likes
Like

Posted 22 December 2011 - 03:36 PM



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.


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

It means exactly what it says. "It took me 4 years to have something of 'worth', it'll take another 1 year to have something worth selling as an indie.", and I've been programming for "6 1/2 years ... (on and off)".

It doesn't mean your doomed to take as long as I have ("Others can certainly do it faster than that..."), but nothing is 'wrong' with you if you haven't made something interesting after only a year ("Not having anything to show for it so far is pretty normal, I gather"), so don't get depressed. Posted Image

I'm certainly not saying "real programmers" have been programming for eons and have grey beards that are so long they have to wrap them around they waists while programming in assembly and frobbing bits in the RAM with their minds (because being in the game longer doesn't necessarily make you better). I'm merely saying, don't be bothered by it, keep working at it, it's fairly normal.

There's no hidden accusations or implications - I lack the proper finesse for such subtlety. Posted Image
It's perfectly fine to abbreviate my username to 'Servant' rather than copy+pasting it all the time.
All glory be to the Man at the right hand... On David's throne the King will reign, and the Government will rest upon His shoulders. All the earth will see the salvation of God.
Of Stranger Flames - [indie turn-based rpg set in a para-historical French colony] | Indie RPG development journal

[Fly with me on Twitter] [Google+] [My broken website]

[Need web hosting? I personally like A Small Orange]


#12 SimonForsman   Crossbones+   -  Reputation: 6035

Like
0Likes
Like

Posted 22 December 2011 - 04:23 PM



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.


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


10 years to develop expertise, you don't need to be an expert to be good enough to do programming professionally, Most professional programmers are fairly bad at what they do (I'm very far from a C++ expert but i know enough of the language to implement anything (assuming i understand what i'm implementing ofcourse or have someone provide me with algorithms)): http://thedailywtf.com/
I don't suffer from insanity, I'm enjoying every minute of it.
The voices in my head may not be real, but they have some good ideas!

#13 Matt328   Members   -  Reputation: 240

Like
4Likes
Like

Posted 22 December 2011 - 05:26 PM

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 used to be like this too. I knew the concepts and the language, just couldn't get the code together to do what I wanted it to do. It feels like my brain doesn't have enough stack space to keep everything straight. Like has been suggested, repetition helps with that. I'll also second someone else's suggesting of drawing pictures.

I installed a 36"x48" whiteboard on the wall right beside my computer chair, and I never try to code anything without having first drawn it up on the board. I don't worry about proper sequence diagrams or uml or any of that stuff, I just get whatever's in my head onto the board, usually just a bunch of notes with arrows connecting related notes. It ends up being an unintelligible mess to anyone else, but for me it makes perfect sense. Iteration is key, once you have thought through something and drawn it, go back over the whole thing again, refining, thinking about more details of your notes, organizing, start pulling out classes, relationships and dependencies from your ideas. Eventually you can start to ask questions like 'What if I made this a class, and this a class and these two talked to each other, and this one had an instance of this one inside it..." At this point you might be tempted to just go start coding, but don't, try to come up with at least two ways of doing something, and weigh the pros and cons of each way, considering how it will change other classes in the system. If you have enough patience and discipline, the actual coding should be a formality, just follow your design from the whiteboard and type it in.

Unfortunately this is easier typed than actually done. Its way too easy to just scratch a few notes on the board, then think "I got this, time to code." Only to spend days or worse, weeks, coding only to find you didn't think of a particularly problematic condition that could happen, and have to redesign 'on the fly'. If you fall into this pit, you will often spend more time redesigning than you would have doing a proper design in the first place. However, the fight to get yourself out of this pit will be an extremely valuable learning experience, so don't just bail out and start over again.

You need to repeat this entire process alot. Do this enough, and you'll have gained experience, that magical thing that makes people better at doing stuff. With enough experience you'll become much quicker at translating a problem into code to solve the problem.


With all that being said, take it with a grain of salt. It may work great for you, it may confuse you even more. Everyone's brain works differently. Read about how others solve problems. Read tons of their code, read it like other people read fiction. Try different things, keep the ones that work, and try to improve the ones that don't.




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS