Why I wrote Clojure for the Brave and True

22 October 2015

It seems weird to say that I'm almost painfully filled with
gratitude for all the good shit in my life, and that that was what
motivated me to start writing a free programming book, but that's the
truth.

Before I started writing
Clojure for the Brave and True back
in 2013, I had been deliberately trying to figure out what I could do
to improve other people's lives even just a smidge. By that point I
had been doing a gratitude practice (just spending a few minutes to
think of three things I was grateful for) regularly for a year and a
half, and felt that my life was so full with good shit that I felt
almost obligated to do something for others so that they'd have more
good shit in their lives.

"Obligation" might seem strange here, and it's not 100% what I
mean. It's hard to accurately put the feeling into words. Someday I'd
like to take the time to do a good job writing about it, but for now -

My life experiences have instilled in me a belief that kindness and
generosity are obligations. To take just one experience: for years, I
witnessed firsthand the kind of suffering that chronic illness can
inflict on someone. That was just nature doing it's thang, cruel,
impersonal, implacable. But it was compounded by the constant minor
(and sometimes major) abuses delivered by people.

Life is painful enough without humans heaping additional indignities
on each other. Beyond this baseline of "don't be an asshole"
(incidentally, that's the central tenet of my personal ethics), I
think it's imperative to learn to live with kindness, love, and
generosity. The bleak perspective on this is that the ship is going
down for all of us, and the only thing we have to hold on to is each
other. The not-bleak perspective is that we are social creatures,
wired to find fulfillment in contributing to each others' happiness;
that our greatest joys are found in human connection.

Which is why I wrote a programming book featuring hobbit violence,
man-eating trolls, and mopey teenage vampires!

Really, though, programming is a huge part of why my life is so full
of good shit. I grew up living in poverty, and now I make a very
comfortable living doing an activity that I genuinely enjoy. I have
great coworkers, good health insurance, I live in a good house and
have a decent car, and I'm confident I can provide for my family. I
even have enough free time for hobbies and friends.

So, I wanted to provide something free to the world to help others
improve their lives. Learning Clojure has personally made me a much
better programmer, and I think others can benefit from it just as
much. In learning Clojure, you learn a new way of thinking about
programming. It's intellectually rewarding and it has immense
practical value; it makes your life as a programmer a lot easier.

Plus, there's something romantic about learning a language that
carries on a 60-year legacy. Like you're engaging in a tradition that
extends far beyond you. And it's fun! Clojure feels like something you'd
want to use in your spare time, for fun, but what's better is that you
can actually get paid to use it.

The other main reason I wrote the book was that I needed some way to
tell the world about the were-Simmons. The danger is real! Wake up,
sheeple!