The Importance of Parallelism
Q: What are you guys doing in software to attack the issue of
parallelism?
A: In Java itself there have been concurrency libraries, and they are being
pretty successful. In the enterprise stuff, the frameworks have been really
good at doing parallelism for people. With the enterprise stuff, the frameworks
have actually been pretty good at doing a little magic parallelism for people.
They write a sequential model and by magic it ends up parallel. But for things
like doing scientific calculation on massively multithreaded machines, that's a
really hard problem. So like the Fortress guys, Guy Steele [a Sun fellow
working on programming language research] and friends, they've got this
functional language that they tear apart and map to a multiprocessing. And
that's really interesting. They're the only folks that I know of that are
really tackling large-scale multithreaded systems for the nonenterprise issues.
Q: So it's not a tools problem? Or could tools help?
A: Well, tools could help if only we knew. Dealing with multithreaded
programming has been a huge source of Ph.D. theses for like 30 years. And there
just hasn't been a killer solution. So there are all kinds of stuff that we
could do with tools. If you look inside NetBeans, there are all kinds of stuff
for monitoring threads, monitoring the data behind them, monitoring blocks. And
for hundreds of threads most of those things act really great. Once you get
into the tens of thousands of threads, life gets hard.
Q: Another question that comes up is, When are we going to see
continuations in Java?
A: I had hopes for last year. And all the stuff that Neil Gafter [a
Microsoft engineer focusing on the future of Java as a hobby] was doing just
blew up for ridiculous reasons. Josh Bloch's [chief Java architect at Google]
opposition was pretty bizarre. And it's hard to know when we can take another
stab at that without getting the same type of high-temperature community
reaction.
Q: You said you're impressed with the adoption of JavaFX. Do you feel
like you guys have the RIA thing licked?
A: I don't think it's licked. We've got a lot more to do. But I'm really
comfortable with the vector that we're on. We took this tack of integrating
with the Adobe tools and sort of feeding that into the chain. That's been
remarkably successful. The artist crowd really likes that. We've got this new
tool that we've been showing. And JavaFX itself, one of our hopes for that
since the early days was that we would be able to figure out how to map it to
fairly widely different devices. We kind of had this back of the envelope proof
that it was doable. And we pretty much got it figured out and nailed.
Q: Will Java be a platform for cloud computing?
A: People have been doing cloud computing kind of stuff in Java from day
zero. Cloudlike stuff has become a part of everything we do. Kenai is our
developer cloud. And the integration with NetBeans actually has REST APIs, and
that's some pretty snazzy stuff. We really only started to do that stuff in the
last six months. We've got this long "wouldn't it be cool?" list for
NetBeans and Kenai and the combination of them.









