Tim’s Weblog Tim's Weblog
Tim Strehle’s links and thoughts on Web apps, managing software development and Digital Asset Management, since 2002.

We need a universal canvas that doesn't suck

Jon Udell at InfoWorld - We need a universal canvas that doesn't suck:

"While e-mail dissolves barriers to the exchange of data, we need another solvent to dissolve the barriers to collaborative use of that data. Applied in the right ways, that solvent creates what I like to call the “universal canvas” -- an environment in which data and applications flow freely on the Web.

Here’s the best definition of the universal canvas: “Most people would prefer a single, unified environment that adapts to whichever environment they are working in, moves transparently between local and remote services and applications, and is largely device-independent -- a kind of universal canvas for the Internet Age.”

You might expect to find that definition in a Google white paper from 2006. Ironically, it comes from a Microsoft white paper from 2000, announcing a “Next Generation Internet” initiative called .Net."

Wed, 29 Nov 2006 14:01:50 +0000

Choose RELAX Now

Tim Bray - Choose RELAX Now:

"Everybody who actually touches the technology has known the truth for years, and it’s time to stop sweeping it under the rug. W3C XML Schemas (XSD) suck. They are hard to read, hard to write, hard to understand, have interoperability problems, and are unable to describe lots of things you want to do all the time in XML. Schemas based on Relax NG, also known as ISO Standard 19757, are easy to write, easy to read, are backed by a rigorous formalism for interoperability, and can describe immensely more different XML constructs."

Tue, 28 Nov 2006 09:14:29 +0000

Microsoft XML Notepad 2007

Chris Lovett - XML Notepad 2007 Design:

"I finally got around to fulfilling a promise I made to a friend at MSDN. Back in 1998, we shipped an XML Notepad, written by Murray Low in C++. Later on it fell behind in support for XML standards and, because we didn't have time to fix it, we pulled it off MSDN. But Murray apparently did such a nice job that MSDN was inundated with requests to put the notepad back up, so MSDN asked me for a replacement.

I've been working on System.Xml in C# since 1999, so I figured I could crank out a replacement using the .NET Framework pretty quickly. Well, the problem was it was one of those side projects on my "one-day" list — you know how that goes!"

Fri, 24 Nov 2006 16:11:30 +0000

Sphinx - Free open-source SQL full-text search engine


Generally, it's a standalone search engine, meant to provide fast, size-efficient and relevant fulltext search functions to other applications. Sphinx was specially designed to integrate well with SQL databases and scripting languages. Currently built-in data source drivers support fetching data either via direct connection to MySQL, PostgreSQL, or from a pipe in a custom XML format.

Sphinx features

  • high indexing speed (upto 10 MB/sec on modern CPUs);
  • high search speed (avg query is under 0.1 sec on 2-4 GB text collections);
  • high scalability (upto 100 GB of text, upto 100 M documents on a single CPU);"
Thu, 23 Nov 2006 22:09:41 +0000

Scalable PHP with APC, memcached and LVS

Mike Morgan - Scalable PHP with APC, memcached and LVS (Part 2):

"In our journey with addons.mozilla.org (AMO) we made some interesting group decisions a year ago that we regretted later:

  • Smarty
  • PEAR::DB

PEAR::DB was unnecessarily large, and Smarty is just not worth it — it confuses the issue and redoes things PHP is already good at using arbitrarily complicated syntax. Any quick run through with something like the Zend Profiler or APD will tell you how much of a dog these things can be. If you haven’t already, I highly recommend profiling your app to see where you’re losing performance — I bet it’s mostly in includes."

Thu, 23 Nov 2006 22:06:55 +0000

The S stands for Simple

Pete Lacey - The S stands for Simple:

"SOAP Guy: On the bright side, nobody uses the Doc/Lit style anymore. In order to get transport independence back we’re all using wrapped-doc/lit now. Doesn’t that sound cool: wrapped-doc/lit?

Developer: What’s that?

SG: Well, it’s just like Doc/Lit, but you take the whole message and wrap it in an element that has the same name as the operation. Now the operation name is back in the message where it belongs.

Dev: Okay, where’s the spec on this?

SG: Oh, there is no spec. This is just what Microsoft seems to be doing. Looked like a good idea, so now all the cool kids are doing it."

Fri, 17 Nov 2006 07:29:59 +0000

Tantalizing hints of the Knowledge Navigator

Jon Udell - Tantalizing hints of the Knowledge Navigator:

"It's all compelling stuff, but there's something about Avi Bryant's [Dabble DB] maneuver that shouts Knowledge Navigator. In this 90-second excerpt from the screencast, you can see how Avi hoists data right out of a web page and weaves it into a structured view. So natural, so powerful. How can we not have this capability always and everywhere?"

