I know it's been a long time since I wrote a DaveNet piece. I've been busy working on a new product whose codename is Manila. As they say, I could tell you more, but then I'd have to shoot you! And then I'd be a war criminal, and that would be the end of my career as a software developer and user interface designer. But I digress. Back to Manila. 1
Actually back to the beginning of the Mac, in 1984, when Steve Jobs came up with a brilliant way to describe the difference between the Macintosh and all computers that came before. He called it the computer for the Rest of Us. What a brilliant way to say it. And now given the weird loop that the web created, we're right back there where we were before the Mac.
In the last few weeks I've gone all the way back, I became the user interface designer I was before I turned to scripting and web software. Now I'm working on the other end, the complex content management stuff tucked behind interfaces, now it's time to deliver the good stuff to the Rest of Us.
Writing for the web is too damned hard. It turns you into a bookkeeper. I've got files all over my hard disk and their counterparts on the server. I can't keep track of them! When I'm reading a web page that I wrote, if I spot a mistake, I have to execute 23 complicated error-prone steps to make the change.
I can't handle it. It's too much work, too much to remember. That's why my website sucks, and yours too. Because I look at the wrong words on my screen and decide that it's too much trouble to get it right.
What's needed is a way to put the right software in front of the right keyboards, so people who love to write for the public and who do it well, have an easy way to do it. A place to be heard. A place to teach and learn. A place to be powerful and feel the power of others.
Easy to Use used to be a big selling point.
Let's make it so again.
"Easy easy easy" is my new motto.
Just let it be easy.
Let's study User Interface again.
We did it once. In the 80s there were great books by people like Bruce Tognazzini. We had user interface conferences where people who thought carefully and seriously about making things consistent and easy shared their ideas, much as the people of the Open Source world do with C and Java code. We had user interface guidelines. We worked at making things easy, and that's hard hard work. But it's worth doing.
The world of the web is now familiar enough so that it's not impossible to do an elegant interface in HTML. I know because my team is doing it. I'm teaching my young team members about user interface. And I realize that they're starting from scratch. They've never learned the basic lessons we learned in the 80s. They're not stubborn, they want to make things easy, they just don't know how to do it!
And I barely know how. For the last two weeks I've been coddling and nursing a new piece of software, the Manilla thing I talked about at the beginning of this piece, and now I feel its user interface is about at par with the software I did for character-based PCs in the early 80s. This is quite an accomplishment! It's not exactly the same, because there's a network between the screen and the place where the stories are saved. And it's better because computers can play music and display color photos and animations. But we've now mastered the network, it's out of the way, we understand how it works.
And I think I see how to connect the desktop apps to the network, but it requires a radical re-think, and a lot of courage. You get something new, but you have to give something up. Read on..
I criticized Larry Ellison for promoting the Network Computing idea a few years ago, and I would like to retract the criticism. He was right. I didn't look closely enough at the idea. I didn't have a way to make it work, as a software designer, but now I do. And I'm using it, and I find it every bit as exciting as the Mac was in 1984, and the Internet in 1994.
When I'm writing for the web, and I'm browsing my own site, every bit of text that I created has a button that says Edit this Page when I view it. When I click the button, a new page opens with the text in an HTML textarea. I edit. Click on Submit. The original page displays with the change. Three easy steps. The essential element is that every bit of text has this button. There can be no exceptions.
This is like Undo, a very hard command to implement, it was a small part of the standard Mac User Interface. The guidelines basically said the user would be able to undo everything. Of course that was never really possible. But the principle was hard-ass anyway. The users would like the computers better, and therefore would use them more, if every step could be undone. So we swallowed hard and did the work. From that point on all desktop software was harder to write, but the users wouldn't want it any other way.
A few years from now we'll talk about FTP the same way our ancestors talk about punch cards. "Remember the old days when we had to FTP our files up to the server?" Oh we had it tough! Just like the people who used spreadsheets and word processors that didn't have Undo.
We are now deploying Edit this Page sites for people who will never learn how to FTP. I love it! They love it. It's cooooooool!
Now while this revolution is happening we'll ask you to throw out your old word processor (Sorry!) just like you threw out HyperCard and Visual Basic and Director when the web came along. Why? Because its File menu is wrong. "Such a simple thing," you might say, "Why do I have to throw out my word processor?" Because it doesn't work on the web, I say. Writing for the web is different from writing for your printer. Your File menu thinks your world revolves around printing. There's the disconnect.
Right now the only writing tool that really understands the web is the web browser. Even though it's a very awkward writing tool, I've been using MSIE to write the Scripting News home page for six months. It's got advantages over other writing environments. Simply stated, web browsers understand HTTP at an intimate level. No other writing tool does. That's what makes it worth putting up with its awful text editor. (It's truly an abomination.)
If I owned Microsoft's Word or even WordPad, here's what I would do. Take a snapshot of the codebase, pull out the code behind the File menu and replace it with code that speaks to my server. Let's call this product Corazon (it's close to Manila). When I choose New from Corazon's File menu, it creates a new Untitled window. I type. When I choose Save from the File menu, a dialog appears asking for the Title of the document. It then shoots the file over the net, where it takes its place on the content server that holds my website. Again, no FTP. The computer remembers where my content belongs. It talks to another piece of software that knows how to render the text as a page on the website. It does all the messy complicated work for me. That's how computers are supposed to work.
All the remaining commands fall out from there. The File menu which used to work with the local hard disk and network now no longer knows anything about the local environment. It just knows about the Internet. Nothing more. No more Novell, Appletalk, or Microsoft LAN. Goodbye! Just HTTP, nothing more.
Now of course I don't own Word or even WordPad, but I do own an excellent writing tool that's a descendent of a tool that was loved by tens of thousands of people in the 80s, and many of them are still out there. My vision of writing for the web is a beautiful outliner, a text tool that understands structure and can easily hide or reveal detail. And has a File menu a web writer would die for.
Microsoft may produce a word processor that has this new kind of File menu, and I would welcome it with open arms. Because then we can get on with it. I know not everyone will love my vision of the perfect writing tool. That's OK. Microsoft, do it. Or don't. We're onto it here. We know how to make the web grow. Dumb web hosting -- goodbye. Soon web writing takes the turn for The Rest of Us. Then watch out. It'll be big.
I often open DaveNet pieces with a quote from Jakob Nielsen, a man who has taken many rides on the Cluetrain, who gets it too, and this time I'd like to close with a Nielsen quote. On his website, www.useit.com, he said yesterday:
"The vertical portal opportunity is screaming at us and nobody is picking it up. A 'just-add-domain-expertise' platform provider could be worth billions."
Jakob, that's the flipside of our vision, and they are equivalent visions. Once we get the software out of the way, provide a server structure that makes an excellent website, with a news page, a calendar, a search engine, and a browsable hierarchy, all editable with easy fun tools that work the way the domain experts want them to, your vertical portal vision will be realized.
Easy easy easy!
PS: ClueTrain.Com is a great site launched by two of my spiritual brothers, Christopher Locke and Doc Searls. I was an early endorser of the site. It's great stuff.
PPS: A new style for typing domain names, combines the best of the OldSoftwareWorld with the dot-com rage. Use MixedCase and throw a .Com at the end. ClueTrain.Com, BucksWoodside.Com or my own hub, UserLand.Com. It's the new style. Be hip. Do it nice.
PPPS: It would be a piece of cake to hook Emacs or Vi to my Manila server. And BBEdit too! It'll happen for sure.
PPPPS: The Manila name came to me as I was thinking about folders. And Corazon is the name of Corazon Acquino, the first elected leader of the Philippines after the revolution that ousted Ferdinand Marcos. Corazon is a beautiful word, in Spanish it's the heart.
PPPPPS: This piece was written with Gladys Knight singing about the Nitty Gritty. Yeah. Ooooh. Do you know that some folks know about it some don't. But sooner or later you're going to have to get right on down to the Real uhh Nitty uhhh Gritty. Oooooo oooooo ooooo wee. Right down. Yeah! Hum hum hum. Woooo ooooo ooooo weeeeee. I keep repeating. Right down to the real nitty gritty. Double meaning. Get on down. Get right down to the real nitty gritty. Get on down. Get on down.