Now blogging at diego's weblog. See you over there!

wrong paradigm, michael

CNET's Michael Kanellos has an opinion piece on currently about what will, in his mind, define the next decade (technologically speaking, that is.):

The '60s and '70s were the decades of the mainframe. The '80s made up the decade of client-server computing. The '90s were the Internet years. Now we're entering the decade of the electronic butler.
This is complete, utter nonsense. Note that the other three "trends" are networking trends, rather than whatever trend the "electronic butler" falls in (no, not agents). Clearly there are other things going on, aside from networking, and they have their own trends. In networking, the next trend is going to be true peer-to-peer... self-organization at every level (client side, server side, middleware, semantic--yes, semantic, etc). The networking layer of autonomous computing so to speak. Even if self-organization wasn't the big trend of this decade, as I think it is, "electronic butlers" still wouldn't be it. They won't be deployed in time. Let's be realistic here. We've been talking about bluetooth since 1997 or whenever, and only this year it started to get reasonably deployed. Desktop PCs don't even come with Bluetooth built-in yet. "The Age of Automation" will certainly come, but not within the next five years. People will be too concerned with things like the Playstation 3 (est. release date: 2005) to pay mind to that. I wouldn't mind, however, a cheaper, upgraded version of AIBO.

Categories: technology
Posted by diego on July 31, 2003 at 5:54 PM

excellent java tools

For whatever reason I kept forgetting to mention this. Anyway, not anymore. For the last few months I've been testing or using tools for Java development from ej-technologies. They are really, really well done tools, reasonably priced, with good UIs, fast, etc. They don't get in the way. They do what they're supposed to, and they do it well. Highly recommended.

Posted by diego on July 31, 2003 at 5:44 PM

is that...?

As I walked through Dublin today I noticed ads everywhere for the upcoming release of Legally Blonde 2. No, I don't give a damn about the movie, but something seemed strange about the ad. Finally I realized what it was: in it, Resse Witherspoon appears to be an exact replica of Barbie. Am I wrong?

My twisted mind then ignored all the warning signals going off regarding corporate manipulation, media, women's issues, etc, and simply decided that it would be cool if Mattel sued the MPAA or whoever for this "infrigement", just for the fun of it. At this point all of these big companies must have a staff of lawyers on call. You never know when you need to sue someone.

Categories: personal
Posted by diego on July 31, 2003 at 5:25 PM

weirded out by newsstands

Often I'm next to a news stand and I can't help but wondering at the bizzare (at times alarmingly so) sight of all those magazines lined up, smiling faces on them. If a face is not smiling, it's guaranteed to be that of a celebrity or semi-celebrity in some (real or imagined) stressful situation. Example: "Madonna horrified at the price of lettuce!!" or some such tripe.

I look at the smiling faces and I wonder exactly why the smile, or the laugh, or the happiness. Who hit on the facade first as a magazine-selling mechanism? Is it a selling mechanism? Do the people that work designing the covers, a new smiley face every week enjoy their job? Do they find it fulfilling?

Wondering about all of this doesn't really give me any good answers (particularly since I ask these questions to myself :)), but at least it seems to relieve the weird-out effect and then I can go on and ignore the news stand and its printed, smiling faces until the next time it happens.

Categories: personal
Posted by diego on July 30, 2003 at 4:40 PM

and the prize for stupid idea of the month goes to...

...the Pentagon, for their announcement that they would create a "futures market" for terrorist attacks. As I read the article, I had to double-check a few times to make sure that I hadn't ended up at The Onion by mistake (with competition like this in the pentagon, the onion might have to shut down, or change its domain to ".mil" to be taken seriously). In any case, one can certainly understand the logic behind this idea, as a theoretical undertaking. But we're talking about reality here (aren't we?). The group of guys at the Pentagon that keeps coming up with things like these look to me to be a tiny (tiny, tiny) bit out of touch. This comment (from the article) by a senator says it all I think:

One [senator, Byron L. Dorgan of North Dakota] said the idea seemed so preposterous that he had trouble persuading people it was not a hoax. "Can you imagine," Mr. Dorgan asked, "if another country set up a betting parlor so that people could go in — and is sponsored by the government itself — people could go in and bet on the assassination of [a] political figure?"
Yes, I think we can all imagine. (This same senator later sharpened his commentary slightly by saying, according to CNN, that the plan was "unbelievably stupid").

Besides, eight million dollars for this? I guess they had some leftover change from some smart bombs and such.

Since we're on this kind of mood :-) the Onion has this hilarious "News In Brief" item today:

Bush Not Heard From For Over A Month
WASHINGTON, DC—Beltway insiders and members of the media expressed concern Monday that President Bush has not been heard from for nearly five weeks. "I hope he's okay," said Secretary of State Colin Powell. "It's just like him to go off on a fishing trip to Alaska or something and not tell anyone. Which is fine. I mean, he's the president and can do what he wants and all that, but we kind of need to wrap up this whole Liberia thing we started." White House Press Secretary Scott McClellan admitted that he was unclear about the president's whereabouts, but figured he must be "off somewhere busy with something."
Bush does seem to get a lot of leeway from the press on this matter, doesn't he? On the other hand, look at poor Blair on this side of the Atlantic. He's on TV so much, his close relatives probably need to sneak into a press conference to see him in the flesh.

And, btw, about Pentagon thing, we could also give it the prize for "fastest to be shot down". CNN was announcing this afternoon that the plan will be abandoned. Oh well. It was fun while it lasted. All twenty-four hours of it.

Categories: geopolitics
Posted by diego on July 29, 2003 at 8:26 PM

remember afghanistan?

The Economist has a sobering summary of the current situation there.

Categories: geopolitics
Posted by diego on July 29, 2003 at 7:58 PM

browser news

[Both items originally via Erik] First, Cheah notes that Firebird 0.6.1 has been released, fixing the infamous autocomplete bug. That bug (that crashes Firebird 0.6 after a number of uses of autocomplete on web forms) was incredibly annoying and it got me to the point where I was seriously considering to ditch Firebird. Glad to dump those thoughts. Bad, bad thoughts. Bad. (Slaps thoughts).

Ok. Breathe deep. Then go download.

Then Dion talks about projects to combine Mozilla and Java. In particular the idea of using Java as a backend for XUL sounds interesting (as a cool combination at least) but the bridge between them would have to be rock solid to be useful. Something to follow anyway.

Categories: technology
Posted by diego on July 29, 2003 at 6:40 PM

cool apple-related blogs

[via Erik] Ben posted a list of some of this favorite Apple-related weblogs. Good linking!

Categories: technology
Posted by diego on July 28, 2003 at 2:11 PM

the stupid meme that wouldn't die

So as MS does apparently stupid things, their software isn't up to par, and the recurring Microsoft-doesn't-get-it theme is on the rebound. Google, in the meantime, is being hailed as the savior for all kinds of things, and is basking in glory, giving tours of the company to actors and politicians (!?) and moving to a new fancy location. Meanwhile competition for Google that is massing on other fronts is looked at as a curiosity.

Similar claims can be made for other "next-big-thing" markets, such as mobile devices.

Ohmigod, could it be the end of Microsoft?

Any of this rings any bells?

As far as I can see, this is as much a repeat of the situation in 1996 as we could get. Back then, pundits of all stripes all but declared Microsoft dead: a huge, inneficient, PC-bound company that couldn't adapt to the brave new world of the Internet. Around that time, MS scrambled to create the IE team and go after developers to react to the competitive threat created by Netscape (and how's this and this for deja vu?). But then, Netscape's advantage (like Google's or Symbian's today) seemed unnassailable. Other companies with little expertise in the area where then looking at the browser market (and who isn't looking at search and advertising today?).

The browser wars were not the first time Microsoft had demostrated that it could fight back. The previous ten years were littered with once-powerful companies that had been literally squashed: Ashton-Tate. Borland (nevermind its recent resurrection). Lotus itself (on the spreadsheet arena). WordPerfect.The difference with Netscape was that it all happened so publicly and visibly. Software markets had started to operate differently. But it didn't make much difference, not in the end, except for one thing: no one can say they haven't seen that Microsoft won't give up easily, or that, having missed a trend, they can't adapt.

