Company Blog

Mergelab service ending June 30


We regret to announce that the Mergelab private beta service will be ending on June 30. The Mergelab founding team has had lots of fun building this early stage product, and we have learned a lot about the both the product and business needs in this space, but we have made the difficult decision not to continue development.

If there are any parties interested in acquiring the technology that we have built and continuing its development, we are open to proposals at mail@mergelab.com. We will not sell the user data that we have collected during the private beta period.

To our friends, advisors and early beta users: we thank you for your support and your feedback. We are working on a way for our beta users to export any data they may have entered into Mergelab prior to the service shutdown. If you have any concerns whatsoever about the service shutdown, please contact us at feedback@mergelab.com.


System upgrade - performance


If you have been noticing slower performance on Mergelab for the last few days, you are not alone: our servers have been very busy keeping on top of all of the feeds of information from people who have signed up during our trial.

This afternoon we are adding some additional capacity to improve performance, so the service may be intermittently unavailable. We will post again here when we are fully back on the air.

Update (4:00PM): We’re back on the air; things should be running a bit faster now!


Hi Tracy!


Thanks for the shout out on the MediaMall blog - along with lots of our startup buddies here in town.

It’s cool to see products shipping with ActiveTV now! Checking out the MediaMall site is making me want to buy one of these.


Unread indicators


Thinking about the difference between a feed and a reader, one naturally points to visual differences: the standard left-sidebar folder or tree view of Bloglines or Google Reader vs. the reverse chronological “what’s new” view of Facebook.

But there’s another difference, and that’s the feeling you get from using a reader vs. a feed, and I think that feeling comes from the presence - or lack - of unread indicators or counts.

If you’re anything like me, unread indicators make you antsy: there’s work to be done, you’re behind on correspondence, time to get to work and get those counts down to zero. (I am a clean inbox person; when I get to around a hundred unread or unfiled messages, I start to feel like I’m overloaded and I actually become less productive.)

This hit me again when Buzz pointed out Alltop on his blog the other day. Now, with all due respect to my friend Buzz, I think he’s going a little overboard by comparing it to the Worldwide Telescope project. But it had a similar “aha” effect on me when I first saw it as well.

Why? I’m a huge Netvibes fan and I have virtually the same content in my Netvibes homepage for the categories that I care about - why would I be impressed with a replacement that doesn’t even allow me to customize it? Again my instinct was to credit the visual design - the super-clean look that is in vogue with a large set of designers these days.

Nope. The difference is there’s no unread indicators. That’s it. No unread indicators is what makes it more of an “online magazine rack” as advertised, vs. having the feeling of sitting down at your desk and seeing at a pile of unread memos in your inbox.

To bring this back to Mergelab… earlier this week I found myself wanting some kind of unread indicator for my Mergelab feed (it’s getting kinda busy). But now I think it would be a lot less fun if we did that. What do you think?


The site icon


It had to happen.

Mergelab site icon
Just be thankful we didn’t cave in and make the whole color theme black and yellow.

If you can’t see the site icon in your browser, try clearing your cache.


Two Weeks as the Startup Circadian Rhythm?


We’ve notched a few more “releaselets“, including one that went live moments ago (details coming!), and I noticed that we have apparently settled into a pretty steady two-week release cycle. I’m still curious about other small startups: what is your natural feature-release cycle?


Re: Competition


Several people have forwarded me one flavor or another of the announcement today that FriendFeed has raised a $5m round from its founders and Benchmark, usually with a comment like “hey you guys have competition!”

My reaction: I think it’s great - validation of the space and all that - our congrats to the FriendFeed crew on their launch and their round.

At this stage in a new market, the real competition is non-use, apathy, and existing halfway solutions from much larger players that are “good enough” to serve a similar need for most users. There is a ton of competition in this space, with new entrants arriving every day. By and large, all that just helps to raise awareness of the potential in this space.


Mergelab Update (or, How I Discovered that Alan Likes Country Music)


We rolled out a Mergelab update earlier today that adds a handful of new features: easier reading of updates within Mergelab, searching within news, and automatically mined summaries of information about the people you are following.

First up are bread-and-butter features: it’s now more convenient to read updates about the people you are following right in Mergelab. This is particularly handy for short blog posts, quick comments about items elsewhere, and such. You will notice a preview of each update’s content right below its title:

Inline Content Summary

Expanding an update shows you more detail, even if there’s quite a bit:

Inline Reading

For items that catch your attention, you can always hit “View Original” to jump to the original page. I find that being able to quickly preview updates right in Mergelab means less bouncing around between sites.

We’ve also added a few frequently requested features to give you more control over your news. You can now stop listening to updates from someone using the “Ignore updates” link on their contact card. You can ignore all twitters using the checkbox under account settings.

Beyond the basics, we have been experimenting with various approaches to summarizing and surfacing information about the people you follow, and you may notice some preliminary results. Here’s a piece of Alan’s summary card, which you can see if you are a Mergelab user and know Alan:

Person Summary

This display shows me what Alan’s been talking about lately (although anyone within earshot doesn’t need Mergelab to tell them that Obama’s been on his mind), as well as some information mined from Alan’s wishlist on Amazon. Although most of the categories are what I would expect for Alan, it took me by surprise to see country music listed. That’s what you get for wishing for Dixie Chicks albums, I guess.

The summary keywords click through to a filtered view of updates from Alan, so you can see exactly where, for example, he has been talking about Obama, or Google, or Mergelab. You can also take matters into your own hands; tucked away at the top of the stream of Recent Updates for your people is a free-form news search box:

News Search Box

We hope you find the new features useful. Please, keep the feedback coming!


ActiveRecord Koan #2: On the Deafening Silence of Failure


As always, the reader is invited to meditate on this code as a koan.

class Parent <ActiveRecord::Base
  has_many :children
end

class Child <ActiveRecord::Base
  belongs_to :parent
end

# [Imagine you are in irb]. Load a Parent record.
>> parent = Parent.find(:first)

# I wish I had the Child records, most-recently-created-first.
# I wonder if this is the right way?
>> ch_1 = parent.children(:order => 'created_at DESC')
>> ch_1.length
=> 31

# Seems to have worked. But what about this?
>> ch_2 = parent.children.find(:all, :order => 'created_at DESC')
>> ch_2.length
=> 31

# I guess they both work. Let's make sure...
>> ch_1.first == ch_2.first
=> false

# Hmm...
>> ch_2.first.created_at
=> Mon Feb 11 06:54:23 UTC 2008

>> ch_1.first.created_at
=> Tue Feb 05 08:21:16 UTC 2008

# Well, crud.

Did this line do what we expected?

ch_1 = parent.children(:order => 'created_at DESC')

No, it did not. It silently ignored its arguments, and returned the children records in no particular order with respect to the created_at column.

This sort of thing is much more of a peril in an interpreted, loosely-typed language like Ruby than in a more tightly typed language like, say, C++, but the fault here is actually ActiveRecord's, for not yelling when you pass it arguments it's just going to ignore.


System Upgrade in Progress


We are bringing Mergelab down for a new release, we'll post an update when this is complete.

Update (12:05PM): We're back on the air; we'll post a description of the new features shortly.