Thursday Sep 02, 2010

Cool Tech Sessions at JavaOne 2010

There are two great sessions at JavaOne that I can recommend - well because I'm giving them.

 NOTE: Rooms keep changing. Check schedule at the show, or better yet, pre-register!

 The first is related to FIRST...

Java in the 2010 FIRST Robotic Competition

Learn how Java was ported to run on the FIRST Robotics Competition platform, and hear about the experiences of hundreds of high school teams using Java for the first time in the 2010 competition season. The FIRST Robotics Competition is one of the largest high school robotics competitions, with more than 77,000 students and volunteers. This session covers:

  • What is the FIRST Robotics Competition
  • Experiences with Java in the 2010 competition season
  • APIs for programming the robots through the CompactRIO controller
    • WPIlib (image processing, servos, sensors, control loops, CAN interface)
    • Java Platform, Micro Edition (Java ME), information module profile
    • Squawk Java virtual machine
  • NetBeans integration
  • How Java was ported to National Instrument's CompactRIO controller
Speaker(s):     Eric Arseneau, Asset Science, Brad Miller, WPI, Professor, Derek White, Oracle
Session ID:     S314633
Schedule:     Tuesday, September 21, 11:30AM | Hilton San Francisco, Golden Gate 1 (was Yosemite B and Golden Gate 4/5)

The second session is related to FIRST in that it talks about the techniques that we used to interface both the Squawk JVM to VxWorks OS as well as the WPILib library to the FPGA code in robot controller. But these techniques can be used in Java SE and Java ME applications (in some cases) instead of using the traditional JNI in C code approach.

Java Native Access: More Java, Less Native

Developing embedded applications for Java often involves interacting with existing libraries, from common standards such as POSIX to custom FPGA libraries. Java Native Access (JNA) is an open source library that enables developers to access native code in shared libraries without needing to write more native code in Java Native Interface. Targeted at Java developers who need to call existing native code, this session will show how to use JNA and its recent improvements. Key points to be addressed include:

  • Java and native code: importing vs. outsourcing
  • How to declare imports of native code in JNA and how to use them
  • Cook book examples
  • New features (more platforms, Java ME and CLDC support)
Speaker:     Derek White, Oracle
Session ID:     S314579
Schedule:     Wednesday, September 22, 4:45PM | Hilton San Francisco, Golden Gate 8 (was Yosemite C)

By the way, I just learned that college students (18 and older) can attend JavaOne for free! Check out this page for details.

OK, these aren't the only cool tech sessions at JavaOne. See see my next blog for a list of all of the Sun SPOT sessions, labs, BOFs, and demos.

Tuesday Jan 13, 2009

Terminal to Serial Device From VMware Fusion

This describes how to get a terminal in Windows running on VMware Fusion on a Mac to a serial device connected using an adapter (in this case, a Keyspan USB High Speed Serial Adapter). For example how to connect a Mac using VMware to a National Instruments cRIO for the FIRST Robotics Competition...

[Read More]

Monday Jan 12, 2009

Terminal to Serial/USB Devices From a Mac

How to get a terminal window on a Mac to a USB device or a serial device connected using a USB-to-Serial adapter (like a Keyspan) using the screen command. Useful for talking to Sun SPOTs, FIRST Robotics Competition controllers (cRIO), etc...
[Read More]

Monday Dec 08, 2008

The treasure past the dragon (beyond Scratching the surface)

My sons have been playing with Scratch, a programming language/system for kids to build games, video, etc, and share them on the web. Although I've seen plenty of graphical programming languages for kids over the years, Scratch does a really good job of making it trivial to share projects on the web. Not only can kids on the web play each others creations, but they can download, explore, learn, and remix, and upload them. So the kids can learn a lot from each other.

Scratch has been my sons thing - I've answered the odd question about variables (in general), but otherwise have stayed mostly ignorant of how Scratch really works (this protects me from overloading on pokemon and waffles).

 Saturday, MIT sponsored a Scratcher Meetup at the Media Lab and invited 80 or so kids.

I ended up learning at least as much as my kids at this meeting. First, even though though I worked for Dan Ingalls for a while, and my partner in crime Eric is an unrepentant Smalltalk hacker, I hadn't realized that the system my sons were using was based on Squeak, the smalltalk-in-smalltalk VM that inspired Squawk.

 Even more interesting was that a couple of kids at the meetup had figured out that from within Scratch, they can trigger a runtime error that brings up a Smalltalk class browser. From the browser they could create their own Scratch blocks (the programming primitives in the visual programming environment)!

These kids could be found in the meetup tracking down the Scratch developers, getting tips on how to interface properly with Scratch. The developers did their best to teach them, even though their jaws had dropped permanently to the floor :-O

 To me this seems an inspiring and magical way to learn hacking and programming - the keys to the kingdom are through the secret door past the dragon...


Out of the fog... of bits, bytes, and really small Java Virtual Machines, by Derek White. The views expressed on this blog are my own and do not necessarily reflect the views of Oracle.


« April 2014