OCCRA
Go to Post You need a good BAD (*BAD = Ball Acquisition Device) - DonRotolo [more]
Home
Go Back   Chief Delphi > Technical > Programming
CD-Events   CD-Media   CD-Spy   FRC-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Closed Thread
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 07-09-2012, 07:20 PM
profamous profamous is offline
Registered User
no team
 
Join Date: Jul 2012
Location: Ohio
Posts: 2
profamous is an unknown quantity at this point
Team with beginner programmers?

Alright, now I'm in 8th grade at the moment, and from what I've heard, our high school team isn't really that great. No one has much experience in any programming, so we need to know where to start. Since we are in 8th grade, we need to know where to get the program that works with the robot, for some practice. We were going to try to use C, so if you could recommend a guide or tutorial or something to get us started, that would be great.(We all have no experience with any languages AT ALL, and have no clue where to start.)

So, if you could point us in the right direction, it's highly appreciated. Thanks!!!
  #2   Spotlight this post!  
Unread 07-09-2012, 08:39 PM
theawesome1730's Avatar
theawesome1730 theawesome1730 is offline
Registered User
FRC #1730 (Team Driven)
Team Role: CAD
 
Join Date: Jan 2012
Rookie Year: 2011
Location: Lees Summit
Posts: 255
theawesome1730 is on a distinguished road
Re: Team with beginner programmers?

We use windriver workbench for our c code, it is a little confusing and hard to talk about through text, it is something best done on video tutorials, so you might search youtube for windriver frc tutorials. Simbotics 1114 has an app for iPhone called simphone and it has many tutorials in it i know there is some programming, but I'm not sure how much or in what language. contact your team to see if you can get the windriver DVDs so you can mess around with it. I probably didn't help that much, but this is what i know.
__________________

  #3   Spotlight this post!  
Unread 07-09-2012, 09:03 PM
Greg McKaskle Greg McKaskle is offline
Registered User
no team (Team NI)
 
Join Date: Apr 2008
Rookie Year: 2008
Location: Austin, TX
Posts: 3,982
Greg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond repute
Re: Team with beginner programmers?

You don't mention why you chose to program in C. You have plenty time to learn al the languages, so unless you have a good mentor or teacher, I'd suggest either LabVIEW or Java as your first FIRST language. They are much much more forgiving of mistakes, and have somewhat simpler syntax and concepts.

If you have access to the previous kit memory sticks and SW, you can get started. There are video tutorials on Ni.com/first and on frcmastery.com.

Greg McKaskle
  #4   Spotlight this post!  
Unread 07-09-2012, 09:06 PM
Fletch1373's Avatar
Fletch1373 Fletch1373 is offline
Registered User
AKA: Fletch
FRC #3555 (Aluminati)
Team Role: College Student
 
Join Date: Jan 2008
Rookie Year: 2004
Location: Connecticut
Posts: 228
Fletch1373 has much to be proud ofFletch1373 has much to be proud ofFletch1373 has much to be proud ofFletch1373 has much to be proud ofFletch1373 has much to be proud ofFletch1373 has much to be proud ofFletch1373 has much to be proud ofFletch1373 has much to be proud ofFletch1373 has much to be proud ofFletch1373 has much to be proud of
Send a message via AIM to Fletch1373 Send a message via MSN to Fletch1373 Send a message via Skype™ to Fletch1373
Re: Team with beginner programmers?

Quote:
Originally Posted by profamous View Post
Alright, now I'm in 8th grade at the moment, and from what I've heard, our high school team isn't really that great. No one has much experience in any programming, so we need to know where to start. Since we are in 8th grade, we need to know where to get the program that works with the robot, for some practice. We were going to try to use C, so if you could recommend a guide or tutorial or something to get us started, that would be great.(We all have no experience with any languages AT ALL, and have no clue where to start.)

