This bug is due to the use of a relative link in the post body. Particularly in syndication, only absolute links should be used. I think this is normally not a problem, but perhaps sometimes the HTMLarea component tries to be smart and translate absolute links into relative ones? I'll have to test this out.
31 Aug 2004
30 Aug 2004
After much background thought, I believe I know how to best add file management to frassle. (This is a long-term goal, but has been getting some attention recently.) It's simple.
Each file is a blog post, just like any other content fragment in frassle.
The note body, when viewing the blog on a web page or RSS feed, shows an HTML representation of that content fragment. There is also a link to the original file. So if you uploaded a PDF, it would get converted to HTML for the note body. A photo would be represented as a thumbnail. An XML document would apply any appropriate XSLT transformations and display as XHTML or just a document tree. A text file would become preformatted HTML. An unknown format would just give you file name and size.
This approach has some significant advantages over email-style attachments. In no particular order:
- you can categorize individual files
- you automatically get the same renaming, editing, deleting, and sharing/privacy options as anything else in your blog
- you can easily browse by timestamp or category
- you can subscribe to updates
- you can use the regular search to search the HTML representations of files; i.e. you get to do text searches of PDFs and MS Word documents.
On the other hand, if you're used to handling files as attachments, this seems a little weird. Some files just don't stand on their own: photos are part of an album; PDFs are final print-ready renderings of a long-term effort; source code files are parts of complicated projects. If we just treat them all like time-ordered blog posts, won't it just be chaos?
Yes. And that's a good thing.
See, this problem is orthogonal to file uploading. Any piece of content has a context that is more or less important to properly understanding what it means. Showing you that context is one of frassle's most fundamental goals. Time, categorizations, and inter-feed threading of conversations are the basic tools we use to accomplish that goal. Why not expand the challenge? Detecting and expressing more meaningful relationships between content will make all of frassle more powerful.
And hey, I have the feeling categories and timestamps will prevent a lot of chaos by themselves.
Example: One of the first applications of the multimedia post framework can be a tool to help you show posts in context. The scrapbook is a simple list of blog posts (notes in frassle parlance), chosen from any blog. Each note is identified by permalink, and can be included in whole, selectively excerpted, or simply referenced. You can also add text anywhere in the scrapbook. As you browse through frassle, each note has an "add to scrapbook" button.
I like the way this sounds. You could not only use the scrapbook to, say, collect a number of related discussions from around the web—you could actually build photo albums with it! The same concept—a binder with pages covered in taped-on papers in real life, a list of permalinks online—works to gather and share related pieces of content.
Still better, the scrapbook itself can be a piece of content. Under the multimedia post framework, we could represent the scrapbook as an XML document, probably in OPML. Then you can share scrapbooks easily, rename/delete/edit them in the standard way, and even incorporate one scrapbook into another!
29 Aug 2004
A great list of ideas for aggregator features. I think a lot of them can be done better with aggregator/blog authoring software integration.
29 Aug 2004
I think applications that allow you to restrict access to some resource are generally missing something. What they're missing is a way for people who don't have access to ask for it. You can't read that file? Send email. Can't subscribe to that list? Send email. Can't book that conference room? Send email.
Email itself isn't the problem. But by forcing users to go out-of-band to request permissions, we at least double the person-time required to grant a new permission. The software, in rejecting a person's request, already knows the user, desired resource, and what permissions are requested. In an email, the user will say "I need to be able to reserve conference room X on Monday afternoon." The recipient needs to then translate that into the permissions system of the application. First, you must map a user's email-sending identity to her application-using identity; many apps have their own user database which you'll have to search by last name. Second, you need to look up the record for conference room X. Finally, you need to decide which permissions to add. Is the user allowed to book conferences already, but just needs to be added to a special list for room X? Is she allowed to book room X, just not on Mondays? Depending on the application's permissions model, there could be a lot of different options here.
The last step, choosing the specific permissions to grant, is the only part of this that requires input from the application administrator. So the ideal approach would allow the administrator to grant a permissioning request without entering any other data.
So, emails are right out.
The user who desires permission should request permissions through the application. Any "you can't do that" messages should be accompanied by a "request permission to do that" button.
Pressing that button should notify the administrator of the request. Rather than translating an email into applicationese, he should be able to choose from the available permissioning options (or denial) right in the notification.
27 Aug 2004
Jessica has some interesting thoughts on combining blogs with file management. I think she has the right idea, but she's finding it hard to elaborate the details of how it would work because she's so used to using software that was just built wrong.
Here's what I mean: the concept of a "file manager" as a business/collaboration tool is broken. A file manager focuses on files, which tend to have different formats and byte lengths and gobble up disk quotas and sit in one folder and can only be viewed by certain software. So the file manager's job is to help you navigate each of these things.
None of these capabilities, emphatically not a single one, belongs in frassle or any other blog community system.
Files contain information. Blogs are about sharing information. However, sharing files is a lot harder than sharing information in blogs. This is because:
1. Files come in a variety of incompatible formats.
- you often can't view them in your web browser
- they might not be easy to read for all of your users
- they're hard to excerpt and republish
- they're hard to search
2. If you have a file, it's difficult to find out:
- who created it
- who's in charge of it
- if you're looking at the latest version
- if any discussion has flowed from this information
3. Files expose you to some major risks and annoyances:
- you might get a virus
- you might run out of disk space
- you might copy this somewhere and forget about it, and years later be unable to decide if this is a crucial document or just some cruft you decided to hold temporarily.
If you invert each item in this list, you see the major strengths of blogging over other information sharing approaches. Specifically:
- thanks to the personal focus of blogs, you can always tell who is in charge of some post
- thanks to permalinks, you can always ensure you're looking at the latest version
- thanks to the simplicity of HTML and RSS, you can always easily excerpt, republish, and search blog posts
- thanks to comments, trackback, and technorati/feedster/google, you can find out what discussion has flowed from any post
- thanks to the ubiquity and architecture of the web, you never have to risk viruses, running out of disk space, etc.
So I think the requirements for integrating file management into a blog community system are simple. Take all the things that make blogging so valuable and easy, and support a few additional input formats.
That is an easily stated but profound requirement. Let's consider the example of the PDF format, which is used for printable multi-page documents. PDF is about your best bet for preserving exact print formatting in a document while still displaying OK on screen. You've probably already viewed PDF documents in your web browser, using Adobe's excellent Acrobat Reader. This gives you some things for free:
- you can view documents through your browser without saving files (of course, you must have the plugin, which is not quite as ubiquitous as web browsers)
- you probably can't get a virus from reading a PDF file
But a few challenges remain. Let's go through the positive features of blogs and speculate on how to integrate PDF files.
- you can always tell who is in charge of some post
One way to do this with a PDF file is to link it to a particular blog post. Ideally, the blog community system would actually edit the PDF file and insert that entry's permalink at the top of the first page. This should be clickable (to load the blog post page in your browser) but should not automatically be printed in hard copy.
- you can always ensure you're looking at the latest version
PDF files may include a mechanism for checking for alternate versions in some sort of repository. If so, it should be used. If not, the link approach described above is a suitable workaround.
- you can always easily excerpt, republish, and search blog posts
It's really hard to do any of these on PDFs. The likely solution is to just convert them into HTML, and make the actual PDF file a secondary format primarily useful for printing. But while extracting the text from a PDF file is easy, translating the meaning of a page's design to a non-paginated medium like HTML is not something computers can do perfectly. If you're not convinced, try out Google's impression of IRS tax form 1040. Keep in mind that Google is a wealthy company with some of the best engineers in the world. They have a fairly readable HTML rendering of the form, but commentary on a form like this really requires post-it notes, highlighters, and drawings in red ink—none of which we can do or emulate well on the web.
- you can find out what discussion has flowed from any post
PDFs are bad for discussion because they are one step removed from immutable hard copy. Therefore there are few responses, but those that exist are likely to be in emails or other inaccessible media (phone calls, face-to-face meetings). So there probably isn't much discussion to be found, but we can likely just divert people onto the standard comment/response system.
- you never have to risk viruses, running out of disk space, etc.
This is mostly free with PDF files when you use the browser plugin.
Hmm. That's not so bad. The other question is, can we do all of these things without compromising the rest of the blogging experience? Clearly, despite our best efforts, a PDF will never be as easy to work with as a plain HTML blog post. It will waste more time and cause more frustration. What about more complex/proprietary formats, like MS Word? What about video? audio? source code? executable software?
Actually, I suspect many of these will have their own holistic community collaboration platforms, using the metaphors for authority, discussion, republication, and convenient use that apply in that medium. Cool.
27 Aug 2004
A pretty great rant about the sorry state of aggregators. I mostly agree, and am amused by the tone of the writing.
But unless you're some anal-retentive Asperger's Syndrome poster child, you're only going to care about a sub-set of the endless sea of crap out there, and the software should help you filter it down to manageable, crunchy chunks.
Also has a link to decafbad, who has more good ideas for making aggregators more useful.
26 Aug 2004
Just had an interesting chat with this fellow. I hope he'll become a frassle user, and perhaps even a developer.
Ricoh Innovations, Inc.
Community Ventures for the creation and exchange of digital goods
Shared purpose and social contracts provide the economic and social framework for cooperation in the production of value that greatly exceeds the sum of individual efforts. Building on the success of Linux, Apache, and the Public Library of Science in the production of intangible goods, and the traditions of Ashoka and ThinkCycle.org, I seek to provide practical models for successful community ventures that address economic incentives, social contracts, and intellectual-property. These models will be tested and demonstrated through pilot ventures focused on creating sustainable solutions for currently underserved communities including a "documentation kiosk" to support the exchange of social services information, and "open informatics" methods to gather clinical data while preserving control over personal information.
26 Aug 2004
In this excellent post on Progressive Trust, Christopher Allen describes how trust develops between humans and how this meshes with technological notions of trust. When choosing how to divide our attention, we make use of numerous conventional credentials: are you at a professional conference I attend? Are you well spoken and polite? As we continue to interact, and develop a greater body of shared experience and understanding, we refine our trust in each other.
I'm a little surprised, though, that Christopher didn't mention blogs. What makes blogs (and the RSS-powered subscription mechanism) so powerful for getting you information you care about is trust. Specifically, you can think of a blog subscription as an indication of trust that some feed will contain items of interest. It is a rather coarse-grained indication of trust, but is quite effective. Especially when I the reader have my own blog, and participate in the common practice of linking and excerpting the especially interesting content from my subscribed feeds. When I do that, I am delegating trust—the trust placed in me by my readers can connect to Christopher because of the trust I have for him.
This is exactly what happens in social situations. Suppose you're at a party and meet someone new. What's the first thing you ask them? "So, how do you know Bob?" Now suppose you know Bob has despicable taste in music, but he makes the world's best cheesecake. You'll spend a lot less time talking with someone who answers "I played in a grunge band with Bob in 1992" than someone who answers "I'm a pastry chef instructor at the local culinary institute where Bob took night classes." This example, ubiquitous in our social lives, illustrates how powerful and adaptable trust is. Even without being consciously considered.
The amazing thing about blogs is that they can reflect this kind of nuance. Almost every blogger has a variety of interests, sometimes spread among multiple blogs, a blog and a livejournal, or categories within a blog. Furthermore, blogs cluster into communities based on shared interests, such that if you subscribe to any of the blogs in the community you are unlikely to miss any major news within the community. This redundancy permits individual bloggers to specialize in the details, and offers readers a chance to adjust who they trust, over time, as they learn more about their options. Just like if you're first interested in an academic field, you can work with any professor who's involved and learn a lot from them; but if you want to do a PhD thesis you'd better find someone who not only is interested in something you want to study, but is also easy for you to get along with.
Frassle, my blogging platform, is an attempt to emphasize and scale up the trust mechanisms already informally used throughout blogs. Another smart take on this situation is Robin Good's discussion of the NewsMaster.
26 Aug 2004
In such a file as I am going to describe, there is joined personal experience and professional activities, studies under way and studies planned. In this file, you, as an intellectual craftsman, will try to get together what you are doing intellectually and what you are experiencing as a person. Here you will not be afraid to use your experience and relate it directly to various work in progress. By serving as a check on repetitious work, your file also enables you to conserve your energy. It also encourages you to capture ‘fringe-thoughts’: various ideas which may be by-products of everyday life, snatches of conversation overheard on the street, or, for that matter, dreams. Once noted, these may lead to more systematic thinking, as well as lend intellectual relevance to more directed experience.
— C. Wright Mills, The Sociological Imagination
There's more of this quotation, uncannily in context for blogging, in Alex's post.
25 Aug 2004
"Fear is a question: What are you afraid of, and why? Just as the seed of health is in illness, because illness contains information, your fears are a treasure house of self-knowledge if you explore them."