Published on

How to Create Something Without Knowing Anything: My Approach to Problem Solving


Often, I have an idea but lack the skills to execute it. It's a common problem. The easiest solution would be to enroll in a course, right? Then everything seems simpler, and we feel like we've learned it all. But then... we don't take action. It turns out that we don't know enough to create something valuable. Is it a waste of time?


I usually start by searching for information on the topic. Let's take setting up a website with Next.js 14 as an example. What did I do initially? I bought a course. Did I finish it? No... other urgent matters came up, and I ran out of time.

After a few months, I found new strength. I completed 2 weeks of the 6-week course. I paused. Why? The course didn't engage me. Was it too simple? Did it not show what I wanted? I could probably list more reasons.

I decided to take a step back. I watched tutorials on YouTube about Next.js. From basics to advanced topics. It took 2-3 hours. I decided to start building my own application.

But how is that possible? Without knowledge? From scratch? Not entirely. I decided to use a boilerplate, a simple project with basic functionalities like a database, payments, authorization.

Why? To save time. Did it work? Theoretically yes, because I already had a ready-to-use working environment. Good to start, but there is still a lot of work ahead.

So... I planned the steps I needed to take. What should be in the application. And I started working step by step.

  1. Creating a subpage - using a tutorial, simple.
  2. Page layout after logging in - browsing YouTube courses on Tailwind. 1-2 hours of learning, 1 day of improving the layout. It will definitely change as I progress.
  3. Creating a module for touch typing (text and virtual keyboard) - for me, the most difficult thing. If it works, I'll have the most important functionality. It took 5-7 days. Were there any problems? Of course. I used Stack Overflow, existing libraries, and step by step built the module.
  4. Authorization. Apparently simple. It worked with the boilerplate, but it turned out that it lacked basic functions. I spent the following days refining it, creating accounts, and logging in. Was it simple? A bit, but it required a lot of reading, testing, and experimenting. But it worked!
  5. Payments. I have a boilerplate. I managed to configure it. But I see that it will need improvements. What kind? I don't know yet, because looking at the code is like black magic (for now), but I have a vision of how it should look.

Five steps behind me, and I still can't make a bilingual version of the application. All I know is which library to use. I don't know, how to use the database; here I also know which library I will use. Lots of reading and experimenting.

Do you see my way of working? I only learn what I need at the moment. I have a small or bigger plan of what the application should contain. I go through it step by step, and if I don't know something, I learn it while working. Will my first application be a technological miracle? Probably not. But with every new line of code, I develop, and my code gets better.

What do courses give? They lead you through the entire process of creating a website. Sometimes you learn things you don't need. You create a sample application.

For me, they lack that spark that ignites me.

Which approach will you choose?

I choose the first one, for several years now.

I don't know much. But with each passing day, more.