So, you've come up with an idea for a product that involves the web?
Or you want to learn web development for any other reason?
I'll have you covered!
I am no expert by any means but have been learning it on my own for a couple of years now, and hopefully will be able to give you some insights into learning it for yourself.
I am sure @MJ DeMarco would agree that programming is a great fastlane skill (after all, that's what he has taught himself, too).
Anyway, I assume that you have decided to learn it and know the WHY.
I'll now give you a brief overview of web development. Based on the explanations, you should be able to figure out what you need to learn.
The Building Blocks Of The Web
HTML - The language used to tell the browser what you see, whether that is buttons, images, or text. A website only with HTML, however, looks crappy.
CSS - The language used for making things look good. Oftentimes, CSS tutorials change the colour of some text or re-align it to the side. In the past, I thought: there must be another language involved in creating the complete look of a web page.
This is where we need to distinguish between design and development: a developer with no knowledge about design will rarely create something that looks good, despite his knowledge of CSS (except when using design systems, which I'll talk about later in the thread).
JavaScript - Whenever the page changes dynamically, which means without reloading it, Javascript is involved.
The three technologies make up the front-end, everything the user can see.
Any user can view the page source and look at all of your HTML, CSS and JavaScript code.
At this point, you are a front-end developer - somebody who can build the front-end of a website/web app.
Is this enough to get you started?
Think about what you want to do: will these three technologies be enough to kick things off? Will you be fine without database storage? For example, a text formatting website could be built entirely in HTML, CSS and JS, if it does not involve storing any information in a database. On the other hand, most SaaS applications involve more technologies...
The Backend
Python, Go, Java, C#, Ruby, PHP, you name it, are languages that live on the server-side.
What is a server?
A server is a computer which "serves" other computers. You send a request to it, a backend language does some magic, and it sends you back what you requested.
As opposed to the front-end, people should have no idea which language your backend is built in. They don't see it.
Pretty much all modern languages have libraries in place for talking to a database as well. Sometimes, you need to write SQL which is the language for interacting with databases entire yourself. Other times, a framework will abstract it away for you (more about frameworks and what they are later).
Hope this gave you some first insights into the topic. At this point, you might still be confused, and that's okay.
In the following posts, we'll be talking about the actual roadmap of learning, which languages/frameworks to pick (pros and cons) to get an MVP/prototype built as soon as possible, security, and more.
If you have any questions, drop them.
See you
Or you want to learn web development for any other reason?
I'll have you covered!
I am no expert by any means but have been learning it on my own for a couple of years now, and hopefully will be able to give you some insights into learning it for yourself.
I am sure @MJ DeMarco would agree that programming is a great fastlane skill (after all, that's what he has taught himself, too).
Anyway, I assume that you have decided to learn it and know the WHY.
I'll now give you a brief overview of web development. Based on the explanations, you should be able to figure out what you need to learn.
The Building Blocks Of The Web
HTML - The language used to tell the browser what you see, whether that is buttons, images, or text. A website only with HTML, however, looks crappy.
CSS - The language used for making things look good. Oftentimes, CSS tutorials change the colour of some text or re-align it to the side. In the past, I thought: there must be another language involved in creating the complete look of a web page.
This is where we need to distinguish between design and development: a developer with no knowledge about design will rarely create something that looks good, despite his knowledge of CSS (except when using design systems, which I'll talk about later in the thread).
JavaScript - Whenever the page changes dynamically, which means without reloading it, Javascript is involved.
The three technologies make up the front-end, everything the user can see.
Any user can view the page source and look at all of your HTML, CSS and JavaScript code.
At this point, you are a front-end developer - somebody who can build the front-end of a website/web app.
Is this enough to get you started?
Think about what you want to do: will these three technologies be enough to kick things off? Will you be fine without database storage? For example, a text formatting website could be built entirely in HTML, CSS and JS, if it does not involve storing any information in a database. On the other hand, most SaaS applications involve more technologies...
The Backend
Python, Go, Java, C#, Ruby, PHP, you name it, are languages that live on the server-side.
What is a server?
A server is a computer which "serves" other computers. You send a request to it, a backend language does some magic, and it sends you back what you requested.
As opposed to the front-end, people should have no idea which language your backend is built in. They don't see it.
Pretty much all modern languages have libraries in place for talking to a database as well. Sometimes, you need to write SQL which is the language for interacting with databases entire yourself. Other times, a framework will abstract it away for you (more about frameworks and what they are later).
Hope this gave you some first insights into the topic. At this point, you might still be confused, and that's okay.
In the following posts, we'll be talking about the actual roadmap of learning, which languages/frameworks to pick (pros and cons) to get an MVP/prototype built as soon as possible, security, and more.
If you have any questions, drop them.
See you
Dislike ads? Remove them and support the forum:
Subscribe to Fastlane Insiders.