3 min read

You learn to code

It's January.

Your no-code tool doesn't let you do something.

Furthermore, you have heard about GPT and AI and LLMs and you want to build things that use this stuff.

You've hit a wall, frustration mounting, with the limitations of the drag-and-drop interface glaring at you.

No-code was supposed to empower non-coders.

The bespoke design you've envisioned, the functionality you crave; they dance just out of reach. "I'll learn to code," you think. A bold move, perhaps, but a spark has been ignited, and there's no turning back.

You remember HTML, CSS, and JS from the 2000s – they're familiar friends. "I think I can make a website," you mutter to yourself, optimism bubbling. You delve into tutorials on HTML tags. This is easy: p tags, h1 tags, a sprinkle of CSS. You can make things red and blue, give them borders, shape them to your will.

You refresh yourself on the basics of forms, inputs, labels, links, images, accessibility.

You upload a website. It's not as good as you hoped, but it's yours. You've birthed it from code, but something's missing. How do you make things interactive? How do you breathe life into this static creation?

It's now February.

You remember JavaScript. You remember there was something else called jQuery.

You realized you should probably learn JavaScript. You take a tutorial.

It's a big deal to learn your very first programming language from scratch (HTML and CSS aren't actually programming languages, you've heard).

It's now March.

You look this up, but you also remember that people have been talking about things called frameworks; Vue, Angular, Svelte, React, Next.

You don't really know what those are. Are they training wheels for putting HTML, CSS and JavaScript together?

But you also know that the AI stuff is being done in something called Python. Python seems stranger than Javascript.

Apparently the syntax is straightforward, but Python is more mysterious, because it's not really the language of the web. It's supposed to be simple though.

You learn some Python.

It's now April.

You've realized in going through JavaScript and Python tutorials that languages are not enough.

You understand now why people dedicate their lives to this craft. It's not just about writing lines of code; it's about solving puzzles, creating art, bridging gaps between imagination and reality. You've left the boundaries of no-code tools behind, stepping into a realm where possibilities are endless, where your creativity is only constrained by your willingness to learn and explore.

It's May.

You've realized that languages are not enough; you need to understand the underlying architecture, the way these pieces fit together. You hear about Node.js, and it sounds essential. You dive into learning how JavaScript can run on the server-side. It's another layer of complexity, but you're becoming familiar with this dance.

You hear debates about SQL vs NoSQL, and your curiosity piques. What are these databases, and why do they matter? You explore MongoDB, a NoSQL database, learning how to store and retrieve data. But there's also PostgreSQL, a relational database, and you can't help but want to understand that too.

It's June.

The OpenAI API beckons you, teasing you with the promise of integrating AI into your projects. You follow guides, read documentation, and slowly but surely, you make sense of it. GPT, AI, LLMs – they're no longer just acronyms; they're tools in your toolbox.

But then there's React, a JavaScript library that changes the way you think about building user interfaces. The syntax is different, and you spend nights wrestling with JSX and components. It's challenging, but the sense of progress is addictive.

It's July.

You're learning how to connect React and Next.js, unraveling the complexities of client and server components. Docker is mentioned in forums, and you wonder if you need it. Containers, virtualization – they're concepts that require a whole new mindset.

You hear that Next.js is essential, a metaframework that could make everything easier. What is a metaframework, anyway? You lose yourself in tutorials and articles, seeking answers.

You hear new terms: class-based components, functional components – words that are foreign yet alluring. You start to read about it, and soon enough, you're lost in a labyrinth of tutorials. The world of web development unfolds before you like a never-ending story.

Functional components are newer, more elegant. Apparently.

You hear that Next.js 13 introduces new concepts. People are arguing about file-based routing. You don't know exactly what it is.

You read about Laravel. It's a different language: PHP. Another path in this intricate web. Your journey's just begun, but already it's filled with detours and delights.

You can't help but notice that some people advocate a different ecosystem entirely: Laravel, Vue, PHP. It's a reminder that the world of web development is vast, and every choice opens up a new path.

It's August.

You keep going.