Need Advice with learning Java

Ive been doing an online course for a week now, the reviews say it took them like around 6-9 months to complete, I’ve been coding everyday from a minimum 4-6 hours and a max of around 8 hours, I still feel like I’m not good enough though and I wont be able to get my dream job of a Software Developer, I’m going to college in 2 years for Software Development but I want a head start. Am I being to hard on myself or am I not working hard enough? The issue I have is when I am not coding I really want to push an extra hour in because I feel like im going to be a failure and coding has always been my dream job since ive always been a computer person,

I tried to do a simple Rock paper scissors game earlier but failed so I want to learn abit more as the next module is OOP
also for context im 15% done the online course in I think like 5 days

I learned Java when I went to school for a CS degree. It was the only language the school taught, but I picked up on Python after a few years since I was hungry to learn programming haha.
What you describe sounds like the usual imposture syndrome.

Now if your college teaches Java they will probably teach you what you need todo for a Rock paper scissors game (if its not like some crazy GUI, but command line interface) so don’t think your a failure if you don’t figure it out in a week. It took me at least 2 years of going to school to even be presented with that challenge!
It’s fine if you want to get ahead, and its great that your curious and want to learn, but don’t think you must learn it and get it working or your a failure. Learning programming is hard, and it takes time.

Now, there won’t be a point when you feel like you know it 100%. You probably will be able to get to a point where you can say “I can build a rock paper scissors game no problem” but odds are you will still get tripped up on small stuff here and there (type, compile error, bug with your random number generation, etc) even when you already have tons of programming experience. That doesn’t mean you a failure, it just means your human.

You can only be as ready as you can be, so don’t think you have to pass some imaginary bar all the time. Just try ytour best, and if you run into problems, you keep going until you overcome it. So if your having trouble with writing your game, figure out why your having trouble, break it down and search for answers (google, stack overflow, read the docs, etc). The fact your having trouble and struggling is normal, its how you learn. If you didn’t have trouble, ether thru dumb luck, or your code is somehow perfect the first time, you probably wouldn’t learn much. The issues you learn to overcome is the experience you use down the line.

Goodluck, keep building, keep grinding :smile:
When I started learning programming I always said I learned by bashing my head against the compiler and bugs until they cracked haha!

PS. Idk the actual complexity of your game, but a rock paper scissors game that takes user input isn’t complex enough for anything more complex than a few lines of code. No need for objects, classes, or any fancy Object Oriented Programming stuff. I’d maybe tackle another problem that is more complex, and might be better done with OOP methods :smile:

Thanks alot, one more thing is I have issues like breaking programming questions down and looking at it in a logical perspective does college teach you how to break down the task you want to do? also The course im doing should I finish it and then try a project or continue trying to make a project and doing the course at the same time

Guys is it possible to master java on my own?

I went to an alright college, so they didn’t teach much in the way of how to “think thru the problem”, rather they showed you general concepts available to you.

The most generic advice to breaking things down is the following.

  1. Determine the problem
  2. Take what you know and split the problem down into smaller problems.
  3. For each problem, go back to step 1.

You can see how generic this is, the original problem could be how to build a full-stack web app, or how to write a function that returns an array of odds numbers from an array of numbers. There is no formal way to solve the problem that can be used in all situations, there are to many situations for formal rules. You got your mind, you have to use to to solve the problems. Try 500 different approaches, and learn 500 ways to fail, and maybe the 501st approach will work out haha

The project your doing sounds pretty basic, I would try to do it, get it working, and when you get stuck try to find the answer outside of the course. If your stuck where your not sure how to even approach the given problem then keep going thru the course to see if you learn of anything new that might help.

Finally, you can read, watch about OOP and Java syntax all day, but you will need to use what you learn to really learn it. I personally don’t like following tutorials or guides much, since its a solve problem or the perfect path, there generally wont be any errors, and thus you wont gain any experience on how to handle anything if you just go thru guides, tutorials, lessons. This is why I recommend doing the project, and learn by doing. Or if your are watching tutorials, or reading guides, and you run into something you don’t understand, or aren’t sure about, don’t take it as “oh Ill learn that later” go jump into it now and see if you can at least get a basic understanding. Yea it’s slower and you will go down a lot of rabbit holes, but you will learn a lot doing that, plus you need to learn it eventually haha.

If you mean alone you mean self taught, heck ya but you will need to be a great self learner, and able to dive into completely foreign environments. You will need to be able to build up your knowledge over time, and gain a lot of experience thru doing. Finally this will take time. There are no shortcuts to learning programming, or easy routes.

Thank you for your reply! I think I’ll try)

yes I’m doing the same but in reality it’s gonna be hard but if you want help i recommend a udemy course it’s a java to masterclass and its good for the most part but it you struggle on the exercise questions dw cus they are very tricky