Units

Source code is divided by unit:

  1. Introduction to Java
  2. Selection and Boolean Logic
  3. Loops and 1D Arrays
  4. Methods and Multi-Dimensional Arrays
  5. Classes, Inheritance, and Polymorphism
  6. Abstract Classes, Interfaces, and Enumerated Types
  7. Exception Handling and Git
  8. FTC Control System, Sensors, and FTC SDK
  9. Roadrunner
  10. FTC Computer Vision
  11. Control Theory

Units 1-7 are Java Coding while Units 8-11 are FTC-Specific Coding.

Website Navigation

All curriculum is under Learn. Student and teacher tips can be found under Students and Teach.

All units under curriculum contain sections with content. The final 2 sections of each unit contain the unit’s practice problems and quiz.

Practice

All unit practice pages contain practice problems (should be doable if you know the content) and challenge problems (require critical thinking and planning).

Each problem is labeled with concepts that it covers and contains the instructions, template code (which is meant to be copied and pasted), and solution code (link to the code on GitHub).

They may also contain example input and/or output. When displaying example output, [Enter ↩] indicates that the user has entered a value and pressed the Enter or Return key.

File Navigation

All source code can be found under src/com/omegarobotics.

All compiled class files can be found under out/production/HowToCode.
Note: Class files may be outdated compared to the source code.

Generated Javadoc files can be found under javadoc.
Note: Javadoc files may be outdated compared to the source code.

All code for this website can be found under docs.

Unit Packages

Inside of each unit folder are 3 packages:

  1. challenges - Challenge programs to solidify skills
  2. lessons - Demonstration programs to teach concepts
  3. practice - Warm-ups and practice programs

Related code inside of those 3 packages may also be organized into subpackages.