Your info is stored on a server

  • Previous versions of Happy Friends stored information locally. So if you used it on more than one machine, you would have to manually coordinate subscriptions between them. In version 0.49, the information is stored on a server, so the subscriptions and the outline state go with you where ever you go.

  • You still have to log on to Twitter on each machine, of course -- that's how Happy Friends knows who you are.

It remembers the cursor

  • Previous versions of Happy Friends remembered the expansion state of your outline, but not the cursor location. Starting with 0.49 we also remember the cursor.


  • Be careful about having more than one copy open, there's no checking to be sure you don't overwrite the outline on one machine with another. I plan to put this in, but it's not in yet.

  • If you have any problems, or questions, please post a comment here.

08/10/14; 07:59:48 AM

It's great when one of your Happy Friends posts a lot of tweets, but it can get unmanageable quickly. So I added a couple of features recently that help manage the flood.

  1. Delete All Tweets, a new command in the Friends menu, is the radical approach. It just starts all your friends over from scratch, deleting every tweet under every friend. I actually like to do this, but then I'm not trying to create an archive of tweets with Happy Friends.

  2. A more nuanced approach uses a new Happy Friends setting that groups all tweets under a sub-heading for the day. Turn the feature on in the Settings dialog, which you can access in the menu at the right edge of the menu bar. Here's a screen shot. Now when you expand one of your friends to see what's new, you'll see something like this.

A picture named dateSort.gif

It's important to be aware that there's a limit to the amount of memory you can use to store this outline. But the limit is 5 megabytes, which actually is a lot of space for outline text. But someday you will hit that limit if you don't delete some tweets.

07/14/14; 08:38:04 AM

After releasing 0.46 and 0.47, I tried using Happy Friends on my iPad and immediately saw two fairly big problems with the Arrow Pad. Both are fixed in 0.48.

  1. The pad was on the right side of the screen, which is the right place for Fargo but the wrong place for Happy Friends, where it obscures the Twitter rendering of the item, which is almost certainly what you came to see. Now it's on the left side, over the top of the outline.

  2. Expand and Collapse works a little differently in Happy Friends. When you expand a twitterFriend type headline, we have to look to see if there are any tweets available for it. So we can't examine the in-memory outline to determine if it can be expanded. Now it does the right thing, which is considerably more complex to program, but not complex to use.

07/10/14; 04:39:32 PM
  1. New command in the Friends menu: Delete All Tweets. All your friends are still there, but the tweets under each friend are removed. I think of this as the Fresh Start command.
07/10/14; 11:03:01 AM

In order to keep their servers running smoothly, Twitter has established a set of very reasonable limits on the number of times users can do things when using an external app like Happy Friends.

I've tried to tune the software up in such a way that it's not likely to happen, but it's possible that with a large number of friends, or if you're checking for updates frequently, that you'll hit a rate-limit error. You'll know you're getting these errors if a red message appears below the outline that tells you. It links to this page.

Rate-limit checklist

  1. Consider turning off automatic checks, or checking less frequently. In the menu at the right edge of the menu bar, choose the Settings command and click on the Rate panel.

  2. If you turn off automatic checks, you can do a scan manually with the Check For Updates Now command in the Friends menu.

  3. Watch fewer people in Happy Friends and keep the rate of automatic checks as-is.

  4. Slow down, or take a break. Sometimes rate-limit errors can happen if you do too much expanding. So slow down a little, or do something else for a while. The rate-limits eventually reset (that is, Twitter forgets about the past excess).

  5. When you come back, reload the page if the message is still there.

The technical docs

Here's what Twitter says to developers like me about rate limits. It's pretty deep stuff.

07/10/14; 07:27:26 AM

