| « | Week of Jun 1 | < | Individual Entries | > | Week of Jun 15 | » | ||
Waypath: A "What's Related" for Weblogs
information, internet
June 13, 2003, 07:50 PM
I ran across a service called "Waypath" today that basically implements the "Related Entries" functionality I discussed last April. You can give Waypath a URL to a weblog entry or a few keywords and it will return a list of related weblog entries. They even appear to have plugins available for Movable Type and Radio that allow you to query their server for posts related to yours and embed links to those posts on your site. Very cool.
It doesn't look like they are implementing it in quite the way I concieved of such a system; they are polling the "recently updated weblogs" lists such as weblogs.com and blo.gs instead of having each weblog ping them when they update, which makes more sense than the pinging model given that they aren't very popular yet. If they take off, however, a pinging model will probably prove much more efficient, as it did for weblogs.com. This is actually a nice feature of the recently-updated lists; if you're trying out a new metablogging tool you can use them as a source of active weblogs until you get your feet off the ground and build your own user community.
I tried out a couple of searches using Waypath; some of them were pretty accurate and relevant, others were pretty mysterious. But this is my impression of most automated "what's related" engines I've encountered, including Google's. And as of now Waypath seems to be just a couple of guys hacking in their spare time, so you can't expect a polished product yet.
Best of luck to them, though. They're working on a cool technology.
Email Rob:
The Joy of Programming
personal, philosophy, software development
June 13, 2003, 01:05 AM
I've been thinking recently about the craft of programming, and why it is that some people derive a strong and fulfilling enjoyment from this activity that many others do not. I'm certainly among those who enjoy programming, but I was at a loss to clearly explain what it is I see in sitting in front of a computer monitor typing in cryptic codes, testing them, getting angry and frustrated when they inevitably don't work, etc. This lead me back to Fred Brooks's The Mythical Man-Month.
In the first essay of this wonderful collection, Brooks articulates the joys and woes of the programmer's craft better than anyone I've read since. At the end of "The Tar Pit", he writes:
Finally, there is the delight of working in such a tractable medium. The programmer, like the poet, works only slightly removed from pure thought-stuff. He builds his castles in the air, from air, creating by exertion of the imagination. Few media of creation are so flexible, so easy to polish and rework, so readily capable of realizing grand conceptual structures....Yet the program construct, like the poet's words, is real in the sense that it moves and works, producing visible outputs separate from the construct itself. It prints results, draws pictures, produces sounds, moves arms. The magic of myth and legend has come true in our time. One types the correct incantation on a keyboard, and a display screen comes to life, showing things that never were nor could be.
Programming then is fun because it gratifies creative longings built deep within us and delights sensibilities we have in common with all men.
Programming is, above all, a creation act. In this sense, writing a good program is not so very different from designing a usable interface, or producing an aesthetic work of art, or writing a clearly articulated essay, or any of the other myriad creation acts humans delight in. And yet, in a sense, programming is more "pure" than these others, with the possible exception of poetry, as Brooks implies. For the programmer essentially works with concepts alone, he builds abstractions that have no real basis in reality. Our interlocking pieces, our classes and modules and functions, have no true existence within the machine; we simply pretend that they do because it is much easier to grok than the billions of electrical signals flying around that constitute what's really happening. Castles in the air.
My father is a cabinetmaker. He builds fine furniture and other functional art from wood, nails, and glue, and he takes pride in being considered a fine craftsman. I too am a craftsman, but I do not work with wood. I work with pure thought, with interlocking concepts, patterns, and algorithms. And where my father creates with his hands, I create through pure force of will. Dream up a vision, then type the words, the correct incantation, and it shall be so. The mantra of the modern magician.
Yet like any craft, programming has its dark moments. Brooks continues to describe the woes of the craft:
First, one must perform perfectly. The computer resembles the magic of legend in this respect, too. If one character, one pause, of the incantation is not strictly in proper form, the magic doesn't work. Human beings are not accustomed to being perfect, and few areas of human activity demand it. Adjusting to the requirements for perfection is, I think, the most difficult part of learning to program....
The next woe is that designing grand concepts is fun; finding nitty little bugs is just work. With any creative activity comes dreary hours of tedious, painstaking labor, and programming is no exception.
All creativity has its share of toil and drudgery. It is sometimes easy to get lost among the toil; to get frustrated by the bugs and distracted by syntax and details. Veils. It is easy to miss what lies behind them. Ultimately, it's important is to keep your eyes fixed on the goal: to produce the creation, to perform the act of creating, to be the creator. Little else brings you closer to the divine.
Posted by Jason Silver on April 02, 2004 at 02:12 PM
I was the kid that drew maps of secret tunnels underground, or floor-plans of castles I’d someday build. I liked to assemble Lego blocks, or Mechanno into wild and crazy inventions. I experimented with electricity, I carved into wood— but none of these mediums were as pliable as I would have them.
I ran out of Legos before my structure was finished. My floor-plans never transpired into real houses. I didn’t have the resources I needed to dig underground tunnels. My mum and dad gave me a hard time for blowing so many fuses.
But with computers, there is no limit to what “could be.” I can design anything; run it, turn it, view it, play with it, mold it, use it— simply by tapping away on a keyboard. And no electric shocks.
Email Rob:
Friendster and Digital Identity
internet, society & sociology
June 12, 2003, 06:41 PM
At Kenneth's urging, I joined Friendster today, mostly just to poke around. So far it seems like an interesting place that takes a new angle on the whole meeting people problem; it leverages social networking concepts to introduce people to one another (basically, I know Bob who knows Joe who knows Jane who has interests in common with me, so maybe I can get Bob to get Joe to introduce me to Jane). Micah pointed out that there isnt any good way to visualize your social network right now using Friendster, which is a fair criticism, but its good to see that people are doing something useful with all this social software rhetoric.
Currently, however, Friendster has a problem with fake users, generally imitators of celebrities. Since anyone with an email address can create a Friendster identity, some people make up these fake identities as a joke, which several others add to their list of friends. The problem is this breaks the intent of the system, since this fools the system into linking you to several people who you actually have no social network connection with. (At least, no known connection with. Six degrees and all that notwithstanding.) It seems Friendster needs to implement an option for people who arent directly connected to one of these users to bullshit a friend-of-a-friend, thereby removing that connection from their own social network (although without disturbing the networks of everyone upstream of them).
However, this design idea is a point solution to a larger issue that affects not only Friendster but most any social software running on a network like the internet: there is currently no way to maintain a consistent digital identity online. This is essential for most social systems, since most such systems must have a way to link actions to individuals over time. We humans use identity for many, many things; Im finding from my news reading inquiries that the author of a piece of commentary or analysis is one of the main considerations people use when determining whether or not to read that piece (people read articles by authors they have read and liked before). In the real world, we have peoples physical appearance, voice, etc. to define their identities. We will need something comparable in the virtual world to replicate this same sense of familiarity and trust, and prevent problems like the one facing Friendster. Until such a mechanism exists, social networking systems must blindly trust the population of the entire world, and there will always be someone who wants to screw around.
The problem, of course, is that privacy comes up whenever anyone mentions digital identity. People are skittish about entrusting their personal identities to the computer; most dont understand it well enough and are scared off by stories of hackers and identity theft. They need to feel comfortable that they exert control over what information is provided to whom, that they can provide highly personal information when they wish and little to no information when they wish. Some of these issues were raised at the CHI privacy, security, and trust talks. Maybe I should go back and read some of the papers.
Not all of these fears are groundless. Aside from the numerous technical security hurdles, there is the problem that if you have a unique identifier associated with your online activities, anyone can associate any information they wish with this identifier. If this identifier is traceable to you, which it must be for it to fulfill its purpose, then this information will stick permanently, which opens up whole new possibilities for slander. The internet is a big place. Its hard to find where all the rumors lie.
Building unique digital identities online is simultaneously one of the most promising and most dangerous tasks we face in this new society were starting to form. Ill be interested to see how it plays out.
Posted by Rob on June 15, 2003 at 05:52 PM
Another manual trackback follows.
Marc Canter picked this article up over at Marc's Voice: http://blogs.it/0100198/2003/06/14.html#a1278
Thanks for your kind words, Marc. :)
Posted by arivin on June 08, 2007 at 04:40 AM
nothing
Email Rob:
Weblog Redesign Cocked, Locked, and Ready to Rock
announcements, internet, personal
June 11, 2003, 07:03 PM
As you have probably already noticed if you're reading roBlog dot org through the web interface rather than through a news aggregator, I've finally rolled out the new design I claimed "should be changing soon" when I started this damn thing over two months ago. Some nifty new features to note: the "active discussion" sidebar lists the top two most-recently-commented-on posts so you can see where conversation is happening at a glance, the archives have better(?) navigation controls, weekly archives are generated instead of the (overly long) monthly archives, the categories are finally reader-visible and category archives are generated, and the general look and feel of the weblog is consistent with the main site. The design isn't finished by a long shot; I still have a bunch of ideas I want to implement including the "Threads of Thinking" I mentioned awhile back. Most of these changes require modifying Movable Type, however, and since I have a few other projects that need my attention, these changes are going to need to move to lower-priority threads for the time being.
I've added some PHP code to the pages to handle the rotating quotes and taglines up at the top, which has unfortunately necessitated a file extension change that has un-perma-ed the permalinks. I put a mod_rewrite rule in place to hard redirect visitors from the old links to the new ones, but I can't guarantee it will be there forever so if you've linked to my site in the past, please update those links at your earliest convenience.
If you have any comments on or criticisms of the new design or find any lingering bugs, please do let me know. Feel free to comment on this post or send me personal email.
Thanks to everyone who gave me feedback about the mockups; I've tried to take everyone's reactions into account and I think that has improved my initial design tremendously. And special thanks to Mathilde and Kelly for their help with the visual design of the site. Everything that looks good about these pages is a result of me following their sage advice, everything that looks bad is a result of me ignoring it.
Email Rob:
Fury, By the Book
processes & methodologies, usability
June 10, 2003, 01:38 PM
Kevin has embarked on a project to redesign Fury, his popular personal website / weblog. When most people get bored with their old website design, they hide away for some period of time and work on the new site in secret, showing early "drafts" of the interface to a few friends if they show it to anyone. But Kevin's decided to try a "by the book" redesign of Fury, complete with task analysis, low-fi prototyping, cognitive walkthroughs, usability tests, and log analysis of the current site. He's already identified some portraits of common users which he created by analyzing Fury 3.2's log files and put up a wireframe mockup for user feedback.
I'm particularly interested in seeing how this project goes since it ties in so nicely with my current Usability and Open Source project. Although Fury is not, to my knowledge, open source, Kevin is working in a similar environment as many lone open source developers, e.g., he's working in his spare time, has a 0$ budget, has a strong personal attachment to the interface design, etc. He's also a much more skilled and experienced interaction designer than I am, so it'll be neat to see what he comes up with.
I hope Kevin continues to keep us informed on how the project is going and how he's adapted his process and techniques to the job (which, given his voluminous posting history, I'm not too worried about). I also hope he doesn't get bored of the project before its completion (which, by his own admission, is a real possibility :).
Email Rob:
U&SA Website Is Live
announcements, software development, usability
June 09, 2003, 03:20 PM
The Usability and Software Architecture project finally has a website. The front page has a nice short description of what the research is all about which may be of interest. All of our publications that we're allowed to put online or link to are available as well in case you'd like to learn more.
Feel free to send me any comments about the site or requests for additional information you may have. I can almost guarantee that any insightful feedback anyone sends us about the site will be brought up as a serious item at our next meeting, so don't hesitate out of fear that your email will only serve to further clutter Rob's already horrendously disorganized Inbox.
Email Rob:
Happy Birthday to Me
announcements, life & times
June 09, 2003, 11:52 AM
As many of you may already know, today's my birthday, the big two-four. In another year, I'll be able to rent a car at non-ripoff prices. In a similar vein to how many celebrate their twenty-first birthdays, I plan to rent many cars next year and drive them around in a hedonistic driving orgy that I will soundly regret the next morning. I may even, and don't hold me to this, say "Woo!".
In the mean time, however, I intend to celebrate this one the same way I celebrated the last two or three (which is as far back as I can remember): by spending exorbitant amounts of time working on projects that probably won't matter to me a year hence. Some of you may be thinking "Wait a minute! That's how Rob spends every day of his life!", but you are sorely mistaken. Today I plan to wear a party hat.
For some reason I feel that the fact that I was born when the earth was approximately at its current location with respect to the sun gives me a license to blather about my personal doings, something I generally eschew on this forum (at least in the public posts). So here's a brief recap of all the major events in my life for the past year. I present: The Rob Year in Review.
- July 24th to August 5th - Went on a trip to roam Europe with my good friend Dave (who needs to make a web page so I can link to it). We wandered around Paris, Amsterdam, Frankfurt, Freiburg, and various towns in the Black Forest. It was a fun and enlightening trip with a worthy traveling companion, and I hope to go back some day soon. I have scads of pictures; one of these days I'll get them digitized and put them on this here website.
- Mid-August - Finished up my work as Lead Developer for the Evaluation Environment project at Orca Computer, Inc., a fine job working for an excellent person. Working on EE was a great growing experience for me, both personally and professionally.
- August 17th - Moved to Pittsburgh, PA to begin my graduate education at CMU's HCII. Ugly city. No one knows how to drive here, either.
- August 19th to 23rd - Went to the orientation sessions for the MHCI program. Met a group of wonderful, wonderful people, all of whom I hope to remain friends with for the rest of my life. Also started work as a Research Associate on the Usability & Software Architecture project with Bonnie and Len.
- Late August to December - Worked on an interface design for Much More, a hierarchical search engine for medical research papers, with Kelli, Dana, and Kathryn. Also worked on a data-driven redesign of the Palm Pilot with Kerry, Rich, and Matt.
- November 2nd - Attended the infamous Halloween Party.
- December 16th - Went to Dave and Busters with Mathilde, Matt, My, Micah, Abby, and Kelly. I remember that evening fondly for some reason.
- Late December to Early January - Returned to Alexandria to spend the holidays with my family and my little sisters (who have yet to come visit me like they promised...).
- Mid-January to present - Started work on the TCinC redesign with Matt and Joe. So far the project has gone a lot better than I originally thought it might (but then, that's generally the case).
- Mid-February - Finally got this here server up and running, something I'd been talking about doing since 1998.
- March 27th - Inaugurated this here weblog that you're currently reading.
- March 31st - Finally broke off all contact with someone who was a major influence in my life for a long time, both in the flesh and in memory. It's funny how things change, isn't it?
- April 7th to 13th - Attended CHI 2003 in Fort Lauderdale, Florida. Had a grand old time with the MHCI gang and some new faces as well. I feel that I've finally found my people, and that's saying a lot.
- May 19th to present - Started work on the Open Source and Usability project with Jim. Hopefully this project will be as successful as TCinC was (despite the fact that I'm lacking Matt's guidance).
Okay, that's quite enough navel-gazing for one day. We now return you to your regularly scheduled dry intellectualism.
Posted by Dan on June 09, 2003 at 03:44 PM
Happy birthday! I'll buy you a beer when I get to Pittsburgh!
Posted by Dave on June 09, 2003 at 05:27 PM
1. Awwwww...He liked the trip
2. Don't even try and convince me to start bloggin.
3. I also owe you beer...
4. And your Dr. B link is pointing to CMU instead of VT
Posted by Chad Thornton on June 09, 2003 at 07:42 PM
24? Ah, you're just a wee lad. Happy birthday to you, and like Dan, I owe you a beer when I get back to town.
And please, don't link to the Halloween photos ever again - those need to be destroyed...
Posted by Dan on June 09, 2003 at 09:23 PM
On the contrary: thanks for pointing those pix out to us... <evil laugh>
Posted by Rob on June 09, 2003 at 11:51 PM
Thanks, guys. I'm feelin' the love!
Dave: Thanks for pointing out the link. I've gotten used to typing "CMU" instead of "VT" nowadays. Is fixed.
Chad & Dan: Whoops. I thought I might be doing a bad thing by reminding people of that evening... There goes our reputations! :)
Email Rob:
Innovation and Shifting Web Standards
internet, software development, usability
June 08, 2003, 02:24 PM
I wanted to add a quick (and slightly belated) blurb to the recent buzz over the release of Mozilla Firebird, Microsoft's comments on how they plan to stop releasing standalone versions of IE, and the Microsoft-AOL deal to include IE in future versions of AOL-Win instead of Gecko.
Some have suggested that Microsoft's sins with IE have involved stifling innovation in web browsers. The argument is that since Microsoft has now clearly "won" the browser wars, they no longer have any incentive to innovate as is clearly evidenced by the fact that no significant improvements have been made to HTML/CSS in the past four years.
I mostly agree with these sentiments, although I'm not so certain that changes in the core standards are appropriate at this time. Marc's post above implies that browsers have failed to add new features in recent years, they've only been playing catchup with old features (like CSS) by providing better (or more pessimistically, less broken) implementations of the standards, and this is a bad thing.
I agree that new features are good, but I disagree that freezing the standards and taking the time to get solid implementations of them out on the market is a bad thing. I like the comment on the need for decent CSS authoring tools, however. CSS2 is a pretty nice standard already as far as they go, but most website authors don't make full use of it since its so hard to create good CSSified web pages with current tools. As long as authors have to muck around with editing text languages to make websites that take advantage of the content-presentation separation that CSS offers, only the technically sophisticated few will benefit. What's needed is a good single-sourcing normative interface like I've called for before.
Innovation occurs at many levels in computing. Sometimes innovation must slow down at the lower levels (the core standards, such as HTTP, HTML, CSS, etc.) so that effective innovation can occur at the higher levels (such as web browsers, WYSIWYG web publishing tools, content management tools, etc.) The weblogging community is going through this phase now with RSS, an important standard for both publishing tools and readers. It's hard to create effective tools when the standards they are based on keep shifting underneath you.
On the other hand, there are some instances where a new feature in a tool requires a change to the core standards. For example, back in the '90s Netscape wanted to allow website authors to embed aribitrary media content in their pages, so they created the <EMBED> tag. IE had the same idea, but since there was no standard defining how to specify this behavior they made up the <OBJECT> tag, which of course was completely foreign to Netscape's browser. For a long time, authors had to kludge together both tags to consistently include media elements in their pages.
The basic problem is that the usability of any software system is not screen deep, the central point in our U&SA research. Many functions that users want reach far deeper into the software system that just the surface interface, and may require changes in the lower-level protocols and data formats themselves. If these formats are standardized, then the standards may need to be modified, or violated with vendor-specific extensions like <EMBED> and <OBJECT> which are rarely compatabile and cause large amounts of pain for users and developers.
So how do we ensure that the majority of these functions get written into the standards themselves, thereby preventing this problem? Perhaps standards need to be developed in a more user-centric fashion; they need to be informed from the beginning by tool development teams that investigate how the needs of users are going to affect the lower-level formats. Or perhaps this can't be done; the needs can never be determined except through painful, long iterations involving standardization, new needs uncovered, incompatable vendor-specific extensions, arguments and flamewars, and finally consensus (or at least cease-fires) and restandardization. Wash, rinse, and repeat.
Posted by Dave on June 08, 2003 at 07:10 PM
So whats with Robs need to champion usablity everywhere, all the time recently?
Are you trying to get the word out early so there will be jobs offers at grad time :-)
Email Rob:
Posted by Steve on June 15, 2003 at 10:32 PM
Glad you like it!
The pinging model hasn't escaped our attention. We have the notion to talk to the CMS publishers about a special post-level ping, of which Waypath could be one of the recipents, but we haven't had the time to pursue it.
(Right now, we're starting to collaborate with other Metablog service sites and I'm hoping that between us, we'll both be able to lobby for this kind of thing from the software vendors and have the bandwith to implement the listener.)
I took a look at your post from last April. The weblogs.com + related posts feed is on our road map, too. I like your idea of a ping-back with the related posts--building that functionality into the CMS platform instead of relying on plugins.
Lot's of great ideas; so little time. We could use a patron. But then, who couldn't? :)