FunctionSource, Your Source for Developer News

Welcome to FunctionSource!

Posted by Ben Galbraith 2 years ago on editorial

Ben and Dion

Back in 2005, we launched Ajaxian.com. We weren’t really sure what the site would be at first, but it gradually became a fun little blog for the emerging JavaScript community. Over the next five years, we had a blast covering the developments in the Web landscape and from time-to-time in adjacent communities, like Flash.

As our posting on Ajaxian tapered off, Dion’s Twitter stream ramped up, with tweets covering much of the same material that in former times we would blog. But we found over time that a Twitter stream didn’t quite scratch the same itch; we missed doing a developer blog. When a friend said “I love your Twitter feeds, but I miss Ajaxian,” we knew it was time for action.

Meanwhile, the developer landscape is more vibrant and exciting than ever. The browsers of our dreams from 2005 are here today and the mobile ecosystem is presenting a huge challenge to the future of the Web. (Sure, lots of Web folks scoff at native mobile ecosystems, but it’s hard to argue with the increasing number of start-ups that are launching without even bothering to create a Web client.)

With this Web and native rennaisance has come a confusing sea of choices. In our view, the need for a community site to cover what’s happening and provide some degree of (biased, occasionally inaccurate, often comically wrong, and always imperfect) perspective is more acute than ever.

And so we’re back, this time blogging from FunctionSource.com. Just as Ajaxian.com was always an off-hours hobby for us, so is FunctionSource. And just as we were grateful for the other voices who joined us from time to time on Ajaxian, like Brad Neuberg, Michael Mahemoff, Chris Cornutt, Dietrich Kappe,
Rob Sanheim, Rey Bango, and Andrea Giammarchi
, we’re happy to have Kevin Decker and Ryan Eastridge post with us here on FunctionSource.

Yesterday’s adjacent community was Flash, but it feels to us like today’s adjacent communities are iOS, Android, webOS, and others in the mobile landscape, and we intend to cover them a bit, and of course Flash will garner the odd posting too.

There’s so much going on; we’ll never be able to blog about it all. We tried Planet Ajaxian back in the day to expose readers to the larger stream of activity, but that never worked really well. This time around, we’re trying out a feature called the Firehose which will syndicate every single bit of news we’re aware of. To submit something for the Firehose (or for a blog post), just mention @functionsource on Twitter and we’ll take a look.

And every so often, we’ll go in-depth on a topic and create a feature story, like the upcoming Netflix feature.

Building FunctionSource

The original Ajaxian.com launched as an MT blog which we later migrated to a custom WordPress install. So surely for FunctionSource we’d just launch a new blog, right?

Well, we wanted to do something a little different this time around. We decided to hand-roll a small little publishing platform and see where it takes us over time. And so we created something we call Hyde Park, based on both Node.js and Rails. While Hyde Park was originally envisioned to create a more interactive publishing platform than traditional blogs, we haven’t gotten there yet. Instead, today’s version innovates in a different way with a technology we call a “View Server”.

What’s the View Server do? First, some background on FunctionSource. We developed the app as a modern, rich client Web app, by which we mean there’s no server-side tier that receives requests and emits HTML generated by server-side code. Instead, static HTML is served by an HTTP server which uses JavaScript to mutate the HTML as the user interacts with the application. We use JavaScript remoting to retrieve content when links are clicked and we swap out the contents of the page on the client, changing the URL using the HTML5 History API.

But for some browsers (and spiders), this is a silly thing to do. For those clients, we do the traditional Web 1.0 thing and render the page on the server and send it down to the client.

The View Server permits us to do this with the exact same code, through the magic of running JavaScript on the server via Node. As we add more advanced client-side features, we’re super-excited that we can fallback to a dumb Web 1.0 version of the site for free.

More to Come

We’ll talk more about the architecture of FunctionSource in the coming weeks if folks are interested, including more details about the View Server and an introduction to its primary architect, Ryan Eastridge.

In the meantime, thanks so much for joining us here at FunctionSource, and we hope you keep coming back to participate in the site and tell us what you’re up to.

All the best,

Ben and Dion

P.S. We’re trying out the new Facebook comments API, largely because we like to see people’s names instead of FunkyChicken11 or some other meaningless alias. Let us know what you think.