|
Re: A new step in collaboration: FIRST Programmers' Guild
Might all of the programmers pool and write docs / whitepapers on coding techniques / modules?
Instead of releasing code, we could run an off season services much like most programming text books:
Present case studies / tasks for other programmers to solve. Say we give them some code for a tank steer and say we are now running the robot backwards, please flip the direction the robot moves as well as sides.
Starting there, we can do coding exercises to write a scripting command that could move the robot so many inches forward, BUT having the command and drives be previous projects?
This way the programmer would start with code they've written and as they complete more, they get more. In this way, it becomes partly a person's ambition and commitment to coding that results in better coding practices.
If we start out with basics such as mapping joysticks to pwms and then adding deadbands, smoothings, etc.... a rookie programmer who started a month or more before build season could have fundamentals in place to start the ball rolling.
Much like choosing a track or style in an RPG, you can choose programming challenges (autonomous, oi controls, low-level drive, arms) and at the end of the day have a complete code set written.
The challenges must be real enough that one can learn from them, but somehow made so the code cannot be used on the real robot since build season is build season.
The veteran programmers who have said 'I'm in' (including me) might check code from rookies as well as a way of teaching, once a rookie has gone through the first X programs, they must start checking program 1 for rookies and so on.
This way, the skills of programming are worked on but the MORE important skills of documenting, reading another persons code, and understanding code and being able to debug are developed too.
__________________
Alumni
Team #217, The ThunderChickens
Student, Class of 2009
California Institute of Technology
|