Or that they can't move beyond their core markets; the idea that Microsoft can't move "beyond the PC" is ludicrous. For starters, in the space of only a few years they have carved out a decent portion of the server market. They have carved out another portion of the market for internet applications. (Let's disregard how they did it for a moment). Right now everyone seems to have forgotten about Palm for some reason, but PocketPC-based handhelds have been steadily growing, while Palm is considered a has-been. In only a couple of years, the Xbox went from being a bunch of marketing documents to the second gaming platform of the planet. In fact, Office, which everyone just seems to ignore, is a monopoly that Microsoft did not control at all as recently as eight years ago, and is currently the biggest source of revenue (and profits) for the company.

As I was saying a year ago, in a different context. They are the biggest software company in the world. They have managed software projects bigger than anyone else, with bigger deployments than anyone else, and pulled it off. They have, time and again, moved successfully into new markets, even as many, many of their attempts have failed. They have tens of thousands of really smart employees, thousands of which are millionaries, and that strangely enough keep working 12- or 14- hour days for the company. They have excellent management, and good software development processes. Somehow they maintain an internal image of themselves in which they are always the underdog, that allows them to react fiercely to threats. They have two strong monopolies, and a few weaker ones (Multimedia Encyclopedias, anyone?). They are pulling in $30 billion in annual profits, with ten billion in net income.

Oh, right, and they have fifty billion dollars of cash and short-term investments in the bank.

It doesn't mean that Microsoft is unbeatable, or anything like that. Just look at Intuit, who has successfully stopped MS for years. But early-mover advantage is not enough. The cool-factor is not enough. Being profitable isn't enough either.

So why this recurrent delusion that they have gotten slow in their old age? Who knows. Let's skip the psychobabble.

I guess that what I'm trying to say is: those who underestimate Microsoft do so at their own peril.

Categories: technology
Posted by diego on July 28, 2003 at 12:21 PM

wired's search-- in rss

I was just doing a search on Wired News' archive, and I noticed that at the top and bottom of the search results, where you get the navigation links ("next"... "back") there was a link that said "(rss)" with a link that went to an RSS version of the search (here is a slightly recursive example :)), and it even matches the position in the search. Very cool! (Btw, since wired search is powered by lycos I went to it to see if they were doing the same thing, but no. Too bad.)

Now, when is Google going to do something like that for Google News? Or for Google searches?

Categories: technology
Posted by diego on July 28, 2003 at 10:27 AM

diego's excellent symbian adventure, part one


in which diego discovers that navigating a sea of acronyms requires some patience

This is the first in a series of articles that describe my experiences learning my way around the Symbian platform. Going into it, what I knew wasn't much. One of my interests was using Java to develop applications for Symbian phones. I had played with the first versions of the KVM (The Kilobyte Virtual Machine, which is at the core of J2ME) when it was first released for Palm in JavaOne 1999 but since then I had lost touch with the platform. I did know that Java's Micro Edition (J2ME) wasn't enough for many applications, and that related to its limitations was something mysterious called MIDP 1.0. I knew that I preferred to stay with Java but that it was likely that I'd have to develop native applications, most probably on C++, so, where to begin?

I first evaluated Symbian as a development platform years ago when it was mainly known as EPOC. Back then the main choices for development in it were C++ and OPL (a relatively simple high level language that is unique to Symbian OS), and Java (the full 1.x JRE) would be available for it soon afterwards on some devices. "Back then" there was, that I remember, a single SDK that you could get from Symbian and use with an IDE. I thought that the situation couldn't have changed that much since then.

I was wrong.

The best starting point for Symbian development is, at the moment, the website of the Symbian Developer Network (which is commonly referred to as 'DevNet' throughout the site even though the name DevNet appears mentioned only once in the homepage, in the 'About DevNet' link). DevNet contains a lot of information, but its organization is a bit confusing. For example, in the homepage we can see links for SDKs, Tools, Languages (C++, Java, OPL and VB). Clicking into one of the options shows even more options, which require some context. In the next few paragraphs I'll outline some of the technologies available and how they relate to each other. I will consider options available for development with C++ and Java, because that's what I know. OPL is a favourite of many in the Symbian development community, so it shouldn't be discounted (Ewan maintains a cool OPL site here).

The idea is to structure things as follows: an introduction (this section), then move on to high-level looks at C++ development and Java, and finally an overview of the different tools for both C++ and Java development.

going native

Starting off with C++, DevNet has a page for "getting started". Again, lots of information, not much context, which I'll try to provide here.

First, at the moment there are development toolkits for three versions of Symbian OS: 5.0, 6.0 and 7.0 (Additionally, there are multiple SDKs for each OS, sometimes multiple SDKs --from different vendors-- for the same language for a single platform combination!). 5.0 is a legacy product, as far as I could see, so we can safely ignore it (It is used basically on Psion handhelds at the moment).

If your interest is (like mine) development for Symbian phones, then Symbian 6/6.1 is the way to go right now, as the list of Symbian phones shows, all but two of the Symbian phones out there or soon to be released run Symbian 7.0. A few interesting devices that won't be released until closer to the end of the year (e.g., the Nokia n-gage) will run v6.x, so it's not as if the platform is being phased out.

But the real question is: if I develop a native application for, say, OS 6, will it run on OS 7?

The short answer to that is: It depends.

Binary compatibility isn't yet the issue, because the compatibility problems are still happening at a higher level. The most popular Symbian phones today use different user interface toolkits, and here is where two new acronyms come in: S60 (Short for Series 60) and UIQ.

S60 is a UI toolkit original developed by Nokia and freely licensed to other manufacturers, although the licensing has to far been, shall we say, a bit limited (to only one other manufacturer so far: Samsung). S60 phones currently on the market include the Nokia 7650, the Nokia 3650, and the Samsung SGH-D700. Well, the S60 platform is primarily oriented towards "one-hand browsing" (that is, typical cell phone use), and it includes browsing, multimedia services, messaging, PIM functions and a UI library. Sounds useful, yes. But, technically, it's not a standard since other handset manufacturers using Symbian have to license it from Nokia first, albeit for free.

UIQ on the other hand, was originally developed by Symbian and then spun off into a company called UIQ Technology and initially adopted by SonyEricsson for its P800 phone. One of the main points of UIQ is that it is a UI designed for larger, touch-sensitive screens (i.e., pen-based interfaces), and maybe devices that are a bit more powerful. UIQ runs, at the moment, only on Symbian OS 7.0.

While both UI toolkits are C++, and they are in fact very similar, they are not source-code or binary-compatible. Moving an application from S60 to UIQ implies changing the libraries you're compiling against, include files, and possibly some of the functions themselves. Another option is to use a toolkit like the recently announced S2S from Peroon, which also provides Symbian-to-PocketPC compiler tools. At the moment, then, the best you could wish for is to have to recompile from one platform to another, using this additional toolkit (Pricing or availability of S2S is unclear, since the site doesn't have downloads or information--maybe it's not ready yet).

Reading documentation for some of this technologies can be sometimes be a baffling ordeal. Consider for example this paragraph from a paper describing UIQ's approach to user interfaces: "On top of the generic technologies are the application UIs and a few other reference design-specific libraries. There’s one library of particular interest that straddles this gap, called Qikon. Qikon is the UI library for UIQ, and is derived from Uikon, the generic UI library across all of the DRFDs. Uikon in turn was an iteration of Eikon from Symbian OS Release 5." (Note that this article, while still applicable is a bit old: it applies to an older version of UIQ, 1.x, while the P800 uses UIQ 2.0--which is why the mention of Symbian 5). If you think that the "Eikon" mention is strange, consider this step-by-step introductory tutorial for developing a Hello World application for Series 60. Quote: "From the wizard dialog you can select which type of application you would like to create. Leave the "EIKON Control" option selected and specify "Hello World" as the Application Title." You see, EIKON shows up again here. We are supposed to "leave the EIKON option selected" but we have no idea why (in fact, the tutorial does not explain what EIKON is at all, but we get the impression that this Eikon fellow was quite something-- and a bit of digging tells us that EIKON was Psion's UI framework for EPOC).

It might sound a bit unfair of me to take paragraphs out of context, but I wanted to show it as an example of what one can regularly run across when reading Symbian development documents of any kind. You're happily reading and suddenly you get a sentence (like in the first example) that says: "Qikon is the UI library for UIQ, and is derived from Uikon, the generic UI library across all of the DRFDs". That leaves you thinking: DRFDs? What the hell is a DRFD???" A google search on the acronym appears to imply that it's a Demolition Remote Firing Device, but I'm sure that's not the case. Searching for "Symbian DRFD" gives only three results, but google suggests "Symbian DFRD" --note the transposition of the F and the R, which yields more results, and after a few clicks and searches we discover that a DFRDs are "Device Family Reference Designs" which are variations of Symbian OS tailored for different types of mobile devices. The Symbian FAQ at Nokia's Site (PDF) has some useful information on the acronyms and such. When clicking on Symbian articles, be careful: a surprising amount of them exist only in PDF and so you'll end up waiting quite a bit to see anything at all. Better to look at the file type on the link and download them if necessary.

The point of this digression is to give an example of what you are likely to find as you delve into Symbian development. Keep in mind that Symbian is responding to the needs of different manufacturers that compete with each other but are all shareholders in Symbian; this is bound to create some conflicts. Additionally, there are still "historical leftovers" like the EIKON references that tend to be confusing and only known to those that have been working with Symbian/EPOC for a long time.

Russ pointed me to this presentation (PDF) from the Symbian Exposium '03 on "Targeting multiple Symbian OS Phones", which is a good summary of how portability can be handled between phones running the different toolkits. Highlights are "Some application components have to be altered", and "80% of code can be kept unchanged between ports".

Things are getting better though, and we are still in an early stage of this process (For example, a few months ago Nokia and SonyEricsson announced that they'd align their developer tools for S60 and UIQ, so you'll be able to use a single toolset to target applications for both environments.)

close, but no dice

The conclusion is that, at the moment, there aren't any options for developing a cross-platform application in C++ that would port across all Symbian 6.0/7.0 devices. The rational choice is to target S60 or UIQ (and then possibly use another toolkit to recompile the sources to target the other platform). In any case, S60 is not yet supported by all Symbian phones, so you should check whether the phone you want to target supports it.

The last point in particular means that for true cross-platform applications you will have to use Java. J2ME and its flavors (with Symbian-specific information) will be the topic of the next part in this series. Until then!

Posted by diego on July 27, 2003 at 12:43 PM

when art finds us

solaris.jpgI watched Steven Soderbergh's Solaris tonight. Quite amazing what happens when we're on the exact same frequency of a certain piece of art. Good art changes every time, since we change, but every once in a while I feel as if I'm on exactly the same frequency, and everything gets... amplified. It's more common with music, since it's more immediate I think... "this is what I feel like listening to now" is a common experience. Movies, books, paintings, anything remotely visual, is harder for obvious reasons, so it's quite amazing when this happens, and even more when it happens unexpectedly, and considering that the timing has to be exact... Somehow the movie's non-personal elements, that is, the atmosphere, the visuals, the soundtrack, reflected how I felt very accurately, even as it differed from the mental image I had created based on the book (which I read in a Spanish translation of the original Polish years ago) and probably precisely because of how it differed, not always in bad ways.

I know, I know. Riddle me this, right? No, no riddles. Just lack of ability to explain further without going on for twenty thousand words.

So, back to the movie: Maybe a bit too introspective, and slightly claustrophobic in that sense (though that could be just me at this particular moment) but very good nevertheless. Soderbergh has achieved a true reinterpretation, rather than a simple adaptation--though I did miss the Ocean as a main character in the story. I know I'm just catching up now, but between Solaris and Avalon these past couple of weeks have been good on the SF front. And with Revolutions now only three months away...

Posted by diego on July 26, 2003 at 11:31 PM

.com viruses?

Dylan has a good question about the use of the .com extension as a Windows virus-propagation system. Considering all the stuff that's been done by virus makers just to get you to open the payload, it is a bit surprising that this hasn't been used extensively.

Categories: technology
Posted by diego on July 26, 2003 at 10:14 AM


All right. Over the past couple days I've sort of been ignoring emails, and blogging only sporadically. I had a sort of mini-personal crisis to deal with too, an MTV video sort of crisis, intense, short-lived, and, while apparently meaningful, actually superficial. This, plus the release and a cold, left me a bit exhausted. A number of things to do... I think I'll start with a small redesign I wanted to do for the blog...

Categories: personal
Posted by diego on July 26, 2003 at 9:51 AM

the rocky horror picture show

