|
|
||
Ken Arnold's BlogJune 2003 ArchivesDuncan Davidson is being kind...Posted by arnold on June 25, 2003 at 07:39 AM | Permalink | Comments (6)Duncan reports that I gently and kindly harangued him at MacHack about ant. I'm not so sure I was all that gentle, but I hope I was kind. It's interesting that after we talked, he said "You've got ant's killer weakness there." But what he quoted was not what I expected. His quote was: The problem with Ant is that it violates something we learned with Unix. Tasks aren't composable.But what I thought he would quote was my opening line: Ant is nothing more than the sum of its parts.I suppose it's the same critique, but my summary is more pungent. And yet he thought I was being gentle... James Gosling once said that every configuration file becomes a programming language, so you might as well think that way. I think ant confirms this in spades. Duncan started it out as a quick way to build a few things. It has grown to be a monster. I admit it is a useful monster, but it works just like Unix would if there were no pipes. Each task has its own way of approaching issues that arise when performing that task. If you want to do something that the task author didn't think of, well, there you are. Good luck. The Unix model would say that there were tasks that generate (say) dependency calculations and tasks that build jar files and tasks that did text transformations and tasks that deleted files. So if I wanted to delete all files that were depended on by a particular task, I would put these together. And if instead of deleting them, I wanted to jar them up, I would compose nearly the same tasks, but not quite. But with ant, these are two different tasks, unless someone happened to think of merging them. Unix got it right. Ant needs pipes.
I'm trying to figure out how to build a platform for executing existing ant tasks and yet allow them to open up this way. Possibly something with the bean shell. Maybe jython, as Duncan started to describe.
MacHackPosted by arnold on June 18, 2003 at 08:49 PM | Permalink | Comments (2)I'm getting ready to give my keynote at MacHack. At midnight. That's the kind of conference this is -- the opening keynote is at midnight. I am assured that these folks will hang around for the talk, and that at previous conferences they have stayed for hours. I do not intend to take hours -- who has that much useful to say at midnight? Not me, for sure. The conference is based on actual programming, as the name might imply. The idea is to do actual things while at the conference. It runs 24/7 for three days, wireless everywhere, write something cool, share it around. More conferences should be like this. JiniFestPosted by arnold on June 12, 2003 at 03:08 PM | Permalink | Comments (3)Last night was JiniFest, which was a blast. JiniFest is what the Jini community does at JavaOne to have folks show what they're doing with Jini. Some are community projects led by interested geeks and others are commercial products. So while the Java community folks are doing boring (if important) process stuff, the Jini folks are having a party. Jini is generally the best kept secret of Java, and in that vein, The Powers That Be™ put JiniFest in the farthest possible room from the main area of the community event. You had to walk past empty rooms to find it. Not that this implies that some folks in Sun are putting Jini down, of course. The room, though, was crowded with folks doing fun stuff with Jini. If nothing else, we had the largest percentage of Brazilian of any event on the floor. There were around 30 community projects and companies with tables showing what they've been doing. Some have been with us since Jini was released, and others just went public. At least one company went from no Jini code to full product release in less than nine months, so it all happened since the last JiniFest. I can't possibly remember it all, and I don't want to play favorites. Some companies had Jini development and deployment tools, including some interesting hardware demos with stuff that looks like props from an Austin Powers film (that is, it looks like a spoof on 007 technology). Several companies had products using Jini to build systems, including financial and taxes to security. Some were so new they hadn't even started last year, and others are ongoing for some time. The projects were led by some folks who just had something they wanted to do. The first annual award for service to the community went to Bill Venners, who (among other things) runs artima.com. Bill has been doing the monthly FAQ postings, drove the first approved community standard, has been on the oversight committee since the beginning, etc. In other words: Well, duh, who else? Congrats, Bill. No longer waiting for GoslingPosted by arnold on June 11, 2003 at 12:49 PM | Permalink | Comments (1)Okay, James breaks the spell, as always: Someone who isn't a major Sun partner gets up on the stage.... Three someones. But don't do this to us next time. So much stuff up front put James really late. And James is the most interesting. I'm watchin people drift out, and the hall is getting to be emptier, but that's because this has been going as a single session for 2.5 hours so far, and people have places they have to go. I know you want people to hang through the other stuff to get to James. But the result is that everyone else's time slippage (which always happens) comes out of James's time, or people's ability to hang out. Still, as always, really worth it. Continuing to wait for Gosling...Posted by arnold on June 11, 2003 at 12:47 PM | Permalink | Comments (0)I will never understand why marketing people haven't learned how to talk to geeks after the decades since computer conferences have been going on. Scripted pseudo-conversations, for example, really don't work -- they're just inane. The fact that they're pre-scripted makes them inane. There's just no way around it. It's not like the two Sun engineers showing off Rave were making this demo up. Is a Web Service possibly available on the entire World Wide Web? Thanks for saying so, I wasn't sure! She wanted three components? Which ones? Wow, what a surprise! She would like to add a column to the database, can he do that? Why, yes he can! Would adding some buttons be good? Why yes, she thinks so! We've all seen worse, by a long stretch.[1] But it was bad enough to get me to fire up my laptop and kvetch about it (maybe to avoid actually watching). Marketing folks, listen up: This Never Works. At least it was punctuated by a live demo failure. That was real, and handled very well. And look how it brought the crowd back in, so listen up: Reality Works. (If that was staged to pull folks in ... Nah, couldn't happen.) Oh, and in case you were still counting: The number of people brought on the stage from smaller companies doing cool stuff? Still zero.
[1] The worst I ever saw
was at a Usenix conference where some company was claiming to
provide "The Marriage Between Unix and Foo". (I've mercifully
forgotten what "Foo" actually was.) So they hired a couple of actors
to dress up as bride and groom and hang around the booth for a
few days of scheduled events like "The Cake", "The Champagne",
and (get ready to cringe) "The Vows". I hung out in a booth across
the aisle and watched, sort of like looking at a car accident.
Attendees started to avoid the entire aisle of because it was so
embarrassing, and the company's booth geeks were trying to make
sure their badges were on backwards so they could possibly get
another job again, hopefully before the end of the show.
I suppose, in some sense, the marketeers succeeded in burning the
event into my brain. Frightening, now that I think of that. Waiting for Gosling...Posted by arnold on June 11, 2003 at 12:46 PM | Permalink | Comments (0)Okay, they found a funny engineer. How likely was that? The announcement of HP's agreement to put Java on all their Windows boxes is both cool and nearly predictable. Disk space is free, after all. Someone was going to decide that the "value add" of putting Java in the box was worth the small incremental cost. (By the way, didn't Jonathan Schwartz say Dell make it so all their boxes "can" come with the latest Java? And isn't that different from saying it "will" come with the latest Java? Will customers have to ask for the feature, or will they bundle it in like [it sounds like] HP is doing? And if so, how many people will think to ask?) By "predictable" I don't mean "unimportant". Microsoft is obviously trying to stifle an alternate platform so they will continue to control the common platform. They tried "embrace and extend" with Java, and lo and behold, they got called on that. So next they're trying to take their platform and go home. It still is open whether they will be allowed to do that, but so far it looks like it. So HP is giving an extra value to their boxes, but this also gives them an opportunity to loosen their dependency on the convicted monopolists in Redmond. If others follow suit, all of us, including HP, will be able to target Java instead of Windows for most of our work. Of course, that's an "if" there. Something needs to make that value of the HP box matter. That's up to us. And the message is...Posted by arnold on June 10, 2003 at 11:12 AM | Permalink | Comments (0)How many guest speakers from how many big companies do we get? A lot of what's been exciting in the past were talks from companies we've never heard of doing things we've never thought of. This year, at least today, we've been treated to speakers (yes, sometimes fun) only from Sun's major corporate partners. Can we at least spread this out a bit? Yet the message is fun. It's great that Sun starts bringing together the notion of a single platform. There are incompatibilities between the platforms that need to be smoothed, including some that never needed to be there. It will be nice to pull them together. These incompatibilities have been a thumbtack on the floor for network things like Jini all along: What can downloaded code rely upon? Still, I confess to be baffled by why we need a single network. One of the things that Jini has proved is that you don't need that: You need one platform so I can give you code that knows how to talk to me, and then the network becomes an implementation detail. Already today, there are people using Jini to build networks that simultaneously and seamlessly run across Bluetooth, ethernet, LonWorks, and X10. Why one network? In effect, Jini is the object layer on the network stack. We agree in advance on a Java API, instead of agreeing in advance on network protocols. The implementation gets filled in as appropriate for the local network environment. "Everyone, Everything, Everywhere, Everytime." So why "One Network"? How about using that One Platform to build on "Every Net"? And they're off!Posted by arnold on June 10, 2003 at 11:09 AM | Permalink | Comments (0)This is getting ridiculous, although in a vaguely amusing way. Instead of merely reserving seats at the keynote for the alumni, today they hold the new folks behind ropes until the alums have found their way to their seats. So we few, we chosen few, walk past these "serfs" on the way into the keynote. I mean, really. What message does that send? If watching it from the cheap seats was annoying, let me tell you that walking in front was self-conscious-ifying. Should I scatter pennies? Sneer at the groundlings? Give that little tittle of a wave the queen uses? Sheesh. Next time, folks, let's set this up to be less cocky, shall we?
As usual, we start off with some musical stuff. This year it's less dramatic but actually, I think, more conducive to the flow. Still, a startinng charge from a deep beat and movement would be nice, and save the calmer, intricate stuff for a later day. Ah well, small complaint. On the other hand, they're now doing crowd shots so we get to see ourselves on TV. Sort of like a ball game, but without the Cracker Jacks. Or the little kids. Or the big, drunk guys with painted letters on their chests. Maybe next year... Insomnia is highly underrated...Posted by arnold on June 09, 2003 at 09:28 AM | Permalink | Comments (0)Try to check everything out. Sleep is optional. This is JavaOne, after all. No, really, try it. I admit that, since the first JavaOne, the meeting has become less of a whirlwind, more predictable, more, er, mature shall we say. But it started with all the dot-com liftoff energy, and this means that "mature" is a relative thing. When you're starting from London, being in Amsterdam is on your way to Ufa[1], but it ain't hardly there yet. And Amsterdam, though quieter than London, is still a lot of fun. So who needs sleep? Highly overrated, really. This means you should seek out the stuff the conference is not pushing at you. Java is fun and has spawned a lot of stuff, so you can hear talks that aren't part of the main, commercial line. Or at least your main commercial line. For example, to some the desktop game biz is a biz, but to most of us it's something else. Go listen to those talks. Jini is far enough ahead on Sun's plan that it's a biz for a small, ardent group of folks. Try out a few of them. And so on: A conference focused on a platform will bring together a wider variety of folks. Go to the other folks' talks. And okay, if you really need to, you can sleep a little. [1] The capital of the Republic of Bashkortostan, as I'm sure you knew
| ||
|
|