Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

General Discussion

I am honestly getting demotivated with programming... =(

I always wanted to learn how to program. When I was a kid I started learning some HTML and actually was able to build and deploy a website. Back then, the way I'd learn was by going to IRC channels and asking actual webdesigners how to do something. Then I kind of gave up on webdesign when I started getting into PHP and things started getting more complicated and I think I was too young to understand how the web worked... Anyway, I've been trying to get into programming for a few years now... I tried many times, but it's always the same frustrating process...

It's hours of pointless exercises of changing orders of letters in words, writing some stupid program that tells me that orange is different than blue... And even the simplest stuff like a hangman game in the JAVA track is just overly complicated.

I have 8 hours left in my JAVA track and I feel like I can't build anything at all. I'm at the point of asking if I am too dumb to learn programming.

2 Answers

Steven Parker
Steven Parker
229,981 Points

Like many technical skills, programming might not "click" at first.

I think a lot of students go through a phase like you describe. You feel like you're crammed with facts but you have a hard time making them work together to produce something. But perseverance will usually lead you to a point where things begin to "click" and make sense.

As long as you still feel that desire to program, keep with it but don't push yourself. Study and practice regularly but not constantly. Take plenty breaks and do other things while your new knowledge "coalesces". Perhaps when you least expect it you'll suddenly have the experience of "Aha! Now I get it!".

I can relate... some days and some challenges are definitely more frustrating than others. Ask yourself why you decided to get into coding in the first place, and whether your intention is to focus more on front end development/design (HTML, CSS, JavaScript), back end (Java, PHP, Python, Ruby, C/C#/C++, etc), or full stack (some combination of both).

Java can be daunting if you're new to programming... may I suggest diving into the basic HTML and CSS courses and getting a firm grip on those before going back to Java? A "crawl before you can walk" analogy comes to mind here, and you won't feel so discouraged after each lesson.

And since you can build a website purely with HTML and CSS, try to build one after or even during your HTML/CSS classes and then get back to Java and start learning about how it can be a back end for a web application.

More importantly, find a language you truly enjoy coding in (at least for the most part) so that when you do hit the challenging bits, it won't feel as daunting and you'll be more determined to get through it and keep learning. Unless you have a job that specifically calls for Java and you absolutely must learn it, and since you seem to be interested in back end languages, how about learning Python? It's a solid, powerful language that has clear readability and is a great first language to learn. [Edited to add: I see that you tried a bit of Python too, did it feel easier, the same, or more difficult than Java?]

Once you get used to learning and practicing the syntax of whatever language you choose, you can always go back to Java later with fresh eyes. Hope this helps. Like Steven said, as long as you still feel that desire to program, you can choose to persevere.

Keep going! Ask questions! And remember, everyone started at zero. Get clear about why you want to do this, formulate a game plan, stick to a schedule, commit to it everyday, ask lots of questions (google and stack overflow are your friends) and keep going.