Go, Do, Be.


06/29/2010  — 

And Boom!

Almost sounds like he wants to be John Madden.

10/19/2009  — 

HELL -- Your Soundtrack For Halloween

A few years back, the Greacens hosted a halloween party and decided to put some spooky sounds together to complete the mood. A friend and I ad-libbed a few lines and performed some spookiness with random junk in my studio: sticks, a violin, and a few microphones.

The result: four minutes and six seconds of HELL.

Go ahead and download 20091015_hell_001.mp3 (~5mb) for your own nefarious purposes.

Blast it on the home hi-fi during the trick-or-treat hours and see how many kit-kats you have leftover. Let me know how you use HELL.

Enjoy! See you in hell.

03/29/2009  — 

Twitter-Based Blog Syndication Flowchart

Following on the microsyndication theme I mentioned earlier, I decided to map out the events that take place when I put a new post onto this blog.

Here are the basics:

  1. I publish an article on greacen.com. The article appears on the site as well as a (private) url of an RSS feed which...
  2. is polled regularly by feedburner.com which republishes the feed and gives me some basic analytics for how the feed is used and...
  3. is polled by twitterfeed.com. It reads the feed and gets twitter-friendly shorturls for each feed item and updates...
  4. twitter.com with each new article which...
  5. updates my status on facebook.com.

The nice part about this setup is that it's all automatic: the only action I take is posting my idea onto my site. The feeds take it the rest of the way.

Analytics are pretty crude at this point. Any clicks on the feedburner-based feed should offer some basic analytics. If I really wanted details, I think I'd need to generate a separate feed for each microsyndication destination if I wanted to measure twitter clickthroughs vs. facebook clickthroughs (though google analytics should offer a hint about the source of clicks to greacen.com)

Here's the Graphviz drawing of the flow I described above. digraph BlogPost {
ratio = fill;
node [style="rounded,filled,bold" shape="box" fillcolor="skyblue"];

/* Set up specific shapes */
"RSS Aggregators" [style="rounded" shape="box3d"];
"URL Shortener" [style="" shape="invisible" label="URL Shortener"];
"Analytics" [style="" shape="invisible"];
"greacen.com" [label="greacen.com Publish blog article"];
"feedburner.com" [label="feedburner.com Analytics and scaling"];

/* Box in those 3rd party things */
subgraph cluster_c1 {"Analytics"; "URL Shortener";
label="Other Parties"; style= "dashed";}

/* Show and label relationships */
"greacen.com" -> "feedburner.com" [label="GET RSS" dir="back"];
"feedburner.com" -> "twitterfeed.com" [label="GET RSS" dir="back"];
"feedburner.com" -> "Analytics" [];
"twitterfeed.com" -> "URL Shortener" [label="GET URL" ];
"URL Shortener" -> "twitterfeed.com" [];
"twitterfeed.com" -> "twitter.com" [label="POST twitter api"];
"twitter.com" -> "facebook.com" [label="facebook/twitter bridge"];
"feedburner.com" -> "RSS Aggregators" [label="rss feed" color="darkorange"] ;
"twitter.com" -> "RSS Aggregators" [label="rss feed" color="darkorange"] ;
"facebook.com" -> "RSS Aggregators" [label="rss feed" color="darkorange"] ;

Here's what those instructions become with a click:

publishing flow

This is different from my surf report post. The surf report is the content, whereas with a blog post, my site holds the real content. The RSS feeds publish a pointer to the original content.

Make sense?

03/26/2009  — 

Twitter-Based Surf Report Flowchart

I've been mucking around with Twitter and Facebook lately. There are a few folks who have been using these services to post info about how the surf is. I don't live close to the beach (yet), so I like to see what's happening before I jump into the car and make the trip.

I sent a message from my phone this morning. Even though the surf was lame. The message was published all over the place (microsyndication). Here's how it worked:

  1. I emailed a photo to twitpic.com which...
  2. updates my status on Twitter which...
  3. the @StokeReport user follows. If my tweet contains "SMLM", stokereport will publish my tweet on stokereport.com (and even pull the image off twitpic it seems, nice!).
  4. also, http://greacen.com has that little widgety thing over there on the left. Your browser will pull the image from twitpic and put it onto this page.
  5. also, Twitter will pass my status update on to Facebook.com

Guess what? Most of these nodes along the way have their own RSS feeds for others (services or people) to slurp & read.

Thinking about this plinko-esque publishing flow is a little dizzying. I've been working on web site flows for a few weeks now. It's often helpful to map out a flow to see what's really going on. Graphviz is an open source tool for producing network diagrams and flow charts that I've been using for mapping high-level flows. Here's what a map looks like for the publishing flow I described earlier:

