Having a real bitch of a time learning programming

Avatar image for fuzzypumpkin
fuzzypumpkin

433

Forum Posts

0

Wiki Points

0

Followers

Reviews: 4

User Lists: 0

#1  Edited By fuzzypumpkin

I've been going to school for this for months and I just can't seem to get a grasp on it. It's super frustrating and I feel like at this point I'm wasting my time and money if I'm this far into it and don't get it yet. Does anyone have any suggestions on what to do or how to go about maybe understanding this better?

Avatar image for tycobb
TyCobb

2036

Forum Posts

90

Wiki Points

0

Followers

Reviews: 1

User Lists: 0

#2  Edited By TyCobb

What are your actual issues with learning it? What language are you working in? Need specifics in order to help.

Are you having problems with logic flow? If this, then do that. Otherwise if this, then do that.

Exactly how many months are we talking about that has actually focused on programming?

Avatar image for korkesh
korkesh

138

Forum Posts

27

Wiki Points

0

Followers

Reviews: 0

User Lists: 4

#3  Edited By korkesh

Could you maybe elaborate more on what it is your having difficulty with? Its hard to give you advice otherwise. I've been in school for computer science for a few years now so I may be able to give you a hand.

Avatar image for thatdutchguy
thatdutchguy

1301

Forum Posts

1

Wiki Points

0

Followers

Reviews: 0

User Lists: 0

#4  Edited By thatdutchguy

Just quit if you dont like it, And learn something you want to learn.

Avatar image for dagbiker
Dagbiker

7057

Forum Posts

1019

Wiki Points

0

Followers

Reviews: 0

User Lists: 16

#5  Edited By Dagbiker

Programing just clicked for me about a month ago. The last time I tried programing was 5 years ago. I would pretty much just choppy and paste what others had done. But this time I just started c++ and started typing.

It takes time. Its half memorization. And half thinking like a machine. But once you realize that programing is just a bunch of if then statements. Sometimes a loop or two. Or if you really want to get fancy a if statement in a loop. Then it all becomes really easy.

Avatar image for rustysanderke
RustySanderke

117

Forum Posts

101

Wiki Points

0

Followers

Reviews: 0

User Lists: 0

#6  Edited By RustySanderke

Even if you manage to finally struggle your way through this course, you probably will not have much success/fun with a carrier in programming. Your talents lie elsewhere.

Avatar image for puddlesworth
puddlesworth

71

Forum Posts

0

Wiki Points

0

Followers

Reviews: 0

User Lists: 1

#7  Edited By puddlesworth

What language are you learning in? (Java/C/C++/Python etc.) And what specifically are you having a hard time with?

Without knowing any specifics my only advice is to try to simulate your code in your head line-by-line. Start at the first line in your main() function and walk through each line, in your head perform the operations on that line and keep track of the state of all your variables. If you act like the computer then you'll be able to see why the computer isn't doing what you expect.

Alternatively, add a bunch print statements everywhere.

Avatar image for tycobb
TyCobb

2036

Forum Posts

90

Wiki Points

0

Followers

Reviews: 1

User Lists: 0

#8  Edited By TyCobb

@RustySanderke said:

Even if you manage to finally struggle your way through this course, you probably will not have much success/fun with a carrier in programming. Your talents lie elsewhere.

Pretty much this. I don't want to put you down, but if it has been several months and are still struggling with routine (ha! puns) operations then programming may not be for you and even if you did land a job as a junior dev you probably won't be there for long if you still struggle with some of the more basic concepts.

If you really want to be a programmer then do whatever you can to finally make it click. Maybe it is the language you are working in and need to take a step back and go for something a little more simpler to learn. Perhaps all you need is Visual Basic to help you out. It's not like you are working in assembly.... are you?

Avatar image for puddlesworth
puddlesworth

71

Forum Posts

0

Wiki Points

0

Followers

Reviews: 0

User Lists: 1

#9  Edited By puddlesworth

I don't think we know enough about the situation to say he's not cut out for programming. It's certainly not for everyone, but I have no reason to believe his struggles are worse than I had when I started to program. He could even just have a shitty teacher or something.

Avatar image for brenderous
Brenderous

1299

Forum Posts

360

Wiki Points

0

Followers

Reviews: 1

User Lists: 11

#10  Edited By Brenderous
Avatar image for dylabaloo
Dylabaloo

