Brookgreen Gardens

Brookgreen Gardens Eric Richardson

Kathy and I are in South Carolina visiting family during her Spring Break. Just up the highway from our house at Litchfield are Huntington Beach State Park and Brookgreen Gardens, a pair of properties once owned by Archer and Anna Hyatt Huntington.

My family used to camp at the state park every year, so I've spent much time on that side of the road, but I can only remember once that we had ever visited Brookgreen, the sculpture gardens that the pair opened to the public in 1932. We paid a return visit this week and really enjoyed wandering around the former rice plantation. — Continue Reading...

Logging in JSON

I happened to wander past the node.js blog yesterday and read this article on Bunyan, a logging framework built around JSON.

It was a fortuitous coincidence, since I was looking for ideas on how best to implement logging inside StreamMachine, the rewindable streaming audio server I've been playing with at KPCC. — Continue Reading...

Taking Radio Beyond the Play Button

KPCC StreamMachine Listen Live Demo KPCC

Back in January I mentioned my explorations with Node.JS and the process of getting over the hump with a new framework. After a couple months of false starts, I had finally gotten a little streaming audio relay up and running.

Turns out, that may have been the start of something interesting.

Over the last few months I've become a bit obsessed with the idea of where radio goes in this new Internet world, and particularly with the idea that the experience of listening to a digital stream has the potential to be worlds better than that offered by your radio. Your radio, after all, only offers you a play button. — Continue Reading...

Making Django and Rails Play Nice, Part 3: Caching

This is the third section of a multi-part look at some of the issues that we faced in developing KPCC's new beta website, which is written in Ruby on Rails but runs side-by-side with the existing Django site. Part one looked at mapping generic relationships with MySQL views, while part two talked about adapting sessions to allow them to wander from one site to the other.

There are plenty of ways to do caching. Page caches, partial caches, timestamp-based caches, versioned caches... they've all got some place in valid place in the caching arsenal. In Rails, the convention is to build sweepers that get fired when model objects are saved, giving a spot to handle expiration or rebuilding of caches. But what do you do when Django needs to be the one to expire your Rails caches? — Continue Reading...

Making Django and Rails Play Nice, Part 2: Sharing Sessions

Yesterday I introduced some of the challenges faced in development of KPCC's new beta web site, which is running Django and Ruby on Rails side-by-side during a slow transition from one framework to the other. Part one focused on using MySQL views to allow Django's generic relationships and Rails' polymorphic relations to use the same data.

Today's topic is sessions, specifically how to allow a session to seamlessly pass from one backend to the other. — Continue Reading...