Go to Post I also hate it when I keep seeing this message: "You must spread some Reputation around before giving it to Andy Baker again." - dlavery [more]
Home
Go Back   Chief Delphi > Technical > Programming > Python
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
View Poll Results: Have you, or do you plan to use Python for Robot code?
Never used it before, and probably never will. 17 58.62%
Used it in the past, but probably not this year. 0 0%
Haven't used it before, but plan to this year. 6 20.69%
Used it last year, and probably will use it again this year. 5 17.24%
What is python? 1 3.45%
Voters: 29. You may not vote on this poll

Reply
 
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 26-11-2014, 15:10
x86_4819's Avatar
x86_4819 x86_4819 is offline
computer-whisperer
AKA: Christian Balcom
FRC #4819 (Flat Mountain Mechanics)
Team Role: Programmer
 
Join Date: Sep 2014
Rookie Year: 2013
Location: Shepherd MI
Posts: 92
x86_4819 is on a distinguished road
Teams who have used or plan to use python for Robot Code

I thought that this might be an interesting metric to see.
__________________




My Github Repositories
Reply With Quote
  #2   Spotlight this post!  
Unread 03-12-2014, 22:56
tcjinaz tcjinaz is offline
Tim
FRC #3853
Team Role: Mentor
 
Join Date: May 2011
Rookie Year: 2011
Location: Arizona
Posts: 206
tcjinaz has a spectacular aura abouttcjinaz has a spectacular aura about
Re: Teams who have used or plan to use python for Robot Code

You left out:
  • wish we could, the students aren't there yet
