1. Lack of focus is kills startups; the number of things you can work on pre-product market fit is finite
2. Settings after often (but not always) a sign of underdeveloped product thinking
3. Most users don't want settings; they don't want to do work; it should just work out of the box; finding the right default is critical
4. Giving power users a setting means you'll get less feedback if the default isn't working, since average users don't complain, they just stop using the app
5. Power users often want very different things than average users
6. 99% of new features should be focused on the solving the existential problem. Farcaster existential issue is growing daily active users, which means figuring out the right defaults. And upstream of growing daily active users is growing the supply of interesting and entertaining content.
7. Part of prioritization is making the right investments in scalability, e.g. why we have some people working on Hubs right now
There has been discussion recently about bring your own algorithm (BYOA) for social networks. Here are some challenges:
At-scale, world-class consumer apps in 2024 use machine learning (AI) based feeds. This is overwhelming consumer revealed preference in terms of time spent.
Making a good machine learning feed is hard and requires significant resources to make performant and real-time.
If you want to do a feed marketplace with good UX, you'd likely need to create a backend where developers would upload their models and the client runs the model in their infra. This obviously has privacy concerns, but maybe possible.
TBD if consumers would be willing to pay for your algo, though.
The likely outcome is a marketplace of clients, where each have a different algorithm that uses inputs (both public from the protocol and private from app usage) to tailor a model for each user.
PS — here are two data points from a developer who was building a Farcaster client: 1) feed performance is a challenging engineering problem and 2) running the backend is expensive (the client had a few hundred active users).
A functioning app is a necessary condition, but one you have 100% control over. It is not sufficient. You then have 4 difficult problems to solve—at the same time. In increasing order of difficulty:
Awareness
Onboarding
Retention
Interesting and entertaining content
Awareness
How do people know about your app?
Also known as distribution. This is hard, for people who are naturally more building-oriented. It's almost always hand to hand combat early on. Good essay on the topic:
https://blakemasters.tumblr.com/post/22405055017/peter-thiels-cs183-startup-class-9-notes-essay
Onboarding
How much friction to get started?
Congrats, you got someone to hear about your app. How easy is it to go from hearing about it to getting set up? How many steps? Can they do it on their phone, i.e. immediately? What is the first screen they see after a successful sign up? How are you building habit?

