I find Dasher an interesting input method, and after getting my Android phone I thought it would be nice to try Dasher on it. However, at the time there was no Dasher port or any information on the Web about the possibility, so I looked into writing one. I found several dead projects and miscellaneous repositories and eventually found that the main Dasher repository had a Java port of Dasher. I dabbled in getting it to run on Android, but before I got anywhere I found Dasher was now in the Android Market, though there was still no discussion/announcement/public project info.

I shall now dump the links I collected while I was working on this project, so as to make the matter of Dasher and Java better-indexed. Unfortunately, I don't recall the significance of all of them.

The Dasher port that's currently in the Market is pretty solid. It has a variety of options for input (touch, trackball, tilt); the main thing it's missing is independent control of the X/Y sensitivity of the tilt control.

What do practicing Java programmers call the part of a method definition that isn't the { body }?

__________/ this bit here \___________
public static void main(String[] args) {
  // not this part
}

A quick search turned up the Java Language Specification, Second Edition calling it a MethodHeader in the grammar, but it doesn't use that term in the text and I want to know what term(s) are used in practice, not solely by language lawyers.

(“Signature” is not correct, as that includes only the method name and parameter types, not modifiers and result type.)

Java programming class (yes, I know Java already) today, introducing loops. Task: write a factorial program. I wrote mine to use int arithmetic if possible, floating-point if not. Test the edge cases, of course. It says:

500! ≈ Infinity

I'm glad I used the “approximately equals” sign.