Go to Post I'm sure an inflatable Dean Kamen action figure would be quite the sight around the home. lol - Elgin Clock [more]
Home
Go Back   Chief Delphi > Technical > Programming
CD-Media   CD-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 23-04-2009, 09:21
EricVanWyk EricVanWyk is offline
Registered User
no team
 
Join Date: Jan 2007
Rookie Year: 2000
Location: Boston
Posts: 1,597
EricVanWyk has a reputation beyond reputeEricVanWyk has a reputation beyond reputeEricVanWyk has a reputation beyond reputeEricVanWyk has a reputation beyond reputeEricVanWyk has a reputation beyond reputeEricVanWyk has a reputation beyond reputeEricVanWyk has a reputation beyond reputeEricVanWyk has a reputation beyond reputeEricVanWyk has a reputation beyond reputeEricVanWyk has a reputation beyond reputeEricVanWyk has a reputation beyond repute
Send a message via AIM to EricVanWyk
Re: "Java, Sun SPOT and the FIRST Robotics Competition"

Quote:
Originally Posted by davidalln View Post
I'm still holding out for Ruby on the cRIO. Although our codin' mentor respectfully disagrees (sorry, Ian )
For those of us completely ignorant to the ways of Ruby: Why?

I'm interested in a "Ruby is good at A, B and C but it is bad at X, Y and Z", not in starting a flame war.
  #2   Spotlight this post!  
Unread 23-04-2009, 13:40
gblake's Avatar
gblake gblake is offline
6th Gear Developer; Mentor
AKA: Blake Ross
no team (6th Gear)
Team Role: Mentor
 
Join Date: May 2006
Rookie Year: 2006
Location: Virginia
Posts: 1,934
gblake has a reputation beyond reputegblake has a reputation beyond reputegblake has a reputation beyond reputegblake has a reputation beyond reputegblake has a reputation beyond reputegblake has a reputation beyond reputegblake has a reputation beyond reputegblake has a reputation beyond reputegblake has a reputation beyond reputegblake has a reputation beyond reputegblake has a reputation beyond repute
Re: "Java, Sun SPOT and the FIRST Robotics Competition"

Quote:
Originally Posted by EricVanWyk View Post
I'm interested in a "Ruby is good at A, B and C but it is bad at X, Y and Z", not in starting a flame war.
Ruby is good at starting flame wars.
__________________
Blake Ross, For emailing me, in the verizon.net domain, I am blake
VRC Team Mentor, FTC volunteer, 5th Gear Developer, Husband, Father, Triangle Fraternity Alumnus (ky 76), U Ky BSEE, Tau Beta Pi, Eta Kappa Nu, Kentucky Colonel
Words/phrases I avoid: basis, mitigate, leveraging, transitioning, impact (instead of affect/effect), facilitate, programmatic, problematic, issue (instead of problem), latency (instead of delay), dependency (instead of prerequisite), connectivity, usage & utilize (instead of use), downed, functionality, functional, power on, descore, alumni (instead of alumnus/alumna), the enterprise, methodology, nomenclature, form factor (instead of size or shape), competency, modality, provided(with), provision(ing), irregardless/irrespective, signage, colorized, pulsating, ideate
  #3   Spotlight this post!  
Unread 23-04-2009, 13:53
gwytheyrn gwytheyrn is offline
Registered User
AKA: David
FRC #0461 (West Side Boiler Invasion)
Team Role: Programmer
 
Join Date: Dec 2007
Rookie Year: 2004
Location: Indiana
Posts: 44
gwytheyrn is infamous around these parts
Send a message via AIM to gwytheyrn
Re: "Java, Sun SPOT and the FIRST Robotics Competition"

