Improving the 'Hand Feel' of Software Engineering

Similar to Neil Gaiman’s remarks about a fountain pen and writing there are ways that enhance the feeling of a craft.

Examples:

  • A mechanical keyboard improves the typing experience with satisfying tactile feedback
  • Fast feedback loop of making a code change and observing the result
  • Tools for refactoring
  • A REPL that let’s you grow your program
  • Debug tools that let you better understand what’s going on

The sum of the tools (hardware and software) used while writing code is the hand feel. We don’t spend enough time thinking about the hand feel and often view it through the utilitarian lens.

What’s the fountain pen for enterprise software? Green field projects?

See also:

  • How to Write More

    The way I write more is by doing it every day. I write first thing in the morning (journaling and note taking) and publishing my notes (like this one). For work, I write product briefs to clarify the situation, my interpretation of the facts, and what we should do about it. I write memos for the team for anything important. I write investor updates. I do it without thinking—even when drafting a tricky email I’ll write it out to understand what I’m trying to do.

  • Measuring Developer Experience

    Developer experience is one of those things that is easily recognizable when it’s bad but difficult to articulate why. A recent paper DevEx: What Actually Drives Productivity presents a useful framework for thinking about and measuring it.

  • Component-Driven Development

    In frontend development, a component-driven workflow is a way of building websites and applications by breaking down the UI into smaller components and iterating on them independently and composing them together. This has been popularized by Storybook.js where you write stories around components to make a faster feedback loop compared to loading the whole application (and data) every time.

  • Mechanical Keyboards Are the Fountain Pen of Typing

    Typing on a mechanical keyboard is like writing with a fountain pen. It’s completely unnecessary (many alternatives are good enough), but lends itself to a much more pleasing experience. As such, switching to a mechanical keyboard is an underrated way to improve productivity.

  • Turn Emacs into a Focused Writing Tool

    Emacs can be customized to create a beautiful, focused writing environment akin to Ulysses, iA Writer, Bear, or other minimalist markdown editors.