Archive for the 'Uncategorized' Category

Note to the CS snob: Web 2.0 is not just pretty, it’s real

Sunday, November 26th, 2006

Web 2.0 as a concept many flaws in it, but one of these is not the “the dictatorship of the presentation layer” as described by Bill Thompson in his post on Web 2.0 and Tim O’Reilly as Marshall Tito. A nice turn of phrase perhaps— but as we say in Spanish: “mas flojo que un mojon mojado” as far as the argument goes.

The whole fallacy starts when Thompson characterizes AJAX (one of the cornerstones of Web 2.0) as the:

answer for developers who want to offer users a richer client experience without having to go the trouble of writing a real application.

Not true. Having just spent the last year and a half building a content creation tool that is 100% browser-based and “AJAX powered,” and having just this weekend* matched the level of functionality that I spent the 2.5 years before that building into “real applications,” I can attest to the fact that the AJAX version is easily an order of magnitude harder to write than a native Win32/Mac OS application. You’ve got to deal with runtimes that are all a little bit different, you’ve got to deal with server roundtrips, network latency, and a protocol that is (despite the best intent of XmlHttpRequest) straw-thin and dumb simple. You’ve got scalability, concurrency, memory footprint, and a badly baked-in set of user affordances (hello, Back button?). And when you’re done with all of that, you’ve got a ADD-inspired user that will spend about 5 seconds trying to figure out what you app is about before riding a hyperlink out never to return again. If mitigating risk in the face of complexity were the main goal, I would take scaling algorithms and Thompson’s “message passing between distributed objects” any day over the primordial soup that all of us working to build rich Internet applications in open and extensible ways swim in every day. Hands down.

Put simply, AJAX is not about easier GUIs and cool effects. What makes the suite of associated bits known as AJAX (and specifically DOM manipulation and asynchronous server calls) so important is that it is mashable, transparent, and most importantly, late-binding in the way that it can be recombined post-facto to build value the original application designer never intended. Witness the huge explosion in innovation that Google Maps brought to the world after it was launched.

If it was just about easier GUIs, we’d all be using Flash— much more controlled runtimes and much easier debugging. But Flash is terrible for what makes Web 2.0 special because it lacks the two great enabling attributes of AJAX: “View source” (and all of the associated shallow ramp that comes with it) and IPC (Inter Process Communication) facilitated via the webpage. I’m sure the Adobe guys are not stupid and are working hard to fix this— but with AJAX as it now stands, we’ve already got it, and it makes the absolute pain in the ass that it is to build rich interactive applications out of what was fundamentally conceived of as a display render worth it.

Thompson’s piece is fairly light-weight and so I found myself wondering why it irked me so. And then I realized why— because I’ve spent too much time in lecture halls and at conferences listening to the architecture astronauts talk about the “real computer science—” time I would gladly trade for more time with guys like the hackers at Tabblo who work very hard to make less than ideal technologies like AJAX sing.


releasing books

* And, while I am on that— if you don’t believe me, come back in six hours to see it for yourself.

[NOTE: This post is actually a cross-post from my regular blog but given what we’re launching tomorrow, I thought it was worth using it as a preface for what is coming]

Decidedly social

Sunday, November 12th, 2006

We haven’t bothered to do much promotion of the new Tabblo Groups feature that we launched last week mostly because we wanted to test it slowly and see if this first implementation was fit enough to broadly announce to the community.

However, despite the fact that it has only been one week, Tabblo Groups has been the feature most rapidly adopted by our community since the launch of the original editor. Without being expressly told about it, Tabblo members have created groups about countries, architecture, Christmas, street photography, color, and more.

Most of the groups have fewer than 25 members but because we combine the ability to collect and feature tabblos with an integrated discussion forum, they are active and composed of very engaged storytellers looking to share their own work and socialize with like minds.

It’s been a good lesson for us— we put groups off for quite a while because we felt that the basic form of a group/forum was fairly trivial to implement and therefore not unique enough to be worth spending “Tabblo cycles” on. Instead we focused on the harder stuff around the flexibility and power of the tool. But sometimes people just want to be social, and this is especially true when the substrate for socializing is really high quality content.