No... not the movie... but this bizarre morbid voyeurism that the media seems to love so much (and, hey, if it sells, the public can't be far behind no?)... Every newspaper in the world. Every news channel. Magazines. The Internet. I mean, is it ever enough?

They say: Poll: was the Pentagon right in releasing the pictures?
They don't say: Are we a bunch of sleazebags for pretending we don't have anything to do with their dissemination? vote now!

They say: by the way, these images are gruesome and might affect your sensitivity. Keep out of reach of children.
They don't say: We tell you all of this to guarantee that you will watch them, that you will make a face or appear horrified, and then go, shaking your head, to tell everyone how horrible it was but now that I've seen some low resolution pictures of these mangled bodies, I'm convinced of whatever. (And: does anyone expect, in this day and age, that people would be convinced by a photograph? Plus, skeptics and conspiracy theorists will not be swayed by anything at all. In fact, the more proof you present, the less they will believe).


Posted by diego on July 25, 2003 at 5:26 PM

clevercactus beta 2

Extra! Extra! Read all about it!

clevercactus beta 2 has just been released. A lot of improvements and fixes in this release, as well as a few hints of what's to come in the area of collaboration. Here's some of the most important changes:

  • Dynamic tabs for faster navigation
  • "Query spaces" spaces that respond to a given query
  • New layout options for email previews, including a horizontal view and an improved standard view.
  • HTML Editing for weblog entries
  • Import/Export of OPML RSS Subscription lists
  • Improved RSS feed checks, supporting GZIP encoded-streams and other optimizations to increase check speed and reduce download times.
  • Support of the preliminary version of the new syndication format, Atom
  • More control over Outlook import parameters
  • New rule type for email sorting, matching arbitrary email header key/values.
  • The possibility of setting clevercactus as the default email-client (under any OS, including Windows).
  • Performance & Usability improvements
  • Several bug fixes
  • Improved L&F under Windows

...And more! :-)

You can get it from the download page (yes, I know I linked to it above... but can't I enjoy it a little? :))

Anyway, comments/questions/etc are welcome!

Categories: clevercactus
Posted by diego on July 24, 2003 at 8:19 PM

the new HP

An interesting interview with Carly Fiorina with the staff. Quote:

One of the things we have to let go of is this notion that growth in the technology industry will be driven by the next big thing, by the next "killer app" or hot box...The real big thing in technology is that all this stuff has to work together. And when all this works together, what do you have to think about? Security, liability, mobility, rich media, total cost of ownership--all these things matter.
I think that both things coexist. On the other hand, what might be the new "killer app" is something less obvious, less "clean" (ie., "a web browser") and more reliant on interconnections between different tools, usage patterns, etc. When a number of things are put together (security, mobility, low TCO, ease of use) the quality of what can be done with the tools changes.

Categories: technology
Posted by diego on July 24, 2003 at 2:01 AM

busy busy

Been out of, um, cyberspace for a bit. Not really paying much attention to the news even. Mainly working on public beta 2 of clevercactus, which should be out in a few hours. That is, Thursday at some point. Thursday GMT.

I did try to pay attention to the news today for about 10 seconds. Problem was, it wasn't enough. Most of it just seemed a bit superfluous. Even the supposedly important stuff.

Partially I feel a bit like when I look at the dials for the washing machine. Someone, at the very least those that designed it, apparently see it at something very complete, well-thought out, and apparently terribly useful. Then again, I can always set it at seven and it seems to work, except when it doesn't. Then clothes shrink, major fashion disaster in the making, horror! What to do.

Well, nothing, really. It's just a shirt, or whatever, in the end.

(some time passes, during which diego listens to Massive Attack's Protection, featuring Tracey Thorn, ponders how appropriate Everything but the girl was as a name for Tracey Thorn's band, and then suddenly remembers that he was actually writing something, and looks back at the screen, hands over keyboard).

Right. I'm reading what I just wrote and it sounds slightly strange. Luckily, it's oblique enough so that I can pretend it does make sense. In the meantime, I think the decongestants I'm taking (oh, I forgot, I'm not feeling too well. cold. bad yesterday. better today. a little) might be affecting my normal blog, I mean, er, thought processes.

Anyway. We all hope that a return to the original programming is imminent.

...Who says/ that's not the way/ it should be...

Categories: personal
Posted by diego on July 23, 2003 at 11:23 PM

who needs all those teraflops...

The "Matrix-effect" done on the cheap. Hilarious.

Posted by diego on July 21, 2003 at 7:32 PM

what's that button say?

[via Slashdot]: Read and be amazed. (Some more links here). A story from one of the co-founders of the EFF.

On the topic: Cringely on security holes in security systems (Followup with more info here).

Categories: geopolitics
Posted by diego on July 21, 2003 at 4:19 PM

sony's new pda

Expensive, yes, very much so, but loaded with features. Very cool that it comes with both WiFi and Bluetooth built in--definitely the way of the future. (Although I think that one of the high-end HP iPaq devices was the first to do it). If Palm/Handspring can also release something along these lines (and if price drops below that of comparable PocketPC devices), maybe PalmOS won't sink into irrelevance after all.

Categories: technology
Posted by diego on July 19, 2003 at 1:15 PM

woody's quote of the day

Tina: Guilty? What the hell is that? They see something better and they grab it! Who's got time for guilt?

Danny: What are you talking about? Guilt is important! It's important to feel guilty, otherwise... you--you know, you're capable of terrible things! It's very important to be guilty. I'm guilty all the time, and I never did anything. My rabbi, rabbi Rothstein, used to say we're all guilty in the eyes of God.

Tina: You believe in God?

Danny: No, no. But I'm guilty over it.

from Broadway Danny Rose (1984)

Posted by diego on July 19, 2003 at 10:12 AM

so it is

"Ernest Hemingway once wrote: 'the world is a fine place, and worth fighting for.'

I agree with the second part."

Categories: personal
Posted by diego on July 18, 2003 at 5:44 PM

neal stephenson's USENIX keynote

Scott Rosenberg on Neal Stephenson's recent USENIX keynote:

Some fascinating notes on a Neal Stephenson lecture about his approach to writing, with parallels to programming: "A good writer (and a good programmer) does not work by distilling good ideas from a large pool of bad and good ones, but by producing few if any bad ideas in the first place. It is important to give ideas time to mature [in the subconsciousness] so only good ideas percolate to the conscious level."

This is most definitely how it works for me. I am rarely able to create a lot of ideas and then improve them incrementally; I might spend a lot of time doing (apparently) nothing and then write everything down, something that just seems to work (both for programming and writing). All of this closely linked to that state of mind we call flow. Stephenson apparently didn't mention much about editing though, which is also crucial, and it exists in both cases (though, for programming, we call it debugging). Editing/debugging is not part of the creative process per se, but an important component in polishing up details, clarifying concepts, or removing small inconsistencies that are always introduced in the process of transfering thought "down" to any medium.

Posted by diego on July 17, 2003 at 8:55 PM


Ah, sweet, sweet rain. What a relief. The past couple of days have been a bit hellish: high humidity, hot... lots of sun... work during the day wasn't terribly pleasant, but it had to be done anyway. Today it's been great though. Complete cloud cover, gray skies, raining all day (raining pretty hard too, at the moment). Temperature's nice, cool wind... perfect conditions.

For work that is.

Isaac Asimov said once that he preferred rainy days because then he could write ten hours a day without anyone pestering him about "going outside". I'm sort of in that camp :), both for writing and coding, but I also enjoy rain (and climatic variety in general) because they are part of enjoying sunny days more (and viceversa). After all, if every single day it's beautiful and nice, then it's more difficult to appreciate it. Besides, rainy days have a sort of melancholic quality that I find irresistible.

Categories: personal
Posted by diego on July 17, 2003 at 1:43 PM

the limits of MIDP

Jamie talks about one of the great disadvantages of MIDP in accessing information present on the device itself. MIDP-based applications are completely restricted by a Sandbox, both in terms of execution and storage, which is bad (the restriction by default is ok for security reasons, but there should be a way to go beyond it): after all, part of the point of building an application for a mobile phone is that you can interact with its core functions, and those are largely centered around data. Since the MIDP doesn't allow access to JNI either, there is zero possibility for interaction.

And, as Jamie says, it is indeed strange that no JSRs are in place to deal with this. However, I remember reading somewhere (recently) that once the rollout of MIDP 2.0 is done the focus would soon shift to providing APIs to access the device's information.

Btw, my previous post on Symbian was just the first on several things that I wanted to comment on regarding mobile development. Next subject: J2ME. :)

Categories: technology
Posted by diego on July 16, 2003 at 7:15 PM

symbian's achilles' heel


Recently I've been diving more into mobile development, and I've been experiencing firsthand the issues that a lot of developers are going to start facing more often as mobile development in general (and development for next-generation mobile phones in particular) becomes more pervasive.

For any new platform, in the end, that's all there is to it, isn't it? Developers. Even though platforms can (and have) rise to prominence on their strength alone, sooner or later it's third-party developers that carry it forward. Look at the Palm, that sparked a development movement that fizzled out a little bit ago as the platform itself (and its support for third-party addons) stagnated.

Developers. Developers. Developers. I remember seeing that Steve Ballmer video that made the rounds a few months ago, in which he jumped around a stage, dark circles of sweat under his armpits, screaming that word over and over into the microphone. It was funny, in a way. But it also showed that Microsoft doesn't just understand this, but that developers, or more accurately, support for third-party development for their platform, are a big priority for them. In fact, Microsoft has repeatedly and actively leveraged its developer community to achieve dominance in new markets and platforms. The best example (and the most successful case so far) was how they used the Win32s/Win32c transition to move developers into the new environment that would be presented by Windows NT. They tried this with web-downloadable applications (remember when ActiveX controls were supposed to kill Java Applets?) but that didn't quite work, in large part because downloadable applets (of any kind) weren't really as important as it seemed, thus forcing them to conquer the browser market by leveraging their Windows monopoly directly.

I remember reading that when the first project started at Microsoft to develop an answer to PalmOS, it wasn't based on Win32. On learning this, one of the holy trinity (I can't remember if it was Gates, Ballmer, or Allchin), sent a clear message to the people that were working on the software: What do you mean it isn't based on Win32?. And that was it. A competitor project, one that was based on Win32, but was too big and bloated to gain serious traction for small devices at that point, took over.

That project became Windows CE.

And so began a long curve in which the WinCE based adapted a bit to the devices, and the devices grew powerful enough to support it. Up to now, when it can run on phones.

