If I were now starting from scratch to learn web development on my own (realizing that without investing money it’s a longer way), I would recommend this path to myself:
- Understand HTML and CSS
I recommend you to read all the materials in English if possible – you will need it 100% in your work as a programmer.
After that it is worth to look at the possibilities of Bootstrap, which has become the de facto standard for accelerated development of web applications:
This will be enough for the next steps.
Perhaps at this point you’ll want to stop and learn more about CSS. This will give you the opportunity to work as a codifier – a person who makes a static HTML page from the design, and then the programmer brings it to life by implementing the logic of the project.
You can make money on this too, either as a freelancer or by working for an IT company that specializes in web development.
But once we have decided to become a programmer – let’s move on!
- Get acquainted with jQuery.
To do this, I recommend the book “jQuery – a tutorial for beginners.
If you like it, you can continue to deal with frontend and start learning Javascript.
If https://angularjs.org/ or http://backbonejs.org/ follow – that’s the way to front-end development. It’s a good specialty, especially since such knowledge will be useful to any programmer who has chosen web development.
My advice is to stick with jQuery and move on.
Learn the server programming language.
There is a lot of choice. The most promising programming languages are Ruby, Java, Python, Node.JS (Javascript for the server).
The easiest programming language for a beginner is Python. If you learn Python and then the Django framework for web development, you’ll have everything you need to implement fairly complex projects on your own.
A good option: the Python programming language and Django framework
On the plus side, Python and Django will teach you “proper” programming. Python is consistently in the top 5-10 most in-demand languages, and good Python experts are some of the highest paid programmers. Python is both a simple and easy to understand programming language for novice programmers, and yet is used in many large companies and on large projects.
Among other materials, I recommend Learn Python The Hard Way. the book “Simple Python. A Modern Style of Programming.” And, of course, The Python 3 Tutorial.
Django – probably the best framework for web development
The best tool for all occasions is very hard to find. Django has all chances to become such a tool for web development.
The alternative is PHP and WordPress.
Another way – to start with PHP and work with popular CMS. If you’re learning programming on your own and want a quick start – start with PHP.
Many people think of PHP as “not really” a programming language, and for good reason. PHP is rarely used in major web applications, and is designed only for the web – use it in other areas can not.
On the other hand – PHP leads in the number of running in the world of sites. It is the basis of the most popular CMS (content management system).
To get you started I recommend the book: “Learning PHP and MySQL” by Lynn Bailey and Michael Morrison.
After that, deal with the creation of themes for WordPress – this is the most popular CMS in the world, judging by the number of running sites.
Once you have a good handle on that, you can already find a job. Under PHP and WordPress a lot of sites, so there is enough work for everyone.