In the rush to ship Little Card Editor and some problems were surfacing in Happy Friends. I finally got a chance in the last couple of days to dig in and figure out what's happening and make some fixes.

  1. It wasn't handling rate-limit errors well. And that would cause false positives, headlines that would go bold when there were no changes.

  2. If you had two copies of the app open in different tabs, it would be possible for one to update and the other to pick up on the change and wipe out the outline. Now it no longer has the capacity to do this, and even better the copy of the app running in the non-active tab will stop updating until you show up again. However, for now -- the best thing to do is to be sure always that there's only one copy of Happy Friends open in any single browser, on any single machine.

  3. I tuned up the way columns display, so that there's more fluidity. The tweet preview should not overwrite the outline. And the outline should get smaller if you decrease the width of the window. As a result it also works better on tablets such as the iPad.

  4. If you're saving a public copy of your outline you'd quickly hit your rate limit if you were making lots of changes to the outline. Now this won't happen because we cache information that Twitter provides us, on the server.

  5. There's a new Unbold All command in the Friends menu if you want to check all your friends again. It helped preserve my sanity while testing, and it may help you too. (Can't hurt.)

  6. There's a new Rate-limit indicator below the attributes display. It shows when we're getting rate-limit errors from Twitter. It's important for you to know this, because parts of the app are non-responsive when you're at the rate-limit. I also write a user-level backgrounder on rate-limits. When you're getting rate-limit errors there are remedies, which are explained in the backgrounder.


The new release works a lot better than the previous release. Sorry you had to put up with all those problems. I hope to do better with this product in the future. I love it as much as the others. It's a little more difficult but it's also quite useful.

07/10/14; 07:26:46 AM

Two features in this release.

  1. If you have two Happy Friends tabs open, they communicate. In previous versions, if you made a change in one tab, they wouldn't be reflected in the other. You could lose work that way. Ooops.

  2. There's now a Dave menu in the menu bar, linking to Fargo, Scripting News, etc. Tomorrow it will link to a yet another new product!

Still diggin!

06/29/14; 08:58:41 AM

In Happy Friends 0.43 the icons in the left margin and the tweet display on the right stay in fixed vertical positions as you scroll through the outline. This eliminates needless fussing with the outline and burnt brain cells.

The video below demonstrates the new feature.

06/28/14; 01:12:00 PM

There's one new feature in this release of Happy Friends, the ability to publish your outline in OPML format, so other applications can access it.

To enable the feature, choose Settings in the System menu (the menu at the right edge of the menu bar, with your Twitter handle). Click on the Publish panel. Screen shot.

Click the checkbox and then OK.

Make a change to the outline, expanding a headline is enough. This causes the outline to be saved to local storage and to the outline on

Go back to the Settings dialog, click on the Publish panel and now you should see the address of your outline in the text box. Screen shot.

Plugging it into Fargo

You can use the outline for any purpose you want. One of the places it's useful is in the Fargo content management system, making it easy to include tweets in your pages, posts, presentations, etc.

See the notes for Fargo 1.62 for details.

06/27/14; 10:26:42 AM
06/26/14; 03:51:44 PM
06/25/14; 02:31:12 PM

A few small improvements and fixes in Happy Friends v0.41.

  1. You can add individual tweets using a new command in the Friends menu. This is useful if you want to use Happy Friends to organize a discussion that took place before Happy Friends existed.

  2. We cache the Twitter renderings to conserve traffic to and from the server.

  3. We used to leave around Twitter renderings as you move the outline cursor, if we didn't have something to replace it with. Now we're more strict. If you're pointing at headline that is not a tweet, the Twitter rendering in the right margin should be blank.

  4. The Arrow Pad from Fargo is now part of the UI of Happy Friends. You can activate it with a command in the Outliner menu. It's helpful when using HF on a computer without a keyboard, for example a tablet or phone. Screen shot.

  5. There's a video demo of Happy Friends on YouTube.

General note: If you want to see what the version number is, it's in the About command in the Twitter menu at the right edge of the menu bar. Screen shot.

06/25/14; 01:52:29 PM

This doc shows you how to get started in a few simple steps.

  1. Go to the Happy Friends web page.

  2. In the right corner of the menu bar, you'll see a blue Twitter icon say says Sign on here. Click, a menu drops down. Choose the last command, Sign on Twitter.

  3. You're transported to Twitter, where you can give Happy Friends permission to access your account. It won't post on your behalf or read any private messages. You're just giving the app permission to ask Twitter, on your behalf, for the updates of the users you specify.

  4. When you come back, the first thing to do is to give Happy Friends a few people to watch. To do that, choose Add Friend in the Friends menu. Enter the Twitter handle of a user, and click OK.

  5. If you want to add a few people quickly, choose Add Suggested Friends from the Friends menu.

  6. When you want to see what's new, double-click on any of the friends to see their most recent tweets.

  7. When you put your cursor on a tweet, the full Twitter rendering of the tweet appears in the right margin, with pictures, videos, cards.

  8. There are icons in the left margin of the page

  9. When a name goes bold, that means there are new items underneath it. Happy Friends is checking periodically to see if there are updates.