Some time ago I had the opportunity to play with the phone that comes in the Windows Smartphone developer kit. This is a pre-release device, mind you. Not deployed. Compared to Symbian phones (supposedly) in the same category, such as the SonyEricsson P800 or the Nokia 3650, this phone is downright pathetic. It doesn't have Bluetooth. It doesn't have Infrared. It doesn't have a camera. And so on.

But what it does have is a single, relatively simple developer kit, which also integrates nicely both with other tools currently in wide use (Visual Studio) and, more importantly, with the knowledge that many developers have today. By the end of the year, most of the technologies that you can use on a PC will be available, albeit in a limited fashion, for Smartphone, including the .Net runtime. The phone comes built in with Pocket MSN Messenger, Pocket IE, and a bunch of other things. Its user interface is not easy to use, but it looks nice. It looks familiar.

For all purposes, the shift required in a developer's head to start developing for this platform is very low.

Developers that have been building applications for Windows CE/Pocket PC will have little trouble moving over to it. There will be problems, as usual, porting issues, incompatibilities, functions that are not available on the platform, etc. Sure. And, as some operators/device makers use the phone, the need for customization will grow, creating some of the problems that Symbian faces today. But they will be contained, because Microsoft excerts more control over its platform. Certainly more than Symbian does. Which is, precisely, what I wanted to talk about.

Symbian devices are already being deployed by the millions, by several operators. By all accounts, they are outselling, outmarketing, and out-everything MS Smartphones by a mile.

But development for Symbian is incredibly difficult to get started on. Why?

One word: Heterogeneity.

Each device maker that uses Symbian provides their own development tools. Nokia has one toolset. SonyEricsson has another. Motorola has another. And so on. Even for Java, were it would be expected that there would be more homogeneity.

True, it is possible to develop on one platform and then deploy in many, but testing is a nightmare. You actually have to test on different emulators, and then the devices differ from the emulators (which in some cases makes the emulator moot). Some phones have different capabilities. It's not a coincidence that Symbian is so hot on J2ME, since Java makes it easier to develop portable Symbian apps by pushing them to a portable, lowest common denominator. But if you want to develop Java applications for Symbian's J2ME MIDP 1.0 implementation, you've got to get toolkits from Sun, then from the manufacturers, and then finally test against each phone, because, hey, they don't even implement things in the same way (such as Network sockets behavior). What's worse, a J2SE application will not port over in any way to J2ME. The only commonality is syntax, and some of the basic classes. This is a minor point though, since writing an application for a radically different UI (like that on smartphones) requires major redesign anyway.

Exacerbating these problems is the fact that there isn't a single information clearinghouse for Symbian development. Information is scattered all over the place, while Microsoft's is centered around a single site for all mobile devices (although device makers will probably add their own information as well for device-specific features). What's more, in the case of Symbian the most valuable information is not found on Symbian's site; it's found on the device makers' site, such as Nokia's developer site. But Nokia has not been, historically, an organization that understand developers, or development toolkits. It understands consumers. Symbian understands developers, but Symbian can't help you if you want to develop for a Nokia 3650. Symbian provides pointers to an incredibly confusing array of choices: toolkits, IDEs, language-specific articles, etc. Here, click on this link, they say, and all will be well. And then it isn't.

This is, in my opinion, the greatest threat that Symbian faces from Microsoft. MS's ability to move developers over from other Win32 platforms, particularly PocketPC, and its understanding of developer tools and the developer community, has to be countered by Symbian in some form, or it will end up suffering the fate of UNIX in the 80's.There is time, because Symbian enjoys a huge lead in deployment, along with the goodwill of developers.

How to fix it? One way would be for Symbian to create a single SDK, and include in it a single IDE base (such as Eclipse) to create a single reference development environment implementation that includes not only their own tools, but also Sun's tools for J2ME, along with plugins for each type of phone provided by the manufacturers.

One download. One system.

That's it. The barrier would be immediately lowered.

This SDK with IDE included would come with a plugin architecture (which Eclipse already has) so that every time a manufacturer deploys a new Symbian-based device, they also provide a new plug-in with an emulator for it, as well as the additional libraries that can be used on the device. Sure, if Metrowerks or Borland want to improve on that, they can. But the basic system would exist, and Symbian development would flourish.

Then everything should be wrapped up to be accessed from a single website (including developer forums) that deals with issues for the common platform as well as device-specific forums. All managed by Symbian. The device manufacturers' site would refer developers back to it. And so knowledge could be easily obtained, and shared, with the added advantage that companies like Nokia and SonyEricsson could go back to focusing on what the do best, which is developing consumer devices and not managing developer programs.

Categories: technology
Posted by diego on July 16, 2003 at 3:50 PM

the best movie you've never heard of

A few weeks ago I was talking with Patroklos, a fellow NTRGer, about Matrix Reloaded, when he said, "have you seen Avalon?"

I said: Avalon?

Patroklos then proceeded not only to tell me about it ("It's The Matrix as it should have been" was one of the things he said), but also helped me procure a copy. :-)

And finally yesterday (or, more accurately, early this morning) I had some time to sit down and watch it.

So what is Avalon? It's a fantastic science-fiction movie that is, as far as I'm concerned, a worthy heir to the kind of cinema defined by 2001: A Space Odyssey, and Bladerunner, although probably slightly more introspective than those two. Created by a (largely) Japanese crew, a well-known director of Anime who nevertheless opted for live-action, shot in Poland, with Polish actors, with dialog in Polish.

The director is Mamoru Oshii, who also directed Ghost in the Shell, one of the best Anime movies ever made (There is an official a website for the movie, with minimal information and a good trailer). As the movie begins, we get the following introduction:

The near future. Some people deal with their disillusionment by seeking out illusions of their own - in an illegal virtual reality war game. Its simulated thrills and deaths are compulsive and addictive. Some players, working in teams called 'parties' even earn their living from the game.
The game has its dangers. Sometimes it can leave a player brain-dead, needing constant medical care. Such victims are called 'unreturned'. The game is named after the legendary island where the souls of departed heroes come to rest: Avalon.

The comparisons with Matrix are inevitable but a bit regrettable. It's a different, and in many ways, better approach to the subject. The special effects don't get in the way. There is no grandstanding on the part of the characters, no overarching proclamations, and no explanations in the Hollywood style (as in most Anime, or as in Bladerunner and 2001). No need for a character like "The Architect" in Reloaded, in fact, a character like that would be completely out of place in Avalon.

In a sense, Avalon reminds me of ExistenZ, the David Cronenberg film that was released in 1999 close to The Matrix. More introspective, less in-your-face pyrotechnics that left you with more questions, and a greater sense of unease.

Sadly, Avalon hasn't been released yet, neither in theaters or on DVDs in English (although there are DVD versions in Polish of course, as well as others with Japanese and subtitled in some European languages, such as German). Apparently Miramax has acquired the distribution rights to it, so there could be a release soon. I'm not holding my breath though... I guess that with all the Matrix-related hype it would be difficult to release Avalon and not see it swallowed by it, or compared unfavorably to it by critics that would deride the ambiguous ending or the introspective nature of the movie. This is sad though: The Matrix didn't invent anything in terms of visual style, or in terms of story. All those themes already existed, obviously in literature, but also in movies and Anime. As I've mentioned before, there are many, many, many, "similarities" both in terms of visuals and in terms of story between Matrix and Anime classics such as Akira and Ghost in the Shell, and maybe this fact is what drove Oshii to give his own live-action take on the genre.

Anyway, an instant classic. I'll be eagerly awaiting a theatrical or DVD release. :-)

Posted by diego on July 16, 2003 at 1:17 PM

comments: to close or not to close?

A strange blog-effect I've noticed has been happening more often recently is that, if comments are left open on archived entries, people that arrive to the entry much, much later (either through a search engine, or through an old link on another weblog) will add their comments as if the topic was still ongoing. This is a problem, not only because they might check back waiting for a reply that will almost certainly never come, but also because as the number of entries with topic that could elicit discussion grows, it can easily become a burden for me to monitor them and, for example, make sure that the comments are not posting advertising or something like that.

Sometimes the comments are a note of appreciation for information given on an entry, or clearly made by people who know they probably won't get an answer since the discussion is not ongoing, but just want to add some more information. Other times though, those that post the comments almost certainly don't understand that this is a weblog, and as such it's personal. Some comments have asked more questions about the topic, others have criticized that more information isn't available on a given topic (!), others have at times asked for pricing information or wanted to purchase a device outright(!!), and so on.

One thing is for sure though: I have to think about a "comments policy", particularly for those that arrive here and don't know what a weblog is.
But policy aside, what to do? Close the comments after a period of, say, seven days? Stop using the comments altoghether and leave trackbacks? Any semi-automated scripts that anyone knows about for MovableType that can deal with this (since I'd have to begin closing the comments on more than a thousand entries)?


And, yes, yes: comments welcome :)

Categories: technology
Posted by diego on July 16, 2003 at 11:11 AM

cc beta2 r2 & other things

Just released to the devlist a new rev of beta2, this one fixing two important problems that appeared since the first rev yesterday (those are: layout changes, and the vanishing of the "new weblog entry" button).

In a comment, Jamie was asking me to stop stonewalling and start talking already about my experiences with Symbian/J2ME (of course, he was a lot more diplomatic :-)). That's definitely coming up, I've been reading up on the subject, and I'm getting a better understanding not only of some of the strategies (e.g., the whole idea of Profiles in J2ME, or why PersonalJava was canned) as well as the development tools, etc. Cool stuff. Comments will follow. :-)

Categories: clevercactus, personal
Posted by diego on July 15, 2003 at 7:03 PM

clevercactus beta 2 r1 internal release

farnsworth2.gif"Good news, everyone!"

clevercactus beta2 r1 has just been released to the cactus dev-list. Many changes and fixes for this version, and a few tantalizing clues about upcoming features (Screenshot in this earlier entry). The new dynamic tabs are in, as are the "Query Spaces" (persistent query-based spaces) and the much discussed horizontal email layout (the default is the "standard" layout though). Also: preliminary (n)echo support, OPML import/export...

Anyway, the plan is to do about a week more of testing on the release, and then go for public beta2.

Double phew! :-)

Categories: clevercactus
Posted by diego on July 14, 2003 at 11:22 PM

and so it begins

Wow. Yahoo! has acquired Overture. Back in february, when Google bought Pyra I speculated (not that it was terribly original of me, but anyway...) that Google and the Portals (Yahoo!, MSN, etc) were on a collision course. Certainly the Pyra deal seemed to be something that would affect Yahoo, and their purchase of overture seems to me to be a declaration that the niceties are over. Things are really going to get interesting now...

