Taste matters more than skill

Being able to identify which way is better will become more important than the
traditional coding skill of knowing how to implement a feature. In other words,
the "what" will become more important than the "how."

Early vision determines scale of success

Looking at today's extremely successful entrepreneurs, the one common thing
they shared is an extremely ambitious, to a crazy degree, vision, which also
happens to be right at a relatively early phase in their career.

A few examples are Chinese entrepreneur Zhang Yiming, who realized
information distribution was key to society's efficiency when he was in college;
Google's DeepMind founder Demis Hassabis saw AI as a way to solve biology
long before he received the Nobel Prize in protein folding.

Elon Musk thought electric power would be central to the transition of energy
when he was in college. These early visions made sure that their paths weren't
taken at random later in life.

Know your customers

This is probably the single most important thing for a business. The best
businesses understand their customers better than customers understand
themselves. We can see this by using some of the best products in our daily life.

These best products really get us and what we want. As users, we want to be
delighted more and more by great products that truly understand us. And we
are definitely willing to pay for those products that really matter to us.

Thinking from customers' angles is probably the greatest superpower.

Future of infra

Infra will be oriented towards maximizing leverage of LLM. An example is the
question: "Which programming language to use?" Of course, this depends on
the task to be solved.

But at the same time, it's more important to think in this way: "Which language
is easiest for LLM?" At current LLM capacity, this means some simple languages
like Python or React.

This is why the development ecosystem of these languages will become more
viral as LLM gets more adoption among programmers. It's simply more efficient
for programmers to work in languages that the LLM is good at.

I previously saw a similar post saying that Swift is getting less adoption because
it's less LLM-friendly. At some point, the business or even society's
infrastructure will be designed to gear towards maximizing the value generated
by LLM and AIs.

Understanding is the purpose of future education

Being able to interface effectively with intelligence technology like LLM will be
the key to future world's innovation and productivity. To be able to interface with
LLM, requires the user to have a basic understanding of the technology itself.
The LLM itself of course has a great understanding about the technology. But
it's still necessary for humans to have a rough picture as well.

Therefore, I think the future of education is surrounded by learning based on this
kind of interface. I think having a good understanding of technology, rather than
knowing how to do every task in every stack of the technology, will become far
more important in the future. 

Essentially, I think the people who are CEO-like, who have a general understanding
across multiple layers of the company, will better leverage intelligence technology
than people who specialize in a particular stack. This will be recursively true in each
individual stack as well: the people who specialize in a particular stack will better
leverage technology if they also understand different lateral aspects related to the
stack. Because AI will be so good at executing a well-described task, the hard part
will be describing the task itself.

To describe the task requires the person to have an understanding of the
importance of the task itself. This is why understanding is far more important.

Plan backward

The wrong question is: if I don't have a GPU right now, why would I study CUDA? The right question is: if I
have a GPU, what would I do with it?

This is an interview question from Starbucks for high-position leadership roles: If you have $1 billion today,
how would you spend it? Most times, we tend to think and act based on the current condition. This doesn't
take into account the proactiveness of being an agent.

In reality, getting a GPU is relatively easy; it just costs some money. The real difficult question is: how would
I use a GPU to build a better product? Once we find the answer to the latter question, the former GPU
problem is easy to solve.

The same applies to startups. The fundraising problem is relatively simple. The hard part is to have a vision
and understanding for building the product.

Long-term technical self-learning

This is something I used to do as a habit during high school and rarely after
college graduation. The main reason I stopped was that I realized there were
plenty of people around me who were better at being technical than I was.
Therefore, I thought it was better for me to find my relative advantage.

This was a mistake. Staying technical is important to get inspiration on the
product side. Also, I realized that long-term learning for technical understanding
is actually very important and gives product founder an unfair advantage. 

So two pieces of advice on how to do long-term self-learning: First, treat
knowledge as a rabbit hole. Don't seek structure at first. Only try to structure the
knowledge learned after. Otherwise, it causes a lot of frustration. Second, stay
humble, ignorant, and curious. Because learning is essentially a process of
recognizing my ignorance, without being humble, it's hard to continue.

Future of programming with AI

The most important thing about programming is about forming
the programming model. The programming syntax is relatively easy to pick up. The
difficult part is to understand how CUDA works with hardware. This requires
forming an understanding of CUDA from the hardware level. And this part is
very hard to be automated away by AI.

I expect even in the future, having versus not having this understanding will
cause leverage for human programmers to be more productive and creative. But
once understanding the programming model of a language, the rest of the work
can be easily done by AI much more efficiently.

This lowers the bar for learning programming down to understanding the
programming model. 

A roadmap of how to start a startup

First, the goal for starting a startup is to create value for people at scale. The
value is the number of people the startup helps times the delta of value
provided by the current solution versus the new solution. Value is often
generated through technology innovation.

Based on this axiom, the following things follow: First, learn technicals every
day. Learning technicals helps me recruit future technical talents, think about
technology direction, and gives me an unfair advantage over non-technical
companies. This is very predictable, and everyday progress can be measured
clearly. I also found that staying humble is very important for learning to happen
continuously.

Second, meet and talk with talented people. This is critical; it helps with future
recruiting and also inspires great ideas. Surrounding myself with optimistic
people with passion is the greatest help over the long term.

Lastly, learn to sell and interact with users. The single most important thing for a
startup in the early phase is finding PMF, i.e., an important problem that users
really care about. But this part is very unpredictable, and good ideas need time
and come naturally when time comes.

Don't fear competition

If a problem is valuable enough to users, and you believe you have a truly great
vision for the product, then don't be afraid of competition. It's much better to
compete for something you know is valuable than escape competition and build
something not valuable. Have faith in competition if you believe in your product.