In the most basic, obvious terms, it's a novel middle ground between tweeting and blogging: through formatting and post organization it tries to encourage a series of concise mini-posts—usually about the length of a single thought—which, unlike in Twitter, are all organized into individual streams, each on an individual topic.
This is an interesting and elegant enough choice that I think all the different purposes it can be put to remain very much to be seen. In my case it seems perfectly suited to the practice of thinking aloud (this stream itself being a notable exception), that is, sending a series of individual thoughts or steps of a thought process across the transom without necessarily having my entire argument reasoned out ahead of time; indeed the format seems to lend itself just as easily to realizing halfway through a stream that one's initial premise is redundant, or malformed, or not as interesting as one originally thought. Which is part of the fun.
On the other hand the format creates new niggles and demands in the realm of contextualization and personalization. Because each user does not have just one blog, and because any user's output is going to exist in a form that's not really familiar or immediately intelligible to a reader from offsite, the design can lead to the expectation, I think, that users are all writing for each other; that is, that it's a social network, and that we are in the process of accreting a culture and vocabulary that we all share, and talking primarily for each other. Which isn't right, I don't think; my intended audience is the internet at large, and that seems to be the case for most users here.
It's hard to tell how to assist that intention. Greater personalization and theming is one obvious way; like in Marquee above, and to a lesser extent in Twitter itself, custom backgrounds and fonts are an effective way to create a 'brand' and emphasize the individual user. On the other hand, any web designer will surely lament the day that they sign away their pleasing, homogeneous aesthetic to the disarrayed whims of the mob.
Simple familiarity might be the greatest aid here; I am trying to think back to the first couple of times that I clicked in to someone's Tumblr or Twitter page, and whether—font customization be damned—I simply needed to see more and more unconnected people using the service in order to know what to expect when I clicked a link, and to not have to waste any thought on contextualizing the feed; that is, to when I was able to simply read a Twitter feed as an individual's Twitter feed, rather than another instance of this service, Twitter.
Looking back at this list, it's clear that one of the areas in which developers have really progressed from the first generations of blogging software is in posting methods—the whole conceits of many of these services lie in the clever and frictionless way that a user can make a new post. I'm particularly attracted to Dropbox-based services, as I retain a slight pre-web suspicion of text input boxes located in the browser, and because they also completely solve the problem of data lock-in as a bonus.
So this is an obvious area of potential growth for ThoughtStreams. Right now one can only post in a text input box located in the browser. Email-to-post is an obvious direction, though it immediately becomes complicated by the novel format. Normally one emails one's blog, and the subject becomes the title, and the body becomes the text. For any given ThoughtStream user, the blog analog is an individual stream. Leave aside that individual posts don't have titles; that would imply that there would be a new email address for every stream created in the system, and the word 'profusion' quickly comes to mind.
The alternative is that blogs (and thus destination addresses) map instead to users, subjects map to streams, and bodies map to text. But the same problem as above sticks in here: users tend to have a lot of streams. They're encouraged to have a lot of streams. As such, it's a pretty lofty technical requirement that in order to post by email the user must a) remember and b) spell correctly the precise name of the stream they'd like to post in.
Posting by Dropbox is a little more appealing to me, though that's probably because a vision of its operation involves more handwaving—that is, more hard technical work on the part of somebody else. But one could imagine a system in which the entire structure of a user's ThoughtStream (what's the name for all the streams that belong to a given user? Stream bed? I hope so) stream bed is reflected in their Dropbox folder hierarchy: there is an Apps folder in my Dropbox, and a ThoughtStreams folder in my Apps folder, and therein is one folder for each stream. If I want to create a new stream, I can create a new folder or subfolder. If I want to create a new entry in a stream, I can create a new plaintext file in the folder of my choosing. This is appealing; it would doubtless also require significant refactoring.