Making Things for Yourself
Sustaining something over a long time is genuinely hard, and no formula replaces internal motivation. Why making things for yourself first raises the odds of lasting long enough to get a real shot.
Although today we talk about reality distorted by AI, that distortion has existed for a long time. Media, history, and personal narratives have always been edited versions of events. AI just makes it harder to question.
Read articleSustaining something over a long time is genuinely hard, and no formula replaces internal motivation. Why making things for yourself first raises the odds of lasting long enough to get a real shot.
What we call 'overnight success' is usually the moment we find out about a story that's been quietly happening for years. Why the process matters more than we think.
I have a confession to make: there's no way to live my life without AI anymore. How artificial intelligence changed the way I work, organize my thoughts, and move personal projects forward.
Behind JavaScript lies an ecosystem that normally goes unnoticed: the engines that transform code into instructions, the runtime environments that take it beyond the browser, and the platforms that have made it a truly full-stack language.
JavaScript was born in haste in 1995 and grew up in the middle of the web's chaos. In this post we go over how an improvised language meant to bring pages to life ended up expanding to servers, mobile devices, and distributed environments, from Netscape and V8 to Node.js, TypeScript, Deno, and Bun.
In this post we follow the full chain of how a program is composed, from expressions and statements to the algorithms that grow and end up turned into libraries, frameworks, or even products. Understanding that composition helps you write better code and choose your tools with better judgment.
Many people believe programming is for math geniuses or for those who grew up with video games. The reality is simpler and, at the same time, more demanding. In this post I tell you what it actually takes, so you can calmly decide whether this career is for you.
When I started this career and someone asked me what programming is useful for, I answered without thinking much: to make web pages. Over time I understood that programming is useful for much more, and I'm convinced that, in a few years, it will be as essential as knowing how to use spreadsheets.
To start programming you don't need to be a genius or memorize formulas. In this post I tell you what, in my experience, actually helps — from getting used to reading documentation to reviewing high school math — and why curiosity ends up weighing more than any technical requirement.
We previously mentioned that an algorithm is a set of instructions to perform a task. However, they don't always execute linearly. Some require taking different paths or executing at different times. Let's explore a more appropriate way to design these algorithms.
Just as people speak various languages, in programming there are multiple languages, each with specific characteristics and purposes. Programming languages can be categorized into several paradigms, such as imperative, declarative, object-oriented, functional, procedural, and logical.
Behind every programming language there are basic pieces that repeat across all of them, like values, variables, operators, and functions. In this post we look at how each one works and how, combined with expressions and statements, we go from simple instructions to complete solutions.
Binary search is an efficient method for finding an element in an ordered list. The idea is to divide the search range in half over and over until you land on what you're looking for. In this post we apply it step by step with a deck of cards.
Bubble sort is one of the simplest algorithms for sorting a list. It compares pairs of neighboring elements and swaps them if they're in the wrong order, until there's nothing left to swap. In this post we apply it step by step with a deck of cards.
An algorithm is a set of instructions or steps that are followed to solve a problem or carry out a particular task. So, a manual for assembling a prefabricated piece of furniture or a cooking recipe could be considered algorithms.
Sustaining something over a long time is genuinely hard, and no formula replaces internal motivation. Why making things for yourself first raises the odds of lasting long enough to get a real shot.
What we call 'overnight success' is usually the moment we find out about a story that's been quietly happening for years. Why the process matters more than we think.
I have a confession to make: there's no way to live my life without AI anymore. How artificial intelligence changed the way I work, organize my thoughts, and move personal projects forward.
Behind JavaScript lies an ecosystem that normally goes unnoticed: the engines that transform code into instructions, the runtime environments that take it beyond the browser, and the platforms that have made it a truly full-stack language.
JavaScript was born in haste in 1995 and grew up in the middle of the web's chaos. In this post we go over how an improvised language meant to bring pages to life ended up expanding to servers, mobile devices, and distributed environments, from Netscape and V8 to Node.js, TypeScript, Deno, and Bun.
In this post we follow the full chain of how a program is composed, from expressions and statements to the algorithms that grow and end up turned into libraries, frameworks, or even products. Understanding that composition helps you write better code and choose your tools with better judgment.
Many people believe programming is for math geniuses or for those who grew up with video games. The reality is simpler and, at the same time, more demanding. In this post I tell you what it actually takes, so you can calmly decide whether this career is for you.
When I started this career and someone asked me what programming is useful for, I answered without thinking much: to make web pages. Over time I understood that programming is useful for much more, and I'm convinced that, in a few years, it will be as essential as knowing how to use spreadsheets.
To start programming you don't need to be a genius or memorize formulas. In this post I tell you what, in my experience, actually helps — from getting used to reading documentation to reviewing high school math — and why curiosity ends up weighing more than any technical requirement.
We previously mentioned that an algorithm is a set of instructions to perform a task. However, they don't always execute linearly. Some require taking different paths or executing at different times. Let's explore a more appropriate way to design these algorithms.
Just as people speak various languages, in programming there are multiple languages, each with specific characteristics and purposes. Programming languages can be categorized into several paradigms, such as imperative, declarative, object-oriented, functional, procedural, and logical.
Behind every programming language there are basic pieces that repeat across all of them, like values, variables, operators, and functions. In this post we look at how each one works and how, combined with expressions and statements, we go from simple instructions to complete solutions.
Binary search is an efficient method for finding an element in an ordered list. The idea is to divide the search range in half over and over until you land on what you're looking for. In this post we apply it step by step with a deck of cards.
Bubble sort is one of the simplest algorithms for sorting a list. It compares pairs of neighboring elements and swaps them if they're in the wrong order, until there's nothing left to swap. In this post we apply it step by step with a deck of cards.
An algorithm is a set of instructions or steps that are followed to solve a problem or carry out a particular task. So, a manual for assembling a prefabricated piece of furniture or a cooking recipe could be considered algorithms.
We are 3000 people changing the world of programming.
online right now