I'm taking the C++ route for a few reasons
- Myself and programming partner already knowing C++
- It's in it's second year with FRC, Java is in it's beta year for FRC
- More documentation then Java
- The library is in fact quite straight-forward
C++ has always been my favourite programming language. And I do believe the Java code is going to be slower than C++ code as you're running a virtual runtime on the cRio, this is an extra process whereas WindRiver compiles C++ directly the PowerPC Architecture assembly.
I do not agree with your mentor depicting the C++ libraries (especially the WPI library) as too messy. It is in fact quite easy to pick up an extra class of the library and integrate it in your code. For example I hadn't programmed a Spike relay in C++ before and I ended up accomplishing the feet in five minutes just by taking a quick look at the C++ reference found here,
http://www.virtualroadside.com/WPILib/index.html.
LabVIEW is a good choice for a lot of teams, it has more advanced and easy to use debugging tools that supposedly "just work." It has a large community over at the Texas Instruments website with tons of sample code and even video documentation. The problem I have with LabVIEW for one is that it's a graphical language. For some this great, for others (like me) I prefer manipulating a robot or computer with syntactical text. LabVIEW also requires lots of screen real estate which some of the ancient computers at our school don't have, and there's not as many books out there on LabVIEW that I can reference to new programmers.
Just putting in my two cents