1573

Forum Posts

7

Wiki Points

0

Followers

Reviews: 0

User Lists: 5

#11  Edited By Dylabaloo
@fuzzypumpkin: This site is a godsend. It explains coding in a very relatable way. And throws in some "gamey" badges to keep you entertained and on the site, making learning fun or at the very least addictive.  http://www.codecademy.com/
Avatar image for maginnovision
maginnovision

819

Forum Posts

0

Wiki Points

0

Followers

Reviews: 0

User Lists: 0

#12  Edited By maginnovision

Programming is not especially hard to do. Maybe you're just missing something? Since your originial post has absolutely no info there is not much help to give except people linking you sites. I just looked at that codecademy.com site and I really feel like you should just get a book on the basics of whatever language you're learning, read it, and do the lessons. Once you know the basics it's pretty easy to addon to your base of knowledge.When I started I started with BASIC and that was easy enough, went through a couple of the other basic like languages. Learned VB and made a couple of games with that. After that I went to C/C++ and assembly. It's incredibly easy to just do stepping stones. Now I can just look at SDK's do a couple of practice applications to make sure I understand how everything is working and it's just as easy as ever. Not being able to find information is the most troubling thing about programming, so if you have trouble finding information on the language you're learning you either need to find as much information as possible or try another language where more info is available. You could try and just teach yourself, but if you're already having trouble I don't think that'd be ideal since you'd teach yourself a lot of bad things. Good luck, maybe post again with more information.

Avatar image for fuzzypumpkin
fuzzypumpkin

433

Forum Posts

0

Wiki Points

0

Followers

Reviews: 4

User Lists: 0

#13  Edited By fuzzypumpkin

@TyCobb: I've been going to Coleman College for video game design and development for 2 and a half (what they call semesters) mods. We've been working with C++ and I just cannot understand what the hell I'm doing. I'll try to read into the code and see what other people are seeing, but I just can't do it. I don't know if the courses are just too fast for me, being as they are condensed or sped up classes to get you through quickly, or if I'm not smart enough to grasp it or what. It's just really frustrating the hell out of me to the point where I don't want do it, but I also don't want to quit because it's a fairly substantial amount of money that I've put in to it so far. Andyes, logic flow is a big part of my troubles, but there are other smaller issues as well.

Avatar image for skcaptain
skcaptain

16

Forum Posts

0

Wiki Points

0

Followers

Reviews: 0

User Lists: 0

#14  Edited By skcaptain

@Brenderous said:

codecademy.com is good for beginners, if you're just starting out.

I second this recommendation.

Avatar image for solidusmaximus
SolidusMaximus

43

Forum Posts

83

Wiki Points

0

Followers

Reviews: 0

User Lists: 3

#15  Edited By SolidusMaximus

Yeh C++ is a hard language to start on, if you have some more specific example of what your finding hard to understand I might be able to point you in the right direction.

Though a good site to check out in general for C++ is :

http://www.cprogramming.com/

Avatar image for mattalorian
Mattalorian

604

Forum Posts

17

Wiki Points

0

Followers

Reviews: 0

User Lists: 11

#16  Edited By Mattalorian

@fuzzypumpkin: I'm not an expert, but I get the impression that starting out is usually very difficult. Maybe you're just having a hard time getting used to the fundamentals, and once you get past the initial difficulties, things will be much smoother. I think most people have a really hard time starting out, even incredibly successful programmers. I would keep on going as best as you can and wouldn't worry too much. If other people seem to be catching on much faster than you are, I'd be willing to bet that they've already had a good amount of previous experience with programming.

Avatar image for salarn
salarn

495

Forum Posts

6

Wiki Points

0

Followers

Reviews: 0

User Lists: 0

#17  Edited By salarn

@fuzzypumpkin said:

@TyCobb: I've been going to Coleman College for video game design and development for 2 and a half (what they call semesters) mods. We've been working with C++ and I just cannot understand what the hell I'm doing. I'll try to read into the code and see what other people are seeing, but I just can't do it. I don't know if the courses are just too fast for me, being as they are condensed or sped up classes to get you through quickly, or if I'm not smart enough to grasp it or what. It's just really frustrating the hell out of me to the point where I don't want do it, but I also don't want to quit because it's a fairly substantial amount of money that I've put in to it so far. Andyes, logic flow is a big part of my troubles, but there are other smaller issues as well.

