I've got the 24 hour flu. I hope that's what it is, because I don't have more than 24 hours to spare this month.
Yesterday, I gritted my teach and refactored Tinderbox drag and drop through increasing fever. Today, I'm sleeping and reading.
Some days, the code flows, and the system gains power and depth you never expected. And, some days, you spend twelve hours of coding to get back to where you started.
Yesterday was one of the bad ones. I'm struggling to isolate system-dependent code in Tinderbox, moving toward Tinderbox for Windows. The easy parts are pretty much done, now, and yesterday began with a simple little file issue that snowballed into a code avalanche. So, four hours later, I backed out, and tried to remove the last-remaining bit of obsolete LArray code -- the section that sorts attributes and notes. An easy, obvious bit of refactoring.
Six hours later, the new code was working almost as well as the old.
Jeffrey Radcliffe reminds me why we're doing this:
I've been a wee bit busy this week, and I apologize for falling off the face of the earth. The end is in sight, and the work is paying off. I, for one, am looking forward to not dreaming about data structures for a few days."
In a pinch, Tinderbox has come through as a worthy task management system; I don't think I'd be sane without it. My organizer document keeps track of the hundreds of loose ends, and it allows me to spend me more time coding and just the right amount of time documenting.
Well, maybe boom tomorrow: Prosperity, the Tinderbook, seems to have an intermittent (probably thermal) disk failure mode. Thanks to DiskWarrior, I do have a solid backup. Good thing!
We might be looking at a new Powerbook a little bit sooner than planned.
In the meantime, we're busy with a new TEKKA-related product and I'm deep into Tinderbox for Windows engineering.
Disk Warrior just saved my laptop.
Yesterday, I was finishing a marathon refactoring in Tinderbox. Deep down inside Tinderbox, there was a simple class called NodeBundle that held a bunch of notes, and that Tinderbox used whenever it needed to represent a bunch of notes. It was built on some Mac-specific technology, so it needs to be generalized for Windows. It's easy code, but hundreds of little things need to be tweaked, and tested, one by one.
So, I'm thirty hours into this, and the end seems to be in sight. Then, just at the end of a test run, my hard disk goes "click....click....click..."
"Uh-oh", I say. Restart. Kaput.
I had a backup only four hours old. Reassuring. But I also have no time in the schedule this month -- no slack at all -- and I really, really didn't want to go through the last four miserable hours of this refactoring twice.
I spent about five hours, doing fragmentary backups because the machine would stay up, for a while, as a Firewire disk. It had all the trademarks of a sour disk. Noises. Intermittent behavior. Gradually worsening, intermittent behavior.
With no slack in the schedule, I was already pricing replacement laptops and trying to figure out how much restore-and-test I could do while grilling the leg of lamb this weekend and how much sleep I could skip without danger when I tried Disk Warrior as a last resort.
It ran, "Piece of cake!", it said. "I can fix this easy -- it's not even badly broken."
- Moral 1: Prosperity, the Tinderbook, is now just over two years old Computers last three years. People try to use them longer, and you can find uses for used-up machines. But don't expect your front-line machine to last more than three years.
- Moral 2: backup. Tonight.
- Moral 3: Reach for Disk Warrior sooner.
Getting Things Done: make a list with everything that you need to remember to do.
Test Driven Development: make a test for the feature you are about to implement. It will fail, since you haven't implemented it yet. Make a list of what is evidently absent or wrong. Do a task, removing it from the list. Keep adding every new problem to the list as it is discovered.
Dylan Kinnett's an intern at Eastgate. He's got an interesting post about What's Happening in these parts (useful for me, since I've been in Vienna and have lots of catching up to do) and a profile of Elin Sjursen, who has the adjacent desk.
If you're seriously interested in hypertext, new media and software aesthetics, and you're looking for an intern position with lots of responsibility and plenty of challenge, drop us a line.
The great conflict of the 21st century will not be between the West and terrorism. Terrorism is a tactic, not a belief. The true battle will be between modern civilization and anti-modernists; between those who believe in the primacy of the individual and those who believe that human beings owe their allegiance and identity to a higher authority; between those who give priority to life in this world and those who believe that human life is mere preparation for an existence beyond life; between those who believe in science, reason, and logic and those who believe that truth is revealed through Scripture and religious dogma. Terrorism will disrupt and destroy lives. But terrorism itself is not the greatest danger we face. -- Robert Reich, in The American Prospect
If you've spent enough time in dungeons, don't miss The Order of The Stick, a Web comic by Rick Burlew.
I tried to try the schnitzel at Figlmüller, but the line was too long and the line was speaking too much English, and so I wandered down the street to Neu Wien. There, I had a very tasty little schnitzel indeed. It followed yet another plate of those lovely eierschwammerl, fresh mushrooms-of-the-moment that I can't spell in German and that the Cambridge Museum of Fruits and Vegetables sells for $22.50/lb in season. This time, they were sauteed and dressed in a light cream sauce; I've also had them in egg (Spatzennest) and as a gratin with potatoes and lovely cheese (Una). I had my nightly glass of Grüner Veltliner with the mushrooms -- I could get used to that -- and a Blaufränkisch which was light-bodied (as I'd asked) and astonishingly tannic.
Then, on to Zwölf Apostelkeller for a glass of spätllese and a book in the corner, amidt lots of medieval vaultwork, much repaired and modified in various eras. It was better vaultwork than at the Alte Backstube last night, which has plenty of Alte-itude and a marinated pork that's postively inspirational.
There's a lot of Vienna under the surface, it seems.
I didn't see Isabella V (she's a flight risk) in Vienna, but having seen Vienna, as I was standing on the crowded Saturday-night platform waiting for the U-bahn back to the hotel, I thought, "Isabella really does feel right for Vienna." I'd figured her for somewhere northeast of here, really , but Vienna would do.
Now, what's remarkable is that Isabella has managed to create a sense of place without the usual tools. She can't simply stand in front of the place — the tool that worked so well for Dickens — because she's running away. She can't drop brand-names and businesses into the text, because she isn't supposed to give away clues that her father might use to.... well, I guess we have to imagine what her father might do.
But, you know, there were plenty of young women on that subway platform, headed to their second party of the night, who could once have been Isabella. Girls in ornate, elaborate tops and jeans -- doubtless incredibly expensive jeans, jeans with really interesting stitchwork in graceful arrows, girls with long, long, carefully-brushed blonde hair or short, short hair of incredible blackness, girls who like to tease the nice policewoman with the cool pony tail who doesn't want to be photographed.
I walked past a studio last night where lots of young people were practicing their dance steps, perhaps getting ready for the next Opera Ball, but not wearing white this summer night. I can see Isabella there, too.
I fumbled the secret mission she gave me, partially because I didn't see the point of it. Maybe that was the point of it. But I was reading The Third Man, and there are so many banks, and my active vocabulary in German is amazingly small.
Bottom line: this is really crafty writing.
It's still really crafty writing, Isabella, if you're real. Look how hard I have to work to convince my readers that I'm here. Pictures. Incidental details. Names and places. You seem to manage it without effort. New media people could do worse than to take a closer look, regardless of whether you're a 26-year-old heiress or an ad agency. Whoever you are, you're pretty good.
I spent the morning in the Naschsmarkt with Marisa Antonaya, a Thai-based peace researcher and Tinderbox user who is visiting her parents in Vienna. From Gegenbauer, I bought a flask of balsamic vinegar made from Golden Delicious apples.
"But those are horrible apples!", I exclaimed.
"I know," Ms. Bammer replied with good humor. "We wouldn't buy them. This farmer kept trying. Eventually, he gave them to us for free. They make wonderfully sweet balsamic."
Who knew? Now I understand why one of my cookbooks suggests that you really need a half-dozen kinds of oil, and a dozen vinegars. (I should have bought another bottle of a different sort. Left to myself, I buy too little, or too much.)
The olives were good, too. And lovely little fresh peppers, stuffed with fresh sheep's cheese.
At the outset of The Great Cat Massacre , Robert Darnton cautions that "I do not believe there is such a thing as a typical peasant or a representative bourgeois."
There is no typical weblog. Nor can you study a set of "randomly-selected weblogs." A specific weblog is interesting only because that specific writer has something specifically interesting to say.
The average book, the typical hypertext, and the average weblog are all purple cows.
Thanks to Torill for identifying the issue.
Very quick notes and pointers today.
Matt Mower talks about various hot Blogtalk topics, especially on the utility of comments and on some interesting design issues.
Wrede talks about making notes and meetings. I don't worry that much about using my notes later: if needed, the notes can be revisited and reworked, but the first purpose of notes in meetings, I think, is relfexive -- to externalize your understanding and reactions so that you can see and think about them. Anja, who left her laptop in Frankfurt, is concerned that so much of the meeting is happening on iChat and subEtheEdit.
Lots of talk, late in Day 1, about power law distributions. What I can't figure out, is why the power law hasn't reduced essentially all weblog traffic to a handful of sites. We understand the gravity that tries to collapse the blogosphere; what is keeping the weblog baloon inflated? Maybe we don't really understand that power law....
Here's my BlogTalk notes from day one (Map view, too small to be useful)
There's a SubEthaEdit notemaking session, iChats, and I'm getting pages from people on the other side of the world, commenting on this post or the next one. I need remediation, but the soups in Vienna are really very good!
At the BlogTalk 2 press conference (which just ended), Karin Tzschentke from The Standard asked a very, very interesting question: how do we keep weblogs from becoming merely a channel of propaganda?
My answer as that weblogs discuss ideas, not personalities -- that they are sociable but not merely social. But, of course, the example of Matt Drudge is before us all. Blogs are the new fax machine.
I think the answer is that weblog writers will always care about ideas and about truth and good faith. If you merely disseminate propaganda, nobody will believe you, and nobody will link to you. But it's not a great answer. And if we aren't careful, we could find we've built infrastructure for online mobs. Mob blogging isn't what we set out to do.
But Herring's idea of studying an array of randomly-chosen weblogs assumes that you have access to the entire universe of weblogs (or a randomly-selected subset of them) from which to choose. That's difficult, at best: how do you find the boundaries of the population? Do you count test blogs? Abandoned blogs? Someday, the majority of all blogs will of necessity be silent, because all their authors died centuries ago; does that make weblogs less interactive?
If you defined the universe as, say, everything on blogspot, you might get one answer. If the universe were "the 250 MT weblogs that were mentioned in slashdot", you might get another. If you look at LiveJournal weblogs, you'd get another. If you spider blogrolls, you'll get another answer -- and that one depends a lot on where you start your spider.
It's an interesting question: if you want a representative collection of "random" but arbitrarily-chosen weblogs, how do you find it?
One of the core practices discussed in Beck's new Test Driven Development is keeping a running list of open issues and concerns for each programming task. Nothing is too small to go on the list. Whenever the next thing to do is not obvious, you grab the most interesting, easy task from the list.
This is also the essence of Allen's Getting Things Done , which uses the same sort of list for planning work and reducing your anxiousness about unclosed loops and forgotten tasks.
It's an interesting convergence -- especially since Allen is emphatically about planning and Beck is notoriously opposed to formally-articulated software planning. The underlying point, I think, is similar: writing things down gets them out of your head, reducing anxiety, and into a task-selection mechanism.
I've got a three-hour layover at Heathrow, waiting for my connection to Vienna. Not enough time to do much of anything in London, really, but a long time to spend staring at Islay whiskies in this jet set shopping mall. Besides, the jet set isn't what it used to be.
KLM, it seems, has started an airport lounge for
the hoi polloi. Nice idea: you walk up, you pay (a little bit too much), you get quiet space, power, WiFi, drinks, snacks. Some good Danish would be nice, but this is England.
That also makes coffee management a problem; my seat back was stuck on the flight over, I slept poorly, and its going to be a long day.
If you're in Vienna on Monday, here's my first slide for BlogTalk. Aren't we self-referential this morning? I'm going to be proposing an agenda for weblog research -- research topics that won't get your name in the newspaper but will make a lasting difference to the way people write and read weblogs.
Gizmodo has a hot feature on Facetop, a nifty video conferencing idea. Recognize the face on the facetop? That's old hypertext friend Dave Stotts, isn't it? He's got a paper on Facetop at Hypertext '04. His pioneering Trellis work (with Rick Furuta) is one of the inspirations for sculptural hypertext.
I'm in the midst of a big planning project. (Actually, I'm in the midst of Heathrow. Long trips are good for making plans.)
I've never been a big fan of orthodox software planning. It's easy to build beautiful plans for the wrong product, and if it turns out you're building the wrong product, the plan is much worse than dead weight. If the plan is really good and really well done, its excellence makes it harder to see that you're wrong. (Really convincing but wrong plans can lead you and your customers astray, which can turn out well for you in the short run. See Ada and OpenDoc for examples)
We're juggling a lot of great ideas for Tinderbox, ranging from little cosmetic tweaks to entire new product families. For the last few months, I've been working from a simply priority list, which I keep in Tinderbox. That's great for the immediate development horizon.
What I'd like next, though, is a big (but detailed) roadmap of the next year or two of development -- a plan that's so easily changed that it won't tug on us to stick with bad ideas (and so miss new opportunities) simply because they were in the plan -- and it was such a good plan. That's another nice thing about Tinderbox: lots of tools for managing change.
Orthodox Agile Methodology would say that this plan is too much of a plan. But I've got a lot of feature cards in my hand, and a bunch of concepts that need to be broken down into feature cards. Even in the agile extreme of my attitude swing, I think that sometimes you need to lay the cards out and step back. Right?
But it's going to be a big map: we're going to need to find a very big wall to hang it on.
I'm off to BlogTalk. I expect I'll find an internet cafe or two along the road. See you in a different timezone!
There's nothing like an argument to draw crowds, I guess. Commentary and The Blogosphere's Bad Behavior sure seem to have drawn them. Hi, everybody. (A quarter of a million raw hits in a month; pitter patter)
One of the more interesting things: people really use the style sheet switcher that let's you choose between the classic "red" look of this page and some alternate versions. Of course, most people go with the default -- classic red -- but lots of regular readers pick modern or nouveau. I'd guess from a quick look at the logs that regular readers are split about evenly between the three styles; that surprises me.