Tired of ads? Enjoy an ad-free experience by signing up.
Filip Hráček · · 6 min read

Why open source projects sadly favor new users, and what you can do about it

Photo credit: Muhammad Raufan Yusup.

Every now and then, creators of all developer products (SDKs, frameworks, APIs) will have to choose between favoring their existing users or new ones. If you want to make the initial app “just work” for beginners with some default magic, you’ll hurt the debuggability of large apps. If you want to introduce a feature for your power users, the newcomers will have to deal with a steeper learning curve.

In April, I wrote about the “Hello World” fallacy. This is the unconscious assumption that if it’s easier to get started with technology A than with technology B, then A is better than B.

This is bad because most developers don’t write hello world apps. They fall in love with how easy it is to build a demo. Then, months later, they struggle while trying to build an actual product.

But it gets worse.

It’s not just a perception. Favoring the hello world scenario actually pays off in the long run if you’re building an open-source library or framework. Sadly, you’re better off sacrificing your long-term users’ productivity to make things easier for your new users. This is because of the dynamics of technology adoption.

The reinforcing feedback loop

This is a simplified diagram of developer tech adoption. In the diagram above, we have two competing technologies, A and B. Their adoption is proportionate to the buzz (blog posts, talks, Github repos) around them and their perceived value as reported by current users.

There is a reinforcing feedback loop here. The more people try the technology, the more buzz is generated around it. So, more people try it and so on.

After some time, developers stop using the technology and move on to something else. This churn is proportionate to their dissatisfaction with the tech and with its age.

The problem is also with delays. The reinforcing feedback loop from new users is almost immediate. The first blog posts start appearing after mere weeks, but the churn and the more informed articles appear much later, as it takes time to build something real.

Let’s say technology A optimized for initial ease of use (hello world and small apps). Technology B optimized for long-term users (real apps). If technology A gets twice the initial buzz from new users than technology B, and technology B gets twice the informed buzz than technology A, then technology A still wins by a large margin. That’s because, in our little model, the informed buzz trails the initial buzz by an average of 12 weeks. That’s all it takes.

Technology A will attract new users at a much faster pace. It will also lose users more rapidly than technology B, but that churn happens much later and, in general, slower than in the adoption phase.

What do users look for?

Why is this an open source problem?

What can we do about it?

Stay ahead in Asia’s tech landscape

You've reached your 2 free content limit for the month. Sign up for free to read the full story.

🏄 For casual readers / 👶 Free

Basic

US$0

Free forever

Get instant access to this article and more every month

0 premium content

Unlimited news briefs

5

5 articles

Ad-free reading experience

Just US$0 per day

⌛Sign up in 20s. No payment details needed.

📖 For learners / 👍 Starter

Lite

US$4.92/month

Billed annually at US$59/year

Get instant access to this article and more every month

4

4 premium content

Unlimited news briefs & articles

Ad-free reading experience

Just US$0.17 per day

Cancel anytime

Our subscriber community includes professionals from these companies:

Stay updated on the go with our mobile app.

Get latest insights with smoother, more personalized experience through TIA mobile app.

Community Writer

Filip Hráček

Hi, I’m Filip. I’m a pro­gram­ming buff with formal train­ing in jour­nal­ism. I work at Google in Cal­i­for­nia. In my spare time, I’m build­ing a pro­ce­du­ral, AI-driven book, and create silly soft­ware experiments.