We do the following in our code process (for this year):
1.) early stage, we make sure wheels will move the way we want to control them
2.) after we see the robot moving, we tweak the code to make sure the way it drives won't damage things
3.) we start coding the controller buttons to get ready for any other motors we'll need to get running
4.) depending on our robot design, we'll split up tasks and use the FRC's from last year to double coding productivity
5.) our lead programmer starts on autonomous, and we begin tweaking our current code and coding smaller things
6.) rush time, autonomous becomes last priority, and we make sure our code is working correctly and integrated with everything else to have a "master code workspace", and we try and make things more user friendly and automatic rather than putting all the pressure on the driver.