So what are you waiting for? Go join a group today. Or better yet, create your own!

Don’t be such a dork!

Saturday, October 28th, 2006

So we at Tabblo looked at this whole idea of Flickr’s interestingness concept as something we should also do. After all, as a crew of mostly engineers, we were sure that we could reduce everything that went into making a good tabblo into one formula. Clearly, we were wrong.

Interestingness is a nice idea, and it’s good to see Flickr trying to get a patent for it but at the end of the day, it seems to me that what you want is to give the people who are interested in the content, the right vectors for navigating it without surprises and without the “AI” factor.

Let me explain: at Tabblo, we’ve got this notion of “featured tabblos” that is very similar in spirit and form to Flickr’s interestingness. We take attention metadata: number of visits, number of repeat visits, number of comments, length of time between visitors, number of times marked as favorite, etc. and we plow it all into a formula that has squares, third-roots, and exponents in it to come up with the list of what our community sees as being worthy of the featured label. The result: almost invariably we’ve got a whole bunch of frustrated content creators who don’t understand why their stuff is not featured, and more importantly, we’ve got a bunch of frustrated content viewers who are not seeing what they want in the featured list.

So it’s time to stop being such dorks and just disaggregate all of this attention metadata. Real soon now we’re going to introduce the ability to surf tabblos by raw views, raw number of times they’ve been marked as as a favorite, and number of times they have been commented on. The “a-ha!” moment came when we realized that as admins these were exactly the vectors of activity we were using— in a disaggregated manner— to see what tabblos we should be placing at the front of our featured queue.

Sometimes it’s clear that our own dorkiness becomes our own worst enemy. For no matter how hard we want to believe it, it is clear that the world of tastes will never be reducible to just one equation. Especially not when we’re dealing with people’s ability to tell stories in visual mediums. Stay tuned…

Wear your Tabblo badge proudly

Thursday, September 28th, 2006

We’ve gotten a lot of requests from folks who blog and want to put a little piece of Tabblo on their site. It’s been easy to publish tabblos out to your blogs for a while now, but in the spirit of the ever-exploding universe of sidebar widgets, we’re introducing dynamic Tabblo badges today.

So, for example if you want to have a rotating list of your public tabblos on your blog like this:

tabblo_rotator.setUp('rotate_mine', 'antonio', 'mine', ''); 

and if you want to show people just your favorite public tabblos:

tabblo_rotator.setUp('rotate_favs', 'antonio', 'favs', ''); 

or public tabblos from your circle:

tabblo_rotator.setUp('rotate_circle', 'antonio', 'circle', '');

The neat thing is that there are quite a few knobs you can turn on the dynamic blog badges if you want to (size, speed of rotation, etc.) so, as always, feel free to experiment and send us comments.

To get started, go here.

We may be a little distracted over the next few days

Tuesday, September 26th, 2006

This was taken literally seconds after that sprinkler head burst. John and I caught the beginning of it in the mouth and face and were then too fazed to do anything but watch as thousands of gallons of putrid 1970 water spilled out on to our lab and our customer Tabblo wall.

The worst part about it was that we just kept staring at it wondering if it would stop on its own for what seemed like quite a long time.

The events in this Tabblo are happening in real time. As I write this, the fire alarm in our office is still blaring in my ears. … See my Tabblo>

Happy OneWebDay

Friday, September 22nd, 2006

One Web Day is going on here in Boston today. We’re very proud to be doing our part to help build up life online so that it’s just a little bit more pleasant for everyone.

Happy OneWebDay!

Wink your way to fame

Tuesday, September 5th, 2006

To kick off September, we’ve decided to solicit some winks from you guys.

Send a picture of yourself winking to wink@events.tabblo.com and get ready to become the face of Tabblo for a day!

And for those that want to help us decide on the new face of Tabblo, check out the winks here.