Why I Build Products Instead of Just Writing Code

When I first started learning programming, my goal was simple: build things that work.

Like many developers, I spent countless hours learning frameworks, exploring new technologies, and building side projects. Over time, however, I realized that writing code is only a small part of creating something valuable.

The real challenge is understanding problems, identifying opportunities, and building products that people genuinely want to use.

const philosophy = {
  focus: 'Solve real problems',
  priority: 'User value',
  goal: 'Build sustainable products',
}

Today, whenever I start a new project, I spend significantly more time thinking about the problem than the technology itself.

Building Products Changes Your Perspective

Writing software for yourself is very different from building software for others.

As developers, it is easy to become excited about technical challenges. We enjoy clean architectures, elegant abstractions, and the latest frameworks.

Users, however, care about something much simpler.

They want solutions.

A customer does not care whether an application uses React, Vue, Next.js, or Laravel. They care about whether it helps them accomplish their goals faster, cheaper, or more efficiently than before.

Understanding this shifted how I approach product development.

Technology Is a Tool, Not the Destination

One mistake I made early in my journey was spending too much time choosing the perfect technology stack.

The truth is that most successful products are not successful because of their technology.

They are successful because they solve meaningful problems.

That does not mean technology does not matter. It absolutely does.

But technology should support the product, not define it.

A good stack helps you build faster, maintain quality, and scale when necessary.

For most of my projects, I prefer technologies that allow me to move quickly while remaining flexible.

const stack = {
  frontend: ['Next.js', 'React', 'TypeScript'],
  backend: ['Laravel', 'PHP'],
  database: ['PostgreSQL'],
  infrastructure: ['Cloudflare', 'Vercel', 'Supabase'],
}

Lessons Learned From Side Projects

Over the years, I have launched projects that succeeded, projects that failed, and many that never reached production.

Every project taught me something valuable.

  1. Validation is more important than implementation.
  2. Distribution is often harder than development.
  3. Simplicity usually beats complexity.
  4. Consistency beats motivation.
  5. User feedback is more valuable than assumptions.

These lessons sound obvious in theory, but they are often learned through experience.

Looking Ahead

I still consider myself a student of technology.

There is always another framework to learn, another product to analyze, and another challenge to solve.

My long-term goal is to build software businesses that create meaningful value while allowing me to continue doing what I enjoy most: creating things on the internet.

This website is where I will share some of those experiences, lessons, and ideas along the way.