It's also good for making certain teams' website people cringe.
(If you want an amusing read about ruby, go for who's poignant guide to ruby. It has pictures ^^)


(I has a var?)
  #4   Spotlight this post!  
Unread 23-04-2009, 16:54
davidalln's Avatar
davidalln davidalln is offline
World's Worst Coder
AKA: David Allen
FRC #2415 (The Westminster Wiredcats)
Team Role: Programmer
 
Join Date: Mar 2009
Rookie Year: 2008
Location: Atlanta, GA
Posts: 108
davidalln is on a distinguished road
Send a message via AIM to davidalln
Re: "Java, Sun SPOT and the FIRST Robotics Competition"

Quote:
Originally Posted by EricVanWyk View Post
For those of us completely ignorant to the ways of Ruby: Why?

I'm interested in a "Ruby is good at A, B and C but it is bad at X, Y and Z", not in starting a flame war.
I was kidding

Ruby is equivalent to Python in terms that it is great at small programs, algorithms, and the such (and I like Rails), but I would never use it for a full application, let alone a robot.
__________________
SANTOSH ANDREW DECKER RICK WYNNIE SEAN DEREK MATT
(alamo (semis), p'tree (CHAMPS!), nc (CHAMPS!), newton (quarters))


Best four years of my life. Thanks to everyone who made it happen.

Last edited by davidalln : 23-04-2009 at 16:56.
  #5   Spotlight this post!  
Unread 23-04-2009, 19:37
Foster Foster is offline
Engineering Program Management
VRC #8081 (STEMRobotics)
Team Role: Mentor
 
Join Date: Jul 2007
Rookie Year: 2005
Location: Delaware
Posts: 1,392
Foster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond repute
Re: "Java, Sun SPOT and the FIRST Robotics Competition"

Ruby is like Cobol, just with a different syntax. It's yet another programming language. The difference is in the libraries that you can use without writing them.

In a robot context there isn't a big advantage between Basic, C, Cobol, C, C++, Fortran, Java, Javascript, Perl or Ruby. You are doing basic math / geometry calcs, basic data in (joysticks) and data out (motors).

The problem you face in a Ruby (Java, Perl, etc) world is to get the programmers to use existing library code and to not reinvent the world.
__________________
Foster - VEX Delaware - 17 teams -- Chief Roboteer STEMRobotics.org
2010 - Mentor of the Year - VEX Clean Sweep World Championship
2006-2016, a decade of doing VEX, time really flies while having fun
Downingtown Area Robotics Web site and VEXMen Team Site come see what we can do for you.
  #6   Spotlight this post!  
Unread 23-04-2009, 20:47
Shinigami2057 Shinigami2057 is offline
Slackware Is Your New God (Mentor)
AKA: Harry Bock
FRC #1350 (Rambots)
Team Role: Programmer
 
Join Date: Oct 2006
Rookie Year: 2006
Location: Johnston, RI
Posts: 106
Shinigami2057 is just really niceShinigami2057 is just really niceShinigami2057 is just really niceShinigami2057 is just really niceShinigami2057 is just really nice
Re: "Java, Sun SPOT and the FIRST Robotics Competition"

With a vxWorks JVM implementation, you could run Armed Bear Common Lisp on the compactRIO, which would be incredible. I'd love to port WPILib or something similar to Common Lisp.
__________________
One of the main causes of the fall of the Roman Empire was that, lacking zero, they had no way to indicate successful termination of their C programs.
  #7   Spotlight this post!  
Unread 23-04-2009, 22:07
bobwrit's Avatar
bobwrit bobwrit is offline
//No Comment
AKA: ...
FRC #1977 (Loveland High Robotics)
Team Role: Alumni
 
Join Date: Oct 2008
Rookie Year: 2008
Location: Somewhere
Posts: 298
bobwrit is just really nicebobwrit is just really nicebobwrit is just really nicebobwrit is just really nicebobwrit is just really nice
Re: "Java, Sun SPOT and the FIRST Robotics Competition"

Quote:
Originally Posted by Foster View Post
Ruby is like Cobol, just with a different syntax. It's yet another programming language. The difference is in the libraries that you can use without writing them.

In a robot context there isn't a big advantage between Basic, C, Cobol, C, C++, Fortran, Java, Javascript, Perl or Ruby. You are doing basic math / geometry calcs, basic data in (joysticks) and data out (motors).

The problem you face in a Ruby (Java, Perl, etc) world is to get the programmers to use existing library code and to not reinvent the world.

It's not only geometry/basic math calculations, But I agree with the fact that for most robot's that's fine.
__________________

FRC Team 1977 Alumni

Has Attended:2008 Colorado regional
2009 Colorado Kickoff
2009 Colorado Regional
2010 Colorado Kickoff
2010 Colorado Regional




The most exciting phrase to hear in science, the one that heralds new discoveries, is not "Eureka!"(I found it!), but rather, "Hmm.... That's funny" ---Isaac Asimov
Chance favors the prepared mind ---Louis Pasteur
And you can tell me, that I can't make a diffrence because I'm just one, but one is all it takes to start it. And you can tell me, that I can't change the world because I'm too young, but I wont stand here and be your target. ---FM Static
  #8   Spotlight this post!  
Unread 24-04-2009, 07:30
pogenwurst pogenwurst is offline
Ubuntu User
AKA: Brian
FRC #2007 (Robots of the Round Table)
Team Role: Leadership
 
Join Date: Jan 2008
Rookie Year: 2007
Location: Duluth, GA
Posts: 78
pogenwurst is on a distinguished road
Send a message via AIM to pogenwurst
Re: "Java, Sun SPOT and the FIRST Robotics Competition"

Remember that there will be a Java VM on the cRIO (the Squawk VM), so in theory any language that compiles down to JVM bytecode should run on the cRIO. Think JRuby (Ruby), Jython (Python), Scala, Clojure, Groovy, etc.

That said, Squawk implements Java ME, not Java SE, which could cause some problems, as some of those language implementations may be geared towards Java SE.
__________________
DuluthRobotics.org
  #9   Spotlight this post!  
Unread 24-04-2009, 08: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,050
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: "Java, Sun SPOT and the FIRST Robotics Competition"

Quote:
Originally Posted by pogenwurst View Post
Remember that there will be a Java VM on the cRIO (the Squawk VM), so in theory any language that compiles down to JVM bytecode should run on the cRIO. Think JRuby (Ruby), Jython (Python), Scala, Clojure, Groovy, etc.
Remember that there is a C/C++ compiler in the development environment, so in theory any language that has a compiler/interpreter written in C/C++ should run on the cRio. Think... well, just about everything.

Quote:
That said, Squawk implements Java ME, not Java SE, which could cause some problems, as some of those language implementations may be geared towards Java SE.
That said, vxWorks only implements POSIX and the standard libraries in a semi-standard way, and Wind River doesn't come with autotools or binutils, which could cause some problems, as some of those implementations may be dependent on that.

__________________
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
  #10   Spotlight this post!  
Unread 25-04-2009, 00:26
Ice Berg's Avatar
Ice Berg Ice Berg is offline
Seth Berg
AKA: Seth Berg
FRC #0694 (Stuy Pulse)
Team Role: Engineer
 
Join Date: Apr 2007
Rookie Year: 2007
Location: New York
Posts: 140
Ice Berg is a splendid one to beholdIce Berg is a splendid one to beholdIce Berg is a splendid one to beholdIce Berg is a splendid one to beholdIce Berg is a splendid one to beholdIce Berg is a splendid one to beholdIce Berg is a splendid one to beholdIce Berg is a splendid one to behold
Send a message via AIM to Ice Berg
Re: "Java, Sun SPOT and the FIRST Robotics Competition"

Can someone who knows more about this me give a few reasons why Java would be better or worse than c++. I know that it is simpler to learn, and that many students know it from taking AP compsci (myself included), but because I don't know c++ I don't really know what negative effects switching to Java would have. Each programmer will have his or her preference, but I want to know what the major benefits and drawbacks will be using Java in place of c++.
__________________
Mens et Manus

  #11   Spotlight this post!  
Unread 25-04-2009, 07:58
Greg McKaskle Greg McKaskle is offline
Registered User
FRC #2468 (Team NI & Appreciate)
 
Join Date: Apr 2008
Rookie Year: 2008
Location: Austin, TX
Posts: 4,748
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: "Java, Sun SPOT and the FIRST Robotics Competition"

Java is a safe language, with references, but not pointers. Java does garbage collection so that you don't leak memory in the same way. Java has a simpler and more consistent syntax. Java, being a teaching language, presumably has material aimed at teaching to HS students.

On the down side, Java will run quite a bit slower. The garbage collection causes hiccups where the OS is doing something besides running your code. C++ probably has more robotics usage, so more code to borrow from.

While doing the comparisons, LV is a safe language with no pointers. LV does garbage collection upon completion, but not during execution. LV has the simplest syntax of the bunch. I expect that LV is faster than Java and slower than C++. Oh, and there is that graphics and dataflow thing.

This is my input from a thousand foot perspective. I can't say much more until it is in my hands and we can do side-by-side-by-side comparisons. Perhaps if you learn all three you can update my comparison.

Greg McKaskle
  #12   Spotlight this post!  
Unread 25-04-2009, 09:31
gblake's Avatar
gblake gblake is offline
6th Gear Developer; Mentor
AKA: Blake Ross
no team (6th Gear)
Team Role: Mentor
 
Join Date: May 2006
Rookie Year: 2006
Location: Virginia
Posts: 1,934
gblake has a reputation beyond reputegblake has a reputation beyond reputegblake has a reputation beyond reputegblake has a reputation beyond reputegblake has a reputation beyond reputegblake has a reputation beyond reputegblake has a reputation beyond reputegblake has a reputation beyond reputegblake has a reputation beyond reputegblake has a reputation beyond reputegblake has a reputation beyond repute
Re: "Java, Sun SPOT and the FIRST Robotics Competition"

Quote:
On the down side, Java will run quite a bit slower.
This might be a distinction without a difference - Depending on the Java Virtual Machine you are using, Java Byte Code can run plenty fast for plenty of applications - This only becomes important if you are running out of clock cycles - And, for my 2 cents, if I start doing any work likely to exhaust the clock cycles of a microcontroller, I'm going to want to offload the microcontroller (attach a fast General Purpose computer (a co-processor) to do the intense math or other heavy lifting).

Find out what speed you (really) REQUIRE before using speed as a selection criterion.

Quote:
The garbage collection causes hiccups where the OS is doing something besides running your code.
In full fledged Java implementations, you can invoke garbage collection as often as you want. This doesn't explicitly prevent the VM from deciding to run it; but it does give you a chance minimize how often the VM will surprise you by cleaning up after yourself.

Quote:
C++ probably has more robotics usage, so more code to borrow from.
Yes and no - I suspect that if you look at the robot code as the core of a large collection of general purpose development and debug code, and environments, you might find that there are plenty of Java infrastructure tools that make it worth your while to use Java. It is that infrastructure that
chews up most of my time when developing robot-ish software; not the robot software itself.

Or you might not

Blake
__________________
Blake Ross, For emailing me, in the verizon.net domain, I am blake
VRC Team Mentor, FTC volunteer, 5th Gear Developer, Husband, Father, Triangle Fraternity Alumnus (ky 76), U Ky BSEE, Tau Beta Pi, Eta Kappa Nu, Kentucky Colonel
Words/phrases I avoid: basis, mitigate, leveraging, transitioning, impact (instead of affect/effect), facilitate, programmatic, problematic, issue (instead of problem), latency (instead of delay), dependency (instead of prerequisite), connectivity, usage & utilize (instead of use), downed, functionality, functional, power on, descore, alumni (instead of alumnus/alumna), the enterprise, methodology, nomenclature, form factor (instead of size or shape), competency, modality, provided(with), provision(ing), irregardless/irrespective, signage, colorized, pulsating, ideate
  #13   Spotlight this post!  
Unread 25-04-2009, 21:05
ttldomination's Avatar
ttldomination ttldomination is offline
Sunny
no team
Team Role: Mentor
 
Join Date: Mar 2007
Rookie Year: 2007
Location: Roanoke, TX
Posts: 2,066
ttldomination has a reputation beyond reputettldomination has a reputation beyond reputettldomination has a reputation beyond reputettldomination has a reputation beyond reputettldomination has a reputation beyond reputettldomination has a reputation beyond reputettldomination has a reputation beyond reputettldomination has a reputation beyond reputettldomination has a reputation beyond reputettldomination has a reputation beyond reputettldomination has a reputation beyond repute
Re: "Java, Sun SPOT and the FIRST Robotics Competition"

hm...I really like this idea. Now whether the programming team, mainly one guy, chooses to accept this idea, I'm pretty sure that all of a sudden, our programming base will expand simply because we have so many kids who are, or can be, good with Java. The school offers many classes not to mention I know for a fact that we have a couple of Java wizes in our school.


I like this. .
__________________
1261: 2007-2012
1648: 2013-2014
5283: 2015
  #14   Spotlight this post!  
Unread 25-04-2009, 21:59
mathking's Avatar
mathking mathking is offline
Coach/Faculty Advisor
AKA: Greg King
FRC #1014 (Dublin Robotics aka "Bad Robots")
Team Role: Teacher
 
Join Date: Jan 2005
Rookie Year: 1999
Location: Columbus, OH
Posts: 634
mathking has a reputation beyond reputemathking has a reputation beyond reputemathking has a reputation beyond reputemathking has a reputation beyond reputemathking has a reputation beyond reputemathking has a reputation beyond reputemathking has a reputation beyond reputemathking has a reputation beyond reputemathking has a reputation beyond reputemathking has a reputation beyond reputemathking has a reputation beyond repute
Re: "Java, Sun SPOT and the FIRST Robotics Competition"

I teach high computer science, and we have used the RidgeSoft IntelliBrain robots in class, which are programmed in Java.

Aside from the exception handling which has been mentioned, I would absolutely add event handling. Programming multiple sensors with the IntelliBrain (which has a MUCH more limited processor than the cRIO) is easy because of the way Java handles events. When I first learned Java (when the AP CS course moved from C++ to Java) the event and exception handling were among the first really cool things I noticed about Java.

As for speed, I agree with gblake. It really depends on how you compile the code Running robots in the standard JVM would be slow. But I have written plenty of programs for OS X using XCode to compile Cocoa native applications for the Macintosh, and they run just as fast as Objective-C programs.

As for tools, there may be a relative lack of robot specific libraries for Java, but there are some. Mindstorms and the aforementioned IntelliBrain robots can be programmed in Java. There are other platforms that use Java as well.

The biggest thing to remember is that this is an addition. You don't have to use Java if you don't want to. But it will open up programming to more students, because Java is the language most will have learned in their HS computer science classes.
__________________
Thank you Bad Robots for giving me the chance to coach this team.
Rookie All-Star Award: 2003 Buckeye
Engineering Inspiration Award: 2004 Pittsburgh, 2014 Crossroads
Chairman's Award: 2005 Pittsburgh, 2009 Buckeye, 2012 Queen City
Team Spirit Award: 2007 Buckeye, 2015 Queen City
Woodie Flowers Award: 2009 Buckeye
Dean's List Finalists: Phil Aufdencamp (2010), Lindsey Fox (2011), Kyle Torrico (2011), Alix Bernier (2013), Deepthi Thumuluri (2015)
Gracious Professionalism Award: 2013 Buckeye
Innovation in Controls Award: 2015 Pittsburgh
Event Finalists: 2012 CORI, 2016 Buckeye
  #15   Spotlight this post!  
Unread 25-04-2009, 22:10
nathanww nathanww is offline
Hacker
FRC #1678 (Citrus Circuits)
Team Role: Programmer
 
Join Date: Dec 2008
Rookie Year: 2007
Location: Davis, CA
Posts: 224
nathanww is just really nicenathanww is just really nicenathanww is just really nicenathanww is just really nice
Re: "Java, Sun SPOT and the FIRST Robotics Competition"

On one hand, this is cool. I use Java, I like Java, I think Java is a great language.

On the other hand: ANOTHER PROGRAMMING SYSTEM???!!!! That means that I get to go through the whole C++/C/labVIEW decision process again, and if we decide to use it help bring the programming team up to speed on a new IDE, language, etc.
__________________
Get yer robot source code here!
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

Similar Threads
Thread Thread Starter Forum Replies Last Post
SECOND Robotics Competition "Underdrive" Tanner Off-Season Events 2 22-11-2008 17:34
Cannot "Grab frame" with java CMUcam2 GUI TOECUTTER Programming 0 20-01-2007 12:50
Rules of Engagement and "Unfair Competition" Richard Neese General Forum 2 24-03-2003 13:03
how tall is the ramp when in "up" and "balanced" position??? archiver 2001 1 24-06-2002 00:54
An idea to better improve the First competition...or, at least make it more "hardcore"... archiver 1999 1 23-06-2002 22:02


All times are GMT -5. The time now is 06:12.

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