Wed, 15 Nov 2006 21:20:10 +0000


Tue, 14 Nov 2006 23:13:23 +0000

More structured metadata

Jenn Riley - More structured metadata:

"I often encounter people who see my job title (Metadata Librarian) and assume I have an agenda to do away with human cataloging entirely and rely solely on full-text searching and uncontrolled metadata generated by authors and publishers. That’s simply not true; I have no such goal. I am interested in exploring new means of description, not for their own sake, but for the retrieval possibilities they suggest for our users.

[...] I’m a big fan of faceted browsing. The ability to move seamlessly through a system, adding and removing features such as language, date, geography, topic, instrumentation (hey, I’m a musician…), and the like based on what I’m currently seeing in a result set is something I believe our users will be demanding more and more. But we can’t do this if that information isn’t explicitly coded."

Mon, 13 Nov 2006 12:01:40 +0000

That’s Not Write

Sam Ruby - That’s Not Write:

"I’ve known for a while that pretty much all the browsers don’t implement document.write when found in the context of XHTML documents — even in the case where both the enclosing document and string are separately well formed."

Sun, 12 Nov 2006 20:52:05 +0000

Apple Xserve: The final review

Tom Yager at InfoWorld - Apple Xserve: The final review:

"While trends, or rather, the analysts who proclaim them, are pointing to the triumph of software as a service, outsourced applications, consulting, node-locked operating systems and other pay-as-you-go approaches, Apple is piloting a rocket-powered sled in the opposite direction.

Apple is going to sell complete server platforms that buyers purchase, operate themselves and actually own. Seriously. [...] There are no subscriptions, no priority update service fees, and no client, device, mailbox or CPU licenses."

Sat, 11 Nov 2006 23:43:29 +0000

Comparing Frameworks

Tim Bray - Comparing Frameworks:

"Maybe it’s just because I’m a grizzled 25-year veteran, but my feeling is that in the real world in the long term, maintainability is a really really big deal, the biggest of all.

Out there in the wild woolly “Web 2.0” world, maybe getting it built quick is all that matters, because after you’ve knocked ’em dead and been acquired, you can use the money from the Yahoo! buy-out to rebuild everything right the second time. In the enterprise though, I kind of suspect that smart developers and smart managers know that for real apps, the big development cost starts to happen after they’re delivered."

Sat, 11 Nov 2006 22:48:58 +0000

The Next Web?

Simon St. Laurent at XML.com - The Next Web?:

"Developers who craft smart APIs on their servers for use by AJAX-based web pages can then expose those APIs to other developers, getting the benefits of better interfaces for users who use web browsers to consume the data and for users who have their own custom programs consuming the data. Depending on how carefully the developer models AJAX transactions on traditional web HTTP transactions, these services even look a lot like the REST approach proposed earlier for web services."

Wed, 08 Nov 2006 15:32:00 +0000

A Tour of Microsoft's Mac Lab

David Weiss - A Tour of Microsoft's Mac Lab:

"I'm going to write a little bit more about what I do to help MacBU ship great software and provide some color around what's it's like to work on Mac software at Microsoft. Often when we have press events or special visits from our MVPs I'll give them a tour of the Mac Lab and explain what we do. They've always found it very interesting and so I thought I'd share a virtual tour of our Mac Lab."

Wed, 08 Nov 2006 15:25:00 +0000

Web apps, just give me the data

Jon Udell at InfoWorld - Web apps, just give me the data:

"Scraping data off Web pages can be effective, but it’s far from ideal. Although we think of the Web as a rich trove of data, the pickings are depressingly slim if you want to transform or recombine that data. And there’s no good reason why that should be so. It’s easy to make data available for reuse by human analysts or automatic services."

Wed, 08 Nov 2006 15:12:14 +0000


Sam Ruby - Trade-offs:

"Contrary to what some will lead you to believe, I submit that it is possible for a query to be simultaneously SOAP, REST, RPC, POX, and transmitted using HTTP POST. And all this could be done with or without a WSDL document or an XML schema."

Tue, 07 Nov 2006 19:54:56 +0000

IBM Lotus Expeditor

"Lotus Expeditor software (a release planned for later in 2006) provides client and the corresponding server-side connectors for these capabilities:

 * Composition. Provides comprehensive universal managed client software for service-oriented architecture (SOA). It can be used to build and deploy composite applications containing components of all types—from Java™ Foundation Class Swing, text terminal, Microsoft Visual Basic and ActiveX and applets to native or Web views like Asynchronous JavaScript and XML (Ajax), Adobe PDF, Java Server Pages and forms. As a result, you can create a visually integrated view and integrated workflow within the composite application—using processes contained in your back-office applications."

Thu, 02 Nov 2006 13:36:31 +0000