First off, if you are having trouble there is nothing wrong with that. The best advice I can give you after many years as a professional is that you need to step back from the code and only look at it when you need to. Any time I get stuck in the millions of lines of code in a project is just switch to the note book and write down the goal and then create questions for why something isn't working.

Goal: "Actor needs to transition to a zip line after situation YYYYY"

Q: How does the actor find zip lines?

Q: How does the actor go into the zip line state?

Q: Why does it work for XXXXX situation but not YYYYY situation?

---

By breaking down any problem into the smallest subset of issues you can tackle all these small issues one at a time. This helps humans understand what's going on, and it helps you write code for the project since computers like binary things. It's also great for your moral because even if you don't end up with the full solution you have a clear track progress in your notes and you can come back to the notes later when you need a refresher later.

---

If you have any specific questions, I'd be glad to help you out.

Avatar image for oraknabo
oraknabo

1744

Forum Posts

12

Wiki Points

0

Followers

Reviews: 0

User Lists: 6

#18  Edited By oraknabo

I don't know anything about how your course is structured or what kind of books you've been assigned, but if you really want to be a game developer, you need to step back and focus on the foundations of computer science and the branches of math involved before diving into making games.

Read The Elements of Computing Systems to understand how machine architecture connects to assembly language and how that relates to the compiled languages you're working in.

Look at books like The Pragmatic Programmer and Code Complete for a high level overview of coding best practices and concerns.

Codeacademy is a good intro, but I would also recommend trying something lisp/scheme/racket-based like How to Design Programs or the Structure and Interpretation of Computer Programs(SICP) to get started writing code.

Learn about Algorithms with a book like Introduction to Algorithms ot the The Algorithm Design Manual.

You need to understand the pros and cons of various data types and structures. It's best to find a book covering them for the language you're learning.

Also make sure you have an understanding of object oriented concepts--Object Thinking is a good book for that. Also check out Refactoring. Design Patterns can be useful too, but maybe a little advanced.

If you're doing 3D games, you also really need to familiarize yourself with linear algebra. You should also learn something about game engine architecture and real time rendering.

On top of all that is the specialty stuff like physics, AI, pathfinding, state machines and planning systems if those are areas of interest for you.

On the other hand, if you are only interested in designing games and not coding, you're going to have a harder time getting work, but you can skip most of this. If you still want to learn to program, I would still look at these subjects, even if the course doesn't cover them. In my opinion, If you want to learn anything in school, I think you always have to put in extra effort and not rely on the course alone to teach you everything.

Avatar image for jazzycola
Jazzycola

672

Forum Posts

0

Wiki Points

0

Followers

Reviews: 1

User Lists: 5

#19  Edited By Jazzycola

@Mattalorian said:

@fuzzypumpkin: I'm not an expert, but I get the impression that starting out is usually very difficult. Maybe you're just having a hard time getting used to the fundamentals, and once you get past the initial difficulties, things will be much smoother. I think most people have a really hard time starting out, even incredibly successful programmers. I would keep on going as best as you can and wouldn't worry too much. If other people seem to be catching on much faster than you are, I'd be willing to bet that they've already had a good amount of previous experience with programming.

