Most of the charts and analysis you see in this space is done, as a few of you know, via R and, more specifically, R Studio. R Studio is an excellent tool that streamlines the process of working with R, and while it’s certainly not necessary to work with the language, I recommend it to those looking for a more comprehensive interface. As much as I appreciate the tool, however, it has never obviated my need for a scratchpad. Like a lot of developers, I often work outside of my chosen development environment, maintaining a separate Sublime Text window to capture snippets of code, notes on what they do and how they do it, and more. And like a lot of developers, I’ve never really thought about this scratchpad or the process behind it.
I do eventually migrate a subset of these snippets from Sublime – how to get ggplot to generate a stacked chart incorporating negative values, for example – into a Google Doc for more permanent storage than just another an open tab. But the process is manual, imperfect and not collaborative at all. All of which may help explain why I think Alex King’s new project Capsule is both important and relevant to anyone interested in the craft of software development. As he put it, it’s potentially a solution to a problem that I didn’t know I had.
Described as the “Developer’s Code Journal,” Capsule is a WordPress based replacement for the scratch document that you maintain to capture everything that doesn’t fit well within your development tool (be that a text editor or IDE) of choice: extended comments, outlines, code snippets and so on. Basically, its function is akin to a diary or journal, but one designed and built to cater specifically to the art and task of coding.
As you’d expect, it incorporates a good code editor (the same as GitHub) with language autocomplete and so on. Even better, you can organize these by project (@ notation) or tag (# notation) for easy retrieval later. And as a web based application rather than a local text doc, it’s possible to build a collective scratchpad equivalent, collaboratively, containing the shared thoughts of development teams.
If you’re interested in the craft of software, and I’d hope that most of the people reading this fit that description, this is a project I’d recommend looking at. And given that it’s open source – it’s up on GitHub here – potentially even contributing back to.
The only question I’m trying to decide on before implementing it is whether to do so locally and back up the database to Dropbox regularly as Alex does, or remote, which removes a few complications but means that you lose access to the data when offline.
Either way, it’s a tool that I expect to be using soon.
Disclosure: Alex is a friend of mine.