The right order is: Tech Foundations (how the web works) then HTML then CSS then JavaScript then React then Node.js then Databases then APIs then Deployment then AI tools. Each step builds on the previous one. Skipping ahead creates gaps that show up later as confusion, frustration, and the feeling that "coding is not for me." It usually is for you. You just started in the wrong place.
Imagine trying to learn algebra before you know arithmetic. You are staring at "solve for x" but you cannot multiply single digits reliably. Every problem feels impossibly hard. You start to think you are bad at maths. But you are not bad at maths. You skipped a step.
Coding works the same way. Every concept builds on a previous one. React builds on JavaScript. JavaScript builds on understanding how web pages work. Web pages build on HTML and CSS. And all of it builds on understanding how the internet, servers, and browsers actually function.
When beginners jump to a React tutorial because they saw it on a "top frameworks" list, they hit a wall within days. The tutorial says "create a component." They do not know what a component is. It says "pass props." They do not know what props are. It uses JavaScript arrow functions, array methods, destructuring. They have not learned any of that yet. They think React is impossibly hard. It is not. They are just three steps ahead of where they should be.
Here is the sequence that works.
Before you touch code, understand the environment code runs in.
This means learning:
This is what Tech Foundations: Before You Code (KES 2,999) covers. It is specifically designed for this step. No code, no prerequisites, just the mental models that make everything after this make sense.
We call this "Step 0" because it comes before coding starts, but it is the most important step. Every concept you learn afterwards will reference these foundations. If you skip this and jump to HTML, you will learn HTML but not understand why it exists or where it fits in the system. That missing context makes every subsequent step harder than it needs to be.
We wrote a full article on this: what to do before you start coding.
Get weekly developer tips
Join 25,000+ developers. Practical guides, job tips, and new content — straight to your inbox.
No spam. Unsubscribe anytime.
HTML (HyperText Markup Language) is the structure of every web page. It is not a programming language. It is a markup language. You use it to define what is on a page: headings, paragraphs, images, links, forms, lists.
Why it comes first: everything else on the web is built on top of HTML. CSS styles HTML elements. JavaScript manipulates HTML elements. React generates HTML elements. If you do not understand HTML, you cannot understand anything that builds on it.
What you will learn:
By the end of this step, you can create a simple web page, open it in your browser, and see content. That immediate feedback is motivating. You built something visible on day one.
CSS (Cascading Style Sheets) controls how HTML looks. Colours, fonts, spacing, layouts, animations. Without CSS, every web page looks like a plain text document from 1995.
Why it comes after HTML: CSS targets HTML elements. You write "make all headings blue" or "centre this div." If you do not know what headings and divs are, CSS rules make no sense.
What you will learn:
CSS is where many people get frustrated. Layouts behave in counterintuitive ways, and small changes sometimes break everything. This is normal. CSS requires practice and patience. The good news: Flexbox and Grid have made layouts dramatically easier than they were five years ago.
By the end of this step, your web pages look like real websites. That shift from "ugly text on a white page" to "something that looks professional" is a major confidence boost.
JavaScript is your first actual programming language. It makes web pages interactive: buttons that respond to clicks, forms that validate input, content that updates without reloading the page.
Why it comes after HTML and CSS: JavaScript manipulates HTML elements and changes CSS styles. Without understanding what it is manipulating, JavaScript code looks like abstract instructions with no visible purpose.
What you will learn:
This is the longest and hardest step so far. JavaScript introduces real programming concepts: logic, abstraction, problem-solving. The first two weeks will feel slow. By week four, things start clicking. By week six, you can build interactive applications. Push through the early confusion. It is the same confusion every developer experienced.
For why JavaScript specifically, see our first programming language verdict.
React is a JavaScript framework (technically a library) for building user interfaces. It is the most popular front-end framework in the world and in the African job market.
Why it comes after JavaScript: React is JavaScript. Components are JavaScript functions. Props are JavaScript objects. State management uses JavaScript concepts. Trying to learn React without knowing JavaScript is like trying to write essays without knowing the alphabet.
What you will learn:
React changes how you think about building interfaces. Instead of one big page, you build small, reusable pieces and compose them together. This feels strange at first but quickly becomes intuitive. After React, going back to plain HTML/CSS/JavaScript feels slow and repetitive.
Node.js lets you run JavaScript on the server. Combined with Express (a Node.js framework), you can build APIs, handle authentication, process payments, and connect to databases. This is the back-end.
Why it comes after React: you now understand what the front-end needs from the back-end. You have called APIs from React and seen the shape of the data. Building the API yourself is the natural next step.
What you will learn:
After this step, you are a full-stack developer. You can build an application end to end: what the user sees (React), what happens on the server (Node.js/Express), and where the data lives (database). That is a complete skill set.
Building something on your laptop is step one. Putting it on the internet where people can use it is step two. This is deployment.
What you will learn:
At this point, you also integrate AI tools into your workflow. Not as a crutch, but as a co-pilot:
We cover the rules for using AI as a beginner in should beginners use AI to learn to code.
How long does this full sequence take? It depends on how many hours you put in.
Part-time (1.5-2 hours/day):
Full-time (4-6 hours/day):
These are estimates. Some people move faster, some slower. The important thing is consistency, not speed. Studying 1.5 hours every day for six months beats studying 8 hours on one Saturday every three weeks. Regular practice builds neural pathways. Sporadic cramming does not.
For more on study schedules, see how many hours a day should you study coding.
We see these patterns repeatedly with learners who come to McTaba after trying to learn on their own:
Skipped foundations, went straight to JavaScript: "I do not understand what fetch does or why I need to call an API." They learn the syntax of fetch() but have no mental model of client-server communication. Every API call feels like magic they are copying without understanding.
Skipped JavaScript, went straight to React: "React is so confusing, I do not understand anything." They do not understand React because they do not understand the JavaScript that React is built on. They cannot debug because they do not know where React ends and JavaScript begins.
Skipped HTML/CSS, started with Python: "I can write scripts but I have no idea how to build something people can use." They know programming logic but cannot create any visual output. They feel stuck because "knowing Python" does not translate to "having something to show."
In every case, the fix is the same: go back and fill the gap. The time you "saved" by skipping was not saved. It was borrowed, and the interest compounds.
The beginning is not HTML. The beginning is understanding how the web works.
Create a free McTaba Academy account. Preview the material. If it makes sense to you, start with Tech Foundations: Before You Code (KES 2,999). It is specifically built for Step 0 of this sequence. Everything after it goes smoother because of it.
For the detailed self-taught roadmap with specific resources for each step, see our self-taught developer roadmap. For help choosing between JavaScript and Python, see what programming language to learn first in 2026.
KES 2,999
Not sure where to begin? This beginner-friendly course covers how computers work, the internet, Git, and your first lines of code — everything you need before picking a stack. 10 modules, 89 lessons.
Start Tech Foundations