Johnny Rodgers

I design and build technology in Vancouver. I spend most of my time working on Slack. I like thinking about the future, learning from the past, and trying to be in the present.

I’m on twitter @johnnyrodgersis.


I fundraise and advocate for old-growth forest protection.
A new model for old forest protection
Investing in our planet
The word for world is forest
On Earth

I’ve written an account of my experience building a modern home in the woods.



I write personal posts when I have something I need to say:
Fulcrum
The death of Glitch, the birth of Slack
A man on fire
Burnout
At home on the internet

I wrote a short story about a man and a bear in the Canadian wilderness: Who belongs here?

I keep a list of recommended books & essays.
Some professional posts I’ve written as an engineer & product designer:
The story of Slack Clips
How big technical changes happen at Slack
When a rewrite isn’t: rebuilding Slack on the desktop

I am an investor in The Browser Company.

The layers of time – The Long Now Foundation

A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects.
Robert Heinlein

Lines of communication

A program, we must remember, is both a programmer’s series of instructions to the computer, and the resulting program’s series of instructions to its users.  The instructions to the computer are defined by syntax, while the instructions to the users are defined by user interfaces.

In well-designed software, the instructions to the user tell a clear story of the world the programmer is trying to achieve, though the best ones tend to maintain some ambiguity.  They tell a user to communicate publicly in 140 characters, or to edit an encyclopedia entry, but they don’t specify which characters or which entry.  The magic happens when a well-told story meets an imaginative set of users.

And so, the art of software becomes the art of coming up with a beautiful story of a world that could exist, and then telling that story in code (half of the story anyway) to the right set of users.

To such people there is tremendous power, for programs are more direct than poetry.  They act on the world.  They give a framework not just for human thought, but for human behavior. The stories that these programmers tell, if they tell them well, are likely to become realities.
Sep Kamvar