Bright Eyed Mister Zen
Kimbro Staken's thoughts on technology

My Sites
Interesting People

Subscribe to "Bright Eyed Mister Zen" in Radio UserLand.

Click to see the XML version of this web page.

Click here to send an email to the editor of this weblog.


Tuesday, August 27, 2002

I just posted an update to the Google Channel for Jaguar's Sherlock. I cleaned up the results a bit and added a much better summary pane so it might actually be useful now. It also returns the results in the right order and no longer chops off the first result. The UI is still not what I would do if I had any control over it, but it's workable until the Sherlock SDK gets released.

For people who subscribed to this it should update automatically. It definitely will update if you close Sherlock and reopen it. Hopefully, there's also a way for it to update while the App is running, but I'm not sure how it works yet.

Since this version is much more useful, here's the install instructions again.

The Sherlock URL to add this channel to Sherlock. sherlock:// In Internet Explorer you should just be able to click the link and it will automatically add it. Other browsers may or may not work (Chimera does, Omniweb doesn't). However, you can add it from within Sherlock under Sherlock : Preferences : Subscriptions, click Add and then use this URL.
7:44:39 PM    comment

Monday, August 26, 2002

I forgot to mention on the Google thing. The built in Internet search channel that comes with Sherlock actually has code to search Google, but it's commented out.
3:59:15 PM    comment

While I've been hacking around with Sherlock I managed to put together a new search channel to search Google. In every sense of the word this is a hack since Apple hasn't released the Sherlock SDK yet. The main problem is altering the UI elements. Without the SDK you can't open the nib files in Interface Builder so I used the AppleCare channel UI and hacked it with a hex editor to change some of the strings. The scripts are easy once you battle through the weird conglomeration of Javascript and XQuery that they are using. Anyway, to use the channel it's really easy.

Here is the Sherlock URL to add this channel to Sherlock. sherlock:// In Internet Explorer you should just be able to click the link and it will automatically add it. Other browsers may not work, but you should be able to add it under Sherlock : Preferences : Subscriptions, click Add and then use this URL.

This channel is an experiment and really only exists because I wanted to figure out how Sherlock works. Once Apple releases the SDK it will be possible to build much more compelling examples. BTW, if anyone knows where I can get the SDK please let me know.

What this does is search Google and return the first 100 results. Clicking the search button again will return another 100 results and so on. Single clicking an item shows the abstract in the bottom window and double clicking it opens it in a new browser window.

There are a few caveats with this. The relevance column isn't used, it's just there because it's part of the AppleCare interface and I couldn't remove it. Search results aren't returned in the same order that Google returns them, I'm trying to figure this out.

Now the interesting part about how Sherlock works is that if I update the channel it should be updated automatically in Sherlock. This provides a way to offer limited functionality applications with native Mac OS X GUIs and strong web services support via a centrally managed mechanism. Other then the Google pieces, all the logic for the channel runs within a constrained environment within Sherlock. You don't have full native access to the local PC since it would be horribly insecure. There is much more that can be done here then what Apple is currently using. In environments where Mac OS X is the main OS, Sherlock should become a tool for many things well beyond toy apps like searching Google. I'll try to explain more on what I mean in the future.
3:50:17 PM    comment

Changing the Zen of Programming. I can remember when a program was developed as a single, self-contained and monolithic piece of code. But the way we program is changing. Our tools are changing, our requirements are changing, and the environments in which our programs are deployed are changing. [osOpinion]

This is something that programmers really need to accept. The concept of managed code (as Microsoft calls it) is here to stay and within the next ten maybe even five years will be by far the most dominant way of developing software. The way software is developed right now sucks and it's the programmers who are keeping it that way by trying to "stick to the metal" in the name of performance. We need to get away from this way of thinking and accept the next level of abstraction as the norm. Writing OS kernels in C is one thing, but believing that is the way forward for writing end user applications is a dead end.
1:22:16 PM    comment

Karsten Januszewski from Microsoft floats a trial balloon for using UDDI to locate RSS files. [Scripting News]

Wow talk about beating a dead horse. RSS is popular because it's simple and because it's simple it's easy for people to understand and put to work. UDDI isn't any of those things and because of that has no place around RSS. In fact UDDI really just needs a bullet to the head to put it to rest.

Want a useful way to discover RSS feeds? Just put a HTML page on your site, say here is my RSS feed and I like to talk about XYZ. Make sure the page is accessible to Google and a thousand times more people will be able to find your feed then if it's in any stupid UDDI repository.

Want programmatic discovery? Somebody can write a 20 line spec that provides a template for the page and use Google as a web service. Make it simple enough and people will do it just because it only takes five minutes to put together. It takes more the five minutes just to figure out what UDDI is supposed to do.
12:52:19 PM    comment

