|
............................
Jonathan joined.............
|
| javaADM
|
Hi Everyone and thanks for joining us.
|
| javaADM
|
My name is John Zukowski, the ever present guide to Java here at About.com
|
| javaADM
|
Tonight, we're fortunate enough to have Jonathan Knudsen with us
|
| javaADM
|
Jonathan is the author of Java 2D Graphics, Java Cryptography, as well as a book on Lego Mindstorms,
|
| javaADM
|
all from O'Reilly and Associates
|
| javaADM
|
During the chat session, we welcome and expect questions, here's how to ask:
|
| javaADM
|
please type ? and you will put you in the queue
|
| javaADM
|
In addition, we have a copy of Java 2D Graphics to give away at the end of the session
|
| javaADM
|
We'll be looking for the participant who asks the best question
|
| javaADM
|
And, you must be present to win
|
| javaADM
|
so... for now, feel free to ignore the need to use the ???
|
| javaADM
|
and ask away.....
|
| javaADM
|
What's with this Mindstorms book Jonathan???
|
| Jonathan
|
It's in production, should be released October 15.
|
| Jonathan
|
It's all about Lego's new robotics kit.
|
| Jonathan
|
Have you heard about Mindstorms?
|
| javaADM
|
I've heard about it, just haven't had a chance to play with it
|
| Jonathan
|
Well, the basic systems lets you write robot programs on your PC with a click and drag environment.
|
| Jonathan
|
Internet hackers reverse-engineered the system,
|
| Jonathan
|
so now there are several interesting programming environments you can use.
|
| javaADM
|
Any Java based?
|
| Jonathan
|
My book covers the programming environments and also includes projects you can build.
|
| Jonathan
|
Unfortunately, Java hasn't made it onto the brick yet.
|
| Jonathan
|
There's a JVM project underway, but it's only partway there.
|
| Jonathan
|
And, of course, you can use Java PC-side to talk to your robots (with the Comm API).
|
| javaADM
|
Do you explain how?
|
| javaADM
|
or is book more about using standard tools?
|
| Jonathan
|
Not much. I have a utility program in an Appendix that talks to a Forth interpreter somebody wrote.
|
| Jonathan
|
Yes, it's more about using the tools that are available, rather than writing your own.
|
| Jonathan
|
I still can't believe I got paid to write it.
|
| javaADM
|
lol
|
| javaADM
|
Back to the Java world and 2D.... Have you had a chance to look at what's new in 2D for Java2, v 1.3?
|
| Jonathan
|
Yes, I took a brief look. I can remember two things that seemed important:
|
| Jonathan
|
1. Multiple monitor support via a new Frame constructor.
|
| javaADM
|
Do tell....
|
| Jonathan
|
2. PNG file support.
|
| Jonathan
|
The 2D API has plumbing for describing multiple output devices attached to your system--
|
| javaADM
|
Are they really considered 2d enhancements?
|
| Jonathan
|
--it sounds like they finally hooked it up so you can place Frames on specific monitors.
|
|
............................
ethan joined.............
|
| Jonathan
|
Well, they're listed under the 2D section. You'd think it would really belong to AWT, but whatever...
|
| Jonathan
|
Hi Ethan.
|
| javaADM
|
The PNG support is nice to have, though I wish there was some way to retrofit it into 1.2/1.1...
|
| Jonathan
|
Yeah. Actually one of the examples from my book is a PNG decoder,
|
| javaADM
|
Welcome ethan
|
| ethan
|
Hi
|
| Jonathan
|
but it only support one file type, and of course you'd have to write the corresponding encoder to make it useful.
|
| javaADM
|
If you have any questions, feel free to ask them to Jonathan (or myself). Whoever asks the best question (and stays til end) wins a copy of Jonathan's Java 2D Graphics book.
|
| Jonathan
|
So far javaADM is going to win.
|
| javaADM
|
I see you're working on an update to the Exploring Java book, how's that one going?
|
| Jonathan
|
That's been dragging out for some time; I think we're closing in on it, finally. We're hoping to touch it up for 1.3 and have one of the first 1.3 books out. We're also thinking about changing the title, but that's still very much up in the air.
|
| Jonathan
|
We had to rework it considerably to talk about Swing. We've added two chapters since the 2nd edition.
|
| javaADM
|
Gee, if you change the title you lose the suitcase....
|
| Jonathan
|
Pat said he's always hated the suitcase. We'll see how it pans out.
|
| javaADM
|
is it a multi-author effort?
|
| Jonathan
|
Yes. Pat Niemeyer is continuing as the original author. I think I'll be co-author. Bob Eckstein was going to help out too, but he never got free of his Samba book in time.
|
| javaADM
|
Anything planned yet for beyond exploring? like updating Crypto book?
|
| Jonathan
|
If the cryptography book ever sells through its print run, we'll do an update. Mike and I feel that we messed up by not covering SSL in any detail, so we'll definitely add material on that. Besides, Sun just released some new security stuff, including SSL, which we'd definitely want to cover.
|
| ethan
|
Does Microsoft IE support Java 2D? Can I do something like drawing vertical String in jdk 1.1.8?
|
| javaADM
|
Yeah, SSL is kinda important these days....
|
| javaADM
|
Microsoft VM is still 1.1 based. To draw vertical string, draw to image and rotate it with a filter
|
| Jonathan
|
The 2D API is part of JDK 1.2 and later. IE only supports 1.1.x, so you won't be able to use 2D unless you use the Java Plug-in.
|
| ethan
|
So I can get drag and drop in applet if I install sun's plug-in, right?
|
| Jonathan
|
That's right, the Plug-in lets you use everything in JDK 1.2. (Or 1.3, I suppose, now that the beta is out.)
|
| javaADM
|
D&D in an applet is tricky. It requires you to add component in screen in method other than init() or start().
|
| javaADM
|
at least for being a drop target to work
|
| javaADM
|
the 1.3 beta that is out includes an updated plugin
|
| ethan
|
What is the fastest VM right now?
|
| javaADM
|
1.0.2, 1.1.8, 1.2.2, 1.3beta, with 1.1.1 JFC/Swing
|
| Jonathan
|
What was that, javaADM?
|
|
............................
Nahor left.............
|
| javaADM
|
excuse me Jonathan?
|
|
............................
Nahor joined.............
|
| Jonathan
|
The list of version numbers?
|
| javaADM
|
yes. There are 4 "latest" versions, depending upon which VM version you wanted
|
| javaADM
|
1.0.2 is kinda ignored these days....
|
| Jonathan
|
Ethan asked for the fastest VM. Last I heard, it was Microsoft's, but of course you're limited to 1.1 with that.
|
| javaADM
|
oops, I read that as latest
|
| Nahor
|
and HotSpot?
|
| ethan
|
How about on Unix or Linux? What is the best way to prevent our code from decompiling?
|
| Jonathan
|
Hmm, I don't know about Unix or Linux.
|
| Jonathan
|
There's really no good way to prevent decompiling--
|
| Jonathan
|
--you can use an obfuscator, of course, but that only slows down the process. If you're
|
| Jonathan
|
wanting a truly secure system, you need to design it in such a way that it doesn't matter if
|
| Jonathan
|
your source code is decompiled. Just assume that attackers already have the source code. The trick is
|
| Jonathan
|
to use cryptography and make sure the security of the system depends on the secrecy of a cryptographic key. It's
|
| ethan
|
Can I transfer classes to machine code (exe file) on Wintel system?
|
| Jonathan
|
very tricky business.
|
| Jonathan
|
Yes, there are compilers that take Java source code and create Windows executables. I'm not sure
|
| Jonathan
|
exactly where to find them--I think maybe IBM's Alphaworks has one.
|
| Nahor
|
There is one called BulletTrain and called TowerJ I think
|
| javaADM
|
Checking on URL.... TowerJ is one option as Nahor mentions
|
| Nahor
|
for bullettrain: http://www.naturalbridge.com/bullettrain.html
|
| javaADM
|
It comes with VisualAge for Java
|
| javaADM
|
High Performance Compiler for Java
|
| javaADM
|
http://www.alphaworks.ibm.com/formula/hpc
|
| javaADM
|
Compiles Java bytecode (or sourcecode) into optimized, platform-specific native code
|
| ethan
|
Thanks.
|
| javaADM
|
Have you had a chance to play with BulletTrain Nahor ? Not familiar with that one...
|
| Nahor
|
No, I've a friend who wanted to test it but I never heard about it after that
|
| Nahor
|
JavaPro mentioned it also recently
|
| javaADM
|
Adding it to resource list now...
|
| javaADM
|
Jonathan, have you played with dynamic generation of Java images?
|
| Jonathan
|
Yes, in the JDK 1.2 world. It's quite nice.
|
| javaADM
|
What about 1.1?
|
| Jonathan
|
No, very little. I know how ImageProducer and ImageConsumer work, but I haven't done a whole lot
|
| Jonathan
|
with them.
|
| Jonathan
|
Why do you ask?
|
| javaADM
|
Seem to be getting asked how more lately
|
| javaADM
|
Something that works in both environments
|
| Jonathan
|
Ah, that's a little more tricky. It's very clean with the 2D API, but of course that's
|
| Jonathan
|
not backward compatible.
|
| Jonathan
|
I was hoping 1.1 wouldn't be so important, now that the Plug-in exists. But it's still a
|
| Jonathan
|
significant hurdle for users to download and install the Plug-in.
|
| javaADM
|
I was surprised to see updated Plugin with 1.3 beta release
|
| Jonathan
|
Yes, I guess it's not that hard for them to hook it up.
|
| Jonathan
|
Interestingly, Java Sound is now a part of the core API. I wanted to write a book about
|
| Jonathan
|
Java Sound, but I don't think there's much of a market for it. I've love to be proved wrong and
|
| Jonathan
|
go write the book.
|
| javaADM
|
Took them long enough to include that
|
| javaADM
|
They had said it would be in 1.2 release for the longest time
|
| Jonathan
|
Yeah, it took them forever to get that out. It looks like fun.
|
| Jonathan
|
Here are some handy URLs:
|
| Jonathan
|
Java 2D Graphics catalog page: http://www.oreilly.com/catalog/java2d/
|
| Jonathan
|
Java 2D Graphics at Amazon.com: http://www.amazon.com/exec/obidos/ASIN/1565924843/
|
|
............................
Jonathan left.............
|
|
............................
Jonathan joined.............
|
| Jonathan
|
That was interesting.
|
| Jonathan
|
Here's my monthly Java column: http://java.oreilly.com/news/knudsen/
|
| javaADM
|
Problems?
|
| Jonathan
|
And here's the catalog page for the upcoming Lego Mindstorms book: http://www.oreilly.com/catalog/lmstorms/
|
| Jonathan
|
[no problems, just a little keyboard clumsiness]
|
| javaADM
|
Where did Edie get the rabbit with its gut open cover idea?
|
| Jonathan
|
Frankly, no one knows exactly where Edie gets her ideas. My impression is that
|
| Jonathan
|
she's got a big book with those woodcuts in them, and when she heard about robots,
|
| Jonathan
|
this image really made sense. It's not a real rabbit, but a mechanical one. Maybe it's
|
| Jonathan
|
hard to tell in the image.
|
| javaADM
|
can't exactly tell from book cover image on ORA site
|
| ethan
|
Do you think java can create good 3D animation?
|
| Jonathan
|
Yes, but you need the 3D API, which is a standard extension API. It's built on top
|
| Jonathan
|
of OpenGL, basically, so the rendering is all native and performance is decent. I don't
|
| Jonathan
|
have much experience personally, but it seems to be a hot topic: at JavaOne, people kept
|
| Jonathan
|
asking if we had a book on it. We have one in the works; I'm not sure how far along it is.
|
| Jonathan
|
Here's a better cover image for the Mindstorms book : http://ora-design.ora.com/edie/books/legos.gif
|
| Jonathan
|
But note that the title may change. We're trying real hard not to be sued by Lego.
|
| javaADM
|
like the bigger image
|
| javaADM
|
that might have to be from Legos... vs. first word Legos
|
| Jonathan
|
It seems silly, but after the Java Series books, I'm thrilled to have a real O'Reilly animal book.
|
| javaADM
|
lol
|
| javaADM
|
Hey... the mindstorms.com url seems to be available
|
| javaADM
|
oops, already registered, just not active
|
| Jonathan
|
Lego would have a cow if we used a URL with "lego" or "mindstorms" in it. We even made
|
| Jonathan
|
sure our catalog URL didn't contain those words. They're very protective of their trademarks.
|
| Jonathan
|
My prose is peppered with (r) and (tm).
|
| javaADM
|
and not in your Java books?
|
| Jonathan
|
Generally, Sun is happy if we acknowledge the trademark the first time we use it and they don't
|
| Jonathan
|
really care afterwards. With Lego, we're not taking any chances.
|
| javaADM
|
Are there any mindstorms conferences?
|
| Jonathan
|
MIT is sponsering an event called MindFest, October 23 and 24. I'm really looking forward to it, and
|
| Jonathan
|
my book will just be out about a week when I go. It should be exciting.
|
| javaADM
|
Will have to stop by....
|
| javaADM
|
Any other books coming out for it?
|
| Jonathan
|
I don't know of any others--for once, we're first to market. Apparently, some other people
|
| Jonathan
|
have licensed from Lego to do books, but I haven't seen any announcements about them.
|
| javaADM
|
well congrats, let's hope its a good one...
|
| Jonathan
|
Thanks, I hope so too.
|
| javaADM
|
It looks like our chat session is coming to an end. Thanks to Jonathan for stopping by. Thanks for our visitors for asking some good questions....
|
| javaADM
|
It looks like ethan is our winner for best question and will be getting a Java 2D Graphics book in the mail soon.
|
| javaADM
|
If ethan can email mail an address....
|
| javaADM
|
I'll be able to drop it off in the mail
|
| javaADM
|
Look for a log of the sesssion to appear shortly
|
| javaADM
|
and don't forget to come by in two weeks for our next author chat, with Sheng Liang, author of The Java Native Interface
|
| javaADM
|
Thanks again Jonathan....
|
| Jonathan
|
Any time. Thanks for hosting, John.
|
| javaADM
|
Feel free to stay and chat some more, I'm just going to shutdown the log and rreset the room...
|
|
|
.............. Log stopped at Thu Sep 02 19:04:11 PDT 1999 ...........
|