Archive for the 'intentional web' Category

Tuesday, January 23rd, 2007

On language design…

A semi-random thought that occurred to me.

One marker of a well-designed markup language is that it looks to the future. This doesn’t mean it’s an amorphous blob of abstract indirections mapped to tags. It can (and arguably should) be concrete and solid, but designed in such a way that keeps bigger things in mind.

HTML and XHTML are, I suppose, canonical examples of this, giving birth to microformats and many other uses outside of a browser. -m

Tuesday, January 23rd, 2007

My .02 on Wikipedia and nofollow

The nofollow setting on an outbound link should be a user-editable option, subject to the same community process that all other content on wikipedia already is. (Site guidelines, dispute resolution, restricted editing on certain articles for unregistered users, etc.) By default, links would get nofollow, but over time, they could be ‘blessed’, perhaps after a certain amount of time or human review. Wasn’t this how nofollow was supposed to work in the first place?
The community process works. Why maneuver around it? -m

Wednesday, January 10th, 2007

Open Questions

And a few not so open…

Q: Does the iPhone (or specifically the desktop-grade Safari browser) make the “mobile web” obsolete?

A: The “mobile web”, as we know it today, will become obsolete without any help. Things change. Devices improve. That said, the context in which one uses the web is different, and there will always be a need for some sites to have mobile-specific versions, even after the day every mobile browser is desktop-grade.

Q: Does the advent of desktop-grade mobile browsers mean that today’s mobile development is meaningless?

A: No. The race is on today, and the winners will be those who can make the most users happy. That includes users who–for several more years–won’t own hardware capable of desktop-grade browsers. The winner on this playing field will have any easy momentum play to carry over to the next one.
Q: Will the iPhone “cannabalize” iPod sales?

A: Goodness, no. People who buy one will be either 1) buying it instead of an iPod, or 2) not. The Cingular CEO said it was a “multi-year exclusive” deal, signed sight unseen. In other words, Apple had incredible leverage to get a good deal. Their subsidy on the 2-year contract is probably significant, maybe in the $300 range, possibly a lot more. So would you call selling a $800-900 device instead of a $200 one cannabalization?

Q: What does this mean for XHTML-MP and XHTML Basic?

A: That’s a tough question. In the end, it will boil down to momentum. Today’s successful mobile development necessarily involves XHTML. Once browsers get better, nobody is going to re-write their sites in worse markup, though some might attempt to merge with the main site. (Another open User Experience Design question is the degree to which it will be possible for one site to work in a different, mobile, context.)

Q: What does this mean for Mobile Web Best Practice and mobileOK?
A: Like the “mobile web” both of these specs-in-progress will become obsolete without help. But now they are going to look increasingly obsolete at an accerated rate.

-m

Monday, December 4th, 2006

UC Berkeley - what I talked about

Last week, I visited Erik Wilde, Bob Glushko, and students up at Cal. No major announcements, just some sharpening of discussion points.

Since this was my first visit to Berkeley, I finally got to tell the joke “thank you for your OS”. Maybe you had to be there.

The intentional web is a formalism for describing “why the font tag is evil”. I often work with 3rd party integration languages, and the markup design is, without exception, crap. I hypothesize that the reason for this is jumping into solution-space before fully understanding problem-space. This seems to apply to lots more than just font tags; I lumped in WML and about half the world’s ajax sites for good measure.

Microformats are a formalism for describing “why creating a new markup language for my CD collection” is evil. Could XForms have been done as a microformat? No, microformats require a strong intentional foundation language, and HTML forms ain’t it. Is the proposed W3C approach an instance of “a deadly two-pronged attack”, a la Yahoo! Photos + Flickr? We’ll see. It does seem like that road leads to a namespace apocalypse, highlighting the fundamental difficulty namespaces hoists on attempts to usably extend HTML and XHTML at the same time. A namespace apocalypse may not be a bad thing.

On namespaces, I went over most of the points from my recent article. I won’t rehash that here.

What are some practical and implementation issues around XForms or the lack thereof? Focusing on mobile, as reason #1 I gave the lack of commercial-grade java browsers, discussed here previously. The state of mobile browsers is appalling, other than Opera and S60. Terms like “model” and “field” are troublesome, because the confuse the problem domain (the real world) and the solution domain (the computer). Browser vendors have been too inwardly-focused, both now and during the first attempt at salvaging HTML forms, leading to a premature jump into solution-space. But perhaps XForms dwelled for too long in the problem space…

Maybe I’ve mellowed some, but increasingly I’m able to look at both sides of issues. A useful skill for Information School students, wouldn’t you agree? -m

