
PragmaticBookshelf
Spotlight: Brian P. Hogan (Author)
A PragProg Hero’s Journey
with Brian P. Hogan
@bphogan
Have you ever worried that your only legacy will be in the form of legacy code? Take a page from Brian Hogan’s book — and life — to learn how a simple change in perspective can cause a ripple effect that lasts for generations.
If you struggle to learn from challenging experiences, you’re gonna want to hear this.
INTERVIEW
Listen to the complete audio interview here:
WIN!
We’re giving away one of Brian’s books to one lucky winner! Simply post a comment or a question in his AMA below, and the Devtalk bot will randomly pick a winner at a time of the author’s choosing … then automatically update this thread with the results!
TRANSCRIPT (abridged)
For those who prefer to read rather than listen, here are the highlights from the interview.
On becoming an author…
With eleven titles to his name, you’d probably never guess that Brian didn’t actually set out to become an author. It was a workplace encounter with PragProg author Bruce Tate that set the wheels in motion.
Bruce introduced Brian to Ruby on Rails at a time when getting the Rails ecosystem up and running on Microsoft Windows was a real challenge. Brian was so taken with the technology that he dug in, cracked the nut, and later wrote a blog post on the topic, which was picked up in the official Ruby on Rails blog. And then things came full circle.
Bruce invited Brian to contribute a chapter to Deploying Rails Applications, which was Brian’s debut as a book author. Or, as Brian says, it’s what “got his name on the cover.” It also served as the spark that led to Web Design for Developers.
But while writing the book, web trends changed significantly. So even though Brian did get positive reviews of his work, some people criticized it for looking out of date as soon as it shipped.
As all great teachers do, Brian found inspiration and a lesson in the hardship that’s served him ever since: “I have a folder of nice things people say. Because people sometimes say some not-nice things. And the equation I figured out with some other authors is that it takes five nice things to counteract one negative thing.”
Luckily, the difficult times didn’t last long, and before he knew it, Brian was hard at work on Web Development Recipes, now in its second edition. Written with his nearest and dearest friends, the “people he would go to bat for in a heartbeat” and who he knows would do the same for him, the book kicked off a long string of successes to follow.
On challenges and rewards…
“Writing,” according to Brian, “never feels natural.” When your deepest motivation is “to teach somebody how to do something,” you’re not really writing for yourself. And that means you have to get out of your own head and into somebody else’s.
A teaching mentor of Brian’s once advised him to “be the guide on the side, not the sage on the stage.” And that message stuck with him and formed the foundation of everything Brian does to this day.
As an author, that means relentless revisions and edits to eliminate his own biases and to do what’s best for readers. In Brian’s own words, “You’ve got this list of things that you know you need to include…But you still have to justify why [readers] need to know. And that’s the part that’s always surprising. Because sometimes the surprise is, ‘No, they actually don’t need to know that.’” And that’s when the true guide hits the delete key.
If it all sounds like a lot of effort, that’s because it is. So why do it at all?
For Brian, it’s about helping people get better at the things they care about. “That’s why I like editing books. That’s why I like working with authors,” says Brian. “It’s why I like managing teams of people. It’s why I like teaching. I get to do things through others…We amplify success.”
To be an author, Brian says, “you don’t have to be an expert—but you do have to care.”
On career and beyond…
Brian explains, “I’m a better teacher because I’ve gone through the process of learning how to teach through writing. I’m a better writer now than I was in the beginning because of my experience in the classroom. I’m a better software developer because of feedback I’ve received from my writing and my teaching and in pull requests.”
In Brian’s view, “It’s sort of this interconnected loop of things.”
Brian talks about these connections as being both the tangible and intangible benefits of writing, and he says that people will be viewed as experts and will get jobs and speaking offers as an author. But according to Brian, the real value is that it “opens the door to opportunities.”
We’re certainly grateful for the opportunity we’ve had to work with Brian as both an author and editor. And even though he says it sounds “super, super biased” to say, we love the fact that Brian chooses to write his books with us, because he believes “that the development editors that Pragmatic Bookshelf has are the best in the industry.”
Brian says he trusts that PragProg will help him “deliver a book faster and [that] it will be of much better quality,” and we know that we couldn’t do it without authors like Brian.
Now that you know his story, complete your collection of Brian’s PragProg titles today! Don’t forget you can get 35% off with the coupon code devtalk.com!
- Build Websites with Hugo
- Small, Sharp Software Tools
- tmux 2
- Web Development Recipes, 2nd Edition
- Exercises for Programmers
Follow Brian on Twitter at x.com.
YOUR TURN!
We’re now opening up the thread for your questions! Ask Brian anything! Please keep it clean and don’t forget by participating you automatically enter the competition to win one of Brian’s eBooks!
Popular In The Spotlight topics










Other popular topics










Latest in In The Spotlight
Latest (all)
Categories:
Popular Portals
- /elixir
- /opensuse
- /rust
- /kotlin
- /ruby
- /erlang
- /python
- /clojure
- /react
- /quarkus
- /go
- /react-native
- /vapor
- /v
- /wasm
- /django
- /security
- /nodejs
- /centos
- /rails
- /haskell
- /fable
- /gleam
- /swift
- /deno
- /js
- /tailwind
- /assemblyscript
- /laravel
- /symfony
- /phoenix
- /crystal
- /typescript
- /debian
- /adonisjs
- /julia
- /arch-linux
- /svelte
- /spring
- /preact
- /c-plus-plus
- /flutter
- /actix
- /java
- /angular
- /ocaml
- /kubuntu
- /zig
- /scala
- /zotonic
- /vim
- /rocky
- /lisp
- /html
- /keyboards
- /emacs
- /nim
- /vuejs
- /nerves
- /elm