Sunday, August 25, 2002

I take back half of my complaint about command-tab. It still sucks that Apple removed the ability to override it, but they fixed it so that it toggles between the most recently active applications. That's exactly how I wanted it to work.
12:48:43 PM    comment

New XPath, XSLT and XQuery drafts. The XSLT, XPath and XQuery working groups have put out a great deal of new work, including updated XSLT 2.0, XPath 2.0, XPath and XQuery Functions and Operators, XQuery 1.0, XPath and XQuery Data Model, XPath and XQuery Formal Semantics, XQuery Use Cases and more. [xmlhack]

Yay, a new mountain of specs from the W3C.
11:50:36 AM    comment

Argh, in Mac OS X 10.2 Apple made it so that you can't override the command-tab functionality. The way it works by default just sucks and the app I was using doesn't work anymore with that keystroke. The author is saying that Apple made this change to prevent it. Getting my fingers to adjust to using option-tab is driving me crazy.
11:22:09 AM    comment

When I started playing with Sherlock I quickly realized that it would be very handy to be able to open it to a particular channel automatically. For instance I think the dictionary channel is very useful and would like to be able to have a hot key associated with it. You can do this using sherlock URLs.

Sherlock defines its own URL schema (sherlock:) that the Finder can use to open it to a particular channel. You can even specify the query to use. The URLs look like sherlock:// and if I wanted to search for a definition on the term "browser" I can do sherlock://

Here are the names for the default channels.
AppleCare -
Dictionary -
eBay -
Flights -
Internet -
Movies -
Pictures -
Stocks -
Translation -
Yellow Pages

For most channels adding query="terms" to the URL will work to perform the search, but for others it's different. For instance on translation to set the Original Text field you use sherlock:// Using zip, usually works where an address is involved. I'm not sure what the rest are yet.

These URLs work from within the Finder and from Internet Explorer, unfortunately Omniweb uses its own URL parser and complains that it doesn't understand the scheme.
11:14:54 AM    comment

In of all places, as part of Sherlock. It isn't exactly clear to me why they chose to use XQuery for this, but it's there. You can read about it in the documentation for building Sherlock channels.

The odd thing, at least in their examples, they don't even really use it as an XML query language.
10:17:09 AM    comment

Another new thing Apple brought along with Jaguar is a checkbox in Interface Builder to enable the use of the metal look and feel in custom apps. This means you can build your own apps to look like Apple's iApps. I've personally always been a little lukewarm to the whole metal look thing, but it's kind of interesting to play with.

Now since they made this a simple checkbox in Interface Builder, you can also get rid of the metal look in apps or add it to those that didn't have it before. Here's a screen showing the new Addressbook and Sherlock in both normal look and metal look. Addressbook usually has the metal look, and sherlock now doesn't (thought it used to before they made it a Cocoa app). I'm not sure how Apple chooses which app gets which look.

Because of the way Mac OS X apps are built you can try to alter any Cocoa app to do this. If you try it, definitely make a copy first and change the copy. This is really a harmless change, but I'm not sure how Apple's updater will work if you change the apps.

You just need to find the nib file for the window you want to change, open it in Interface Builder click on the title bar of the window and then either check or uncheck "Textured Window". Save the nib and load the App and it should use/not use the metal look.

To find the nib, you have to open the bundle for the application by using the finder and then choosing "Show Package Contents". The nibs are under Contents/Resources/{language}.lproj, where language is the language you want to change. You might need to open a few nibs to find the one that contains the main window for the app.

Is this useful? Probably not, but I didn't like the fact that Apple made the new calculator have the metal look so I changed it. So far, the only App I tried this on that didn't work was Omniweb.
10:03:59 AM    comment

I wasn't planning on picking up Jaguar right away, but I just couldn't resist. Installation went without a hitch and the performance improvement is incredible. The added features are nice too, but it's mostly the little things that are better in this release. It's funny, I thought OS X was pretty polished already, at least visually anyway, but Jaguar has improved it even more. The slightly altered look of the aqua elements is a nice improvement, not a huge change, but nice anyway.

The one new app that I'm really interested in is Sherlock. Not because of what it does, but because of what it could do. I was never that interested in Watson because it's based around a more complex plugin architecture for its apps. Sherlock is much different in the way it works. It's more like a web browser where the UI is a native GUI instead of HTML forms. Integration logic comes from Javascript and of all things, W3C XQuery. It will take a while to see the potential, but Sherlock is a much more interesting App then most people think.
9:47:07 AM    comment

Wednesday, August 21, 2002

NeoCore Adds Muscle to XML Database. eWeek Aug 19 2002 10:17PM ET [Moreover - XML and metadata news]
8:25:33 AM    comment