digraph TwitterSurf {
ratio = fill;
node [style="rounded,filled,bold" shape="box" fillcolor="skyblue"];

/* Set up specific shapes */
Phone [style="rounded,filled" shape="oval" fillcolor="grey"];
"RSS Aggregators" [style="rounded" shape="box3d"];

/* relationships */
Phone -> "twitpic.com" [label="Email with attachment"];
"twitpic.com" -> "twitter.com" [label="twitter api"];
"twitter.com" -> "facebook.com" [label="facebook/twitter bridge"];
"twitter.com" -> "stokereport.com" [label="if post contains 'SMLM'" style="dotted"] ;
"twitpic.com" -> "greacen.com" [label="widget/embed" color="red"] ;
"twitter.com" -> "RSS Aggregators" [label="rss feed" color="darkorange"] ;
"facebook.com" -> "RSS Aggregators" [label="rss feed" color="darkorange"] ;
"stokereport.com" -> "RSS Aggregators" [label="rss feed" color="darkorange"] ;

If you ignore the []s, it looks like a terse version of our list up above. Here's the flowchart those instructions produce:

Surf Report Publishing Flow

Kinda neat, huh? I find the way this goes from text to sitemap really intriguing. This -> that; that -> next; other -> next; makes sense to me. Graphviz does a great job of putting this all together in an easy-to-digest graphic.

There are a few rails front ends to graphviz (demo) that might make a web tool for this possible. I could see this becoming a handy planning tool for our organization.


  • Anyone ever use a tool like this for making sitemaps or high-level flows? What tools work well for modeling these interactions?
  • What other publishing tools are you using to propel your tweets? (where's my linkedin hook?)
  • Has anyone run into ownership issues with this plink-esque publishing?
  • Does this have a name? Let's call it microsyndication.
  • What's the best way to get metrics for this kind of publishing? Is there a way to measure in this distributed/microsyndicated system? How many people read my surf report?

Thanks for reading.

12/15/2008  — 

Darwin's moth: a survey of behavioral targeting solutions

Edit: These notes are pretty old, but heck, I'll toss them out. Also, a note of fair disclosure: I own no stock in any of these companies.

Upon the discovery and study of Malagasy orchid (Angraecum sesquipedale) a beautiful flower with a preposterously specialized shape, Charles Darwin hypothesized that a moth with a tongue of equally preposterous specialization must exist in order for the plant to pollinate and reproduce. Darwin's hypothesis was confirmed much later when the Hawk Moth (Xanthopan morganii) was filmed doing its business.

It's a close, cause-effect relationship between the players. Imagine what would have happened if Darwin found the moth first: would he have predicted the orchid? The flower needs the moth, does the moth need the flower?

The web site parallels are clear: your site is a beautiful flower, its sweet content is the nectar attracting/enticing visitors. You study your users, learn what they want or need. You add a new feature, determine its success by the number of people that use it. If it's good, the people will come, even if you need to lead people to the good place.

This story is worth keeping in mind when examining the approach taken by behavioral targeting systems currently on the market. Their methodologies seem to fall into one of two categories: one group studies the pages on a site to make assumptions about the visitors to that page. The assumption is that you can generalize something about a visitor if you understand the content on a given page.

The other group studies users clicks and trends to make generalizations about groups clustered within a user population. To me, it seems like this group is studying the elusive, hard-to-capture moth. I recently had the privilege of reviewing some of the BT services. Our needs are pretty typical: we want to extend premium ad inventory by targeting ads based on user behavior. Content-targeting (non-ad) would be more of a nice-to-have. Our requirements are similar to most partner-integrations:

  1. Ease of implementation
  2. Ease of segment (moth) definition
  3. Forecasting segment size
  4. Targeting accuracy
  5. Dart integration
  6. A/B testing for auditing effectiveness
  7. COPPA compliance (we want this to be clean!)

Here's a brief survey of the top behavioral targeting services (email me if you think I should add another).

baynote - study the moth

  • http://www.baynote.com
  • 2 step implementation: first add an observer tag (dead simple), then add the content piece (slightly trickier)
  • groups users based on search terms and click paths
  • doesn't care as much about what's on a page
  • Baynote doesn't seem to have a dart integration, however it seems possible that baynote could serve a dart tag targeted to a user (which won't be too easy to manage in the long run).
  • proven track record with targeting content (think merchandising 'related items' on ecommerce sites)
  • cost: no idear. They have no model for an ad-targeting engagement, but they seem interested in exploring this. We would run a test with them if there's no up-front $$$.
  • Here's something they seem to do well: constant testing to evaluate performance.

Personifi - study the flower (and the moth a little)

  • http://www.personifi.com
  • simple integration: serve their tracking tag through dart. This is a great way of dealing with the integration. Let the ad operations folks manage the whole thing.
  • Personifi spiders the page and maps the content to Personifi's own taxonomy. To me, this is the really cool part: they'll classify your site's content for you.
  • DART integration! passes name/value pairs to dart. Target campaigns to behavioral segments
  • cost: cpm or revshare

LOTAME - study the flower

  • http://www.lotame.com/
  • implementation is 2 steps: add their tracking tag to collect information, then manually identify the clusters of users their system identifies. The manual cluster-identification seems like a lot of work. We need to learn more about this.
  • you can manually upload their classification results to dart for ad targeting, but they're working on automating this piece.
  • cost: cpm or revshare

DART boomerang - study the flower

Edit: This one may have disappeared already. Did it ever really exist?
  • No url. Not a lot of info on boomerang on the dart site. Sounds like they're gearing up for a 2.0 release sometime in '08 which will have a proper admin-interface.
  • Implementation: Drop a pixel or 'boom tag' on a page, associate pages with a 'boom list' or segment name, target ads to 'boom lists'. We need to know what pages (or conversion events) belong to each 'boom list'.
  • Interesting factoid: we could deliver a targeted ad to a user even if the 'boom tag' is not on the page.
  • cost: fee structure based on the number of 'cookies' or 'users' in 'lists'. We'll see what this really means.
  • Interesting factoid: Boomerang will work closely with ad exchange to provide some interesting off-site revenue opportunities.

I noticed that the wikipedia page features a bunch of european BT companies. WunderLoop and nugg.ad look interesting! I'll check them out at some point. Tacoda doesn't seem to be licensing their technology right now, so let's skip them altogether.

If I get some time over the weekend, I'll put together some really sketchy notes on what's really happening under the hood with some of these behavioral targeting systems.

08/20/2008  — 

Digsby will change the way you communicate online

06/27/2008  — 

Post 1000

04/17/2008  — 

AdTech: Widgets and Gadgets

02/14/2008  — 

More Lack of Engineering