Categories: technology
Posted by diego on July 14, 2003 at 4:19 PM

1 + 2 = 367

I knew this would happen. I just knew. Subconsciously, maybe I even did it on purpose, so then I'd have to explain. And, hey! More blogging about blogging!

Friday, July 11, marked one year of blogging for me. I realized that on thursday (yes, the 10th) and I had this need to write something, and so I did. But what then? Publish it right at that moment? Didn't seem right. At all. I had transported my head to the next day somehow, to feeling whatever the "one year mark" meant, and I was back, but I couldn't set the entry to publish in fire-and-forget mode at later day. MovableType is wonderful, but it doesn't have that feature yet. So I saved it as a draft, and left it there, unpublished. For the next day.

Trouble is, the next day I didn't look at the list of drafts. I post mostly from cactus, ocassionally from the web, and both ways let me get directly to what I want to write.

Conclusion: draft went unseen. I forgot. Completely. Then today I was running, and I remembered.

I'm babbling about this because often I've started posts that maybe took a bit to write, and so were left in draft state, but when I finished them I simply saved them again without changing the publish state... and so I got to thinking that maybe there should be a way to associate a calendar event with a certain post. Would be useful for a number of things too... sounds like something interesting for cactus.

Random mindjump: I've been thinking about doing a small redesign to the blog, starting with removing the calendar widget. Can't seem to remember the last time I used it, on my site, or in any other site. It seems to me that if you tend to post more or less every day, it becomes a bit irrelevant.

Okay, back to the entry: I've just published it, and that's why it's showing up now (luckily MT keeps the dates for the drafts too).

And here is the link. Just in case. Anyway, I like the title of this entry at least, understatement, accuracy, hidden meaning, and a touch of math, all in one. :-)

Categories: personal
Posted by diego on July 13, 2003 at 5:17 PM


I just posted two entries in a row but there's a ton of other things I wanted to comment on... Symbian and what I think is its achilles heel, J2ME, MIDP 1.0, Symbian/J2ME SDKs, prototyping of network apps with RMI, RMI/UDP/TCP and Internet connections, and a number of other things. No time though.

Much to do... must... go... back.... to work...

Categories: personal
Posted by diego on July 12, 2003 at 4:35 PM

erik's favorite java bloggers

Erik posted a list of his top-ten favorite Java bloggers for his latest JDJ column. And what do you know... I'm one of them! Thanks Erik!

He should have counted himself too :), I doubt there's a better place to get news on almost anything tech (and especially Java and mobiles).

Categories: technology
Posted by diego on July 12, 2003 at 4:31 PM

woody's quote of the day

Alvy's Mother (to the Doctor): He's been depressed. All of a sudden, he can't do anything.

Doctor: Why are you depressed, Alvy?

Mother: Tell doctor Flicker. It's something he read.

Doctor: Something you read, eh?

Alvy (sullen): The universe is expanding.

Doctor: The universe is expanding?

Alvy: Well, the universe is everything, and if it's expanding, someday it will break apart and that would be the end of everything!

Mother (shouting): What is that your business? He stopped doing his homework!

Alvy: What's the point?

Mother: What has the universe got to do with it? You're here in Brooklyn! Brooklyn is not expanding!

from Annie Hall (1977)

Posted by diego on July 12, 2003 at 4:24 PM

A year of blogging

A year.

Sounds like a lot, sometimes.

On the other hand, calendars feel more anachronistic to me by the day. I'm not really affected about crop-cycles anymore (although, to think that this is also true for everyone, or even for a majority of a population of the world, would be self-delusion of ridiculous proportions). But it's a fun tradition, so hey, keep it up then.

Come on, stop with the cynical socio-historical commentary. How is it so far? The whole blogging experience?

Good, good! (whistles, attempting to look busy).

That's all you're going to say?

Apparently, yes.

Poohey. Whatever happened to self-expression, the free exchange of ideas, and so on and so forth?

Oh, come on. What can I say? The usual? About how blogging has affected my life? How I've found new friends through it? How I think that what we thought was cyberspace, that first look at a webpage downloading, wasn't? That is was just dead information, bits that glowed static on the screen? How I think that only now, that our digital life is coming on its own, related but independent of the rest, is when cyberspace is really happening?

How I still can't explain what the hell blogging is, exactly, and yet I can't seem to stop doing it?

Well, everybody knows that. And if they don't, they should. I should too. I tend to forget sometimes (they tell me that's not so uncommon). I tend to be so immersed in other things that I sometimes, just sometimes, forget about what's going on inside myself. Or that's what it wouldd seem. Other times, I realize that maybe the world is changing so radically that the pervasiveness, the ease, of communication, is reshaping not just our sense of community, but also our sense of self. As if we didn't have enough problems...

Hey, you're getting a little preachy there...

Who isn't preachy? But okay-- point taken. To let someone else do the talking, here's a piece of monologue from the movie Hurlyburly (which can be easily mistaken for a misoginistic/misanthropic movie, but that, on closer inspection, reveals that not only it really cares, but that it also longs for a world were those two words, among other things, are turned into historical artifacts).

We've got Eddie (played by Sean Penn), ripped and totally drunk, rambling:

I mean... the Aborigines... had their problems too. Sure. You know... tigers in the trees... dogs after his food... and in the middle ages... everybody really had to worry about ... witches and goblins. But we have this stuff eating at us. We've got stuff we don't even...

I mean, why do you think that all the warlords of the world are so anxious to get their own personal little stash of chemical weapons? They call them weapons of mass destruction, but they're not. They are very, very selective. Chemical weapons are very careful about what they destroy. They anihilate ...people... and preserve... things. They loooove things.

You and I would be dead. Gas. Puke. Gone. Whereas, you know, other, earlier, older people... the ancients... could look to the heavens... which in their minds was inhabited by this ... thoughtful, meditative, you know... maybe a trifle unpredictable and wrathful... but nevertheless up there... this divine onlooker.

We've got... anchorpersons and... talking heads. We've got politicians who decide life and death issues on the basis of their media consultants. That's what we've got.

To which Bonnie (played by Meg Ryan, in one of her few non-insipid roles) replies, a little later:
You know if your manner of speech is any way a reflection of what goes on inside your head, you're lucky you can tie your shoes.
Okay, so can you tie your shoes?

I was taught how to do it, like everyone. But then I lost track somehow. Discovered other methods. Engaged in shoe-tying research. At some point (years ago) I used those fancy ones with Velcro, which I later found out to be made in sweatshops around the world and consequently grew disgusted with, and threw away... and I ended up slightly disgusted with the whole shoe-tying experience. Like everyone else, I still have to tie my shoes once in a while, but when I can I use loafers.

I definitely prefer loafers.

You know what I meant. I wasn't talking about shoes.

Me neither. :)

Categories: personal
Posted by diego on July 11, 2003 at 5:05 PM

the SCO-Sun deal

Last week I was wondering why SCO seemed to be going easy on Sun Re: their ongoing "let's get everyone who uses Linux/UNIX" saga.

Today, I got my answer. Hm.

Categories: technology
Posted by diego on July 11, 2003 at 12:15 AM

google takes over SGI campus

And this from the let's-go-shopping dept.: SGI announced a deal with Google for a lease of their Mountain View campus. Cool!

I used to live right across Highway 101 from the SGI campus, and generally went rollerblading there on the weekend. It's a really nice place, next to the Amphitheater, a small lake (windsurf!) and good trails.

By the way, aren't we supposed to be in a recession or something? Tsk, tsk, tsk... :-)

Categories: technology
Posted by diego on July 10, 2003 at 11:04 PM

rss performance improvements

New cactus beta2 feature of the day: RSS-download performance improvements! Aside from tweaking the parsing a bit, I was reading Mark today, and he was reminding everyone about some bandwidth- and performance-tips for RSS readers, including use of conditional GET (which Dylan first brought to my attention last year) for HTTP and GZIP encoded streams. So now cactus beta2 supports both. Huge difference in check times for feed changes, and for download times when there are changes.

And, btw, I've also added GZIP streams support to this site (after a bit of fiddling, as usual, the docs for the configuration are all over the place). Two in one: Bandwidth saver -- and a good way to test cactus!

Categories: clevercactus
Posted by diego on July 10, 2003 at 12:18 PM

clevercactus beta 2

Lots of improvements, fixes and new features coming up for clevercactus beta2. Because an image is worth more than a thousand words (and because I won't be able to write a thousand words), here's a screenshot. In it, among other things: the new tabs (the tabs are back! :)), the new horizontal layout, and display of a necho feed (actually, Mark's prototype necho feed). And, before anyone starts on how the horizontal three-pane view is bad, here is a screenshot taken a few seconds later but with the "standard" view; the layouts can be switched on the fly (through the View menu). New things in different areas, too (and the screenshots contain a hint of another upcoming feature...).

So, more updates soon! In the meantime, back to work. :)

Categories: clevercactus
Posted by diego on July 9, 2003 at 9:48 PM

redefining the term "computer virus"

In a comment to my previous entry on linux/unix viruses, Jim said:

Well that's what you get for mixing up your terminology. It used to be that "computer virus" referred to something that spread due to user action (as opposed to "worm" which does not require human intervention). Now it's just a catch-all for anything nasty that happens to a computer.

A virus, in the classic sense, cannot affect unix-like systems very well, since it's extremely rare for executables to be writable by normal users or transmitted between machines.

Worms, on the other hand, are typically spread through network services, and are not bound by normal restrictions or usual use patterns of users.

Yes, it's possible to create ELF viruses. No, it's not a problem in practice. It's valid to say that unix-like systems are resistant to viruses in the extreme, whilst acknowledging that they are still susceptible to worms. Anybody who conflates the two issues, as the author of this article did, needs to learn a thing or two.

I realized that I should clarify when I wrote the post; that is, that I think that what we call "computer virus" has evolved--then I simply forgot. Well, now it deserves its own entry. :)

Jim is technically correct as far as current terminology is concerned, but in practice I disagree: the differences we used to give to "worms", "trojans", and "viruses" no longer apply. They're all viruses. Let me explain.

