Title: After HTML, CSS and JS, what next?
Everyone knows that the basics of frontend development include HTML – HyperText Markup Language, CSS – Cascading StyleSheet and JS – JavaScript. If you didn’t know, now you do. You can’t skip this preliminary stage of frontend web development – or development generally.
At some point or another whether frontend or backend, you have to be familiar with a lot of these aforementioned language, sheet and script. In this article we will look at what frameworks are, why should choose to use frameworks and how to choose a framework to learn depending on a few factors.
So, now that you feel you’re good with them – HTML, CSS and JS - what’s next. I recommend that you go over the basics a few times if you rushed the whole process or get comfortable with a few things that are giving you tough times dealing with them before proceeding though. If you feel ready, let’s introduce you to frameworks.
What are Frameworks?
According to welearncode,
Under the hood, frameworks are just code libraries (i.e. other people’s code) and the popular ones are open source! So, you can look at your library’s code online.
Described a little differently, a framework is a collection of most or all of the libraries you need to create a working project – webpage or backend services. These frameworks have also have a convention of how they are written. They are framework-specific.
Why Frameworks?
According to Cuelogic:
The purpose of frameworks is to allow designers and developers to focus on building an entire feature of their web-based projects rather than reinventing by coding.
Frameworks are essential to increase performance and ensure maintenance with projects you develop. A lot of them handle database integrations, session management, template engines and so on. Don’t worry if all these concepts are new to you but you’ll get introduced to them when you finally decide to choose a framework as they are content-specific. It also helps in writing less error-prone apps with each framework offering different tests you write to debug your own app even before production.
There are different types of frameworks, some focus majorly on frontend, those ones are usually JavaScript framework. Examples of those are: React, Ember Js, Vue Js and Angular. Another type does focuses on frontends but just allow you to add frontend by offering blades with which you can write and manipulate frontend with. Examples of these are PHP Frameworks – Laravel, Symphony CodeIgniter, Symphony, CakePHP. We will be focusing on the former in this article.
Factors to consider when choosing a Frontend framework
- Popularity
Companies like to use what they have tested and trust. It is cool to learn a very wild, stacked framework but business-wise, it’s not that great if companies are not interested in using them. This is where popularity comes in.
There are some reasons for that though. The more common a framework is, the higher the chance of finding a developer who specializes in it. If a developer decides to leave the company and go for a job hunt or decides he won’t work on the project anymore, it will be easier to find a replacement for such a developer.
Personally, you might encounter a problem. If the framework you’re dealing with is not a popular one, there are less chances you’d see a solution to that problem since there might not be a community to ask for help.
The more popular a framework the higher the chance it is being used in companies. React and Angular, backed by Facebook and Google respectively, are widely popular and majority of companies use them. Vue is just beginning to gain grounds.
Aurelia, until writing this article, I never even heard of it, no disrespects.
- Learning materials or resources.
Never overlook this one. You might like the implementations of some frontend frameworks or you might like the simplicity of how it’s written, but do not be deceived, you might just be in for a brawl. I’m not sure I even know what that means but it sounds nice so I’m using it. Digressed.
The more resources you can explore about a certain framework, the more you’ll be able to freestyle, if you know what I mean. You want to have a lot of resources, so, you see how differently things can be implemented. This can allow you to open your mind to a lot of possibilities about a framework’s and the diverse things it can offer.
Take it or leave it, it’s not always the first time you pick up a resource or material you understand what it’s about. You might need other explanations on the same topic. If materials are limited, then for me, such are a no-go.
Examples of these can be frameworks like Aurelia - It has almost no resources save the documentation on their official website. Only the documentation and then a little bit of “Insha Allah” can help you. React and Angular on the other hand have a lot of resources. On their website, on YouTube, you have access to different materials on different topic ranges.
Vue is in the middle in this case, it has good documentation and a few courses to them. It’s important that Vue doesn’t have as much resources as React and Angular but it’s gaining its own grounds already.
- Usability
How do you know you are compatible with the framework? You don’t understand? I’ll explain. How do you know if the framework will be challenging or easy for you to learn? There is only one way to find that out: work on a mini-project.
Do you have to look everywhere for libraries that help you do what you want or you have to go through the process of writing a library for everything you are trying to do? Is there a way you have to write your code or a structure the framework allows? Does it have a Command Line Interface (CLI) to increase speed during the development process?
These are things you might want to consider in order to choose a framework. Let’s keep this article a little concise at this point. See you on the next one.
Learn more: