With the age of AI agents giving everyone a heightened sense of speed in shipping code, it is valuable for engineers to focus deeply on technical work. The distraction of mobile phones and social networking have been replaced by the distraction of checking what Claude Code is doing, or asking Grok or ChatGPT questions.
The idea of "writer decks", a minimalist computer, is making a comeback as a way to create a distraction-free environment to be able to have a focused work session. One writer set up a laptop with no GUI (no desktop or window manager), and only a text editor with a wiki system and a way to back up the files. You can create the same by finding a quiet spot (or wearing noise-canceling headphones), disabling the wifi on the laptop, and closing all programs so it is just you and the writing. This applies for coding, though you will need a way to look up API documentation. Having a different browser you do not typically use where every website is logged out can reduce distraction.
Distraction-Free Writing
- Obsidian
- Zen plugin for Obsidian is a "focus mode" for the Obsidian note-taking app.
- Without a plugin: Close the sidebars and only have one tab open.
- Emacs
- writeroom-mode activates fullscreen mode, hides all toolbars and the scrollbar, and disables the mode line.
- olivetti that positions the text in the middle of the screen.
- Without a plugin: Only have one buffer open, hide the scrollbar and toolbar. I usually have two buffers open for word-wrap and for taking notes in the second scratch bufer.
- neovim
- Freewrite has a collection of devices for distraction-free writing
How to Write Code Without the Internet
Programming environments such as Python and Ruby have the ability to print out helpful documentation. Python's interactive shell has the help() command to look up the functions and documentation for libraries. Pry is a Ruby shell that can browse the methods in a package and the documentation for those methods.
PyCharm and VS Code can show auto-complete suggestions with documentation and function parameters.
eBooks, PDFs, HTML Saved Locally
If you are writing bash or zsh scripts, you can use manpages to look up the documentation. For Unity game development, you can download all the documentation locally. Rust also has a way of downloading documentation and generating documentation for all packages used in a project. Many programming libraries offer a way to download HTML or PDF versions of their documentation.
You can buy and download PDFs and ebooks. While books do not have the full API for a library or package you are using, they contain code snippets that can be built upon.
Offline API Viewers
There are offline API documentation viewers that display "docsets":
- Dash for MacOS (proprietary, paid) has the documentation for over 200 APIs and over 100 cheat sheets, and the ability to generate documentation for packages for Swift, Python, Ruby, PHP, Java, Go, Rust, Scala, Dart, Haskell, Hex, Clojure.
- Velocity for Windows (proprietary, paid) does much the same as Dash does.
- Zeal (open source, free) is a free/libre/open source docset viewer that runs on Windows, Linux, and BSD. While it is possible to build Zeal for MacOS, the recommendation is to download Dash.
- DevDocs (open source, free) is a local offline documentation viewer. There is a hosted version that can be used offline in a web browser.
Top comments (0)