I was thinking of "viruses" as the word is used in biology. Quite simply, any organism that can self-replicate, but that requires a host (host in the biological sense) to survive (as well some "function" of the host to self-replicate). The fact that we called viruses those that self-replicated through (say) EXE infection and that we call worms those that self-replicate through, say, an Apache bug, is simply a historical quirk. Mostly, in general terms, we were making the distinction between infection that required humans (ie., X sending Y an infected file, Y executing the file and thus infecting the system) from infection that didn't (like most internet worms these days, e.g., SQL Slammer). Probably one problem is that we tend to associate virus with sickness (and worms have been so far bothersome but not overly destructive), but not all viruses create problems, and in fact it's been speculated that they are an important element in allowing information flow within the gene pool of a species, and even cross-species. (Not that computer viruses are useful for this too, but wouldn't that be nice... :))

In reality, if we are going to borrow the term virus from biology, it's the worms that should be called viruses, since they can self-replicate across hosts, and in any case most if not all viruses these days have "worm" qualities mixed in. A good example are outlook viruses: they can transfer autonomously, but require human activation (running the executable file).

Probably the article's author should have made this clarification, but I think that it's about time we put the all these different categories together.

So, in my opinion: worms, viruses, trojans... They're all computer viruses, if we understand viruses as akin to their biological cousins. Some are more effective than others at self-replicating and transfer across hosts. But they all belong to the same "family" of "organisms". :)

Categories: technology
Posted by diego on July 9, 2003 at 11:46 AM

viruses in linux/unix

Interesting article on viruses in Linux/UNIX. It reminded me of something that I had forgotten: the first worm (a.k.a "mostly harmless" --to quote Douglas Adams-- networked virus) ever launched was a UNIX worm, in 1988, and it could also be argued that it was the first virus to be globally effective.

Categories: technology
Posted by diego on July 9, 2003 at 8:14 AM

a new particle

I didn't see anything about this last week in other places (or maybe it hasn't been widely reported?), anyway: a new particle, the pentaquark, has been found. Quote:

James Joyce would have been delighted. Quarks, one of the basic building-blocks of matter, were named in the 1960s after a line from his novel “Finnegans Wake”—three quarks for Muster Mark!—because they were then thought to come in three types (the number is now known to be six). Protons and neutrons, however, do consist of three quarks each. And physicists have now discovered a particle that is made of five quarks—a bit of a promotion for Muster Mark.

Categories: science
Posted by diego on July 9, 2003 at 12:30 AM

summer night--almost

Really humid, and warm. Is it high pressure, or low pressure? One of those. The air feels dense, recycled, and I'm right next to the river, which tends to be a sort of high-speed wind corridor. I imagine that a couple of blocks from the river it must be even worse. On the plus side, this kind of weather is not conducive to sleep, which helps, since I wasn't planning to sleep much tonight. :) I assume that by around 4 am it will be better, since I can already feel a slight cool air current.

Okay, enough with the weather report. It's just that it's been a year since I've "seen" this climate here, and it doesn't happen often anyway.

Categories: personal
Posted by diego on July 8, 2003 at 11:43 PM

necho & OPML in cactus

Today I added (among other things) preliminary necho support for the aggregator in clevercactus. It didn't take long, and detection of the feed type is transparent like before with no problems, which is basically what I expected.

Another important addition for the aggregator side of cactus is the new OPML import/export feature, or as I call it, "the Russ feature" since Russ has been its most vocal advocate :). Just like email import is essential to try out a new email program, an easy way to import (and export) of a user's feed subscriptions is also crucial to try out the aggregator. (OPML is actually a generic outliner format, more flexible than to be used only for subscription lists, but it's widely used for that anyway, and many news aggregators allow import/export to it).

Looking good so far. I'll probably post a screenshot later today, or tomorrow.

Categories: clevercactus
Posted by diego on July 8, 2003 at 9:35 PM

blogs in the workspace

The New York Times reports that weblogs are good for communication. Wow! Amazing!

Posted by diego on July 8, 2003 at 12:07 AM

on wired

A Salon article on the new book on Wired. Gotta read it. I can still remember getting that number that had a drawing of Earth and "The Long Boom" as its title. Sure, it was hype. It was still a rush.

Categories: technology
Posted by diego on July 7, 2003 at 10:16 PM

champagne and a limo

So I'm out for my run, about two hundred meters from the (south-east) entrance of Phoenix Park, and there's a white limo there, 30-feet long maybe, the driver is standing outside of the car, mobile glued to his ear. This is around 3:30 pm on a monday, mind you, so it's a bit remarkable, but I don't dwell on it. I keep running.

About half an hour later, I'm coming back, and the limo is still there. The driver is still on the phone.

On the other side of the road there's a group of several people talking animatedly. I slow down, and watch more carefully. I notice a man on my side of the road, walking next to the limo back and forth, apparently measuring its length. The driver's back is to us, and I'm no longer running, just walking fast. This is getting weird, I think.

Across the road, I notice movement again. A car just missed someone. Focus there.

Three girls: two of them teenagers, the other maybe twelve years old or so. The three dressed in white. All of them beautiful. The hurry across the road as a car gives way. Then I notice the two older girls are holding something... the one in front has two champagne glasses, half-full. The other one has two bottles of champagne, open, also half full. I can hear the clinking of glass against glass. The younger girl runs ahead of them, jumping ocassionally, for a few metres, then stops. Next to the limo. When I look again for the man that seemed to be measuring, I see him walking away.

Through all this I keep walking, so now my neck is rotated some sixty degrees and it's getting to be too much, but for whatever reason I don't stop.

I hear them laugh. The driver turns around, says something. Opens the door. The girls get in the limo, the clinking glasses and the bottles getting in with them, and the driver closes the door behind them.

I keep walking, now looking ahead, but every once in a while, until I reach the park's entrance I look back at the limo, still parked there. For a moment I have this strong feeling that I've suddenly walked into a David Lynch movie. I keep walking...

Hallucinations? Too much coding perhaps? Lack of oxygen supply to the brain?

I'm all for the universe being weird, quirky and/or unpredictable, but this is too much. I demand an explanation!

Categories: personal
Posted by diego on July 7, 2003 at 3:56 PM

the three-pane question revisited

There were some good comments to my entry a few days ago "the three-pane question", as well as great posts in other weblogs from Eugene (of JetBrains, the makers of the excellent IDEA) and from Cristian. Thanks to everyone for the feedback.

Both Eugene and Cristian think the UI is good given the correct implementation, while some of the comments on the entry are against it (such as Russ's, or Bruno's). My personal intuition is that this change is good. There are all sorts of theoretical UI-reasons I can come up with for why the linear three-pane is better than the "old" version. For example, the eye-movement effect, that is better (particularly for western readers, without left-to-right writing/reading system), or that it's been studied to death how we read faster and how eyes get less tired when they have to move less horizontally (If you don't believe it, pick any book from your shelf. Count the words a few sentences at random. You'll rarely find more than 11 or 12 on average, maximum. This is not a coincidence).

What I find the most interesting, however, is that several comments in the entry felt that they'd have less real-estate for the content-viewing area, which is not the case. A simple example: look at the first drawing in the post, with the "classic" three-pane view, and assume that the first level pane has a width (at the base) of 1, while the second level pane has a height (at the far right) of 1 as well. Then assume that the height/width ratio of the display is 4:3, a standard TV or monitor (not those new fancy widescreen monitors though...) Okay, so the total area is 12. The area for the first-level pane is 3, the area for the second-level pane is 3 (because one unit is lost at the beginning from the 1st level pane, so 3 by 1). The content-view pane is 3 by 2, area 6.

Now, same widths for the second case: 1 at the base for both the 1st and 2nd level navpanes, which leaves 2 of width of the content pane. Area of 1st level nav: 3. Area for 2nd level nav, 3, area for content pane: 6.

Every single area is the same. Doesn't look like it, does it?

However, now, if you want to see more rows you can (by showing only one line per row) or if you want to retain almost the same level of information and still show more rows, you can do that too. No space lost.

All that said, some people might have their own reasons for why they'd prefer to keep the old UI (resolution used, or simply more comfort, and after all, that's what UI design is all about), so providing choice on the matter is probably a good idea. :)

Besides, there are other issues very specific to email that also have to be taken into account. This display mode is great for flow-formats like HTML, but in the comments Adrian pointed out that the display of quoted text emails would almost certainly require horizontal scrolling.

I've been playing on-and-off with an altogether different possibility, I'll post more details when I have processed it enough to explain it coherently.

I will add this though: I think that one of the problems with making an objective analysis of the linear three-pane UI (for everyone, for, or against it) is that it doesn't look radical. Where's the 3D? Where's the VR? Where are the visual gizmos? You call this "innovation"? We have sort of come to expect a certain "revolutionary" feel from UI changes over the years, and the linear three-pane UI disappoints there.

Anyway. More later!

Posted by diego on July 7, 2003 at 12:48 AM

film is dead - not!

Salon: Film's not dead, damn it!:

[...] Remarkably few people have bothered to ask cinematographers -- the people who should know best -- what the technology's current strengths and limitations are. People like George Lucas like to think they're on the vanguard of these new methods and modes of filmmaking. But it probably hasn't occurred to most moviegoers that the "Film is dead" movement may be more strongly driven by forces in the marketplace than by artistic considerations.
Related note: I always think about how little widespread appreciation (beyond the Oscar or Golden Globe nods, that is) the makers certain crucial elements of movies get. Like cinematography. Like music. Anyway :) a good article on the hype and reality of digital technologies for cinema, and how the confusion between creation, post-production, and projection has muddled the argument.

Posted by diego on July 7, 2003 at 12:01 AM

why (not)echo is important -- part 2

Last week I posted a comment with my views on why, necho is important. It was done from a more technical point of view, but the arguments ended up in what's really important anyway: the users, because in the end it's about creating useful applications, interoperability, etc.