So, if you could point us in the right direction, it's highly appreciated. Thanks!!!
First of all, Welcome to FRC! While I can't speak specifically about next year's rules(we simply just don't know them yet), I can tell you that the languages available this past year were Java, C++, and Labview.

From personal experience:
  • C++:
    • is relatively easy to learn basics, but can get very tricky when you want to do anything remotely complicated.
    • uses Windriver Workbench as it's IDE(Integrated Development Environment). This is given to teams as part of the kit, so I can't provide a link for you to get started with.
    • uses the WPILib Library(Documentation here)
  • Java:
    • tends to be the easiest language to learn for people who have seen or used a text based programming language before(as most languages are).
    • uses Netbeans as it's IDE. This is a free download from netbeans.org
    • uses the WPILibJ library(a Java port of the C++ Version) (Documentation here)
  • Labview:
    • tends to be fairly easy to learn for people who have absolutely no programming experience, or have worked with EasyC or RobotC before.
    • uses LabView by NI(National Instruments), which is given to teams as part of the kit.
    • uses WPILib ported to LabView by the awesome developers at NI.
    • is completely graphical. There is no typing code, so it's very difficult to make simple spelling errors.
    • Your best starting point would have to be frcmastery.com

Other links that might be of interest:
Notes:
  • WPILib is maintained by Brad Miller and various students at Worcester Polytechnic Institute in Worcester, MA

There are literally hundreds if not thousands of years of combined professional programming experience on here, and most of us are constantly on the lookout for young, new programmers trying to get started. You're already off to a great start simply by asking!

Once again, welcome to FIRST and FRC!!
__________________
<04: 213 - BAE> <05-08: 1373 - CT>
<09: 809 - PA> <09: CT - Inspector>
<10: 809 - VA> <10: WPI, BOS, CT, CMP - Inspector>
<11: CMP - Official Scorer> <11-12: 3555 - CT> <11-12: WPI - FTAA> <11-12: CT - Inspector>
<12: 73 - Mentor> <12: CMP - CSA>

  #5   Spotlight this post!  
Unread 07-09-2012, 11:41 PM
rachelholladay's Avatar
rachelholladay rachelholladay is offline
Registered User
FRC #1912 (Team Combustion)
 
Join Date: Dec 2010
Rookie Year: 2006
Location: Slidell, Louisiana, USA
Posts: 540
rachelholladay has a reputation beyond reputerachelholladay has a reputation beyond reputerachelholladay has a reputation beyond reputerachelholladay has a reputation beyond reputerachelholladay has a reputation beyond reputerachelholladay has a reputation beyond reputerachelholladay has a reputation beyond reputerachelholladay has a reputation beyond reputerachelholladay has a reputation beyond reputerachelholladay has a reputation beyond reputerachelholladay has a reputation beyond repute
Re: Team with beginner programmers?

Well Fletch1373 did a good job of laying out the basics of each language. I would definitely find out what your fellow students and mentors know because if someone already has experience in a language then that is a major pro.

Personally, my team goes with LabVIEW for a variety of reasons -
(Fletch covered this but I will repeat in my own words) Some languages are easy to learn but hard to master and some are hard to learn but relatively easy to master. LabVIEW is pretty easy to learn within the FRC environment. The framework provides a lot and the examples are useful. I've had to give quick LabVIEW lessons to a lot of rookie teams and its easy for me to show them how to, for example add a motor, include a solenoid, etc. The graphical element also helps out because sometimes that makes more sense and is easier to visualize.
The controls system hardware is produced by NI. That means that if we have any kind of issue we have one place we can go to for all our questions (I believe Mr. McKaskle will agree that we ask plenty of questions..) If we have a problem, its NIs hardware and software, so they can help us from all angles and can debug issues faster.
More teams in our area use LabVIEW. If we need help, there are more people we can turn to. Conversely, we can help more rookie in our area. It helps to have a local community.

If you are interested in LabVIEW I agree FRC Mastery is a great place to start. I learned LabVIEW by spending a week of my summer a few years back watching two or three a day while working through examples. (That's right, I know how to spend my summer vacation in style..)
__________________
Carnegie Mellon School of Computer Science Class of 2017
2012 Dean's List Winner, 2011 NWCIT Award of Aspirations in Computing National Winner

2014 - : FIRST Team 3504 Girls of Steel (Mentor)
2014 Engineering Inspiration

2006 - 2013: FIRST Team 1912 Combustion (Webmaster / Controls Capt / Beta Test Lead / Drive Capt / JrFLL Coach)
2013 Woodie Flowers Finalist for Wendy Holladay. 2010 - 2013 Regional Chairman's Award at the Bayou Regional. 2011 - 2012 Best Website at the Bayou Regional. 2010 - 2013 Beta Test Team for Hardware and LabVIEW. 2012 JrFLL State Expo Coordinator.

Last edited by rachelholladay : 07-09-2012 at 11:43 PM.
  #6   Spotlight this post!  
Unread 07-09-2012, 11:50 PM
gixxy's Avatar
gixxy gixxy is offline
Programming and Arduino Mentor
AKA: Gustave Michel
FRC #3468 (MAGNAtech)
Team Role: Mentor
 
Join Date: Nov 2011
Rookie Year: 2012
Location: Slidell, LA
Posts: 166
gixxy is an unknown quantity at this point
Send a message via Skype™ to gixxy
Re: Team with beginner programmers?

Welcome to FIRST!

Like before, unless you have a good C++ Mentor on the team, I don't recommend it.

Our team uses Java (although our mentor actually knows C++ instead) due to the simplicity and forgiving nature of the language.

I am currently teaching other students on my Team Java (many of which have never used any Programming Language) and they are picking it up rather well.

I attached a PDF that is from my Java Course. Its all links and Resources for learning Java.

Good Luck to you.
Attached Files
File Type: pdf Supplement1.pdf (238.2 KB, 47 views)
__________________
Programmer - A creature known for converting Caffeine into Code.
Studying Cyber Engineering @ Louisiana Tech University
2012-13: 3946 - Head of Programming, Electrical and Web
2014 - 3468 - Programming Mentor
  #7   Spotlight this post!  
Unread 07-10-2012, 11:41 AM
profamous profamous is offline
Registered User
no team
 
Join Date: Jul 2012
Location: Ohio
Posts: 2
profamous is an unknown quantity at this point
Re: Team with beginner programmers?

Thank you all this information is very helpful.
I was going to either use C or Java because once I learn these I can pursue other interests outside of FRC. I chose C over Java because more programs are written in C compared to Java.(http://www.tiobe.com/index.php/conte...pci/index.html)

But, since most of you guys and people I have talked to say they use Java because it is easier, I might just go with that.

Can anyone show me where to start programming in Java? Either in general or FRC based. This is my first language ever so I have no clue what an IDE is or anything like that.

Sorry for the overwhelming response, but I don't have a clue what I'm talking about. Thanks!
  #8   Spotlight this post!  
Unread 07-10-2012, 12:11 PM
tr6scott's Avatar
tr6scott tr6scott is offline
Um, I smell Motor!
AKA: Scott McBride
FRC #2137 (TORC)
Team Role: Mentor
 
Join Date: Dec 2007
Rookie Year: 2005
Location: Oxford, MI
Posts: 244
tr6scott has a brilliant futuretr6scott has a brilliant futuretr6scott has a brilliant futuretr6scott has a brilliant futuretr6scott has a brilliant futuretr6scott has a brilliant futuretr6scott has a brilliant futuretr6scott has a brilliant futuretr6scott has a brilliant futuretr6scott has a brilliant futuretr6scott has a brilliant future
Re: Team with beginner programmers?

Check out Team 2851 summer school challenge on google docs.

https://docs.google.com/folder/d/0Bz...W vzBiWCDa6X0

They have opened it up to other teams. Looks like a good place to start with learning java for FIRST.

Secondly, I also would suggest Java. Last year we reviewed all of the options and decided to go with java. The major reason we did this, was there was not any programming class offered at the high school, so the kids did not have any access to programmer teachers. 2nd, there was an online class offered through the High school virtual school, you may also have this option to get high school credit for learning java, along with a structured class. 3rd, there was also API test where you could test and receive collage credit for the java. 4th Java is used everywhere, and once you learn it, you will probably use it for the rest of your life.

That all being said, this year we had a mentor join the team that works for NI, so we stuck with Labview. The examples in labview for FRC are done very well. I would still use Labview as a learning tool for sensors and "seeing" how they work and what the data represents.

If I were in your shoes, I would learn and use java.
__________________
The sooner we get behind schedule, the more time we have to catch up.
  #9   Spotlight this post!  
Unread 07-10-2012, 02:14 PM
daniel_dsouza daniel_dsouza is offline
does what needs to be done.
FRC #2449 (Out of Orbit Robotics)
Team Role: Alumni
 
Join Date: May 2011
Rookie Year: 2011
Location: Chandler, AZ
Posts: 230
daniel_dsouza has a spectacular aura aboutdaniel_dsouza has a spectacular aura about
Re: Team with beginner programmers?

We use Java, and it works fine for basic and advanced topics.

We get our new programmers on our team started with the attached documents. The first one gets you started, and the second one talks about many of the important classes.

If you ever want to find more about a WPIlibJ class (while using netbeans, not sure about eclipse), just right-click and click "go to source" to see the base code. This is useful for developing your own classes to suit your needs.

If you want to use Eclipse (as opposed to Netbeans), go here.

Be advised, that since the platform FRC uses is based off of either jdk 1.3 or 1.4, there are several advanced features that you can't use. But shouldn't be a problem at all.

Welcome to FRC!
Attached Files
File Type: pdf Getting_Started_with_Java_for_FRC[1].pdf (936.4 KB, 15 views)
File Type: pdf WPI_Robotics_Library_Users_Guide[1].pdf (1.42 MB, 13 views)
  #10   Spotlight this post!  
Unread 07-10-2012, 02:32 PM
TheMadCADer TheMadCADer is offline
Registered User
no team
Team Role: Mentor
 
Join Date: Mar 2012
Rookie Year: 2010
Location: Austin
Posts: 218
TheMadCADer has a brilliant futureTheMadCADer has a brilliant futureTheMadCADer has a brilliant futureTheMadCADer has a brilliant futureTheMadCADer has a brilliant futureTheMadCADer has a brilliant futureTheMadCADer has a brilliant futureTheMadCADer has a brilliant futureTheMadCADer has a brilliant futureTheMadCADer has a brilliant futureTheMadCADer has a brilliant future
Re: Team with beginner programmers?

Quote:
Originally Posted by profamous View Post
I was going to either use C or Java because once I learn these I can pursue other interests outside of FRC. I chose C over Java because more programs are written in C compared to Java.(http://www.tiobe.com/index.php/conte...pci/index.html)

But, since most of you guys and people I have talked to say they use Java because it is easier, I might just go with that.
Yes, C (though mostly variants like C++ and C#) is used quite commonly for most "real-world" applications. It is a powerful and fairly universal tool. However, I would still not suggest it as a first language for a beginner, however.

Java will teach you how to be a good C++ programmer. The languages are so similar that it is often hard to tell the differences, but one of the main differences is that Java tends to force you into good habits, while C gives you a more free reign. This can be good and bad. For a beginner, building good habits will make everything afterwards magnitudes easier. For an expert, the limitations will slow you down.

Another thing you could experiment with is Python. It is quite an exercise to use it on an FRC robot, but it is one of my favourite languages. Which brings me to my last few words of advise; learn all the languages you can! Learn you a Haskell for great good or something! Make something in Perl!
  #11   Spotlight this post!  
Unread 07-10-2012, 11:21 PM
MAldridge's Avatar
MAldridge MAldridge is offline
Lead Programmer
AKA: Rube #1
FRC #0418 (LASA Robotics)
Team Role: Programmer
 
Join Date: Jan 2011
Rookie Year: 2010
Location: Austin
Posts: 117
MAldridge will become famous soon enoughMAldridge will become famous soon enough
Re: Team with beginner programmers?

I would say to steer clear of C if you have never used it before. It took me several years to get into objective C (apple forever!), and it is not a forgiving language to beginners. If you can get a hold of someone who knows pure C, then yeah, learn it, it is used for a lot of stuff, but in truth you can write 'real world' programs in anything you want!

That being said, I don't like java. I don't like it mainly because in the normal computer world (not sure about FPGA's) it is interpreted. I also don't like it because I think it is way more complex than is necessary for using FRC (yes, I know it is quite simple usage, but still, this is not what Java was really set up for, and so it has some quirks).

I personally would say use LabView. I have used it for 4 years of FRC plus a years worth of side projects. I find that it is great for the setting of FRC because it is so integrated with the template files. It is a great implementation of the WPIlib, and I find imaq to be hard to beat. I also use LabVIEW for real world programs, because I can get my program built faster in it than in another language. Plus, if you are absolutely bent on it, you can call traditional code from within LabVIEW. An important note though, LabVIEW is unlike any traditional language you may have dealt with. In that, where text based languages execute code linearly, LabVIEW executes whenever the required inputs to a function are available. It takes some getting used to, but I find it to be a much better way of doing signal processing.
__________________
'Why are you a programer?' --Team Captain
'Because the robot isn't complicated enough!' --Me
  #12   Spotlight this post!  
Unread 07-11-2012, 12:47 AM
ktrobotcreator's Avatar
ktrobotcreator ktrobotcreator is offline
Programmer
FRC #1245 (Shazbots)
Team Role: Programmer
 
Join Date: Jul 2012
Rookie Year: 2007
Location: Colorado
Posts: 38
ktrobotcreator is an unknown quantity at this point
Re: Team with beginner programmers?

Hi! I'm glad you're joining a FIRST team and are trying to learn stuff over the summer!

Personally I hate LabView and would NOT recommend a beginner to use it. It can be very confusing and the logic behind it is much more complicated to understand than that of C++ and Java. We used Java on my old team (I moved this summer so I have to switch teams) and I loved it. The language is nice and it's very organized. Plus there's a ton of help for it and FIRST makes it really simple to code basic robot functions. Hope this helps!
  #13   Spotlight this post!  
Unread 07-11-2012, 08:58 AM
MAldridge's Avatar
MAldridge MAldridge is offline
Lead Programmer
AKA: Rube #1
FRC #0418 (LASA Robotics)
Team Role: Programmer
 
Join Date: Jan 2011
Rookie Year: 2010
Location: Austin
Posts: 117
MAldridge will become famous soon enoughMAldridge will become famous soon enough
Re: Team with beginner programmers?

Oh, I guess that we should point out that since you are in 8th grade moving into high school, you can take an AP test and get college credit if you know Java. That being said, I still say that LabVIEW is better if you want to do vision. Additionally, it is comparably just as easy as any other text based langauge. LabVIEW however, is a dataflow language, whereas the other two are structural, making LabVIEW require a different mindset.

Welcome to FIRST, and good luck!
__________________
'Why are you a programer?' --Team Captain
'Because the robot isn't complicated enough!' --Me
  #14   Spotlight this post!  
Unread 07-11-2012, 01:10 PM
Wetzel's Avatar
Wetzel Wetzel is offline
DC Robotics
FRC #2914 (Tiger Pride)
Team Role: Mentor
 
Join Date: Sep 2001
Rookie Year: 1999
Location: DC
Posts: 3,455
Wetzel has a reputation beyond reputeWetzel has a reputation beyond reputeWetzel has a reputation beyond reputeWetzel has a reputation beyond reputeWetzel has a reputation beyond reputeWetzel has a reputation beyond reputeWetzel has a reputation beyond reputeWetzel has a reputation beyond reputeWetzel has a reputation beyond reputeWetzel has a reputation beyond reputeWetzel has a reputation beyond repute
Send a message via AIM to Wetzel
Re: Team with beginner programmers?

Do you have anything to practice on? Mindstorm, VEX, FTC? I think learning to program a physical robot is easier because it becomes much easier to debug and you can see the results.

If you have a LEGO Mindstorm laying around, you can learn RobotC for that, Carnage Mellon has developed some very nice lessons for that, and you can read and watch the first bits of them online for free. Same for the Cortex.


Wetzel
__________________
Viva Olancho!
  #15   Spotlight this post!  
Unread 07-11-2012, 08:23 PM
torihoelscher's Avatar
torihoelscher torihoelscher is offline
[Mass x Acceleration] be with you!
AKA: Princess Leia
no team
Team Role: College Student
 
Join Date: Dec 2009
Rookie Year: 2009
Location: Palm Harbor FL
Posts: 191
torihoelscher has a brilliant futuretorihoelscher has a brilliant futuretorihoelscher has a brilliant futuretorihoelscher has a brilliant futuretorihoelscher has a brilliant futuretorihoelscher has a brilliant futuretorihoelscher has a brilliant futuretorihoelscher has a brilliant futuretorihoelscher has a brilliant futuretorihoelscher has a brilliant futuretorihoelscher has a brilliant future
Send a message via AIM to torihoelscher
Re: Team with beginner programmers?

Quote:
Originally Posted by profamous View Post
Alright, now I'm in 8th grade at the moment, and from what I've heard, our high school team isn't really that great. No one has much experience in any programming, so we need to know where to start. Since we are in 8th grade, we need to know where to get the program that works with the robot, for some practice. We were going to try to use C, so if you could recommend a guide or tutorial or something to get us started, that would be great.(We all have no experience with any languages AT ALL, and have no clue where to start.)

So, if you could point us in the right direction, it's highly appreciated. Thanks!!!
Relax. LabVIEW is easy to follow and is simple to learn. How I learned was purchasing a book and doing tutorials. Its really nice to know how to use it because a lot of rookie teams need assistance during competitions. Not all need help but its good to be there for them.

If you need help, I definitely can help but I am going to Embry Riddle in August and I am not sure if you attend the Florida Regional in UCF. I will help any way I can!
__________________
Tori Hoelscher

FLL
FTC
FRC

"May the [mass x acceleration] be with you"
"Aren't you a little short to be a storm trooper?"

Alumni of Team 79 Krunch.
Closed Thread


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT -5. The time now is 09:27 PM.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi