Thus spake Michael Kiefte:
I thought you hated Python. I’ve never used it but I know it has a lot of fa
ns.
What I dislike about it is the whitespace rules. Nonetheless, a lot of
people seem to like it, and there are tons of good libraries. So I want
to investigate it to see if it would be appropriate.
The more I think about it though, the more I like Java. It’s pretty good. Al
though if we want a better looking UI, we may want to consider SWT instead of
Swing.
Java is a good language to attract new developers. And now with Gosling at Go
ogle, it may survive the next decade.
The things which worry me the most about Java are:
- Swing bugs
- Image loading bugs
- Jumping through hoops due to heap sizing
- Mac support
- Hard-to-troubleshoot launching problems
- Whether the desktop ecosystem is dying
We could avoid the first one by not using Swing. We could avoid the
second by using some third-party image-loading library, but I haven’t
found a very complete one in the little looking I did. In both cases,
we can’t do much to get the problems fixed—some of the image loading
bugs I’ve encountered are years old. If we were using some library not
part of the JDK, then at least we could patch the thing ourselves and
ship that.
The heap sizing issue is just incredibly annoying, both in terms of
support and the code we have which tries to work around it, and I don’t
see any solution for this on the horizon.
It’s not clear to me what the long-term situation of Java on the Mac is
—we might suddenly find that there is no longer a working JVM there.
Using it also prevents us from having something which could work on iOS.
Because we’re relying on the JVM, we end up with all kinds of weird
launching failure problems on Windows, which wouldn’t happen if VASSAL
were run from its own binary. I’m also not convinced that Google’s
support of Java will help with Java on the desktop—it might mean that
we end up with good Java support on Android phones and tablets, but not
on the desktop.
So, I’m not ruling it out. But it seems saddled with a lot of problems.
–
J.