Actually, it's not some of the hardest CS courses are well beyond the fundamentals. Some of the later courses in a CS major don't even have very much to do with actually programming as much as knowing what a thing is doing it the background. (Knowing what and how a compiler works, how to debug your code outside of whatever standard debugger you're using, etc etc) My advice to the thread creator this isn't for you. It's one thing to struggle with learning but to get to the point frustration and feeling like your wasting your time then I say look elsewhere. There's a guy in a couple of my CS classes who struggles with actually doing programs and understanding whats going on but he enjoys what he's done so far so that's why he sticks with it. For you though just from the post you made I say try something else. You wouldn't be alone in the people that have "wasted" 2+ semesters on something you realize you didn't like doing (BTW it's not really wasting as much as just discovering what you want to do).

Avatar image for jozzy
jozzy

2053

Forum Posts

1

Wiki Points

0

Followers

Reviews: 0

User Lists: 2

#20  Edited By jozzy

Disclaimer:Talking about programming in general, don't have a lot of experience with game development

I have learned over the years that some people just don't "get" programming. Doesn't mean they are not smart people, but not everyone is good at the specific kind of logical reasoning (analytic thinking) that coding needs. The single most important thing (I think someone mentioned it here) is to be able to deconstruct a complex problem into small logical bits and solve those seperately. Once you know what you need it's basically just translating those logical bits into a language the machine understands, pretty much like translating into a foreign language except that these languages need to be laid down in a very strict and structured manner. The translating part becomes very easy after a bit of experience with that specific language/platform, the logical deconstructing remains the big challenge that makes coding fun. Especially when you are using an object oriented technology defining the logical bits in the full picture (and the hierarchy between them) are extremely important and different people can come to completely different solutions.

Most people that have problems with programming have a hard time doing the deconstructing thing, but I have also seen people that have problems with the "structured translating" for some reason.

Not saying you are one of those people that just don't get it, but it wouldn't surprise me either as this goes for a lot of people. If you actually want to become a programmer I'd probably rethink that, if it's just one of the modules and you want to get into a different field of game development then it might be worth it to suffer through.

Avatar image for Levius
Levius

1358

Forum Posts

357

Wiki Points

0

Followers

Reviews: 0

User Lists: 2

#21  Edited By Levius

I had to take a C programming class last year, I was doing OK until arrays and pointers turned up. Man what monster thought those up.

Avatar image for oraknabo
oraknabo

1744

Forum Posts

12

Wiki Points

0

Followers

Reviews: 0

User Lists: 6

#22  Edited By oraknabo

@AmatureIdiot: I don't know how your course was structured either, but I would guess that the problem might have come from a lack of explanation of how a compiled language manages memory and why arrays are way of simplifying fairly complicated systems in assembly to keep separate items stored in memory associated with each other. I think it's really difficult to understand a lot of the major concepts of a high level language if you aren't familiar with the more concrete structures they're abstracting.

My best advice is to stay away from specific languages for as long as possible while learning the things that are fundamental to all of them.

Avatar image for mezentius
Mezentius

15

Forum Posts

0

Wiki Points

0

Followers

Reviews: 0

User Lists: 1

#23  Edited By Mezentius

I am a programmer at EA and I graduated last year from USC with a Masters in Computer Science. It is hard given your description to know exactly what you might be struggling with but I would first take a step back and evaluate the program you are enrolled in. Doing some cursory searches, Coleman University is not properly accredited and the program you are in only confers an Associate's Degree. I had not heard of Coleman University prior to reading your post and would think that an associate degree from your program would mean little to most developers at major studios. If your goal is to program video games at a major developer, a specific degree matters less than your demonstrable ability to deliver results (ie being able to think through problems and implement solutions irrespective of programming language/framework/etc) and your enthusiasm for programming.

My advice would be to sit down and reflect on your goals and what you enjoy doing. I found myself in a similar position a few years back. I was in a PhD program, looking at a future in academia that I thought I had wanted and had worked my ass off for years. I gradually realized though that I wasn't happy or motivated by what I was doing even if I found it interesting at some level. I took stock of the things I had done in the past, and the hobbies I did enjoy, and decided to go back to school to prepare myself to program for video games.

If your goal is to be in the games industry but you don't know in what capacity, perhaps engineering isn't the right field. If you do really enjoy the bit of programming you have been able to grasp, and think your future lies there, maybe some different resources would supplement what you are currently learning. In any case I'd be happy to answer more questions here or privately.

Avatar image for myke_tuna
myke_tuna

2050

Forum Posts

101

Wiki Points

0

Followers

Reviews: 2

User Lists: 0

#24  Edited By myke_tuna

@Puddlesworth said:

I don't think we know enough about the situation to say he's not cut out for programming. It's certainly not for everyone, but I have no reason to believe his struggles are worse than I had when I started to program. He could even just have a shitty teacher or something.

I am with you. I took 2 years of programming (Java) in high school and my teacher was balls. I felt like we really jumped in the deep end too. Half the first semester was getting the basics done and then it was right into object oriented programming. By the end of the class, I remember we had to draw shit on the screen using code. Basically, the entire class was a blur. I also feel like the teacher wasn't really into teaching the class.

Last year, I took C++ in college and it was a much better experience. Half the class was basics and the other half started to touch on classes and stuff. As of now, I'm taking Adv. C++ and we're now really getting into OOP. And I'm understanding everything.

Avatar image for hulkhanson
HulkHanson

98

Forum Posts

0

Wiki Points

0

Followers

Reviews: 0

User Lists: 0

#25  Edited By HulkHanson

As a student who is about to enrol in their final year of University studying Games Development, all I can say is, if you are really struggling and don't see yourself ever "getting" it, back out now while you can. Personally, I don't hate it, but if I graduate I'm going to be stuck with a degree that could get a me a job I simply have no passion for anymore (the programming that is, I still love playing games!) Not backing out earlier, is one of my biggest regrets and I wish I switched to a course I could see myself excelling in long term.

Avatar image for sathingtonwaltz
SathingtonWaltz

2167

Forum Posts

0

Wiki Points

0

Followers

Reviews: 1

User Lists: 2

#26  Edited By SathingtonWaltz

Enjoy competing for work with Indian and Chinese slave labor!

Avatar image for thewretched
TheWretched

6

Forum Posts

0

Wiki Points

0

Followers

Reviews: 0

User Lists: 1

#27  Edited By TheWretched

@AmatureIdiot: Actually, once you use them a lot (took me about 1.5 years), you get the hang of it, and start to understand their usefulness, even if you never took a class in C or Cpp.

But in general programming itself (i.e. simple stuff like GUIs and such) isn't that hard. You just have to practice a LOT. It's like math in a sense. I usually never had to force myself to do it, though. In the beginning, it was harder, sure, and it took more motivation to start doing stuff. After the initial "aha, that's how it works", it'll get easier and easier, and you'll have a lot more fun doing it. That is, if you get the hang of it, though. I've been into programming for a WHILE now. The first few years was just dabbling, though, until I started studying CS at University (got my degree earlier this year and I'll start working next month, programming Embedded C stuff with OpenGL. That'll be fun!), which is when a part time hobby became my "bread and butter". The beginning was the hardest, because the HUGE mountain of information that had to be absorbed...

Avatar image for cannonballbam
cannonballbam

795

Forum Posts

10285

Wiki Points

0

Followers

Reviews: 0

User Lists: 0

#28  Edited By cannonballbam

@fuzzypumpkin: One of the biggest issues people have when venturing in game development is the balance of recreation and work. It will become a very big love/hate relationship, I can assure you that.

How much time do you spend coding a day?

What other coding languages have you attempted or know/familiar with?

What kind of IDE do you use for class and does it integrate any 2d/3d libraries?

Avatar image for dichemstys
dichemstys

3957

Forum Posts

16891

Wiki Points

0

Followers

Reviews: 5

User Lists: 2

#29  Edited By dichemstys

@SathingtonWaltz said:

Enjoy competing for work with Indian and Chinese slave labor!

As depressing as that is, I have a legitimate question relating to that.

Are the programming languages still in English? They'd have to be, right?

Avatar image for sathingtonwaltz
SathingtonWaltz

2167

Forum Posts

0

Wiki Points

0

Followers

Reviews: 1

User Lists: 2

#30  Edited By SathingtonWaltz

@Apparatus_Unearth said:

@SathingtonWaltz said:

Enjoy competing for work with Indian and Chinese slave labor!

As depressing as that is, I have a legitimate question relating to that.

Are the programming languages still in English? They'd have to be, right?

I... I don't know! I'm not a programmer but I have friends in the computer science and IT industry so I should ask them. And that's where my comment came from, a buddy of mine was telling me how it's rare for him to actually work with anyone that's from the US. He said that as technically capable as many of the foreign chinese programmers are "they are like fucking drones." (to quote him directly) "It's like these folks have never enjoyed anything in life, and don't know how. Work and their profession is all they know." I remember him specifically telling me that they had a lot of problems using more creative means to solve problems and stuff related to coding. But they just work and work and work for infinity and I guess that's why employers love them.

Avatar image for burzmali
Burzmali

456

Forum Posts

0

Wiki Points

0

Followers

Reviews: 0

User Lists: 2

#31  Edited By Burzmali

It took me a couple of classes to "get it" when I was learning to program, too. I didn't even really enjoy it until it finally clicked for me. If you really think you'll enjoy programming once you do get it, then stick with it. Do you like solving puzzles? That's a good indication of whether you'll actually like programming once you get the hang of it. If the answer is "no," then you may want to get out now and avoid throwing good money after bad.