FIRST Robotics Competition Discussions

cancel
Showing results for 
Search instead for 
Did you mean: 

FRC code cleanliness award

In programing I always strive for code that is easily understood by others, and I encourage others to do the same.

(I'm even working on a document to help teams in creating quality code)

But in looking at other team's code, cleanliness isn't always a goal.

Code cleanliness enables code to be maintained and updated and serve as example.

It is important for everyone, including rookies.

I think the best way to encourage code cleanliness within FRC is with a Code Excellence Award.

It needs no money or medals, or even to be a competitive award.  A ribbon or button or certificate would do just fine.

The reason I post here is because I think it would be appropriate to call it the National Instruments Code Excellence Award.

In FRC the LabVIEW language is usually picked when teams do not already have mentors or expertise in C++.

Teams with mentors or expertise in programming are likely to adhere to common coding cleanliness practices, whereas teams without would not know of them.

Thus this award would be focussed mainly towards LabVIEW, and supported mainly by National Instruments employees.

I'd like to hear what everyone thinks of this: FIRST employees, NI employees, and FRC participants.

Marshal Horn
0 Kudos
Message 1 of 5
(7,481 Views)

Hey!

I LOVE the idea! We had been tossing around the idea of formally supporting an award but couldn't think of what would be appropriate. I think this is a good idea that "fits" with NI and with LabVIEW. One of the things we like about LabVIEW is that even relatively novice LabVIEW programmers can often look at others' code and understand it. I'm curious what FRC teams think...

Thanks again for the awesome idea! Maybe you should get a certificate for thinking of it! : )

~Stephanie

K-12 Product Manager at National Instruments

0 Kudos
Message 2 of 5
(3,306 Views)

I also think this is a great idea that enforces practices that are becoming increasingly important with the more software centric cRIO platform.  I personally think we should have two (or three?) related awards; one for good LabVIEW programming and one for good text based (C++ and/or Java) programming because they are all so important.

Your documents looks great too!

Cheers!

Mark

LabVIEW R&D

Mark
NI App Software R&D
0 Kudos
Message 3 of 5
(3,306 Views)

Is there any news on whether this will be at some or all FRC regionals this year?

Marshal Horn
0 Kudos
Message 4 of 5
(3,306 Views)

Checking back on this:

One of the problems this award poses is the time it takes to review the code.  I would estimate about half an hour per team, if it is a thorough review.  Say 40 teams are using LabVIEW per regional.  That means there are 20 man-hours devoted to code review.  This means if code was collected on Thursday, it would take two people devoted to the taks of code review to have an award ready by Sunday.

But really, it's not important who has the cleanest code.  This is about recognition, not competition.  Perhaps it could be done similar to the website excellence award, where the files are submitted prior to competition for review.  (However, it would be ideal for certification of excellency to be awarded at the competition, not emailed to the teams afterwards.)

My guess is that this must be done on a regional basis to be feasible.  FIRST National doesn't have any spare manpower to devote to this.  This brings the issue down to awareness, volunteers, and a scoring rubric.

Marshal Horn
0 Kudos
Message 5 of 5
(3,306 Views)