TL;DR: What would you choose between Django or Express if you are very good in Laravel?
Hi, I want to move from Laravel to another technology maybe Django or Express but I'm not sure what to do.
I mainly develop web applications so I'm doing really good with Laravel but since I have been working with it with quite some time I want to learn something new and then use it as a main weapon.
From what I can see is that the most straight-forward approach would be doing Django but I want to know why people would prefer Express over Django, maybe I'm not seeing something.
If you consider that there's another framework that is worth it mention it, just consider that I'm trying to go for frameworks that are mature and can be used in a production environment, very rarely I do web apps for more than 10k users per month.
Thanks for your comments!
Top comments (5)
I don't know Express so I'm going to talk a bit about Django.
Django is 13 years old (six months older than Ruby on Rails actually :D), it has a big community around it, it is in all honesty what some would call a boring technology. It is built upon a solid language and as framework goes, it's not that different from any of the major ones. Express is newer, it embraces the Node ecosystem, it's built on async concurrency model (Django isn't by default) and it sits upon one of the most popular languages out there and you're already knowledgeable in that.
I wouldn't choose neither Django nor Express to be honest but neither is a bad option.
My favorite web framework so far is Flask, its surface is smaller than Django, it forces less "conventions", you can use a ORM or not, you can use whatever data library you prefer and basically you can compose your app as you see fit. Express is probably more akin to Flask than it is to Django (small footprint, the rest is found in plugins)
But Django is good nonetheless, it comes with "batteries included", like Rails does. It's very easy to setup an application.
I know I haven't cleared much (if any) of your confusion but, borrowing from your words, very rarely you can go wrong by choosing a web framework with a huge community, especially if you don't have scalability issues like you probably won't.
Try them, play with them, decide :)
Yeah, I don't mind learning boring technology what I fear is learning technology that will be obsolete in a few years that currently is just buzzing. I consider that Node has pass that effect and it's now becoming part of those boring technologies hehehe.
Thanks for your thoughts I heard about Flask but didn't dive deep into it, will check it out.
If you want to learn something very different you could look at Phoenix which uses the Elixr language.
I had been reading about Phoenix - Elixr but I don't think it's already worth it for a production environment, maybe as a side project would be very cool to learn, definitely worth checking out.
Express is pretty cool because you can structure it however you’d like. I agree with Ohffs that Adonis may be a good fit. You could also look into Sailsjs which is an MVC framework for Nodejs. Meteor may also be something to look into.