The Interactive Website
Thursday, June 8, 1995 by Dave Winer.
My friend Barton, one of the CyberGRRLs, author of the hilarious and truthful Love 101, webwaster of the Barton website, writes: "I almost commented on the over/under 30 thing. And maybe I still will. After all, it won't be much longer before I go past that never-turn-back barrier."
I replied: "My observation on turning 40, probably relates to turning 30 too, is that you do a lot more processing before the milestone than after it. You have ten years to figure this one out. What's the rush?"
I now have two computers set up next to each other, connected by Ethernet. It's fast. I have scripts set up on Machine #1, the one that's in front of my face, that allow me to press one key to move the selected thing over to the other machine, where it immediately starts running.
I can move processes over to the other machine, and I can say what those processes do. If any operation can be expressed in a script, and if it takes a long time to run, I like to give it to the other machine to process. Gradually, over time, I think I'll get all my time consuming processes off my desktop and running on the net. I wonder if I'm the only person in the world who has such a sweet setup.
There's a loop closing here -- I used to do things like this when I was a grad student in Madison, back in the late 70s. I was a Unix guy back then, when Unix was new. We were tripping out on the power of networked multi-user computers. They are much more interesting playgrounds than single-user computers. But back then, most of my cross-CPU scripts were experiments, instead of making me more powerful, they were tests to see if something could be done.
They were of the "bells-for-all" variety, they annoyed other people but amused me. Oh there goes Winer again. Yeah! The tunes were crude, but it was fun to watch the bell cursor move around the net. You could actually *hear* the network. It was stereo, back when stereo was kind of new too.
So now the loop closes, I've got a network that's actually doing work for me. When I was younger, I knew the day would come. Now it has.
Back in the early 80s I did a bulletin-board system called LBBS. It was to be the cornerstone product of my first company, Living Videotext. It ran out of the living room of my Menlo Park apartment. It was a single-user BBS, ran on an Apple II with a 10 megabyte Corvus hard drive. Lots of pioneers in Silicon Valley used LBBS, including Tim Oren of CompuServe and Anthony Bay of Microsoft.
LBBS morphed into TankCentral, which ran on the IBM PC, and served as our internal email system at Living Videotext. ThinkTank, our premier product, was conceived as the client for TankCentral. But the world was into standalone productivity apps, so we developed in other directions. TankCentral turned out to be a useful incubator, not a commercial product.
Another loop closes! I took a few days at the end of last week to bring the TankCentral concept to the worldwide web, thru the power of CGI scripting. I'm doing an interactive website. I'm loving it. The web is really very powerful. Until I explored CGIs I didn't understand just *how* powerful it is.
My new software implements a hierarchic and sequentially threaded bulletin-board. Every message lives in both structures. The BBS runs on the worldwide web. You use Netscape or a compatible browser to navigate thru the bulletin-board database. It's a two-way BBS -- you can reply to messages. It's a web-hosted bulletin-board, and I want it to the best one out there.
As we watch IBM acquire Lotus I wonder if they know how easily Notes functionality can be created using the Internet as the networking backbone? The value of Notes becomes the agility and power of the Notes development tools, assuming they can navigate the product to really live on the Internet. Lots of challenges for Gerstner and Manzi.
We got there first, over here in MacLand, with a very agile operating system, and great architecture at the server. Who needs OpenDoc when you have Chuck Shotton? OS/2 and Unix guys sniff at the Mac OS. When they see what we can do, they'll have to stop sniffing.
Anyway, all this exploring has made it possible for me to see web browser clients, such as Netscape, in a whole new light. They are just terminal programs! The result is much prettier, because instead of one scrolling page you get an infinite number of scrolling pages, subject to their ability to manage that infinity. The Bookmarks menu and the History menu are humble first steps at managing that complexity. Much more can be done here.
Web browsers are prettier terminal programs, but in some ways they aren't as powerful as the old ones. How do I make the user's speaker beep? In the old days I'd send an ASCII BELL character to the terminal, and a beep would emit from the user's speaker. If you hit a wall, tried to jump off the edge of the database, you'd hear about it. These days I am without audio communication. As a software designer, this is a frustrating limit.
So the web is a step forward and a step backward. The networking architecture of the web is totally wonderful. The script writer part of my personality is totally psyched! But the user interface tools are primitive. The UI for my BBS is not much better than the UIs I could do back in the VisiCalc era. They're not even as user friendly as the UI of Lotus 1-2-3 generation.
I've identified three things that would help me enormously at building more cushy pages for interactive websites. I decided to release these requests to the whole web community. If Netscape doesn't want to specifically support interactive websites, maybe other browser developers want to specialize in this area?
Feature #1: Allow a set of menus to be delivered with each page. The menus display inside the web browser window. Each menu item has a name, which is displayed in the menu, and a CGI script that executes when the user chooses the command. It's a simple extension of the current "select" feature in HTML forms.
Feature #2: A real text editor. The current form-based text editing in Netscape is buggy. Word wrap doesn't work. Paste has problems. No Undo.
Feature #3: Expand and collapse outlines in web pages. The web already knows about outlines. But they're static, you can't expand and collapse. Ugh.
Interactivity in websites is going to be important. The first browser developer that embraces interactivity will clean up.
I got an intriguing email from an analyst at a well-known industry consulting company, the kind of company that goes on the record in rewritten press releases that puff about various product releases in trade pubs like InfoWorld and PC Week. Are you a product manager at a large company introducing a new product? This guy is on your press tour. He asked not to be quoted, and I'll respect that request.
The basic message: Microsoft sends guys out on tour who blow arrogantly and naively, dispensing the competition even though Microsoft doesn't have the answer.
The story is chilling. I've been on these kinds of press tours myself, and believe that the blase attitude of the analysts supports this kind of arrogance. The fact that my correspondent didn't speak on the record is indication that they're having independence problems. If he's upset by Microsoft's attitude, why isn't that being reported in the press reports he lends his name to?
This industry needs to have its house cleaned. Not just at Microsoft, we have to clean up the commentary system too, so the truth has a chance of getting out. And that means we need more voices that aren't scared of the truth. And reporters who can spot a story even if it isn't pitched by a PR firm and backed up by a press kit.
We can all really help Microsoft and Apple, and InfoWorld and PC Week, if we call the assholes on their aimless arrogance. Mr X, if you got a line of bull from the product manager, tell the reporter!
The problem is self-correcting. Rick Segal has publicly promised to fire anyone who's that lazy. Let's help Rick do his job.
I had breakfast with Apple's new marketing czar, Dan Eilers, firstname.lastname@example.org. I've known Dan for many years.
He chose an obscure 60s style coffee shop in Los Altos for the meeting. He said it was a safe place. Most other restaurants in Silicon Valley are crawling with software industry people who might care about what we were talking about.
I liked the place. I had banana pancakes, orange juice and coffee.
We talked about lots of stuff. Dan had a message for me, which I can't talk about. My message to Dan: we've got a community here that works passionately for the platform. We're breaking thru on lots of fronts. Apple should become part of that community, accept its role as an equal, not a dominator. Get out of our way and magic can happen. Stop spending so much money developing the expensive way. If you evacuate an area, share the news. Encourage other investors to play in the Mac world.
I've been hearing grumbling sounds from Mac OS licensess, that their deal with Apple doesn't include rights to future operating systems. I told Dan I thought this was self-defeating. They're making my decision easy -- if the cloners don't have Apple's most current OS, then the old one is the standard I'll develop to. I don't have to look at any new Apple stuff, I'll code for the least common denominator. That's the way it works out here in DeveloperLand. If the cloners don't have the latest and greatest, Apple won't be able to move the platform forward. They're undermining all of Apple's current development efforts by restricting its flow.
I also asked that Apple establish a Mac-based web farm, as IBM is establishing a RS6000-based web farm. Turn eWorld into an Internet Service Provider, providing a smooth channel for Mac users to get on the net, much the same way Microsoft is smoothing the way for Windows users with UUnet.
Anyway, it was a heated discussion, with lots of cool energy.
I like Dan.
But guess who was sitting at the next table?
An executive from Adobe Systems!
Life sure is funny.
PS: UI stands for user interface. The user interface is the part of the software that users see. It's interesting because this term positions the user as a peripheral device, much like a keyboard or a CD-ROM. How nerdy can you get???
PPS: BBS stands for bulletin-board system. In the past, bulletin-boards were standalone things, kind of like America OnLine and CompuServe, but much smaller.
PPPS: CGI stands for common gateway interface. It's an obscure term. CGIs are little programs that run on the server. You activate them by clicking on underlined things on web pages. They have a ton of interesting power, especially if web browsers get more powerful.
PPPPS: Barton's website is at http://www.phantom.com/~barton/.
PPPPPS: MacWeek is spreading an interesting rumor that Guy Kawasaki is returning to Apple to lead its evangelism efforts. This could be cool!