I was reading Steve Kirk's open letter to the RSS community and I thought I'd elaborate on one the points on that I have mentioned before, (and, as I've also noted earlier Jon Udell made similar comments recently), that I think is getting lost in the discussion, and thus muddling things a little. To see the rest of my argument, please refer to the previous entry I mentioned above.

Before going on: Steve puts forward the idea of creating a standards body for the current formats. I agree that would be the ideal case, but it's plainly clear that at this moment it can't happen. I think everyone, from their side of the fence, would agree with that as well. As I've said in one of the posts I referenced above:

I think there's no doubt that Echo's happening, which is good. Also, there's no doubt that, ideally, it would be better if the process involved less infighting and was more evolutionary.
So, the reality is that we were not going anywhere before. The reasons aren't important at this point, and I don't want to dwell into a discussion that has been going on for long enough, and one in which, plainly, there can be no "winners". What matters is where we are today, and how to go forward from here.

On to what I was really going after, what I consider a point that has been largely ignored in this "compatibility" discussion.

The point is this: creating a new weblog syndication/API format will not be disruptive for users.

Why do I say this?

Consider the state of things today: weblog tools generate feeds in any of several formats (sometimes in more than one). The BBC uses one format. The New York Times uses another. When tools or sites provide information in different formats, they are, in fact, incompatible.

Do users know this? Do they care?



Because tool providers have evolved to deal with a situation of multiple formats, and support all of them transparently. I know, because I've written software that works that way. All other aggregators do the same.

So the fact is that, today, users are not being directly affected by the multiplicity of formats, because we, the developers, have evolved to support a splintered market in a consistent way.

In the previous paragraph I said "users are not being directly affected" because they are being affected indirectly. How? Mainly, through the extended development time that supporting multiple formats mean for developers, and consequently less time to be able to do new things.

So how does this reality affect the necho/RSS argument?

In my opinion, it gives us a good indication of what will happen when necho is "released". Tools will start to support necho as well as RSS. The formats will coexist, just as RSS 0.91 and RDF and RSS 2.0 coexist today. Furthermore, this coexistence will be transparent, just like today. Over time, necho will, hopefully, become the standard. In the meantime, there will not be a major catastrophe of incompatibility (although we can't rule out minor problems). Eventually, some of the other formats might become less used, and will be phased out (this is something that is already happening, for example, with the transition from RSS 0.91 to RSS 2.0). And because, currently, RSS is being almost exclusively used for updates and regenerated constantly at each endpoint, there will be little if any switchover cost, again, as an example of this I put forward the transition from RSS 0.91 to RSS 2.0 that happened last year. (This is a point on which I disagree with Steve, who makes comparisons to Linux and Windows, which I think is innacurate. The cost of switching binary formats is of a completely different order than the cost of switching RSS, as I've mentioned here, and as clearly shown by the RSS 0.91 to RSS 2.0 switch, which happened late last year).

Obviously, it's on us, the developer community, to add necho support without disruption, and it's not a problem. After all, we are already doing it today, and moving most (hopefully all) tools into necho will eventually reduce work for developers in the future, allowing us to, finally, concentrate on improving the tools rather than on how to let them connect to each other.

Note: As I said in the previous entry: this is an emotional subject for many people, so I'd appreciate it if the comments, if any :), remain on-topic, that is, they talk about the text itself, or the ideas, rather than about the people that stand for/against an idea, both for comments on comments, or comments on the entry. Thanks.

Categories: technology
Posted by diego on July 6, 2003 at 5:47 PM

addicted to data?

From the New York Times: The lure of data. A flood of comments about this came to mind: the consequences of technology, or not, but more importantly feedback loops created by extra tasks put on workers, which then increases waiting times for people that need their results, which then leads to people wanting to do other things while they wait... anyway. Maybe later. Back to work. No. I wasn't multitasking. Seriously. Oops, phone rings...

Categories: technology
Posted by diego on July 6, 2003 at 11:19 AM

the price of technology

Every once in a while news re-surface about the seemingly neverending conflict in Congo. Mostly it's European media (The Economist in particular keeps up on the subject), but in this case it's a Salon article on the war and the lack of engagement of the International community:

[...] The statistics of the war there are staggering: More than 3.3 million lives lost in five years, and more civilian deaths in one week than in the Iraqi war to date, according to a recent report by Watchlist, an international coalition of nongovernmental organizations focused on children in armed conflict. It is the deadliest conflict since World War II, and although a South African peace plan has been discussed, few are optimistic it will work.
And what fuels this war? Why does nobody press for intervention? Well, money, of course. The money made from large deposits of non-renewable resources, such as diamonds, or rare minerals used in high-tech devices. All our wonderful technologies built on the blood of innocents. Cell phones, computers, you name it.

This is not a tirade or anything, by the way, but it's something I've been thinking about for a while in different contexts, and I'll probably come back to this in the near future. But to begin with...

What I've been thinking is that In the tech world we are missing an element of responsibility, we haven't accepted the fact that we are creating tools that both exacerbate problems (enviromental, economic, wars, and so on) and are also used for unsavory ends (While it's an oft-repeated mantra that the US military is the best in the world, what I don't hear often is that this superiority is entirely due to technology, not forces. Even the North Korean army has at least half a million men more than the US Army).

Just as the scientists of the Manhattan project realized what they'd done and then called for controls, we should begin to take a step back and consider the results of our relentless drive for the next cool thing. A while ago Bill Joy made a similar argument in an article in Wired called "Why the Future doesn't need us" (a must read), but he was referring to nanotechnology and its potential future perils. I tend to agree with the counterpoint presented by Jaron Lanier in One Half of a Manifesto. His counterpoint, also worth reading in full, might be expressed (only half quizzically) as: "We can't get our machines to stop crashing, much less are they going to take over the world," or, as he himself puts it in the article, that "cyber-armageddonists have confused ideal computers with real computers, which behave differently."

But while I tend to agree with Lanier I also think that Joy's argument has an important kernel of truth in it (and he might still end up being right about nanotech), which is this: we have yet to take responsibilities for any of the technologies we create. While we demand limits to, say, research on genetics, we have no problems with people that design ever-faster supercomputers. But if you ask me, when you consider the immediate end result , in which advanced technology is immediately (and perhaps inevitably) used for military purposes, or creates an imbalance in society that later leads to suffering, then the super-computer designer should have as many constraints as the geneticist, if not more.

Idealistic? Sure. In fact, I'm also a hamster in the tech-wheel, running madly. I enjoy creating new things, and using cool gadgets. But somehow we need to start considering how to deal with this, to start assigning value to creation, and stop creating just because Moore's law sounds like a dandy way to live, or, pretty soon, we'll realize that the high-tech industry in general and Computer Science in particular has created its own Manhattan project to look back on and be terrified at, and stayed complicitly silent about it.

Categories: science
Posted by diego on July 6, 2003 at 1:51 AM

woody's quote of the day

Doctor: When did the changes being to happen automatically?

Zelig (wearily): Years ago. St. Patrick's Day. Wandered into a bar. Wasn't wearing green. They made remarks. I turned Irish.

from Zelig (1982).

Posted by diego on July 6, 2003 at 12:46 AM

heads down

Close to a new release of cactus, I tend to run the latest version on my own datastore (a way of catching problems early, as well as eating my own dog food (unline others) and this sometimes has the effect that I'm not checking my email (or getting RSS feeds, or seeing calendar events) as often as it would normally happen.

Well, one of the reasons for having a calendar is so that you can simply forget about upcoming things and there is less pressure in your mind to remember things. This is not a problem for me generally because I remember everything anyway, unless...

Unless I'm working, or writing. If I'm in the zone, hours can go by wihtout me noticing at all. Today, it happened. I'm working (since I woke up relatively early), and I decide to take a break. I fire up cactus.


Event. I don't even have to look at it. I know. The Dublin bloggers meeting for this month. I look at the watch.

4 pm.

Damn! I really wanted to go.

Until August then. :(

Anyway, I'm going to have dinner soon. While concentrated, aside from ignoring events, I also tend to ignore ages-old survival habits (in the hunger-gatherer sense of the word). You know. Like eating.

Categories: personal
Posted by diego on July 5, 2003 at 6:10 PM

reloaded on IMAX

A while ago I read somewhere that a technology was under development to convert standard 35 mm (or 72 mm) film for IMAX projection. The first movie to be converted was Apollo 13. Now it seems that Matrix Reloaded has been converted too, and will be showing in London starting today. There is an IMAX theatre here in Dublin, in Parnell St., but I've never seen it open. Oh, well.

Posted by diego on July 4, 2003 at 9:28 AM

ozzie on mobility

[via Francois]: Ray Ozzie on Extreme Mobility:

I believe we're currently in a transition period for personal computing: from a tethered, desk-bound, personal productivity view, to one of highly mobile interpersonal productivity and collaboration, communications, coordination. We're focused right now on devices and networks because we're coming at the problem bottom-up: preoccupied by gizmos and technologies' capabilities rather than focusing on how our lives and businesses and economies and societies will be fundamentally altered.
The article also includes an interesting summary of the evolution from Notes to Groove.

Categories: technology
Posted by diego on July 4, 2003 at 9:08 AM

the great leap

[via Karlin] An article from the guardian on the change in human behavior that resulted in our dominant status today:

60,000 years ago [was] the low point. Then there were as few as 2,000 humans in existence. The worst time in the history of our species; one we nearly didn't survive.

Categories: science
Posted by diego on July 4, 2003 at 8:59 AM

the problems with extreme openness

The last couple of days I've been slightly frustrated with the NotEcho process, and I've identified two problems that exist in my opinion, and I'm proposing my solutions.

Problem One, the discussion has no direction. There are multiple elements discussed by multiple groups simultaneously, and key decisions are being made by people who have never written a tool, or have their own agenda for echo, precluding input from more relevant people, such as those from Blogger or MT. Take for example the decision on how to treat comments (as entities of their own, or another type of entry). This discussion was dead for a while until I added pointers to it into a couple of more "travelled" pages. Then a few people (about 12 through the whole process) started talking about it. Then a conclusion was reached. I tried to bring out more discussion, but kept getting the same replies (things like "I don't understand why you oppose this") when I was making clear that while I understood the theoretical reason, I couldn't easily see the practical application for weblog tools today. Somehow the idea of "supporting social software" got in the way (since everything is possible for software that doesn't exist), and from there productive discussion was more difficult, although in the end I did agree that it was an acceptable solution. But even if I accepted the solution chosen, it still bothers me. Why?

A "consensus" has been announced, with a grand total of eight (yes, that's 1000 in binary) votes cast. None of the votes has been from a major weblog tool maker. (And, as far as I could see, I was the only one who had implemented an aggregator in that discussion. Not that this makes me special or something, but I do think that it changes my perspective since I have a bigger stake on a useful solution that might sacrifice generality but be easier to implement and maintain, and that will actually be used by weblog tool makers).

Am I the only one that thinks that this is a bad way of making decisions?

Proposed solution for problem one. Discussion will take place in a single place each day, or for a period of time (clearly announced in the frontpage); other parts of the wiki remain open and people can comment on them, but no conclusions can be reached on their topics until they are "lit up". Preferably, someone (I propose Sam Ruby) should be voted as "Benevolent Dictator for Life" for the project (Life here meaning v1.0) and the BDFL will be the one who calls when a consensus is reached in something. Also, the BDFL can declare an issue over if it seems that no consensus can be reached (see Problem Two), and restart the discussion at a later date.

Problem Two, many votes, in many situations, are coming from people who, while smart and well informed, have no "investment" in how practical using Notecho becomes, or whether something makes sense from a practical, rather than a theoretical, point of view. Some vote, but give no identity, which makes voting ridiculous (After all, with hundreds of updates a day, who can keep count of what's real and what's not in the Wiki?). In at least one case that I identified, a person making "serious" arguments and voting, and arguing forcefully about direction had actually started a weblog only a few days ago. Consider the current discussion (if it can be considered a discussion and not a fistfight) over XML-RPC. It quickly became "an issue" on which people who had never participated before in nEcho suddenly turned up to vote, which is ridiculous. Many of those people have not contributed anywhere else.

Proposed solution for problem twoWe need a mechanism similar what open-source groups do for allowing checkin privileges. Is this unfair? I don't think so. Apache seems to work remarkably well, doesn't it? And besides, everyone is not "equal". Can we seriously think that the votes of, say, Tim Bray, Sam Ruby, Dave Winer, or Mark Pilgrim count exactly as much as a bozo who doesn't even want to identify him/herself? I don't think so.

The NotEcho process is open, probably a bit too open. A bit less speed on decisions, fewer simultaneous discussions and better control of how "consensus" is defined, and making sure that those that vote have earned it, will be a plus for everyone, and will improve the final result.

Categories: technology
Posted by diego on July 3, 2003 at 9:34 PM

say again?

Trevor Marshall talks to an SCO VP on the trial, and what is SCO really after. A weird-feeling, unsettling article. The evasive responses of the VP in question don't just show what other things SCO has in mind, but also how ridiculous it is to try to establish derived work rights of the kind SCO is talking about. As Marshall keeps asking ("so, is BSD a problem too"? "is this clean"? "Is that clean"? he keeps getting answers such as "Well...") except, amazingly in the case of Sun. "Sun is clean" he says. Sun, whose software includes elements originally done by Bill Joy, who in turn did that work in (and in fact, was responsible for) the original BSD distribution. Sun, who also sells Linux machines.

I don't understand. Is this because of the way Sun handled its licenses with AT&T or something? Or because they didn't? Mystery.

Categories: technology
Posted by diego on July 3, 2003 at 2:43 PM

why (not)echo is important

Daniel was commenting on yesterday's surprise announcement by Blogger that they are dropping their 2.0 API in favor of NotEcho, and among other things he said:

No one has pointed to any benefit of all this work, something that can't currently be done, that will make for a compelling new feature for my/our users. Anyone? I'm not asking you to reveal your new killer feature, but to remain at essentially the same place I'm at now, I'm being asked to rewrite to support "notEcho". Where's the upside for me? I'd like to understand. No politics. Just tech. Thanks!

There have been other arguments about this elsewhere, but I thought it would be useful to give my point of view. So here go my reasons for supporting NotEcho, and endorsing it for use within the software on which I work.

No politics. Just tech.

My view is simply that of a developer, and my reasons for thinking that NotEcho is good are simple (but I'll try to be thorough in laying them out, so the explanation might not be as simple as the reasons :)); here are the most important.

clevercactus, allows both reading of RSS feeds and posting to weblogs, so I've experienced both sides (ie, "reading" and "writing") of this situation in the last few months.

Right now, to support reading/writing, a tool has to read three different weblog syndication formats, and even within the same format some components vary in how they are represented (e.g., Dates). Furthermore, since specs are ambiguous about certain things mean (e.g., link v. guid) the parsing has to be a bit too lopsided.

The blog API situation is even worse. Theoretically Blogger, MT, and Radio support the blogger API, and both MT and Radio support metaweblog. You'd think that at most I'd have to support BloggerAPI and metaweblog. But that's not the case. Again, differences in spec, ambiguities, etc., mean that the MT implementation differs from the Radio implementation. Actual code examples of the differences can be seen in the blogging APIs mini how-to I wrote up back in May, where (at Sam's suggestion actually, in the comments to my original review of blogging APIs :)). The reasons for the discrepancies may be technical, or they may very well be political, I don't know. I don't care either. At this point, this is the situation, and it's what we have to live with.

So, three tools, three implementations.

LiveJournal has its own API. Another implementation.

And so on.

Not good.

Now, according to the RoadMap, NotEcho will be supported by all weblogging tools. Blogger dropping 2.0 is excellent news: it shows their commitment to the new spec, which includes assigning people to work on it. SixApart is also involved, and it will include NotEcho support in their upcoming TypePad service as well as on MovableType. Dave has (tentatively) stated that he will recommend UserLand to support the format. LiveJournal, which currently has its own (more powerful) API will also support it. And although the process through which NotEcho is being developed at times seems to be a bit chaotic, it is clearly open to anyone (this is not a comment on whether other processes were/are open or not, simply it's an important quality of NotEcho), all of the information is in one place, with additional discussion happening on Sam's weblog. This helps immensely in involving other tool-developers and providing a channel through which they can participate, further increasing the likelihood that support will grow in the future. And the high level of (promised) support for echo today, the good foundation in which it stands for the future, and the clear "balkanization" of the current implementations, leads me to my first reason.

As an example: Clevercactus already has RSS 2.0 and metaweblog support, which allows it to interoperate with several, but not all, tools (example: LiveJournal). But by adding NotEcho support (when it's done) clevercactus will be able to interoperate with all tools using a single API, both for reading and writing. That means, across the board, a single system that works with all the others. This is an eminently good reason as far as I'm concerned.

Tech reason #1: Use of a single format across multiple tools means less code to develop, debug, and support, both for content syndication and creation. This benefits users directly in that we can spend less time spent implementing the same newPost() method in different ways and more time to provide good products for them, or work on new features.

I mentioned earlier the problems with spec-ambiguities. These are found both on the RSS spec and on the BloggerAPI/MetaWeblog specs. Before anyone goes ballistic, I'll acknowledge that there is debate on this point as well (as we can see in all the acrimony in the comments for Mark's post 'leave RSS alone' today.) But the debate only illustrates my point: whether it's actually properly spec'ed or not, or whether it's because of political problems, or a bit of both, the end result, the plain fact, is that there are different views on how things should work. This means support problems.

This point, summarized, is: even if everyone was using only a single set of specs, say, metaweblog/RSS 2.0 or even Blogger API 1.0/RDF 1.0, there would still be incompatibilities due to actual or perceived ambiguities in the specifications.


Tech reason #2: A full, unambiguous specification of all components of weblogs (syndication formats, APIs, etc) will also improve interoperability; it's not enough with everyone using the same spec. Just like today you can look at a call to a POP server and decide if it's standards-compliant or not, we should be able to look at a feed, or ar the functions provided by a tool and decide if it's compliant or not. This will also save time for developers and improve the user experience.

A final tech reason for me is to properly codify (as per Tech Reasons #1 and #2) emerging practices that are simply not possible today. A specific example has to do with comments and trackbacks.

Both comments and trackbacks are growing in use as a way of enriching interaction in sites. Neither comments nor trackbacks are properly defined in RSS 2.0 (for reading) or in the metaWeblog API/Blogger API (for writing). This means that I simply have no standard way of providing client-side functionality for comments, since I can't support each person's implementation of a comments feed. Since the RSS 2.0 spec is frozen (as are the other specs) there is no way this can be supported with the current spec.

Tech reason #3: An update of the specs to include concepts currently in wide use (that is, a codification of current practice, allowing room for extensions based on it) is both important in its own right and eminently useful technically, to provide new functionality and improve creator/consumer tools to the next level.

As a postscript: reasons #1 and #2 seem to depend on everyone adopting the format, but that's not the case. Even if half of the tools mentioned in the roadmap adopt NotEcho initially, it would still be a win, since a larger number of products would be able to interoperate.

Note: This has proven to be a bit of an emotional subject lately (for a section of the blogsphere at least...), so I'd appreciate it if the comments, if any :), remain on-topic, that is, they talk about the text itself, or the ideas, rather than about the people that stand for/against an idea, both for comments on comments, or comments on the entry. Thanks.

Categories: technology
Posted by diego on July 2, 2003 at 8:44 PM

the sound of java

For reasons I won't go fully into at the moment <wink>, I've been looking at the JavaSound API, and of course, looking for information all over regarding known problems, best-practices, etc. I got a strange feeling when looking at the information; information was updated but not quite.... Even information on the J2SE 1.5 roadmap for javasound seemed a bit... half-hearted.

Then I found this article/entry/whatever ( is great, but with the weblogs in there sometimes I can't tell whether it's a personal bullhorn or really a weblog, since often they don't really post often... anyway) by Jonathan Simon where he discusses the history of the JavaSound API and the state it's currently in.

First of all, my own experiences with JavaSound haven't been as bad as he describes (constant crashes, etc), quite possibly (almost certainly) because I don't use any advanced features of the API.

So, if the state of JavaSound so bad? It seems to me that the criticism against Sun on this regard is for not turning Java into some kind of super-sound-processing platform. But is that really necessary? IMO, no. We need good, stable support of the basic functionality that works well across all platforms. Adding advanced features should be well behind this, a distant second priority.

As I've argued before, Java at this point needs, more than anything, to provide consistent user experience across platforms. It starts with an invisible installer, but it should continue with consistent behavior of the JDK across platforms. The Swing team has done a great job of making Swing work consistenly across platforms (adapting when necessary), but there are things missing yet (some hooks into common platform-dependent elements, such as taskbars, wouldn't be a bad idea). JavaSound could improve in stability and in supporting some features in software rather than depending on the hardware. From there on, we can worry about adding real-time sound processing.

Posted by diego on July 2, 2003 at 11:17 AM

Matrix Reloaded -- the abridged script

Whether you liked Matrix Reloaded or not, this version of the script is a must-read. Watch out for the best part of it close to the end, when Neo meets "The Explainer". Hilarious.

Posted by diego on July 1, 2003 at 9:07 PM

woody's quote of the day

What does money got to do with it? I've got enough for a year ... if I live like Mahatma Gandhi. My accountant says that I did this on a very bad time. My stocks are down, I'm cash poor, or something. I've got no cash flow. I'm not liquid... something is not flowing. I don't know, but those people got a language of their own those guys.
From Manhattan (1979). (Audio .au, 160 KB)
Posted by diego on July 1, 2003 at 7:49 PM

Copyright © Diego Doval 2002-2011.