What Powers Instagram

[Don’t know how I missed this piece](http://instagram-engineering.tumblr.com/post/13649370142/what-powers-instagram-hundreds-of-instances-dozens-of “What Powers Instagram: Hundreds of Instances, Dozens of Technologies”) when it came out a couple of months back. Instagram is a pretty simple app — take picture, apply filter, share it — but this post on their engineering blog describes how they use tools like Amazon Web Services, Ubuntu Linux, Django and PostgreSQL to make their app work simply and reliably. There’s a lot of work that goes into making something like Instagram seem so simple and work so well.

Sharing Links with Attribution

Ever since I first got online, I’ve loved finding and sharing interesting links. I suppose I have [Jason Kottke](http://kottke.org/) to thank for that.

I was a [Delicious](http://delicious.com/) user for about five years, but moved over to [Pinboard](http://pinboard.in/) a few months ago, when it became clear that Yahoo not only wasn’t developing Delicious any more, but was looking to [get rid of it](http://techcrunch.com/2010/12/16/is-yahoo-shutting-down-del-icio-us/ “TechCruch, Dec. 2010: ‘Is Yahoo Shutting Down Delicious?'”). Pinboard works just as well as Delicious, has [a compatible API](http://pinboard.in/howto/#api) and [they love librarians, too](http://pinboard.in/blog/161/). Pinboard is also under active development, so it’s (probably) got more of a future than Delicious.

Being a librarian, of course, I have an impulse to catalog everything to within an inch of its life. One thing I’ve been interested in for a while is where I get all the links I share, so a while back I started adding attribution tags to them. For example, If I’d gotten a link from John Gruber’s [Daring Fireball](http://daringfireball.net/ “Daring Fireball by John Gruber”) or Merlin Mann’s [43 Folders](http://43folders.com/ “43 Folders by Merlin Mann”), I’d add a “via:daringfireball” or “via:43folders” tag to the link.

That scheme worked well for small sites and for ones where a single person or a small group was writing, but it fell apart when it came to getting links from massive sites like Twitter, Facebook and the like. Adding “via:facebook” doesn’t really tell you much, because the site has more than half a billion members. Sure, I’m not friends with all of them, but I do know enough people that from whom I got the link makes a difference to me.

I tried adding a unique tag for each person (e.g., **person:SallyFriend**). I thought this would work, because I planned to build a comprehensive database of Sally Friend’s links, regardless of whether they came from Twitter, Facebook, her blog, her shared items in Google Reader or whatever. It didn’t, though, because although she might be *@SallyFriend* on Twitter, she might have a totally different unique identifier on Facebook or other services.

The solution I’ve come up with, then, is to create a second level within those tags, where the person’s username (or other unique identifier) is included in the tag. Now, all of the links I’ve gotten from Rober Ebert’s Twitter feed are tagged with **[via:twitter:@EbertChicago](http://pinboard.in/u:stray/t:via:twitter:@EbertChicago/)**. This tag works well since it has all the information you’d need to identify from which Twitter user the link came.

This means that if I pull these tags into another tool (like the forthcoming Drupal version of this site), I can make use of the tags when I import them. I can write a function in PHP, for example, that will check a Pinboard link for such a “via” link; if it sees that one of the tags is **via:twitter:@EbertChicago**, then it can do something with that, like add a Facebook-style “via” note that links to Roger’s Twitter page. It works the other way, too; if I were to reverse this workflow so that I post links on this site (as I ultimately intend to do) and *then* push them out to Pinboard through their API, I can easily break the referring URL down into just such a tag.

It’s not perfect, of course (then again, few things are). While many people on Facebook have set up their “profile URL” (e.g., *facebook.com/username*), some of my friends haven’t; as a result, some people still use the classic URL scheme, which is more like *facebook.com/profile.php?id=89023753740*. I haven’t come up with a good solution to that beyond possibly adding a third dimension to the tag with their Facebook user ID number. It’s a bit inelegant, but it might just work

However, this scheme seems to work well, as I’m able to save links with attribution in a format I can parse easily.

Hopefully I’ll be able to demonstrate this in the coming months. (If only I had more time!)

CPL Shortlinks (A Good Start)

For the last several months, I’ve been doing patron service for [Chicago Public Library][] on [Twitter][]. I’m [@stray][] (CPL has an official account, [@chipublib][], but that one is run by our wonderful Director of Marketing).

[Chicago Public Library]: http://chipublib.org/
[Twitter]: http://twitter.com/
[@stray]: http://twitter.com/stray “Rob Dumas on Twitter”
[@chipublib]: http://twitter.com/chipublib “Chicago Public Library on Twitter”

A couple of months ago, I bought a domain, **cpl.to**, and set it up as a [bitly Pro][] account, because I like the idea of having a special “shortlink” domain that I can use for tweets about CPL. However, I haven’t shared them anywhere but on Twitter and you might find these interesting or useful, so here are a bunch of useful links I’ve created so far.

[bitly Pro]: http://bitly.pro/

Continue reading CPL Shortlinks (A Good Start)

Use These Tools (But Don’t)

Working on my Social Media Presentation

iPhone. Android. Flickr. YouTube. Delicious. Goodreads. Meetup. Formspring. WordPress. Bit.ly. Github. Dropbox. QR Codes. Creative Commons. Twitter. Facebook.

All of these things have something in common: they are all technologies that Chicago Public Library (as well as countless other libraries across the country) *should* be embracing.

I’ve gotten a ton of work done in the last couple of days on what’s going into the social media presentation I’m working on, for which there will be both patron and staff versions. I am particularly excited about the one for library staff, which will focus on how libraries can and should use these technologies to go where their patrons are and to innovate quickly and cheaply.

However, it has not escaped my attention that the City of Chicago has some fairly draconian policies regarding the use by staff of many of these very same technologies. *That* flavor of irony is particularly bitter.

Folks, when the [Library of Congress has a Flickr account][loc] I think it should be understood that librarians should be allowed use social media. Because we have to special collections. The curated selections.

And one of our major *raisons d’être* is to catalog every single item in them to within an inch of its life.

Because that’s how librarians roll.

[loc]: http://www.flickr.com/photos/library_of_congress/ “The US Library of Congress’ photos on Flickr”