Sunday, November 26th, 2006

Micah visiting UC Berkeley

This Wednesday, I’m visiting Berkeley to speak with visiting professor Erik Wilde and his School of Information students. It’s an open-ended discussion, but will almost certainly center on XForms, the intentional web, and related information flow technologies. If you’re in Berkeley this Wednesday, drop me a line. -m

Wednesday, October 18th, 2006

Experts: Don’t try to copy Web 2.0 on phones

Link. My comment: “duh”. In fact, don’t even try to copy Web 1.0 on phones. Even the concept of what’s uable differs on the small screen. -m

Thursday, September 28th, 2006

11 Best Practices for URLs

Article (with a non-best-practice URL) from seomoz. If you’re into this kind of thing, Web 2.0 The Book has an entire chapter on it. Nitpick: Also note how normal folks say URL, not the even-more-geeky URI. -m

Wednesday, September 6th, 2006

Mark Birbeck: ‘Ajax makes browser choice irrelevant’

A must-read posting from Mark Birbeck, who knows a few things about XForms and Web Forms 2.0.

He talks about the respective approaches embodied in XForms and Web Forms 2.0, and concludes that the primary difference between them has little to do with simplicity. He goes on to analyze differences in how developers and users view browsers. Go read it, it’s worth it. -m

Wednesday, August 16th, 2006

Web 2.0, The Book on Amazon

Listed with a pub date of December 6, 2006. (Eric let me in on this link.) The tech editing is out the door, and things are moving along. -m

Tuesday, August 8th, 2006

Datacratic

Still tech editing the final pieces of the Web 2.0 book. Such a huge part of what people mean when they talk about Web 2.0 is the ugly term “user-generated content”. As many have pointed out, all three words comprising that phrase are inaccurate or obtuse (or both). We need a better term.

How about datacratic, or rule by data?

By itself, “data” isn’t such a descriptive word, but I like how it fits in here. Also the so-called users aren’t directly mentioned, except by reference to demos from a similar, if overused, word.

Could you see yourself using the term? -m

Tuesday, July 18th, 2006

XForms 1.1 and mobileOK

Word on the street is that some of the new stuff in XForms 1.1 is fantastic. Also on my to-carefully-read list, the mobileOK Scheme. As always, any thoughts welcome here. -m

Tuesday, July 18th, 2006

The right way to do Ajax is declaritively

Write up by Duncan Cragg. More and more momentum is building for this meme. -m

Tuesday, June 20th, 2006

More _Power of No_

The Rise and Fall of CORBA, seen at the ACM.

To create quality software, the ability to say “no” is usually far more important than the ability to say “yes.”

Sound familiar? -m

Monday, June 12th, 2006

Conversations with people you don’t know

To me, the true power of the web is in mediating conversations between parties that have never met.

I consider it a success when a new name posts a comment–and comments have been picking up here. -m

Wednesday, June 7th, 2006

The devastating two-pronged attack

It’s no secret that Yahoo! has two different photo sites. And two different social bookmarking sites. Until pretty recently I thought this was craziness. But gradually I’ve realized the power of this approach.

You take a smaller, hipper embodiment of an idea alongside a mainstream site. The resulting double-threat can’t easily be matched be either fresh startups or entrenched players. The smaller site can keep innovating and experimenting away, while the larger site adopts the best ideas and keeps improving without freaking out their base. It’s effective. Car companies have known this for years.

Now, my second realization: The W3C is doing the exact same thing with XHTML 1.x and XHTML 2.x+XForms. -m

Monday, June 5th, 2006

Still crazy after all these years

Part of tech reviewing means dusting off a Windows machine again. I haven’t done more than check email or run Quickbooks online on a Windows machine since I was writing my book in 2003. Remarkably, Windows XP is still the latest desktop OS available. But it needs updates.

Checking my update history, I had 37 updates installed, with Windows Update insisting on installing three more things including “Genuine Advantage”. Reboot. Yay, now I’m advantaged. Apparently the main new feature in Windows Update is a five-minute “Checking for the latest updates for your computer…” screen. Next Service Pack 2, which has to be installed separately.

This is taking a while, so I have time to re-appreciate the nuances of the Windows UI. In the system tray, I see room for six icons, but only four present. (Clicking the little arrow, though, causes a wiggle, with six icons showing in the same space; after a second, another wiggle and back to four). All of the icons are blurry, two of them enough that I have no idea what they’re supposed to represent.

I couldn’t make stuff like this up, but it blue-screened 73 minutes into the ordeal. Unbelievable. On the bright side, it did recognize that the whole Service Pack didn’t need to be downloaded again.

