Here are few of the top frameworks to get started with for web development. Each has it's benefits. And each is backed by a language. I want to select one that I will enjoy the most.
I am weak in developing end to end application. I can do it, I have done it a lot of times before. Both as hobby projects and as a professional. But I am primarily a backend developer. That is what I enjoy. But I have realised I need to know bare knowledge of full stack to publish anything I work on.
I want to learn a language and a framework that allows to do that. I know a few ways to do it. But I want to explore more. Here are some of the popular options.
Express prides itself as a minimal, fast, and unopinionated framework. It provides some core framework functionalities without obscuring the features of Node and leverages the robust performance of the asynchronous Node.js. It’s also quite flexible and supports full applications as well as REST API, as well. Perhaps the biggest drawback of Express is the fact that there’s no defined way of doing things, at least for beginners.
I love python and hence I want to build something with Django. There are generally no roadblocks or drawbacks as such. So this is the first one I will learn.
My notes on [[Python & Django]].
I have heard so much about this. I have given this a try. But it keeps failing and I have no patience to debug something that's so interlinked. Not a style that I am big fan of. It is said to be the easiest way to build your first app. But adding to it and publishing it is a pain.
The main disadvantage of rails lies in the fact that they take quite some effort to deploy and run in a production environment, and the learning curve of rails becomes steep once you dive deeper into the framework to unravel the magic behind it.
PHP is not something I have ever used -- I guess I played with it while I was hosting my blog on Wordpress. But my knowledge is limited. Do I want to start learning a new language? I think not.
In terms of performance, however, Laravel doesn’t compare to Django or Express, which might be a drawback for massive projects.