Books

Last updated April 23, 2020

I write tech books to teach people how to do cool stuff. Support from readers like you means a lot to me. My books are vailable in print, PDF, ePub, or Kindle format, and if you buy my books directly from my publisher, you’ll support my work directly.

Build Websites with Hugo: Fast Web Development with Markdown

Build Websites with Hugo: Fast Web Development with Markdown

Rediscover how fun web development can be with Hugo, the static site generator and web framework that lets you build content sites quickly using the skills you already have. Design layouts with HTML and share common components across pages. Create Markdown templates that let you create new content quickly. Consume and generate JSON, enhance layouts with logic, and generate a site that works on any platform with no runtime dependencies or database. Hugo gives you everything you need to build your next content site and have fun doing it.

Learn more

Small Sharp Software Tools

Small Sharp Software Tools

The command-line interface is making a comeback. That’s because developers know that all the best features of your operating system are hidden behind a user interface designed to help average people use the computer. But you’re not the average user, and the CLI is the most efficient way to get work done fast. Turn tedious chores into quick tasks: read and write files, manage complex directory hierarchies, perform network diagnostics, download files, work with APIs, and combine individual programs to create your own workflows. Put down that mouse, open the CLI, and take control of your software development environment.

Learn more

tmux 2: Productive Mouse-free Development

tmux 2: Productive Mouse-free Development

Your mouse is slowing you down. The time you spend context switching between your editor and your consoles eats away at your productivity. Take control of your environment with tmux, a terminal multiplexer that you can tailor to your workflow. With this updated second edition for tmux 2.3, you’ll customize, script, and leverage tmux’s unique abilities to craft a productive terminal environment that lets you keep your fingers on your keyboard’s home row.

Learn more

Exercises for Programmers

Exercises for Programmers

When you write software, you need to be at the top of your game. Great programmers practice to keep their skills sharp. Get sharp and stay sharp with more than fifty practice exercises rooted in real-world scenarios. If you're a new programmer, these challenges will help you learn what you need to break into the field, and if you're a seasoned pro, you can use these exercises to learn that hot new language for your next gig.

Learn more