Programming is an important, yet sometimes overlooked, aspect of robot construction. Robot code is a series of directions which tell the robot's electronics what to do, like turning on motors or actuating solenoids. Robots are programmed using the WPILib library, which natively supports both C++ and Java. FRC robots must be programmed to both act autonomously and be controlled remotely.
FRC matches typically begin with a 15-second "autonomous" period. During this time, robot drivers cannot touch their controls or send any instructions to the robot. Instead, the robot must act on its own, performing its actions without user input. Many teams fail to implement successful autonomous routines, meaning that having an autonomous is a good differentiating factor - it is an easy way to gain an advantage. Thus, the programming subteam should always attempt to implement an autonomous - GamePlan may be used for this purpose.
The teleop period follows autonomous, and is when robot drivers may control the robot remotely. For this purpose, all of the robot's actions must be mapped to joystick commands.