= Software Training = * [wiki:ZebraZeroTraining Zebra Zero Training] * [wiki:ControlSystemTrainingCurriculum Control System Training Curriculum Workspace] === Java === All robot programming is done in the Java programming language. See [wiki:Software/WhyJava here] for why we program in Java. If you don't know Java yet, these training links will help: * [wiki:BeginnerSoftwareVideos Java Tutorial Videos] * [http://www.sololearn.com/Play/Java/# Sololearn] Computer Based Java Training * [wiki:JavaWPI_Training Java Training]: links to several other tutorials which help teach Java * [wiki:SoftwareTrainingBeginner Beginning Exercises] * [wiki:ProgrammingPrompts Training Prompts]: more Java programming exercises * [wiki:Exercises Object Oriented Programming] === Robocode === Once you have a solid foundation in Java, you can use the Robocode to hone your skills in a fun way. Robocode creates a robot arena on your computer where you can program virtual robots and battle them against pre-programmed robots supplied with the simulator or robots programmed by your friends. * [wiki:Setting_Up_Robocode Robocode Resources] * [http://robowiki.net/ Robowiki] === WPILib === When you've mastered Robocode and are ready to start programming FRC robots, you'll need to set up a suitable development environment, learn how to access the robot software, understand the WPILib environment, and learn how to load and run code on a robot. * Basic * [http://wpilib.screenstepslive.com/s/currentCS/m/java ScreenStepsLive] describes the process; you can also follow some video tutorials: [https://www.youtube.com/watch?v=OyOcsmkp-uk here] or [https://www.youtube.com/watch?v=dNXu97q08uI here] or [https://www.youtube.com/watch?v=tlZexc02TTc here] * STEMRobotics has a nice tutorial [http://stemrobotics.cs.pdx.edu/node/4196 here] * Building your first robot with [https://www.youtube.com/watch?v=hbPVbdkpkls RobotBuilder] or see [https://www.youtube.com/watch?v=ef-jqacGUFU here] * Video tutorial: your first (iterative) robot program [https://www.youtube.com/watch?v=pZkDhVKDG-g here] * For the brave: a 1-hour '''comprehensive''' [https://www.youtube.com/watch?v=tR8wtXd2Ack Crash Course] in FRC programming in Java. * [https://wpilib.screenstepslive.com/s/4485/m/13809/l/145307-creating-your-benchtop-test-program Hello FRC World] - the simplest robot example * Intermediate * [http://wiki.team2537.com/wiki/Setting%20Up%20Git Setting up git] Setting up the Git DVCS (how to access the robot code) * [wiki:SoftwareTrainingIntermediate Intermediate Training] * Advanced * [wiki:AdvancedTraining Advanced Training]