“Where do I start” is one of the most common questions that you ask in the Women in Web Dev Facebook group!
Looking around at different articles, I get why you’re confused – so let’s keep it simple!
There are two paths that you can take when you start learning how to code to become a web developer:
- HTML & CSS – build websites from scratch
- Programming – learn how to give commands to the computer with JavaScript, Ruby or Python
They’re different but both essential skills to have as a web developer, and you can start with either.
Most people start off with HTML and CSS because they’re the building blocks of websites, something that we see and interact with everyday.
HTML and CSS
What are HTML and CSS?
HTML is Hyper Text Markup Language. It tells the browser the structure of your document. If we were building a house, HTML would be the walls and CSS would be the paint and interior design.
Here’s an HTML page along with its markup. (insert screenshot)

Here’s the page with a bit of CSS applied.

How do I learn HTML & CSS?
- Take a course on HTML and CSS. Here are some recommendations.
- Put your knowledge to the test with these exercises / resources.
- Build your own website!
To start, I recommend picking a simple website that you like or a SquareSpace template.
It’s much easier to practice coding when you aren’t fiddling around with design at the same time.
SquareSpace has many beautiful responsive websites, so you can focus on the coding!
TIP: Break it down and build one section at a time – for example, build the header and navigation, then the header image, and so on until you reach the footer.
Programming
What is Programming?
Programming is to give a set of instructions for the computer to execute. It can be as simple as adding two numbers together or as complex as Google’s algorithm to return the top search results.
What language should I learn first?
It really doesn’t matter. Programming languages share many common concepts. When you first learn to program, the most important thing is to learn the concepts behind them. It will be much easier to learn the second language.
What if I learn the wrong one?
Like I mentioned above, the most important thing is to learn the concepts. Languages come and go all the time, but the concepts stay the same.
Okay, but what do you recommend as a newbie?
My recommendation is to start with Python or Ruby because they’re both beginner-friendly and have lots of great resources.
I don’t recommend JavaScript because JavaScript syntax has changed a lot over the years. It’s confusing enough to learn how to code without having to figure out whether the resource you’re looking at is using ES5 or ES6.
What are some recommended resources or websites?
Learn to Program: The Fundamentals – Coursera
You can audit this Python course for free on Coursera. Using Python, it introduces you to the concepts behind the code and *how* it works.
There’s also a section on how to design your functions, so you can practice how to break coding problems down and translate it into code.
Programming Fundamentals on Lynad.com / LinkedIn Learning
Explore the core concepts and structure of programming languages and helps you grasp what’s going on under the hood.
The course compares how code is written in several different languages and provides guidance on the criteria to use when choosing a programming language.
Edabit has hundreds of programming challenges ranked by difficulty. The exercises tend to be easier than CodeWars, so start here if you’re just getting started!
Ninja-themed website with thousands of challenges (katas) to go through. This is more challenging than Edabit.
The challenges often has sneaky edge cases that they test for, so makes it more fun / frustrating, depending on your view.
Final Thoughts
It really doesn’t matter where you start. Just start – stop searching for the “best” way or the “best” resource. The best one is the one where you actually finish and learn something.
