Video Transcript, Enjoy 🙂
In this lesson, I will show you the exact roadmap I used to become a developer.
Someone who can build
- Web applications
- Mobile applications
- and Desktop applications
Now you may think that it’s a lot to learn. However, if you follow the steps I’m about to give you, you will be pleased to discover that its gonna take you faster than you think.
In fact, you can build a simple web application, mobile application and even desktop application with just one baseline technology.
So here’s a roadmap. If you are new to programming, I recommend you learn Front-End development first.
Now if you do not know what Front-End development is, Front-End developers specialize in building fully functional user interfaces of a website or a web application.
If you go to a popular website, or any website for that matter, the user interface that you interact with, you click the button features, the menu features, the interactions, the way the page loads, the way the page is laid out, the colors, all the interaction and the visual features are all designed, developed and coded by a Front-End developer.
Hence the name Front-End, because it’s facing the user.
A web application has minimum two components.
The Front-End that the user interacts with a the Back-End that you do not see as a user but when you interact with the website, when you click the login button, that information your username and password is actually sent to the back-end, a computer a system, a piece of software that takes that information and makes a check “is this username or password correct?”
If you actually click on a page, it’s actually requesting the page data. So that information is requested from the back-end and the back-end determines
Oh, the user wants to see the about page, Ok let me send that information back to the front-end” So the front-end and the back-end work together to build an entire website or web application.
A front-end developer takes care of how the user interface works, the interaction works, and how the look and feel of a website works.
A back-end developer on the other hand writes the code that handles the flow of data, saving information, updating information, reading information and deleting data and also manage in the excess permissions of the data.
So for instance if you’re trying to access the profile information of Aziz’s profile of twitter, you do not have access to it.
Only me Aziz has access to it… so back-end code also takes care of the permissions one user has vs another. Of course an administrative of a website has all the permissions.
So all this piece of information, or piece of logic and piece of expectations that we have from a website is very obvious for us, because we are used to using twitter and we are used to knowing that “Oh, of course I can only change my profile picture and I cannot change the profile picture of somebody else’s twitter profile.
But all this logic, all this details are hand coded by developers to control the data to create a particular interaction, a look and a feel of a website.
A front-end of a website talks to the back-end of a website to get the data this makes a full application.
So back to the roadmap. If you are new to development, learn front-end development first and then build your back-end development skills.
I recommend front-end development first because of several reasons.
First, front-end development feels more familiar because you are building user interfaces similar to what you are used to on your favorite website. It sounds at home that you’re building familiar stuff.
Second, front-end developers are more in demand these days so that increases your chances of getting employment and getting ample amount of practice.
Third, it’s more gratifying to build functional website features, at least for me. So it’s encouragement that you get that keeps you going.
So here are the skills you should learn to get started to learn front-end development.
Front-End Development (HTML & CSS)
Start with learning HTML & CSS first. HTML is a short for hypertext markup language. HTML is a markup language not a programming language that helps layout the structure of a website.
Think of HTML as something that helps you put the frames of a house. Just imagine you’re putting frames of a structure…
Let’s say you’re seeing a house built. Before the house is built, they actually put those wooden frames of the house.
So HTML helps you put the frame and the structure of a website.
CSS is a next skill you should learn. CSS stands for cascading style sheets. It’s much of a design rules that help beauty a web page.
Think of CSS as like hiring an interior designer for your web page. It helps you apply simple features of interactions, hover effects, colors, layout. It gives you much more power on laying out your page and adds visual appeal to the website.
I have created the world’s best HTML & CSS video course and it’s FREE
It’s called Learn HTML & CSS in 14 days!
So now once you learn HTML & CSS and you can get ample practice in it, you are considered a web designer. Someone who can build and design beautiful websites.
A web designer can earn around $35,000 to $60,000 per year, that’s just the market rate for this kind of skill.
Knowing HTML & CSS is the baseline skill to many things. Like if you want to be in the technology industry, HTML & CSS is the basic skill that you must know. It’s like knowing grammar if you’re gonna talk in english. Basic grammar, of course the more proficient you are, that’s just better for your skill.
Do yourself a favor, if you’re gonna be in technology, learn HTML & CSS at least the basics. And of course if you wanna be a pro at it then do a lot of practice so that you become really good at it
So like an author, if you wanna become an author, of course you have to know not just the basic grammar skill, you should be good at grammar. But if you’re just gonna communicate in english, you just need to know the basics.
So similar to that if you’re gonna be in technology, you must know the basics HTML & CSS but if you gonna be a web developer somebody who codes and builds applications, HTML & CSS high level skills with practice is absolutely a must.
So I’m gonna give you the exact list of all the tools, the libraries and the frameworks you must learn to become a proficient developer, for not just websites, web applications, mobile applications and desktop applications.
Now these libraries are almost considered standard in the industry.
And if you are going to be a professional, it is a requirement from your employer or your client or if you wanna build those applications for yourself, it is just like a norm for you to know these things. And I’m gonna give you the exact list.
For instance, jQuery will help you build interactive menus, sliders, to-do app, button effects, animation and all the way up to a mini application. Next, you should learn at least one modern front-end development framework.
They will help you building an entire application. Infact iLoveCoding is built on Angularjs the entire front-end is Angularjs based.
I built multiple applications for bigger corporations including cvs, press ganey and some smaller clients with technologies such as Angularjs Reactjs both. Once you learn all these things, congratulations! You are considered a front-end developer.
A front-end developer can earn anywhere from $80,000 to all the way to $170,000 per year in US that’s what the range is. Of course the range can be lower and higher but that’s what the norm is.
Now, all you need is to do a lot of practice so that you become good at these things. Now of course there are many pieces of wisdom and tricks that you must know as a developer to be good at your job.
but these are the high level technologies that will make your resume look good.
Next, let’s move on to back-end development. Now, you can learn typical back-end technologies like PHP, Java, C#, Python, Ruby etc and enter the different worlds they’re out there. But, I have a better recommendation.
This drastically speeds up your learning curve and immediately makes you a back-end developer, but not so fast.
You must learn a little bit more about how a back-end works and built back-end APIs. And this is simply accomplished by learning Express.js
Congratulations! And you have just mastered another area of the web application world.
You already learned Front-End now you know Back-End as well. And if you know both you are considered a Full-Stack Developer. A term used for someone who knows front-end development and back-end development combined.
Once you know this, you’re just going to be a much more confident person, who with experience can eventually become a software architect because you know multiple pieces of how things work.
Now, I’m over simplifying it. These things come with experience and a lot of practice. But this is the bigger picture.
Now why should we stop here? You are just one step away from becoming a Mobile developer.
And here is typically how mobile developers do become a mobile developers, which is the typical way and not so effective way.
So if someone wants to become an android developer, they will learn Java programming language and learn all those different tools and features so that they can build an android application.
And if they wanna build an iPad and iPhone applications. They’re going to have to learn Swift programming language or Objective C and learn all the different tools and features and everything to build an iPhone or an iPad app.
But, there’s a better way, again.
There is an easier way which is getting pretty popular so much so that Facebook is using that technique as well.
It’s also the same tools that are gonna be used for Android and even windows devices.
Native Script React Script
So you can learn native script or react native, which are two libraries that help you accomplish just that.
And that’s it… you are now a mobile developer. Again, Facebooks mobile app is built with react, native. So these are not just some weird advice that I’m giving, these are mainstream technologies.
It’s just going out of hands you know, it’s just getting so much popular.
Now, let us not just stop here.
You already are a front-end developer now. A back-end developer and a full-stack developer, and now you also know mobile development.
You can also become a desktop developer as easy as becoming a mobile developer. Only if you go through the path, that I’m about to show you.
So again, typically an app developer for desktop would have to learn specific technology for the operating system they’re building on.
So if they’re building for linux or windows or mac, they would have to choose a different technology, different programming language, different framework. They have to know different setup tools to implement a desktop application.
Companies like Slack, Github, Microsoft, WordPress and many other companies use this method to build desktop apps.
So, there you have it.
I have given you the Simplest Most Effective path to becoming a professional developer, who is three times more versatile than any other typical developer.
I’m not only giving you the roadmap, I have also given you the tools.
And if you are able to get into iLoveCoding training program, it follows the exact roadmap to teach you programming. The program is step by step and it will train you in each area as described here.
The program is complete in which it covers the big picture items as discussed in this video. Along with many other important details like tricks and tips that will help you become a complete confident and resourceful developer who can solve any programming task.
And honestly that’s my goal that you just internalize the principles of programming, and things just become easier and easier every day. Of course when you learn a different toolset, a different power tool, a different library.
you will slow down your learning curve as natural like anything learning new things will slow you down a little bit.
But with more practice, your learning curve is gonna become shorter and shorter and shorter and your productivity is going to become better and better and better.
I hope you enjoyed this lesson. If you have any question, feel free to leave your comments below. I’ll talk to you in the comments.
Author: Aziz Ali