Friday June 17, 2005
For me, it was the jewel cases in the pavilion. Filled with amazing devices. It would be impossible to pick a favorite. Folks have done some amazing work designing these. It's hard to see in these glistening works of art the revolution in human interaction that they represent. Product categorizations are blurred everywhere. PDA? Phone? Game box? GPS? Portable point-of-sale? Television? Portable radio? MP3 player? Remote control?
Several people have asked about the rather goofy "Java is Everywhere" cartoon that was shown during my keynote. Yes, it was more of my Lightwave hacking. A week of evenings: I didn't have much time to do real polishing. The animation was pretty slap-dash, but still fun. If you'd like to watch it again, look here.
This is a low-resolution version of the design on the t-shirts that were launched into the audience. The design is no great artistic triumph, but doing it was fun. I like to fool around with 3D modeling tools. This was done using my favorite, Lightwave3D.
One of the tragedies of having to work at this conference is that I have to be up and working at 8am tomorrow. This is a regular thing and really cramps the after hours activities. This evening I went out with the JPL folks for dinner and we had a great time. After we had finished eating a lovely dinner at LuLu, one of the JPL folks, Mark Indictor, pulled out his fiddle and started to play. He's really good. If any of you were in LuLu and heard him, you got quite a treat. He was just getting cranked up and I had to leave: I was (am!) falling over tired and I have be up early... A great day.
Yes, Dale Yoakum and I really did build this crazy trebuchet. It's a pile of 4x4s for the platform and side supports. The counterweights are 100 lbs of exercise weights and the throwing arm is a hunk of 1.5" square perforated steel tubing. Building it was a lot of fun.
The hard part was getting the trajectory right. To be efficient, they really want to hurl things with a very high arc. But the hall that the keynotes are in, Hall D, has a rather low ceiling. In past years they keynotes have been in halls A/B/C which join together into one gigantic hall with a very high ceiling and the exhibition has been in hall D. But the exhibition has grown so much that they wanted to put it in A/B/C so the keynotes got punted to D.
We had originally wanted to fire the trebuchet from the stage. But in practicing last night we kept whacking the speakers, lights and trusses. Getting a flat arc was difficult to make predictable because the adjustments were very sensitive in that range. So we moved it off to the side where we got an extra four feet by being on the floor instead of the stage, and there was less clutter in the ceiling. It was carefully aligned along a slot where there were no speakers or lights up near the ceiling.
Yes. The contest is on. Don't send me suggestions for how to hurl t-shirts, that's what the contest is about! Over the next month or two I'll be putting together some contest rules - I'll probably set up a Wiki Web to discuss ideas for how to structure the contest. Later...
Yes! I'm Done! I'm actually typing this blog entry from the keynote stage!
One of the great things that's happening at this JavaOne is the launching of java.net and all of the stuff around it. They're doing a lot to build even more of a sense of community in the java world. I just got back from a community event that covered a lot of important topics: like what all the pieces are and how community governance works. Of course, I was just there for the beer and a photo-op with Duke.
Here's a picture of me with Bruno Souza, the most outspoken of the crazy Brazilian crowd that regularly attends JavaOne. You've probably seen him around: he's the one wearing the Brazilian flag as a cape. They did these great t-shits this year that are based on a famous painting of the battle for Brazilian Independence. They photoshoped Duke into the painting: on a horse, waving a sword...
He's also involved in the Brazilian Healthcare project and was one of the folks who took me on the tour of the system. They're doing a talk this week that should be very cool.
I've got a couple of small utilities that I've put out on dev.java.net. One is the web log editor that I spoke about earlier, called BlogEd. It's pretty simple, but it does what I need. The sources are all out there and they build.
The other is the program I've been using to show slides, Huckster. I don't have the files on the web side quite in a buildable state yet. I'm a little busy with other stuff...
At the keynote this morning, during Jonathan's talk, he made a remark about me hacking while sitting in the audience. I held up my laptop and the audience chuckled. I was tweaking Huckster.
I'm sitting here at the front of the keynote hall at Moscone, listening to Jonathan Schwartz's keynote. He just finished going through a blizzard of statistics. I don't have a good enough memory, so I can't reproduce them accuratly here, but I was really impressed. A bunch of numbers I hadn't heard. In particular, the explosion in telephone handsets is astonishing. Worldwide, somewhere around 20 million Java handsets per month. wow
Another amazing thing is the gaming performance. There was a little mess up in the demos, but if you get to see some of the new games, they are very amazing. There's a new OpenGL binding, open sourced on java.net, that is just what the gaming folks want (it was designed by a bunch of them).
Earlier this evening I spent a couple of hours at the "Fireside chat". We've been holding this for the last several years the night before JavaOne kicks off. It's mostly an open mike Q&A session with a collection of Sun folks in the hot seats answering questions from the audience. The thing I love about it is that it really is a two way exchange: we get to answer peoples questions, but in return we get a picture of what is on people's minds.
After that I had dinner with a few folks who had won the "Helix" contest. There should be an article about it in the JavaOne newsletter or website in the next day or two. It's always fun to gab with geeks having fun building cool stuff.
I've had remarkably little sleep this past week, getting ready for JavaOne. I've been spending a lot of time hacking on silly things. Including a lot of time sawing, drilling, swinging a hammer, and forging red-hot steel (literally!). It's been the most entertaining, and exhausting JavaOne prep in years. The results are looking pretty cool. But you'll have to come to my keynote on Wednesday to see what I'm talking about. One last meeting this morning, then up to the city this afternoon with my bag of steel, bolts and tools...
There's a wonderful company, Octavo that reproduces rare manuscripts on CDROM. I actually have a subscription to their CDROM-of-the-month (or whenever). The one I most recently received is particularly spectacular. It's a compendum of two books by Albrecht Dürer on the scientific principles of art technique. The section on perspective has great illustrations that would fit well in any book on ray tracing algorithms.
Everything new is old. The past is filled with great shoulders to stand on.
The research project at Sun that I spend the most time on these days is called Jackpot. A good way to think of it is that it's a framework for building tools to do things like refactoring, lint checking, system analysis, ... and a broad range of large system manipulations. It's been getting really interesting.
I spent a recent couple of months working on moving methods from one class to another. This turns out to be a really hard problem. For example, say you had the following method:
static void f(T p) { if(p!=null) p.x++; }
And you wanted to move this into class T. The natural thing is to have what was parameter "p" become the new "this". The dumb transformation would be:
void f() { if(this!=null) x++; }
But "this" can never be null, so this should simplify to:
void f() { x++; }
The behavior with respect to null is now broken: f(a) is not the same as a.f() in the case where a is null.Handling this correctly, along with many other cases, has provided lots of geek entertainment. Unfortunatly, it has also meant that it's still too shakey to release.
Several people reading this blog have asked about cloudline.org, the website they get redirected to if they go to norquay.com rather than norquay.com/blog. Norquay.com is my personal website. I used to host and run a website here for my friends Charlie Russell and Maureen Enns who study bears. It did very well, so now they're running the website themselves. I encourage you to wander around it. It's essentially a weblog with pictures from a couple of people who spend their lives with grizzly bears.. It got started long before blogging became so fashionable. Quite a different perspective on life than the usual high tech world. Balance.
[ This entry made sense when my blog was hosted on my personal web site; but now that it's moved, this entry seems a little odd. But cloudline.org is still very cool ]