The why and how of the elmcity project

With a few exceptions this space has been quiet for three months. Likewise my Interviews with Innovators show. I’ve always disliked posts about absences from blogging so I avoided writing one until now. But some people have asked, so here’s the answer. After 10 years of continuous output in the blogosophere, and 5 in the audiosphere, I needed to stop and think hard about what I’ve been doing in these venues, and why, and how I might use them better.

Along with throttling the output, I’ve cut way back on my input of text, audio, and video. In particular, after years of listening to many other voices during my hours of outdoor activity, I’ve sidelined the MP3 player, silenced those voices, and tuned into my own.

The upshot? I still don’t know how I’ll reboot the blog and the podcast, although I’m sure I will want to. Meanwhile I’m focusing on three things: refining the elmcity service, explaining the project’s underlying ideas and principles in a series of why-to pieces at, and documenting how it all works in a series of how-to articles at

Here’s what I’ve got so far:

why how
5 The principle of indirection How to retry generically in C#
4 Personal data stores and pub/sub networks How to visualize an Azure table in Excel, using OData
3 Twitter kills the password anti-pattern, but at what cost? How to explore and automate Twitter’s OAuth implementation
2 The laws of information chemistry How to write an elmcity event parser plug-in
1 The power of informal contracts How to make Azure talk to Twitter
0 Lessons learned building the elmcity service

I’m writing these on parallel tracks, for different but overlapping audiences. You don’t have to be a programmer to read the Why series. It’s my effort to distill, from what I’ve learned and thought and done over the years, a set of general principles that can help everyone navigate — and innovate — in a connected world. I hope that educators in particular will take notice. There’s growing consensus that we ought to be teaching what is variously called computational thinking, or systems thinking, or digital literacy, or 21st-century skills. But we’ve yet to codify a set of guiding principles. I want to help get that done.

You do have to be a programmer to read the How series — and more specifically one who is curious about the Azure cloud, the .NET framework, the C# language, and Visual Studio. It’s all fairly new to me: Azure’s only a year old, and I never did much with prior incarnations of the framework, language, and tools. So I bring a beginner’s mind, and I don’t pretend to be a guru. But I am a good learner, I like to document what I learn, and when I do it connects me with people who help me learn better. I did this once before, at BYTE, when I began to develop the nascent web of people, documents, and services using Perl and CGI. Now I’m learning how to develop the current version. There is, of course, More Than One Way To Do It. I work for Microsoft and I’m focusing on the Microsoft suite of technologies. But you’ll see me use them in an eclectic way, from a perspective deeply rooted in openness and diversity. I sincerely want to help build a bridge between two vibrant software cultures that don’t know enough about one another.

Where these two tracks will lead I don’t know, but I’m enjoying the ride. I hope you will too.

Posted in .

3 thoughts on “The why and how of the elmcity project

  1. Good to see you back after a brief hiatus, Jon. I’m excited to see the new directions in which you’ll take the blog.

  2. Hey Jon,

    Cool. Things are moving ahead here in Montreal (ISF has a permanent staff, 160000 users and we’ve moved our portal pages to WP which allows us to easily aggregate calendar events and other LBC). Personally, I’m getting further down into the municipal info ecology rabbit hole. If you want to bounce around some ideas during your period of reflection, I would be happy to provide an interested ear.

  3. I am not sure why you have your sausage bot discriminating the way it does against a few select words.

    Content has nothing to do with storytelling. They are two distinctly different things no matter what Marshall MacCluen says.

Leave a Reply