__________________
Software Mentor
3853 Pridetronics[

Reply With Quote
  #3   Spotlight this post!  
Unread 03-12-2014, 22:58
Andrew Schreiber Andrew Schreiber is offline
Data Nerd
FRC #0079
 
Join Date: Jan 2005
Rookie Year: 2000
Location: Misplaced Michigander
Posts: 4,056
Andrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond repute
Re: Teams who have used or plan to use python for Robot Code

I'd prefer to see, "Haven't used it before, will be experimenting with it this season and hope to use it in the future"

We contemplated switching over to Python this year but with a new batch of students and a new controller, a new language seemed a bit much.
__________________




.
Reply With Quote
  #4   Spotlight this post!  
Unread 03-12-2014, 22:59
AllenGregoryIV's Avatar
AllenGregoryIV AllenGregoryIV is offline
Engineering Coach
AKA: Allen "JAG" Gregory
FRC #3847 (Spectrum)
Team Role: Coach
 
Join Date: Jul 2008
Rookie Year: 2003
Location: Texas
Posts: 2,548
AllenGregoryIV has a reputation beyond reputeAllenGregoryIV has a reputation beyond reputeAllenGregoryIV has a reputation beyond reputeAllenGregoryIV has a reputation beyond reputeAllenGregoryIV has a reputation beyond reputeAllenGregoryIV has a reputation beyond reputeAllenGregoryIV has a reputation beyond reputeAllenGregoryIV has a reputation beyond reputeAllenGregoryIV has a reputation beyond reputeAllenGregoryIV has a reputation beyond reputeAllenGregoryIV has a reputation beyond repute
Send a message via AIM to AllenGregoryIV
Re: Teams who have used or plan to use python for Robot Code

Quote:
Originally Posted by Andrew Schreiber View Post
I'd prefer to see, "Haven't used it before, will be experimenting with it this season and hope to use it in the future"

We contemplated switching over to Python this year but with a new batch of students and a new controller, a new language seemed a bit much.
We're in the same boat.
__________________

Team 647 | Cyber Wolf Corps | Alumni | 2003-2006 | Shoemaker HS
Team 2587 | DiscoBots | Mentor | 2008-2011 | Rice University / Houston Food Bank
Team 3847 | Spectrum | Coach | 2012-20... | St Agnes Academy
LRI | Alamo Regional | 2014-20...
"Competition has been shown to be useful up to a certain point and no further, but cooperation, which is the thing we must strive for today, begins where competition leaves off." - Franklin D. Roosevelt
Reply With Quote
  #5   Spotlight this post!  
Unread 04-12-2014, 11:15
nightpool's Avatar
nightpool nightpool is offline
robotRectifier
AKA: Evan
no team (formerly of CORE 2062)
Team Role: Alumni
 
Join Date: Oct 2011
Rookie Year: 2011
Location: Waukesha, WI
Posts: 81
nightpool is on a distinguished road
Re: Teams who have used or plan to use python for Robot Code

Quote:
Originally Posted by tcjinaz View Post
You left out:
  • wish we could, the students aren't there yet

Kinda confused about this--Python is a MUCH easier language to learn then C++ or Java, or even labview in some ways. Mind explaining what you mean?
__________________
Proud alum of CORE 2062.
www.core2062.com
Reply With Quote
  #6   Spotlight this post!  
Unread 04-12-2014, 11:21
notmattlythgoe's Avatar
notmattlythgoe notmattlythgoe is offline
Flywheel Police
AKA: Matthew Lythgoe
FRC #2363 (Triple Helix)
Team Role: Mentor
 
Join Date: Feb 2010
Rookie Year: 2009
Location: Newport News, VA
Posts: 1,713
notmattlythgoe has a reputation beyond reputenotmattlythgoe has a reputation beyond reputenotmattlythgoe has a reputation beyond reputenotmattlythgoe has a reputation beyond reputenotmattlythgoe has a reputation beyond reputenotmattlythgoe has a reputation beyond reputenotmattlythgoe has a reputation beyond reputenotmattlythgoe has a reputation beyond reputenotmattlythgoe has a reputation beyond reputenotmattlythgoe has a reputation beyond reputenotmattlythgoe has a reputation beyond repute
Re: Teams who have used or plan to use python for Robot Code

Quote:
Originally Posted by nightpool View Post
Kinda confused about this--Python is a MUCH easier language to learn then C++ or Java, or even labview in some ways. Mind explaining what you mean?
Since python isn't a supported language(as far as I know) the API support isn't there like it is for the other languages. Therefore much more of the background work is going to need to be done compared to the other 3 languages.

This is just my assumption though.
Reply With Quote
  #7   Spotlight this post!  
Unread 04-12-2014, 15:26
x86_4819's Avatar
x86_4819 x86_4819 is offline
computer-whisperer
AKA: Christian Balcom
FRC #4819 (Flat Mountain Mechanics)
Team Role: Programmer
 
Join Date: Sep 2014
Rookie Year: 2013
Location: Shepherd MI
Posts: 92
x86_4819 is on a distinguished road
Re: Teams who have used or plan to use python for Robot Code

Quote:
Originally Posted by notmattlythgoe View Post
Since python isn't a supported language(as far as I know) the API support isn't there like it is for the other languages. Therefore much more of the background work is going to need to be done compared to the other 3 languages.

This is just my assumption though.
As far as the API goes, the 2015 robotpy includes a full-fledged, feature-complete port of the java wpilib. It will be a huge improvement over the python setups of previous years.

The biggest barrier at the moment to using python is community support. The group of teams using python is currently rather small, but it is growing rapidly. More and more teams are becoming aware of it's validity as an frc programming language
__________________




My Github Repositories
Reply With Quote
  #8   Spotlight this post!  
Unread 05-12-2014, 17:50
virtuald's Avatar
virtuald virtuald is offline
RobotPy Guy
AKA: Dustin Spicuzza
FRC #1418 (), FRC #1973, FRC #4796, FRC #6367 ()
Team Role: Mentor
 
Join Date: Dec 2008
Rookie Year: 2003
Location: Boston, MA
Posts: 1,040
virtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant future
Re: Teams who have used or plan to use python for Robot Code

It is correct to say that python is not officially supported by FRC, and that at a competition if you have a problem there will be less teams that will be able to help you with a language-specific problem.

However (as far as I know), because of the WPILib interface has been identical to the supported languages, most problems that people have when using python in FRC are the typical problems that anyone else in FRC has -- how to use the various devices that WPILib provides you. This means that other teams at a competition can help you, as long as you don't have a language specific problem. It's the same reason Java and C++ teams can help each other.

In it's 4 year history, there have been very few problems that affected the python WPILib that did not also affect the other languages.

In 2015, the WPILib interface will be 100% python, instead of wrappers, so this year it is arguably more risky to use than in previous years. Once again though, the interface will be identical to a supported language. Additionally, we've created a lot of unit tests, and are aiming for high test coverage to mitigate those potential problems.

Additionally, in 2015 python will have expanded language-specific documentation, full gazebo simulation support, and eclipse plugins with similar functionality to the C++/Java functionality.
__________________
Maintainer of RobotPy - Python for FRC
Creator of pyfrc (Robot Simulator + utilities for Python) and pynetworktables/pynetworktables2js (NetworkTables for Python & Javascript)

2017 Season: Teams #1973, #4796, #6369
Team #1418 (remote mentor): Newton Quarterfinalists, 2016 Chesapeake District Champion, 2x Innovation in Control award, 2x district event winner
Team #1418: 2015 DC Regional Innovation In Control Award, #2 seed; 2014 VA Industrial Design Award; 2014 Finalists in DC & VA
Team #2423: 2012 & 2013 Boston Regional Innovation in Control Award


Resources: FIRSTWiki (relaunched!) | My Software Stuff
Reply With Quote
  #9   Spotlight this post!  
Unread 05-12-2014, 19:05
AllenGregoryIV's Avatar
AllenGregoryIV AllenGregoryIV is offline
Engineering Coach
AKA: Allen "JAG" Gregory
FRC #3847 (Spectrum)
Team Role: Coach
 
Join Date: Jul 2008
Rookie Year: 2003
Location: Texas
Posts: 2,548
AllenGregoryIV has a reputation beyond reputeAllenGregoryIV has a reputation beyond reputeAllenGregoryIV has a reputation beyond reputeAllenGregoryIV has a reputation beyond reputeAllenGregoryIV has a reputation beyond reputeAllenGregoryIV has a reputation beyond reputeAllenGregoryIV has a reputation beyond reputeAllenGregoryIV has a reputation beyond reputeAllenGregoryIV has a reputation beyond reputeAllenGregoryIV has a reputation beyond reputeAllenGregoryIV has a reputation beyond repute
Send a message via AIM to AllenGregoryIV
Re: Teams who have used or plan to use python for Robot Code

Thank you for your hard work on this. I'm excited to try this out this season.

How will the imaging be done for python?
__________________

Team 647 | Cyber Wolf Corps | Alumni | 2003-2006 | Shoemaker HS
Team 2587 | DiscoBots | Mentor | 2008-2011 | Rice University / Houston Food Bank
Team 3847 | Spectrum | Coach | 2012-20... | St Agnes Academy
LRI | Alamo Regional | 2014-20...
"Competition has been shown to be useful up to a certain point and no further, but cooperation, which is the thing we must strive for today, begins where competition leaves off." - Franklin D. Roosevelt
Reply With Quote
  #10   Spotlight this post!  
Unread 05-12-2014, 19:32
virtuald's Avatar
virtuald virtuald is offline
RobotPy Guy
AKA: Dustin Spicuzza
FRC #1418 (), FRC #1973, FRC #4796, FRC #6367 ()
Team Role: Mentor
 
Join Date: Dec 2008
Rookie Year: 2003
Location: Boston, MA
Posts: 1,040
virtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant future
Re: Teams who have used or plan to use python for Robot Code

Quote:
Originally Posted by AllenGregoryIV View Post
Thank you for your hard work on this. I'm excited to try this out this season.

How will the imaging be done for python?
We haven't ironed out the details quite yet, but it will be similar to previous years: use the official FRC imaging tool to stick the right things on it, then run an installation script to copy the right files to it. It's possible that we'll build this functionality into the Eclipse plugin too.

One thing that I'm hoping to do is make it super easy to install other python packages on the robot too. That too, is TBD. However, I've got a lot of vacation/holiday time coming up...

For anyone interested in contributing to RobotPy, let me know, and I'll give you read access to our 2015 github repositories + wpilib source for 2015. There's a lot of work done -- and yet still a lot to finish up! The more people that contribute, the better the end product will be.
__________________
Maintainer of RobotPy - Python for FRC
Creator of pyfrc (Robot Simulator + utilities for Python) and pynetworktables/pynetworktables2js (NetworkTables for Python & Javascript)

2017 Season: Teams #1973, #4796, #6369
Team #1418 (remote mentor): Newton Quarterfinalists, 2016 Chesapeake District Champion, 2x Innovation in Control award, 2x district event winner
Team #1418: 2015 DC Regional Innovation In Control Award, #2 seed; 2014 VA Industrial Design Award; 2014 Finalists in DC & VA
Team #2423: 2012 & 2013 Boston Regional Innovation in Control Award


Resources: FIRSTWiki (relaunched!) | My Software Stuff
Reply With Quote
  #11   Spotlight this post!  
Unread 04-12-2014, 11:22
Andrew Schreiber Andrew Schreiber is offline
Data Nerd
FRC #0079
 
Join Date: Jan 2005
Rookie Year: 2000
Location: Misplaced Michigander
Posts: 4,056
Andrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond repute
Re: Teams who have used or plan to use python for Robot Code

Quote:
Originally Posted by nightpool View Post
Kinda confused about this--Python is a MUCH easier language to learn then C++ or Java, or even labview in some ways. Mind explaining what you mean?
There's a debugging and support cost. Java/C++ are very well supported and coming on CD and asking a question nets you a wide group that can answer questions. At events the CSA and likely a half dozen teams know the language and can help you debug. Python has less of a group.
__________________




.
Reply With Quote
  #12   Spotlight this post!  
Unread 06-12-2014, 00:22
nightpool's Avatar
nightpool nightpool is offline
robotRectifier
AKA: Evan
no team (formerly of CORE 2062)
Team Role: Alumni
 
Join Date: Oct 2011
Rookie Year: 2011
Location: Waukesha, WI
Posts: 81
nightpool is on a distinguished road
Re: Teams who have used or plan to use python for Robot Code

Quote:
Originally Posted by Andrew Schreiber View Post
There's a debugging and support cost. Java/C++ are very well supported and coming on CD and asking a question nets you a wide group that can answer questions. At events the CSA and likely a half dozen teams know the language and can help you debug. Python has less of a group.
Sure, but to me that wouldn't mean "the students aren't there yet"—that would be "we aren't there yet, as a team, to be able to cut ourselves off from the safety provided by other languages". Which is totally a legitimate opinion! Its why I've never used python in a competitive environment. But don't blame the students yo
__________________
Proud alum of CORE 2062.
www.core2062.com
Reply With Quote
  #13   Spotlight this post!  
Unread 08-12-2014, 11:44
criogod's Avatar
criogod criogod is offline
Registered User
FRC #4828 (RoboEagles)
Team Role: Programmer
 
Join Date: Jan 2014
Rookie Year: 2013
Location: North Carolina
Posts: 12
criogod is an unknown quantity at this point
The issue I am having in deciding which language or team should use this year is which is the most useful to learn. Many of the rookies are completely new to programming in general and for that reason I thought python is the easiest to get started with; however, I am not a huge fan of Java even though we have used it for the past few years. What are the general opinions on C?
Reply With Quote
  #14   Spotlight this post!  
Unread 08-12-2014, 23:49
virtuald's Avatar
virtuald virtuald is offline
RobotPy Guy
AKA: Dustin Spicuzza
FRC #1418 (), FRC #1973, FRC #4796, FRC #6367 ()
Team Role: Mentor
 
Join Date: Dec 2008
Rookie Year: 2003
Location: Boston, MA
Posts: 1,040
virtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant future
Re: Teams who have used or plan to use python for Robot Code

Quote:
Originally Posted by criogod View Post
The issue I am having in deciding which language or team should use this year is which is the most useful to learn. Many of the rookies are completely new to programming in general and for that reason I thought python is the easiest to get started with; however, I am not a huge fan of Java even though we have used it for the past few years. What are the general opinions on C?
I have found that it's really easy to teach students python, certainly easier than C/C++.

However, the thing that is argubly most important is teaching your students how to properly think about problems, and break them down and solve them. Once they know how to think about the problems, the rest is "just syntax"*.

Another possibility is to write the code in multiple languages. Python and java aren't that dissimilar*, and once you figure out the hard part -- eg, how the robot code needs to interact with the hardware -- making it work in multiple languages is a pretty easy exercise IMHO. Seeing the same thing expressed in two different ways may help the student's comprehension.

* Ok, ok, I'm oversimplifying here..
__________________
Maintainer of RobotPy - Python for FRC
Creator of pyfrc (Robot Simulator + utilities for Python) and pynetworktables/pynetworktables2js (NetworkTables for Python & Javascript)

2017 Season: Teams #1973, #4796, #6369
Team #1418 (remote mentor): Newton Quarterfinalists, 2016 Chesapeake District Champion, 2x Innovation in Control award, 2x district event winner
Team #1418: 2015 DC Regional Innovation In Control Award, #2 seed; 2014 VA Industrial Design Award; 2014 Finalists in DC & VA
Team #2423: 2012 & 2013 Boston Regional Innovation in Control Award


Resources: FIRSTWiki (relaunched!) | My Software Stuff
Reply With Quote
  #15   Spotlight this post!  
Unread 23-12-2014, 17:27
NotInControl NotInControl is offline
Controls Engineer
AKA: Kevin
FRC #2168 (Aluminum Falcons)
Team Role: Engineer
 
Join Date: Oct 2011
Rookie Year: 2004
Location: Groton, CT
Posts: 261
NotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond repute
Re: Teams who have used or plan to use python for Robot Code

Just providing some additional datapoints we use in helping choosing a language for our team.

First to answer the OP question:
We used the python port of network tables last year, and plan to use it again if available in 2015. We program the robot in Java, and Vision in C++.


We teach our kids Java only because that is most likely the language they will be learning going to college, so we feel this gives them a leg up on the rest of applicants. After all, that is our primary mission.

It is very important to make the distinction for your team: Are you a team who has mentors whom can teach the language and solve problems, or is your team student driven, and they wish to follow a certain language. If the students are passionate about a certain language, try your best to accommodate that above all else. Student Interest trumps rationale.

My first language was C++ and assembly of a 8051.

In terms of easy to learn: My opinion is that Java is a good first start language, especially for someone who hasn't programed before. The reason I say this is because Java is still a compiled language (technical it is 1/2 compiled and 1/2 interpreted), and the sytax it has is pretty easily identifiable in many other mainstream languages (C++/C# which are used extensively in industries today). For our specific use of Robotics because Java is a compiled language some errors can be identified at compile time, making code easier to debug, and faster to correct. There are still run-time errors that you can not get away from.


Python is a scripting language and its syntax is very similar to other scripting languages like Matlab (which I use everyday at work) but is rather different than mainstream languages.

I think it is easier to learn Python syntax after knowing Java, then trying to learn Java syntax after knowing python. I believe it is a lot easier to remove things from syntax, than to add them (like the necessity of brackets in Java, but the lack of them in python). (I also believe it is easier to learn Java after knowing C++, rather than trying to learn C++ after knowing Java, like dealing with destructors)

Python, is not a compiled language, it is an interpreted language, so the only errors you find are that at run-time. In my opinion, and this is only my opinion, it is harder to program Robots because errors are caught much later in the process.

Now, if FRC was a work assignment that I was doing on my own, my language of choice would be C++. This is because our task is an embedded application, and the C++ language gives the advanced user extreme control over execution, direct access to the operating system, and we get rid of any interpreter overhead by the java virtual machine.

However, because our goal is to give our students experience in a language they are more likely to use in college and personal projects (mobile apps, etc.), our language of choice is Java.

In the end, it doesn't really matter what language you choose, all can get the job done in FRC as we have seen over the years, choosing the language which best suits your team must come from some external reason. There is no right answer for FRC alone.

However, one pro of python is that you can write the same application much quicker and with a lot fewer lines than its C++ or Java counter part. That's because python removes all the extraneous syntax. When coding advanced algorithms, I typically code them in matlab first (another scripting language), just to get the logic right and not have to worry about syntax of Java and C++. Python and Matlab has that "It just works" feeling when writing code. Once I have the algorithm set in the scripting language, I can convert it to Java or C++, its a much quicker and easier process.

Also, python modules for scientific calcs blow Java and c++ libraries for similar purposes out of the water in my opinion in terms of availability and ease of use.

Hope this helps,
Kevin

P.S I am fully aware there are modules which you can use to compile python first, but in my opinion, its a waste of the reason you use the python language. Let the python interpreter compile and interpret in real time, with the efficiencies built in, like it was meant to do.

P.P.S Thank you to all that are working on the python FRC port. It is an invaluable resource, and without their efforts we wouldn't even be able to consider python an option.
__________________
Controls Engineer, Team 2168 - The Aluminum Falcons
[2016 Season] - World Championship Controls Award, District Controls Award, 3rd BlueBanner
-World Championship- #45 seed in Quals, World Championship Innovation in Controls Award - Curie
-NE Championship- #26 seed in Quals, winner(195,125,2168)
[2015 Season] - NE Championship Controls Award, 2nd Blue Banner
-NE Championship- #26 seed in Quals, NE Championship Innovation in Controls Award
-MA District Event- #17 seed in Quals, Winner(2168,3718,3146)
[2014 Season] - NE Championship Controls Award & Semi-finalists, District Controls Award, Creativity Award, & Finalists
-NE Championship- #36 seed in Quals, SemiFinalist(228,2168,3525), NE Championship Innovation in Controls Award
-RI District Event- #7 seed in Quals, Finalist(1519,2168,5163), Innovation in Controls Award
-Groton District Event- #9 seed in Quals, QuarterFinalist(2168, 125, 5112), Creativity Award
[2013 Season] - WPI Regional Winner - 1st Blue Banner
Reply With Quote
Reply


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 19:51.

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


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