I’m Rod Knowlton, and I make computers do things.

Thanks to the pandoc resume project, my resumé is available as HTML, PDF, Rich Text, or Word Document

Contact me



(With apologies to Alan Perlis.)

There is no such thing as a temporary solution.

If you do not understand how you fixed it, you did not fix it.

Cleverness is good in people, but bad in code.

The two most important refactorings are Extract Method and Rename.

Write the test first. It will provide programmatic evidence of your understanding of the requirements, or lack thereof.

The difference between writing the test first and writing the test last is the difference between creating a blueprint and taking a picture of the finished house.

Spend some time with Emacs. Spend some time with Vim. Fall in love with one or both (or even one pretending to be the other). A cross-platform programmable editor is an indispensable tool, not just for developers, but for anyone that edits text.

Keep your config files in version control. Better yet, keep everything in version control. There is no simpler backup method than git push.

Treat source files like campsites. Leave them in better condition than you found them.

Do not confuse “simple” with “easy”. Seek the former with indifference to the latter.

Play with unfamiliar programming languages and paradigms. When deciding which to play with, choose the one least similar to ones you already know.

Automate, automate, automate.