Java Nerd-Shirt

10 PM March 3, 2008

Charles is getting together a bunch of T-shirt slogans for Java nerds. Here's what I'd put on mine:

dup
iadd
iconst_0
ior
Groovy

That'll ramp up the nerd quotient of just about any gathering on the face of the Earth.

By alang | # | Comments (1)
(Posted to javablogs, Software Development and Java)

Step-by-step to a southerly setting sun

8 PM January 1, 2007

The last paragraph of my previous post wasn’t particularly clear. Here’s a step-by-step guide to modelling the Sun’s direction at sunset, using only a ball, a lamp, and a texta.

  1. Put a lamp up one end of the room. This will be the Sun.
  2. Get a ball to represent the Earth. Anything between a tennis ball and a basketball will do.
  3. On the Earth, select a spin axis (I used the inflation nipple as the North pole, but you can draw in the poles if you have to.)
  4. Orient the ball so the spin axis is vertical. The top half of the Earth the northern hemisphere, and the bottom bit the southern hemisphere. Draw in the equator.
  5. Tilt the spin axis of the Earth 23 degrees away from the sun to represent the southern hemisphere summer. The southern pole will now be a little closer to the Sun than the northern pole.
  6. Draw in a line of longitude (i.e a line running from the North pole to the South pole), on the side of the ball closest to the light. On this line, it is noon. The point on the line closest to the light is on the Tropic of Capricorn. (digression: You may notice that the north pole is in shadow, and has no light at midday. If you draw in the line of longitude for midnight, you will find the parts of the southern hemisphere that have midnight sun.)
  7. Pick a point about half way down the Southern Hemisphere and draw in the line of latitude for that point.
  8. Around the side of the ball, where that line of latitude crosses from light into shadow, is a point where sunset (or sunrise) is taking place. If you stand behind the ball and sight back to the light across that point, you will see that, from the Earth’s inhabitant’s point of view, the Sun is south of the line of latitude.

If that doesn’t make sense, please drop me a line. I will come and explain it to you, complete with ball, texta, and lamp for the low, low price of one soft drink.

By alang | # | Comments (1)
(Posted to Python, javablogs and Tall Tales)

Sydneyside Southerly Sunset

12 AM January 1, 2007

Julian has an astronomical puzzle. He claimed:

If you are located further South than the Tropic of Capricorn, then the Sun will never be directly overhead, and furthermore will only appear in the Northern half of the sky.

I predicted that – this far South – the Sun would always set somewhat North of due West.

Makes sense to me. But then Julian’s father observed, in direct contraction to Julian’s well-constructed argument, that the Sun was setting to the south of west. Interesting.

I searched a bit and found PyEphem, a Python library for calculating the position of heavenly bodies. It is based on a C library and required a bit of huffing and puffing to get it to compile on Windows. I hacked the code just the teeniest bit to get rid compile errors, then ignored several pagefuls of warnings. But it seems to work.

This little script calculates where the Sun sets in late December, 2006, asssuming “this far South” means Sydney airport, or thereabouts:

import ephem 

# Late December
when = ephem.date((2006, 12, 30))

# Driving near Sydney Airport
julian = ephem.Observer()
julian.date = when
julian.lat, julian.long = '-33.932109', '151.1652'

# Compute the sun for that day
sun = ephem.Sun()
sun.compute(julian)

# Find where sun set, relative to West
deg = ephem.degrees
answer = deg(deg(sun.set_az) - deg('270'))
print "The sun will set %s degress north of west" % answer

And the answer is:

The sun will set -28:43:55.43 degress north of west

In other words, this script supports Julian’s father’s observation that the sun sets significantly to the south of west this time of year in Sydney. (Assuming, of course, that PyEphem is accurate, that my mangled compile of PyEphem didn’t affect anything serious, and that the above script is bug free.)

For a more concrete confirmation, I’d suggest using a ball as the Earth – rather than a fist – and then put on a lamp at the other end of of the room to represent the Sun. Tilt the ball back on its axis so that the noon day sun falls on the southern end of the ball. Now, look for sunrise and sunset down the side of the ball, and check the direction of the lamp, relative to east and west on the ball.

By alang | # | Comments (1)
(Posted to Python, javablogs and Tall Tales)

Last Day

11 PM December 21, 2006

Well, after four and a half years, I’m leaving this job. It’s been a blast. For such a little company, it’s amazingly stuffed with talented, interesting people. Amongst my colleagues are Keith, David, and Neville. Other alumni include Charles Miller (who taught me what a ‘blog’ is) Daniel Bradby and the now famous Gavin King. (Speaking of Gavin King, there are several people here who claim they were in the room during a particular meeting when Hibernate was born. They should blog about that meeting.)

As you might imagine, I have mixed feelings about leaving. I’ve learnt a lot while I’ve been here – about Java, about programming as a craft, and about working with people. I’ll miss the staff and management, and I’ll miss working with the fire brigade. However, it’s time to take on new challenges, so off I go.

The shiny new job starts on January 15, meaning three weeks of relaxing unemployment between now and then.

Merry Christmas, everyone!

By alang | # | Comments (5)
(Posted to Stuff, javablogs, Software Development, Python and Java)

Rails vs Django Paper and Slides

10 AM December 14, 2006

Following in the steps of beautiful people such as Mary, Keith, Andy,
and Anthony, I’m posting the paper and slides for Ben’s and my OSDC presentation.

For looking at the presentation, I recommend the Open Office version so you can see the animations. Press F5 to start the presentation, then keep pressing space. I should also mention that, during the conclusion, where the slides point to Rails or Django, it’s not an exclusive recommendation, so much as a recommendation to investigate Rails or Django first. Read the paper and use your brain.

The talk itself went over well. Quite a few people mentioned that seeing Rails and Django code side by side was helpful. Here are some photos from Andy, Keith, Wen Lin and Karen Askins. I quite like this one of Ben, but this one of me is just inexplicable. We made everyone stand up during the audience participation section.

Thanks again to everyone who sent us feedback, and a big thanks to Ben for making it possible.

By alang | # | Comments (8)
(Posted to Python and javablogs)
© 2003-2006 Alan Green