This resonates with how I’ve been thinking about open source. I see the steps as:
1. Personally identify a pain in your own work, and it most likely will be a pain for many others.
2. Build a solution to solve for it.
3. Organically talk about it in forums — for me this is Reddit, HN lately and to some extent Bluesky.
When people ask why I build open source, I say it’s about signaling. As other comments have mentioned, if you’re fortunate enough that it gains traction, it becomes your calling card and can lead to consulting and jobs. It’s analogous to academic publishing (used to do more of that) but with different dynamics.
My personal examples of solving for a pain are:
[A] I started building the Langroid LLM agent framework after having a look at LangChain in Apr 2023, at a time when there was hardly any talk of LLM-agents. The aim was to create a principled, hackable, lightweight library for building LLM applications, and agents happened to be a good abstraction: https://github.com/langroid/langroid
[B] With the explosion of Claude Code and similar CLI coding agents, there were several interesting problems to solve for myself, and I started collecting them here: https://github.com/pchalasani/claude-code-tools One such tool is a lossless alternative to compaction, and a Tmux-CLI tool/skill for CLI agents to interact with others.