As an aside, the crash tool suggested that I run the Windows Memory Diagnostic tool, so it’s possible the blue screen was hardware related. Amusingly, the Windows Memory Diagnostic tool is exactly 640kb. If you don’t get the tragic coincidence, post a comment and I’ll tell you. :)

The second run through installing Service Pack 2…blue screens again, this time with some USB error. Upon rebooting, a Windows Setup screen draws little dots for several minutes while “restoring previous configuration”, and the desktop warns me ominously that the system is in an “unstable state”, and that I need to go to Control Panel -> Add/Remove Programs and uninstall SP2. The uninstall program helpfully warns me that lots of programs, including “hearts” and “solitaire” toward the top of the list, might stop working, but I bravely press on.

Reboot again. 640×480 resolution, and all kinds of messages like “found new hardware — disk drive”. On the change resolution screen in Control Panel, the “OK” and “Cancel” buttons are off the screen. And another reboot to get networking set up again. At this point I’m three hours wasted, six reboots, and I have nothing to show but an even more unstable system and Genuine Advantage. Wheeeee! At what point does Microsoft throw the “rewrite from scratch” swich? The saga continues, check comments on this post. -m

Friday, June 2nd, 2006

Web 2.0, The Book

Still in development, but I have clearance to blog about a forthcoming Web 2.0 book. So far I haven’t seen a good book that covers all the technical angles of Web 2.0, from designing URL spaces to Ajax to proper use of HTTP. I’m tech reviewing this book, so I have high expectations for it.

Far more impressive than my meager contributions, however, is the list of authors (in no particular order):

  • Eric van der Vlist
  • Alessandro Vernet
  • Danny Ayers
  • Joe Fawcett
  • Erik Bruchez

That’s a lot of XForms folks. Hmm. :) As you’d expect from a Web 2.0 book, we have tags.

I’ll have more details later–chapters are already rolling in and I have work to do. Keep your eyes open, it’s coming soon from Wiley. -m

Friday, May 26th, 2006

XHTML2 and XForms presentations

Steven Pemberton has done several recent talks on XForms,

XForms tutorial at XTech and WWW

The Power of Declarative Thinking - same slides for the talks at XTech and WWW

I attended at least parts of both of the WWW talks, and I can report that they were well-attended and well-received. -m

Monday, May 15th, 2006

del.icio.us vs. blogging

My friend Kimbro Staken has mostly stopped blogging, instead relying on del.icio.us. Several others on my RSS reader are trending similarly.

Until very recently, I was doing the same. For me, posting links is a way of keeping the ‘pilot light’ burning when I didn’t have enough time to do full postings–on del.icio.us, posting a link, writing a short description, and clicking in a few tags takes 30 seconds. One can do it without interrupting whatever task led you to an interesting URL. But only once in over six months was that enough to stir up some discussion.
And discussion is what I want to stir up again, hence more focus on the blog. Thoughts? -m

Sunday, May 7th, 2006

Postel’s Law, AI, and crashing

Some semi-random Sunday thoughts. Why is it that a badly-formed web page will probably still work, but a badly-formed software program (say, a browser) will for certain kinds of bugs crash hard?

I think the answer comes down to intent. Even with a missing quote or closing tag, it’s still mostly obvious what should be done with a web page. Different browsers might make different assumptions resulting in different render trees, which ain’t good, but neither is it catastrophically bad.

On the other hand, if a software program attempts to, say, write to memory it doesn’t own, a serious error is hand. Attempting to continue could seriously compound an already-bad situation. Why is the program trying to do this? Here the intentional gap is far wider. For example, trying to save an open document might overwrite the still-good-on-disk version with random garbage. No, in the face of serious bugs, the only reasonable course is to cut the losses and terminate the program on the spot, ideally saving a core dump for later human inspection.

So, what if, someday, the hard-AI problem is solved (though I prefer cultured intelligence or “CI” to “AI”–consult my audio show for details on that). Say you have a future version of the Linux kernel, and an intelligent supervisor program. Now, if a memory access error occurs, the CI can take a look, consult the source code which it has handy, and figure out exactly what’s going on. In the case of minor errors, the stack and variables can be patched up, bugs automatically filed, and life (and the misbehaving program) can continue on. In the case of serious errors, at least things could be more gently shut down.

Far fetched? Perhaps. Things like Amazon mechanical turk make me think that the only thing to be gained by solving hard AI would be ecomomic (including turnaround time) efficiencies. Then again, sometimes making something more efficient enables its use in entire new realms. Imagine taking the same system, and unleashing it on the non-well-formed web… -m