Fully-Faltoo blog by Pratyush

Bio Twitter Screener

19th June 2023

Weekly Review 12 - Gollum

I recently shared about Mastodon. The tech conversations are pretty interesting there. Found some good libraries and podcasts on it.

DHH Podcast on Minimalist Management

Sometimes I have too many things to do.

- Pending code reviews
- Unanswered support queries
- Overflowing inbox
- Increasing error logs
- Operational stuff such as hiring, planning and other things

And while this never ending todo list is compounding; a new idea sucks out all the remaining attention.
Pending tasks and new ideas meme

This is exactly what Adam and DHH discuss in the podcast: How his days are. And how he handles his other responsibilities when he is working on something new.

DHH shared an interesting idea. They "think of the business as a product in itself". They try to shape the company like a good product which is "easy to use, is self-explanatory and doesn't require to call support every 5 minutes."

I liked this analogy and mindset. How we can build the company that can run in its current form without requiring our assistance.

I thought about Screener in terms of "minimum requirements". What will one need to run Screener as a product? It will be 2 developers, 1 support person, 1 expert in financial data and 1 very experienced developer to lead whole tech.

Next, I thought in terms of "product manual". How will they learn how to run it? That's where we started working on a new Gollum Wiki.

Using Gollum for documentation

I created a set of backend "manuals" some time back. I published it using mkdocs. The problem was it was a pain to maintain. Creating new markdown files, writing stuff, committing changes and pushing updates is too much work! No-one, including me, ever updated it.

Thinking about documentation, I like Plausible docs very much and took inspiration from it.

Himanshu and I moved the manuals to Gollum. It makes edits easy. It uses git in the backend. This provides the full version control, git-pull-push access, good ui and pages for latest changes.

We hooked up a few things to make it more usable:
  1. Tree TOC: We created a custom tag to show folders like Plausible docs. Show sidebar of pages in tree structure with dropdown expansion.
  2. Authentication: We used Omnigollum for authentication. It tags each commit properly with the right author.

Other things

  • VanJS: This is a very interesting library for building reactive components. No transpiling required. 1kb.
  • Yjs CRDT Algorithm: Another very interesting library and concept for creating collaborative programs. We have a wiki feature in Screener. We currently use diff-match-patch library for it. May be, we can replace it with this CRDT algorithm in future.
  • Lenovo ThinkVision M14  - Portable Monitor: I started using a portable monitor. I haven't used dual screen before. Still trying to get a hang of it.

Leave a comment

Your email will not be published.