View Single Post
  #2   Spotlight this post!  
Unread 08-08-2015, 18:14
nate12345678's Avatar
nate12345678 nate12345678 is offline
Programming Lead and Scouting Lead
AKA: Nate Post
FRC #2338 (Gear It Forward)
Team Role: Programmer
 
Join Date: Jun 2015
Rookie Year: 2012
Location: Oswego, Illinois
Posts: 16
nate12345678 will become famous soon enoughnate12345678 will become famous soon enough
Re: Programming team infrastructure

those are great questions, Brian. As a 3rd year team member, I have written code in both LabView and Java, and I personally prefer the latter. As your team progresses and builds a strong programming team, I would recommend switching to a text-based language. As for your questions:

1: I would suggest creating actual LV files, build them on a basic robot code base, and copy them to this year's code. Since NI has not released LV 2016 updates, there may be some changes that will cause major problems.

2: Arduinos are an excellent way to expand some of the features on a robot. Our team personally uses them for lights, but they can be used for a variety of situations. Like I mentioned before, I personally prefer Java over LV, but using cpp is very similar. If your programmers are willing to take up the challenge, it can be very beneficial in the long run.

3: Our team has a unique opportunity of having more than 60 active members. This also presents a challenge, because 20 programmers would be counter-productive. Initially, we have any prospective programmers learn the basics of java. Using standard, robot-free java, we teach a classroom-style programming basics for about a week. After that, some people decided to switch to other sub-teams. Next, we taught robot programming basics, using LabView, to show just how code interacts with robot. Finally, all the new members began to program Hands-on with older robots, to teach them how programming actually works. I would suggest using a style somewhat like this, adapted to your teams needs. No 2 teams are the same, but sharing ideas helps. I would also suggest looking at other videos just to get an idea of what others are doing as well.

4: Although google drive is great, I would suggest using github. In personal experience, once the code is set up, it is by far the most efficient system there is. Code can be branched, edited, and then merged into the master branch. Also, cloud code saving is far easier.

5: Productivity. Although programmers need laptops, they are the biggest detriment to a programmer as well. Our programming laptops have only 2 things installed, git and Eclipse. This does help, but you cant much stop the internet. I always try to give our programmers the friendly reminder that "Robots don't program themselves"

I hope that this response is not too lengthy, but will help your team a lot. Any more questions you think of, let me know.
Reply With Quote