Saturday, January 3, 2015 at 1:46 PM

Why I needed Noderunner

I have lots of little scripts scattered across my servers whose only job is to keep to things in sync.

An example

For example, I edit Scripting News in Fargo, but serve it on S3.

S3 is necessary for Scripting, because so many people subscribe to the RSS feed, it's the most practical way to scale it. Let S3 handle the traffic. They have to do it for everyone else too.

So I need a little bit of glue that's watching a folder and when something new shows up copies it to S3.

20 years of glue

I've been doing this for 20 years! So there's lots of little crap floating around. And I'm always creating new stuff that needs to be glued together. I didn't want to deploy the new stuff on various Frontier servers I still run (have to or else the content goes away), I want to do it all in Node.js, and run on Unix, from this point on. So Noderunner is where I write the little cheesy bits of glue I need to keep things going as I develop more stuff to glue together next month.

Another example

I have a NYT river that flows items into the @NYT twitter account. That connection done by a little bridging script that runs once a minute.

Why Dropbox is cool for this

Keeping it all in the filesystem makes it easy to do an audit, and also means I have a wide variety of choices of tools to use to edit these scripts now and in the future. Hooking it all up via Dropbox means I can edit stuff no matter where I am. I could even edit server code on my iPhone because they have a Dropbox that runs there too.

Noderunner is duct tape

You live to write elegant software where everything flows naturally.

Unfortunately it doesn't always work out that way. Or history takes us in a different direction. For those situations you need places to organize your little hacks that glue things together. For that, a script organizer like Noderunner is really nice to have.

"It's even worse than it appears!"

Last built: Sun, Jan 4, 2015 at 2:04 PM

By Dave Winer, Saturday, January 3, 2015 at 1:46 PM. You should never argue with a crazy man.