Hey guys I was wondering what programs and or free classes do you recommend to learn java like code for dummies type stuff?
Sololearn or codecademy are good resources
When I was first learning to program (after I had taken a very basic level java course), I did a lot of codingbat exercises to get my self used to very basic algorithms and just familiarize myself with programming in general. As I got more proficient I started increasing the difficulty of the problems I would do via programming competitions (pclassic is a good one that I would go to that posts their problems online with solutions after the competition).
To get better at more object oriented programming aspects, I highly recommend looking at MIT’s open courseware and sifting through the classes or more general websites such as Codeacademy. The link for the open courseware should take you to a intro to programming course specifically meant for Java!
I took a programming course in Java at my local community college. It was pretty helpful for me, and I’m planning on getting a CS major anyway. We used Greenfoot to program; it’s a pretty easy and fun way to learn Object-Oriented programming.
Can we take a moment to appreciate how great of a mindset this is? Rather than considering robotics as a series of finite events, you are considering it as an infinite game, one where you strive to keep playing and keep playing better. I love that.
As for learning resources:
I’ve written out resources over many many posts over my time here at Chief Delphi. Thus, rather than write them another 100 times, I’m compiling a github repo with all the resources! Woop Woop!
It’s still a work in progress, but here is the link! I’m going to go through multiple past post of mine of the course of the next few days and update it.
From what I’ve seen, Codecademy and MIT’s OpenCourseWare are both great options to start learning Java as you don’t need prior programming experience for either of them.
Skimming through the course that I linked from the MIT OCW site, some of the assignments that are posted are a bit more abstract for my liking but hopefully this course may be a bit more intro and OOP focused.
If you’re looking for learning OOP in Java, I’d take a look at Becker Robots. Lots of cool things you can do with this library.
You have a number of great suggestions for learning core Java concepts, but I also want to strongly recommend reading code. For robotics, read other team’s code. Almost every team shares their code every year (this enables them to legally use in the next season), some during the season, others right before the next, but there is lots of it to view.
Pick robotics with interesting autonomous/automations/controls, and figure out how they did the code. Similar advice for almost every open source project – they are great ways to see to code.
Once you get comfortable with Java and understood the base OOP (most importantly, declarations vs instantiations, scoping, etc), I would highly recommended getting yourself/team a ROMI (with a raspberry Pi - need at least a Pi3) specifically to learn about WPILIB. You won’t get to learn everything but you’ll learn how to work with WPILIB, network tables, “dashboards”, Command based programming, etc.
I am working on creating tutorials for our team next year. This is the first tutorial for programming a Java FRC robot. Hopefully it is useful for you.
Your First FRC Program Tutorial with Java
The collection of Java and WPILIB Resources I’ve curated over recent years:
If you wanted to get good at different types of algorithms I would highly recommend using LeetCode or PracticeIts
This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.