XML Efficiency, Alternatives. In which the author finds some pointers to the previously fuzzy assertions he was making about research at Almaden, and considers whether maybe XML might in fact such in some contexts. Sort of. [Meerkat: An Open Wire Service]
8:18:43 AM    comment

Saturday, August 17, 2002

A couple great Cocoa apps. NetNewsWire a very cool RSS aggregator and MacJournal a pretty slick journaling/note taking application. Even cooler, both are freeware.
5:34:37 AM    comment

I love Mac OS X Cocoa apps and really don't care much for most Carbon apps. Because of this I'm on a quest to convert all my software to Cocoa. It's going to be tough, but Cocoa is what Mac OS X was really made for. One thing I really want to dump is Microsoft Word. So far the best Cocoa replacement looks to be Okito Composer. It's a nice simple word processor that works on RTF files. It probably only does 1/100 of what Word does, but for me it might be good enough for most uses. I'm definitely not a power user of Word because I hate it so much. Okito Composer isn't quite stable yet, but it does look promising. Hopefully there are enough Cocoa fans around to buy it so that the author can keep improving it. Also I really hope they don't strive to match the epitome of software bloat (i.e. Word) feature for feature. I'm sure I'll have to keep Word around to open .doc files that people insist on sending via email, but I sure don't need it's bloat for the simple documents that I create.

Pricing for Okito Composer: Free version - free, Lite version $29 ($23 pre-order), Pro version $79 ($39 pre-order). Final release sometime this fall.
3:11:06 AM    comment

So what happened with Liberty Alliance? It's been a few weeks since they released their specs. Did anyone even notice? I took a look at the specs and they didn't look as bad as I expected. Of course, I'm not interested enough to actually study them in any depth. Is anyone working on open projects to support this? Does the licensing even allow it?
2:21:30 AM    comment

Computer programmers rally for open-source bill. Nando Times Aug 16 2002 4:48AM ET [Moreover - Open source news]

Is this a good thing?
2:13:30 AM    comment

If like me you have been thinking more about the realities of moving to Mac OS X 10.2 next weekend, you may want to take a look at Jason Snell's Macworld Review: Mac OS X 10.2 "Jaguar". It offers a good overview of the new OS for those of us who haven't been playing with pre-release versions.

[Mac Net Journal]

I haven't actually decided when to get Jaguar yet. I'm a little worried about whether or not my printer is going to work. It's a Samsung laser and barely works with 10.1. Buying a new printer is just not in the budget, especially with the cost of Jaguar. At least I can get it for the educational price this time, but even $69 is more then I want to spend on software right now.

BTW, if you're in the market for a cheap laser printer for Mac OS X. Do not buy a Samsung ML1210. It works, but printing is horribly slow. It works much faster under Windows XP which bugs the hell out of me.
2:10:07 AM    comment

Being free, but confused.. Joe GregorioI took the GNU GPL and LGPL Licensing Quiz and only got 4 out of 9 correct. I don't know if this quiz is such a great idea, after doing so poorly on the test and reading my mis-interpretations of the licenses I'm pretty leary of using the GPL or LGPL for any project. [Found via diveintomark] [Sam Ruby]

I tried this too and got 5 out of 9. It's always quite disappointing to find a cool piece of software and then discover it's licensed under the GPL. It's even worse when it applies to infrastructure bits, especially Java. This is why Apache is so strong, the infrastructure bits are truly reusable. GPL is not only a killer for commercial software but also for truly open software like that under the Apache license.
2:02:40 AM    comment

Friday, August 16, 2002

XML Journal is running a readers choice awards survey. It's quite amusing how Software AG products are winning almost every category. For some reason I just can't believe that of the total 447 votes cast, 332 of those people actually use Tamino and think it's great. The best one, the 301 votes for the Tamino Developer Community under best educational web site. Only 99 votes for, hmm...
6:38:09 AM    comment

Friday, August 9, 2002

There's an Ask Slashdot running about Open Source XML Databases. It seems the poster really wants a relational XML bridge rather then a native XML database. One good open source solution for that is Ronald Bourret's XML-DBMS. Alternatively eXist has a relational backend and Xindice has a pluggable filer system that enable the creation of just about any backend you might want.
4:34:55 PM    comment

SP2N Corporation has released XMLAcl Server 1.0. Their description of this is "Access control and Administration to XML database". It sits on top of Xindice or eXist, but apparently ships with Xindice.
12:55:27 AM    comment

Click here to visit the Radio UserLand website. © Copyright 2002 Kimbro Staken.
Last update: 8/27/02; 7:44:49 PM.
This theme is based on the SoundWaves (blue) Manila theme.
August 2002
Sun Mon Tue Wed Thu Fri Sat
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Jul   Sep