I'd like to clarify the intent of this section of the newly released REC Foundation Student Centered Policy:
Teams that utilize example code or custom libraries from outside sources should use caution. The program used in the robot should represent the students’ design efforts and abilities. Blindly using code without understanding the code functionality is not consistent with the educational goals of this program. Students should be able to understand and explain the code used on their robots, and students should be able to demonstrate that they can program on par with the code included on their robot.
Specifically, does functionality included in and packaged/distributed with any of the official programming platforms (which from my understanding are VEXCode, RobotMesh Studio, and PROS) count as "custom libraries from outside sources"? Here are a few examples, in order of increasing ambiguity in my opinion, of features that could hypothetically be covered by this rule (with links to associated tutorials in PROS documentation):
- smart motor functionality such as position and velocity control
- preemptive task scheduling and concurrency
- file i/o
- brain LCD control
- chassis control for various types of drives
- abstraction of autonomous drive motion
- filtering sensor input
- 2D motion profiling
There are various other examples that could be included, including work-in-progress features which are not yet released. I believe this question applies to all competitions and age groups, as the basic expectations as outlined in the policy are universal.
Thank you for your time.