Table of Contents
- How to learn web development – Beyond the fundamentals
- Moving from the front-end to the back-end
- Closing thoughts on how to learn web development
You can read about learning web development fundamentals in part 1.
How to learn web development – Beyond the fundamentals
HTML, CSS and front-end frameworks
Let’s start with HTML and CSS. This is probably the easiest way to transition into more advance part of web development. Getting better at web development is not only about learning new technologies. It is also about learning new tricks and approaches. Or, put differently, it is about making our work easier and faster. When it comes to HTML and CSS, this can mean learning to use a front-end framework.
What is a front-end framework? Well, we can think about front-end framework as a library of ready-to-use components with the same style. This means that we no longer have to write everything from scratch over and over again. Instead, we can use one of these frameworks and, in some sense, outsource part of our work. The simplest example is the grid. We don’t have to create our own 12-column grid all the time.
Instead of writing our own, we can choose from a variety of grids made by someone else. The same is also true about other elements we use repeatedly in our web development project. From buttons, form fields, sliders, carrousels, modals to tooltips and more. There are many frameworks that offer all of these components and even more in one package. Then, we can either choose to use the whole package or only part of it.
This approach has at least two benefits. First, it saves us time. Instead of writing everything, we can just customize it and implement it. The second benefit is even more important. Widely used frameworks are also well-tested. The more people use some framework the higher is the chance that someone will find a bug and someone will then fix this bug. As a result, using a framework can help us build more stable projects.
Word of caution
Before we get into specific frameworks, there is one thing I have to say. Learn web development and master the basics first. Don’t use framework if you don’t know the fundamentals. We should constantly remind ourselves what is the purpose of using a framework. I think that the purpose of using a framework is to improve our workflow. Frameworks should help us be more productive and do our work faster.
It is not the purpose of framework to help us cover gaps in knowledge or weaknesses. Frameworks are not meant to be a “hotfix” if we decide to take a shortcut to learn web development and skip some part here or there. Thinking this will work and doing it is a big mistake that will backfire in the future. Let me repeat it. Framework will not supplement what we skipped on the path to learn web development.
This is true not only for frameworks, but for libraries as well. Libraries, just like frameworks, are tools that should help us make our work easier, faster and better. They are not supplements for insufficient education. We can take a shortcut to learn web development “faster” and then use library or framework to take care about what we don’t know. However, this doesn’t help us learn what we don’t know.
This is one of reasons why I think aspiring developers to learn web development properly before they start learn to use frameworks or libraries. When you master the fundamentals, you can use any framework or library that is available. When you limit your knowledge only to a specific framework or library, you then depend on it and you can’t do anything without it. So, please, master the fundamentals first.
HTML, CSS frameworks – Where to start
Enough of taking about the theory and principles. Let’s take a talk about some frameworks and libraries that are actually worth the time to learn. As always, let’s take HTML and CSS and as first. When it comes to HTML and CSS frameworks, there are currently two main players. And, since there is also a demand for developers who know them, they are a good fit for our curriculum to learn web development.
These two frameworks are Bootstrap and Foundation. You probably heard about at least one of them, unless you just discovered the world of web development. This is no surprise. If WordPress is powering around one-fifth of the Internet another one-fifth belongs to these two frameworks. Bootstrap and Foundation have no competition. Also, from a career or business perspective, they are in demand.
Another benefit of learning more about one of these two frameworks, aside from viability, is that they are both very robust. Meaning, if you decide to use one of them, you can build the whole project just by using components and code provided by the framework. Both these frameworks are also easy to customize, especially their latest versions. Finally, both have large communities of users and developers.
So, if you are looking for some framework that could make you a more interesting candidate for building career or business, these two are both good places to start. What if you want more options you can try and test? In that case, there is Semantic UI, Pure developed by Yahoo!, UIkit, MUI, Bulma, Milligram, my small project EtherCSS and many many more.
Choosing the right option
One question you may have is, which of the frameworks and libraries we discussed is the best to choose? Well, hard to say. Remember that each option comes with some specific upsides and benefits as well as downsides and pains. Also, each option may be better choice for different situation. In the end, keep in mind that all these options are just tools. What matters is what do you want to achieve.
Another thing that can help you decide is setting aside a little bit of time and taking a look at docs for each framework and library. Read about how each framework or library works and go through some examples of code. This can help you find out which one has a syntax that you think is more comfortable working with and friendly for you. You can also try each option and work on some tutorials.
Finally, take a look at communities built around these frameworks and libraries. Seeing which option has bigger, more active and more helpful community can also help you decide. Keep in mind that, when you run into some troubles, it is good to have some place where you can go to or group of people you can ask for help. You will learn web development faster if you have people who can help you. Don’t go alone.
Moving from the front-end to the back-end
Let’s say that you want to go extend your path to learn web development beyond the front-end. Let’s assume your primary goal is to learn both, front-end as well as back-end. When someone gives you two options, why should you choose only one? You can choose both. In other word, why learn only front-end or only back-end if you can learn both? Then, the only thing you need is time and perseverance.
Unfortunately, back-end is not exactly my area of expertise yet. At this moment, I am just slowing getting into it. So, I don’t know enough I can tell you about. However, there are two things I heard often from back-end or full-stack developers. First, before you learn any specific back-end language, make sure you understand what is happening behind the scenes and how it works, its principles and logic.
Second, when you are done with the first step, learning about back-end in general, choose just one language. Then, learn everything you can about that language, how to work with it properly and the best practices. Your goal is just shallow learning. Instead, make your goal to master it. Remember, choose one language and stick with it until you know everything about it. Only then you can think about another.
Closing thoughts on how to learn web development
My current knowledge was not enough to give you a broader and deeper overview of the back-end. However, I still hope it was useful for you and you could get at least something out of it. I am sure that we will get back to this topic in the future as I will gather more information and learn more about it. Now, is this where our path to learn web development ends? Or, is there more to explore? Let’s see.
Do you have any questions, recommendations, thoughts, advice or tip you would like to share with other readers of this blog, and me? Great! Please share it in a comment. Or, if you want to keep things more "private", feel free to contact me on twitter or send me a mail. I would love to hear from you.
Did you like this article? Please subscribe.