The T-Files


Sat, 29 Jul 2006

Room with a View

The Sumidagawa Fireworks as seen from a fourteenth floor a few kilometres away.

Lost and found

I forgot my bag when changing trains yesterday morning. In Japan, you are almost guaranteed to get these things back eventually. Today I was able to go to the terminal (Mitaka) and reclaim it. Yesterday's sandwich might still be edible.

Incidentally, I also found my long-lost sunglasses today. Only my Friedberg jacket remains missing now.

Thu, 27 Jul 2006

Fruity Jelly

These Jelly are made of some selected stuffs with an excellent technic. Presents for you delicious taste. Enjoy your happy times with this Jelly.
Sun, 23 Jul 2006

Me wearing other people's glasses (and other people wearing my glasses)

Special Edition for the Thilo 3.0 Release Party. A grand total of twenty-five guests came to Shinkoiwa today (including my sister, who flew in from Germany just for the weekend), eight of whom wore glasses: Bai Dongqiang, Murase-sensei, Zhang Jiwang, Jochen, Mayu-san, Mika, and Moriuchi-san (not pictured because my crappy camera messed up the shot).

Thilo 3.0

Oh my....

Sat, 22 Jul 2006

Pirates of the Caribbean: Dead Man's Chest

The surprise (and surprisingly good) 2003 summer hit unsurprisingly has a sequel now, and part two is also a very entertaining ride. Unfortunately, the Hollywood pirates have firmly fixed their eyes on this treasure chest and the movie has an extremely unsatisfying ending: Storywise, it just sets the stage for next year's third episode.

Side note to the gaming community: The undead crew of the Flying Dutchman is playing what looks like Bluff, the German Game of the Year 1993. Apparently this also a merchandising tie-in for a re-packaged release of the game.

7 points

Mon, 17 Jul 2006

Tsutaya Discas

I just joined Tsutaya Discas, which seems to be Japan's equivalent to Netflix (although it is still not nearly as popular). The business model seems to be the same: For a fixed monthly fee of about 2000 yen you can build a queue of DVD that you want to rent, they send them to you two at a time by mail, you can keep them as long as you want, then send them back by dropping them into the mailbox, and they send you the next two. Here is the list I wrote down beforehand:

  1. Hollywood Ending
  2. Do the Right Thing
  3. Bottle Rocket
  4. Flirting with Disaster
  5. Jersey Girl
  6. Crying Game
  7. The Big Lebowsky
  8. Donnie Darko
  9. The Fisher King
  10. Brazil

Finding these on the Discas web site was a little tricky, because the title search does not work with the original titles, and the Japanese titles are often completely different. Fortunately, you can also search by actors or directors (most of the time even in English). I am also happy to report that nine of my ten titles were available: I just had to replace Flirting with Disaster with Huckabees and move Hollywood Ending down the queue because it is currently in high demand (or low availability).

Sat, 15 Jul 2006

Deeppresso

The popular can coffee brand Georgia (part of Coca Cola, hence the name) has recently launched the Deeppresso.

Tideland

Jeff Bridges shows us how The Dude would look like if he did heroin. The result is not pretty (especially after he dies) and certainly not a good parent to eight year old Jeliza Rose, who has to take care of the dysfunctional family (including preparing the drug shots), and is later left alone to play with her finger-puppets and the creepy neighbours. Director Terry Gilliam takes us on a unique, interesting, but hard-to-digest trip into his version of Alice in Wonderland. This has been my most bizarre and disturbing movie experience since Bad Boy Bubby.

7 points

Fri, 14 Jul 2006

Eight sets count-up: 491 + 277

Two deep-set traits of my game play became painfully obvious again today:

  • Giving in to pressure and bungling a comfortable lead in the last round, losing the game by eight points and missing my personal best by one.
  • Increasingly poor performance as the night grows late.
Sun, 09 Jul 2006

Always / True Romance

Always - Sunset on Third Street
Several nostalgic episodes (based on a popular comic book series) about the residents of Third Street, set in Tokyo in the late fifties (recreated with lots of impressive computer generated images).
7 points
True Romance
Christian Slater, Patricia Arquette, Michael Rapaport, Val Kilmer (just a little), Dennis Hopper, Gary Oldman, Brad Pitt, Christopher Walken, Samuel L. Jackson. Directed by Tony Scott, written by Quentin Tarantino.
9 points

The thousand and one things I want to see fixed in Java: [1] Method meta data without reflection

The main merit of Java being a compiled and statically typed language is that a lot of useful information is available to the compiler. In Eclipse, for example, you can click on any method to get a call hierarchy that lists all calls to that method within your workspace. This is extremely useful (almost essential actually, given the great complexity that Java projects always seem to reach very quickly) to assess the impact of bugs, code changes or refactoring. Unfortunately, the call hierarchy does not include calls using the reflection API. In most cases (such as access from Javascript or Velocity templates), that is just something we have to live with (and resort to full-text search to try to find the callers), but I would like to have better support here when using reflection from inside of Java.

Consider how you access class meta data: If you do not know the class name at compile-time, you have to do

Class c = Class.forName(unknownClassName);
and that obviously leaves compiler and IDE in the dark. But if you do know the name, you can write
Class c = my.package.MyClass.class;
which can easily be tracked down later.

For methods, however, you only have the first option:

Method m = clazz.getMethod(methodName, parameterTypes);
There is just no syntax to do the Java equivalent of
my $m = \&Clazz::methodName;
as a result of which I find myself writing silly wrappers.
/*
	to get the Java version of

	my @names = map { $_->name() } @objects;

*/

// instead of (works, but has poor IDE support because of reflection)
FilteringIterator<SomeClass, String> it = 
	new ReflectionFilteringIterator<SomeClass, String>( "getName");

// make a wrapper that does not use reflection
FilteringIterator<SomeClass, String> it =
	new FilteringIterator<SomeClass, String> {
		public String filter(SomeClass in){
			return in.getName();
		}
	}
	
// so that I can write
List<String> names = it.map( (List<SomeClass>) objects);
Thu, 06 Jul 2006

Random notes from Osaka

People stand right and walk left on escalators.

A shinkansen depot is a beautiful thing to behold.

Sat, 01 Jul 2006

APL

Next time people complain that Perl is too concise and thus hard to read, they should take a look at APL, which in addition to being extremely terse has to be read from right to left and makes extensive use of mostly mathematical symbols that are so far removed from the ASCII character set that I had to give up trying to type the following example code and copy an image file off Wikipedia. Here is a program that finds all prime numbers from 1 to R:

Check Wikipedia for an explanation how to read that.