If you're a programmer, you already rely heavily on documentation. Dash (free, $19.99 for full version) is a Mac app designed to make your required reading a more pleasant experience.

Most programmers don't know their preferred language of choice inside out. Even fewer boast a detailed knowledge of each library and API they come into contact with. As programmers we Google. We ask Stack Overflow. We read documentation. Lots and lots of documentation. Most people read documentation in a browser, but there’s a better way. Meet Dash.

Dash and Documentation

Dash is an app that locally caches documentation from the Internet and allows you to access it through a specific web application. It can be downloaded from the developer website. The difference between free and paid is minimal, the free version comes with a waiting time at startup and whenever you switch between documentation sets (docsets) and will nag you to buy it.

dash-nag

If you choose to upgrade to the paid version of Dash you can at least use it on as many Mac computers as you own (an unlimited number, according to developers).

Dash’s value proposition is based upon the number of libraries and languages it supports, and it is here it shines.

dash-docsets

Pretty much every language, API and library you can think of is represented, as well as some you probably haven't heard of. Both web, mobile and system are well represented here.

Personally I develop for the web in both a front and back-end capacity, and everything I use is present here. Unfortunately, the quality of the documentation is a bit of a mixed bag.

The Quality Of Documentation

The developers didn't create the documentation themselves, so it's not really their fault. Like I said before, Dash only caches pre-existing documentation.

The problem is that some languages just aren't well documented – like the simplified JavaScript antidote CoffeeScript. Their documentation is more of an "Isn't this cool?" how-to guide, showing examples of the language in action, without actually explaining how things work.

dash-coffee

Furthermore, in the case of CoffeeScript, it doesn't look good in Dash. It’s much better suited to a web browser.

With that said, some documentation sets work very well, like the ones for Ruby. This is the language that powers the Ruby On Rails web application framework, has fully searchable documentation and fits nicely within the Dash aesthetic.

dash-rb

There are also cheat sheets available to download in Dash. These don't focus on language features, but rather on the advanced features of Git, staff favourite text editor Sublime Text 2 and 3, and other popular software packages.

Cheat sheets are also available for HTTP features, HTML and and CSS Named Colors.

Accessibility

I know a lot of developers who struggle to read black text on white backgrounds. Some even wear specially tinted spectacles to make it easier for them to read. Some simply need to enlarge text.

I’ve not found any specific accessibility settings in Dash, nor have I found any way to increase the size of text. That might be a deal-breaker for some visually impaired users. However, OS X comes with some accessibility features (System Preferences > System > Accessibility) which might make Dash that bit more usable.

Conclusion

Should you get the paid version of Dash? That depends. There aren't really any compelling features that make the upgrade worth the expense, but you'll be supporting the project by chipping in.

I use the free version of Dash on a near-daily basis. If you sling code for a living and own a Mac, you need this app. It's not perfect, but it gets the job done.

Download: Dash for Mac OS X (free, $19.99 for full version)

What do you think? Download it and let us know your thoughts in the comments, below.

Photo Credit:  Code (Michael Himbeault)