Reading documentation is an art, and can be very enjoyable if it is well written.
As a software developer, one of my aims is to write documentation that people should want to read, while designing systems that work well without having to read the documentation. Seemingly opposite goals.
I have a habit of reading documentations. And when I say reading, I mean thoroughly.
One of my earliest memories with computers was me failing to jump between buildings in a spiderman game, giving up, and spending time reading windows help. I have read almost every single page in windows help for XP, back then.
It was the beginning of a habit. When I started programming in python, which was after entering college, I read python 2.7 documentation. Every single line from every single page. All the functions in all builtin modules, changelogs, what’s new, guides, the whole deal. It changed me. I would write programs very differently.
The habit persisted. Pretty much any technical document I read, I read it in entirety. A friend commented that I was incapable of skimming things. He did not imply it was necessarily a bad thing.
Among other documentations I’ve read are a few notable ones – Docker, Erlang, Bash, git. Did you know Bash can do tcp/udp communications by writing to special psuedo files, and : is a valid command, bash’s own noop, handy for commenting blocks of code?
Elasticsearch joins this list tomorrow. I’m close to completing a new set of docs – something larger than a hundred pages – after long. Feels good.