Rock Paper Scissors is B.S

I got to the rock paper scissors project a week ago and felt like an idiot, threw out all my notes, spent probably 60 hours in the last week going back over all the material up to that point, taking meticulous notes. I get to the project again and I feel completely defeated and demoralized.

The curriculum does not set us up for success with this project. How is everyone completing this?! Do I need to go through the freecodecamp javascript exercises or something to supplement? I’ve probably spent 100 hours going through all the material odin has presented on javascript and it just doesn’t click.

I was feeling pretty good about myself. I’ve been able to figure out the tasks and other mini projects in the readings. But this project just makes me feel awful. I don’t have experience working in tech. I’m only following this curriculum, so this is all I know. What do I do to figure this thing out?

You have all the stuff you need to complete this. It’s all about breaking it down into small bites. I haven’t seen you ask for help either, and part of learning to program is finding and filling in gaps of knowledge or thinking.

You should come to the Discord chat and ask some questions. (This also helps us improve the curriculum).

Ultimately this stuff is HARD. Once you figure out how the process works, it goes a lot smoother though. Most other things make you feel like you’re learning, when in reality you’re just getting a very high level understanding.

You need to do this:

  1. Think of the small operations you will need to do
    a. Taking user input
    b. getting computer input

    • e.g. random number to select rock paper or scissors
  2. Start thinking about how to “glue” the pieces together
    a. Take computer input, and player input
    b. compare them to decide a winner

  3. Think about how to keep track of everything
    a. global variable for scores

Also, googling your way out of being stuck is part of what you’re learning here. This course has worked for MANY people, myself included. I had zero experience when I came here, the difference is that I wasn’t afraid to ask questions early and often. This doesn’t mean the curriculum is weak however, but just that you haven’t taken the full dive yet and fought through it. You need to fight through these feelings and get over the hump of tutorial-land and into how real code works.

You got this man, keep going :slight_smile:


I disagree that all the stuff I need to complete this project are already presented. There seems to be some fundamentals that are missing and maybe because it’s because it has been over twenty years since I’ve taken any sort of math class but there is a gap in my resources and wall with this project.

If I am expected to write code for something I should be able to reference it from the materials I’ve learned.

I took meticulous notes.

I was looking at the codes other students submitted for the project and there is all sorts of stuff in them that I’ve never seen up to this point.

I can go and copy whatever from google and paste it in but that doesn’t mean I understand HOW it works.

I’ve taught in the past and I don’t ever expect my students to complete a quiz or project with something I haven’t presented to them in class.

What do I retain by just by going to google and copying code?

If you know
variables, numbers, strings, comparisons:

String modifiers, conditionals:

and Functions:

This will get you 95% of the way there. You should be able to google your way though Getting user input, and getting a random number (which are both using functions). And yes, you could copy and paste code and never understand HOW it works, but that means that you didn’t take the time to try to understand it. There’s nothing crazy complicated that you will run into during RPS. You should be able to work out what you find.

There’s a difference between googling “HOW TO MAKE ROCK PAPER SCISSORS JAVASCRIPT” and “get random selection js”

I’ve taught in the past and I don’t ever expect my students to complete a quiz or project with something I haven’t presented to them in class.

This is self learning, you’re expected to find your own solutions. Engineers don’t always get handed information, they’re expected to derive it from research and experimentation through iteration. And that’s what we’re doing here, a field of engineering.

You can do this though, it’s just a lot of beating your head against stuff. Everybody goes through this at some point after the hand-holding-honeymoon. I recommend you read this again, it’s a good read and something I look at once every few months, myself:


it also tells you about prompt.


As an aside, it would be wonderful if you could suggest some changes that we could make to make this better. We obviously want people to learn as fast as possible. I would very much like to know how we can improve The Odin Project. We strive to constantly be improving. Especially having input from a teacher such as yourself!

Feel free to ask any questions you may have with the topic as well. We’re pretty helpful if you give us the chance.


I’ve been thinking about your question for a few days.

I come from a creative field, learning coding is a bit of a departure from how my brain has functioned for the past twenty years.

I’m still struggling some with picking up certain aspects of javascript just following the curriculum laid out, so I have been wondering why that is. I know I’m not stupid.

The three resources we mainly seem to be using mozilla, and w3schools all excel at one time or another and at other times can feel confusing depending on the article, subject matter or the (unnamed) author.

Sometimes the reading can be extremely dry. I think I am someone that understands topics better with analogies than straightforward explanations or short examples of the code. The articles use analogies occasionally, and these have helped me understand the topics a little clearer.

The thing I’m finding and maybe this is the point of your curriculum is that when something is unclear I try to find other people talk about the subject matter in a way that is clearer to me. I’ve sought out youtube videos or other blogs writing about them because mozilla, javascript and w3 can just be a little too black and white.

What I’m ultimately saying, is that maybe different perspectives and more variety in sources/resources could be helpful in terms of engagement and understanding. People are coming to this from different perspectives, experience and learning styles.

One of the big jargon words in education this past decade has been differentiated instruction and this is definitely a situation where that comes into play. However, because it’s a self-driven program, the student has to have enough self-awareness about their own learning style to seek out instruction and understanding without guidance. For some, this could be a point where they quit or give up because the resources supplied are confusing and they don’t get it, when in fact, they are just being presented the information in a way their brain understands things.

Those are just some thoughts, I appreciate of all the knowledge that is being shared online and I hope people that want to learn are able to learn.