When a README accidentally becomes a manifesto

John Karahalis
Aug 4, 2017 · 2 min read

I recently started work on a project I’m calling Ensemble. Ensemble will be a minimalist data-sharing platform. It will allow data scientists to quickly and easily create public dashboards with no web development experience.

In the process of writing a project README, I realized I had accidentally written my software development manifesto, the distillation of my thoughts on crafting valuable software in today’s environment. The document does discuss some specifics of this project, but the broader points do apply generally.

I’d like to share it with you.

Ensemble is a minimalist platform for publishing data dashboards. Ensemble is to data what Read the Docs is to developer documentation.

Creating an Ensemble dashboard will be easy. Publish your data anywhere in our standard JSON format and register it with this service. That’s it.

Ensemble explicitly aims not to be highly-configurable. Our goal is not to support every feature imaginable, but instead to build a minimalist platform for publishing useful visualizations quickly and easily. Right now, the need for more dashboards outweighs the need for perfect dashboards.

Ensemble will offer all of the customization that data scientists need, but no more. Custom sections, chart types, axes, and labels will be supported, for example. It will be possible to export and save charts. Other features with obvious value will be added. But will we adopt a feature that only one or two people truly need? Probably not.

Software developers have more ideas than users have needs, so this trade-off between elegance and scope is unavoidable. Saying no is hard, but it’s necessary to build a maintainable product that large numbers of people actually want to use.

Ensemble’s target audience is the long tail of organizations and teams that want to publish something rather than nothing. Those with highly-specialized or unique problems likely also have the resources to build their own dashboards. We encourage them to do so and look forward to learning from one another.


Originally published at blog.openjck.com on August 4, 2017.

Reflections on Building Software

Thoughts on software development from John Karahalis

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store