Favorite free Java-for-beginners training?

Hi folks, we have a bunch of new students who are interested in programming but who have no or little experience. Does anyone have a favorite online Java Basics tutorial that is interesting (or will at least hold their attention)?

We’re planning to give them a series of goals to work towards. Something like:

  1. work on your own through tutorials to get the basics, with check-ins and support online (this is what we need to identify)
  2. award for this is that they “unlock” access to a Romi robot to play with and do the Romi course
  3. work through that, which unlocks access to our demonstration robot, including things like Photonvision (it’s a basketball shooter, currently under construction)
  4. unlock access to swerve drive

What’s your favorite way to get beginners familiar with Java?

3 Likes

CodeHS is widely used in AP CSA, and it’s a very comprehensive course. I also have some addntioal resources to supplement that, so let me know if you want those.

1 Like

If you have students who want to jump right into programming a robot, 6814’s 0-robot tutorial is excellent. However, if you are using the Romi or non CTRE motor controllers, your students will need some support making modifications to the code.

7 Likes

Here are my free Java learning resources:

Textbook Style Course:
How to think like a Computer Scientist

Basic Problem Solving:
CodingBat

3 Likes

We are implementing a very similar process this year for new programming students and we decided to use Codecademy. (Not all of the learning modules are necessary to move onto the romis so I highlighted which ones the kids are required to do.)

Our main requirement was that whatever we used didn’t require installing any software onto the school computers.

1 Like

Love both of these, very helpful

1 Like

We transitioned to Codecademy’s Java course for our software training this year. Students were able to get through to the lessons on arrays and loops in around 7-8 hours total in-shop class time. After that we transitioned to real-world coding using WPILib and actual robot hardware. There are more lessons however for students that are particularly motivated that gets into inheritance and other intermediate topics.

3 Likes

If your students qualify for the GitHub Student Developer Pack, the Educative Courses Java Masterclass for Software Developers and Learn Object-Oriented Programming in Java are great.

2 Likes

This seems like a fair path for interested students. I’m struggling a little to get to the low-interest students. We don’t have ones that devote extra time outside the shop to learning programming or ones that could work in shop for more than 15-20 minutes at a time before getting distracted or going to hang out with friends.

I started a small group on preparing the XRP robots and planned to work more on the WPIlib more with that, but we are still not to some of the basics so we are hopefully picking some up as we go. We should be past the problem of firmware/software issues we had last week that stalled progress, so maybe we can pick it up again this week. I’d like to get a couple interested enough to take it home with a team laptop to work on but that has been so far not been happening.

Last year we tried more with the spectrum training which I thought was okay to work through but wanted to get more to robots sooner this year because I just found that at least half the 8 or so students that I was working with just couldn’t sit and work on the computer, and of course that made it hard for the whole group

1 Like

I have actually recently looked around to find a java course that I like and ended up settling on this. AP CSA Java Course — AP CSAwesome for a few reasons.

  • it goes right to variables, objects, and such without going through somewhat useless turtle stuff first
  • is completely online so it can be done on school chromebooks
  • it technically could be used as an intro to AP CSA so if they’re interested in continuing in computer science they could (this is more of a fun bonus for me)
  • it lets you skip around to go only do the things necessary so people can do the practices if they need it or if they already understand a concept they can move on faster
  • it doesn’t require an account to use. Just another not super necessary plus but still nice (could have an account if I had a teacher email to create a classroom but only being a Junor in highschool makes that hard)
1 Like

Codecademy usually

1 Like

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.