At the simplest level, that's all there is to Happy Friends. But you can do much more with it.

The icons

Here's a screen shot of the Happy Friends app taken on shipping day. You'll see a set of icons in the left margin. Some will be familiar, the recycle symbol for Retweet, the left arrow for Reply, the star for Favorite.

The first icon, an up-pointing arrow in a circle will archive the tweet you're pointing at. It moves it from its current location to a calendar structure it creates at the top of the outline. When you see a tweet that you want to keep, you should archive it.

The last icon, the eye, takes you to the Twitter website to view whatever the cursor is pointing at. If it's pointing at a person, you go to the person's profile page. If it's pointing at a tweet, you go to the tweet in its full context, on

It's an outliner

You can organize it any way you want. The people don't have to be at the top level. You can create groups of friends. You can move the archive to the bottom of the outline. Outliners are tools for editing organization. This is the same outliner as in Fargo so it's a pretty good one, and is fairly complete.

We have an outliner how-to document that gives the basics of how the outliner works.

If you forget any of the commands, choose the Outliner Cribsheet from the Docs menu in Happy Friends.

Delete tweets when you've read them

It's a good idea to keep the lists under each person short. Archive the ones you want to keep around.

Where do we go from here?

Lots of places. That depends on the response to the product. I'll be listening carefully and watching what people do with it. I've really enjoyed making htis product. I hope you like using it!


06/24/14; 06:02:18 PM

This is a place to post questions about Happy Friends.

06/24/14; 04:32:03 PM

Here's the story of how Happy Friends came to be.

  1. I was thinking about mailbox-style readers. I want to do one for River4.

  2. Then I realized: Twitter is a river too.

  3. Wouldn't it be nice to have a mailbox-type reader for Twitter?

  4. It would! It turns out. Screen shot.

  5. Opens up a new way of using Twitter.

  6. For example, I want to follow @pmarca, but I often miss his tweets in the gushing river that is Twitter.

  7. So I made a box for him. I created it by choosing Add Friend from the Friends menu. I entered pmarca and clicked OK. His name, Marc Andreessen appears in my list of people I'm watching.

  8. When he posts something new, his mailbox headline goes bold. I expand it to reveal the new items. If it was already expanded, I collapse and re-expand. This avoids the (I feel) ugly effect of the thing I'm reading scrolling off the screen because something new had been posted.

  9. I get all his tweetstorms. I'm happy.

  10. I also added @FisolaNYDN, a sports reporter for the NY Daily News. He doesn't tweet that often but when he does, it's often news. He has sources inside the Knicks and he probably talks directly to Carmelo Anthony's agent. So Isola is a guy I want to keep tabs on.

  11. I added @karaswisher, a great tech reporter who doesn't post that often to Twitter. But when she does I want to see it. She's the perfect kind of person to put into your Happy Friends list.

  12. I know you're probably thinking this is like lists, and it is, a little -- but Happy Friends are not rivers, they're mailboxes. It's a fully-editable outliner. I can see the tweets as Twitter intended them, which is super nice because you get the pictures, and movies, and all the good shit. You get to see that by clicking on the headline. The Twitter display automatically refreshes. Plus I think there's a chance the Twitter management will love this because it makes Twitter fresh and new, yet respects the tried and true.

  13. Because it's an outliner, you can put the people anywhere you like. You can copy tweets and create new outlines out of them. Think of it as having an outliner to do what Storify does. It's the outliner from Fargo. So it's a pretty good one.

06/24/14; 08:23:54 AM

Last built: Mon, Aug 3, 2015 at 4:40 PM

By Dave Winer, Monday, August 3, 2015 at 4:40 PM.