django vs node.js (sails, express, etc.)

t4keheart

Weaksauce
Joined
Sep 24, 2019
Messages
111
Hey guys,
Just wondering what everyone's popular opinion is for web app frameworks. I'm familiar with both python and javascript, and have used both for small in-house applications. I personally really like the simplicity and features of node especially when paired with sails.js... and how all heavy lifting that's normally done server side with php, can be moved client side, but everyone I talk to prefers django.
Admittedly I haven't used django that much, but are there any specific situations in which you would utilize one over the other? I'm more skilled at python than js, but I always tend to use js for the client side processing and ease of bringing up an http server to serve my app.
 
django if it's python required.. node or angular if not.
 
I’m in San Francisco, all the hipster kids love angular or react
Had coffee with another senior guy today and we laughed about people building out aws + gcp just to say they do it, not for any HA or specific feature reasons.
 
From personal experience, node.js is great for embedded linux especially when memory is often at a premium. Also, sometimes you just want to serve up a simple browser-based interface from your IoT device without resorting to some otherwise heavy-handed solutions (like actually writing a client).
 
I’m in San Francisco, all the hipster kids love angular or react
Had coffee with another senior guy today and we laughed about people building out aws + gcp just to say they do it, not for any HA or specific feature reasons.

I can't say I don't see their point of view, honestly. I'm not really a software developer... I'm a system admin with an interest in coding and do some for hobby and when I need to for work. Traditionally I would work with python when we needed some sort of app developed, and sort of just embed vbscript or something into a tkinter gui (more recently work with django)

But I recently had a project that required we move client files around on the server side (which I would have done with php) but ran into a bunch of issues with permissions and stuff... so I thought, why not move over to the client side? That worked perfectly, and for a first times, node was as easy as it could possibly have been for a first timer, and somebody not great with javascript to implement.
 
I've been an SA, SE, VMware architect, Xen architect, now AWS centric DevOps engineer.

The lines blur now, and every Dev or DBA I'm friends with longer than 10 years all tell me "they" want "them" to work like "me".
Problem is that it's easier for an Ops body to learn to write glue and primitive features than a Dev to triage a multi-region user outage due to misunderstanding of how identity clusters work.

The focus on scripting makes foam at the mouth bc I see/hear about a lot of dudes that don't understand the underlying operating system they're writing code for.
You can't glue together, reference, , etc etc etc what you don't have a clue about.
I'm in San Francisco, and a lot of kids are working that don't have a full on idea of what they're doing.
20 years later they're still in the City and all they've learned is to grab the cheapest/easiest thing that is buzzwordy and throw POCs against the wall.

Python is that right now, bc all the STEM kids see big $ in analysis jobs.
Python vs Matlab for a lot of students has been building into Django being a quickie tool people will grab when they're trying to use what little they know to do more than they should.

I would also argue x.js shouldn't be used for everything as well.

I can and do encapsualte permissions using a service acct, role, group, temp creds vended from where ever.
Yolo permissions are just annoying, and I particularly see it in Jenkins or cluster F CI/CD platforms.

I don't care what someone wants to write features in, but the reason *I* like Docker is not to get dragged into dependency or desktop support esque hour sucks where you are literally teaching someone OS concepts.
If the thing takes 30+ minutes too build then we will just take it off your hands and fix it.

I do really like functions as a service like Lambda, Azure Funtions, G Functions.......but I'm not trying to make a big CRUD app out of FaaS.
I use them for monitoring, bc open source/platform hosted/out of box products aren't watching my specific needs with my specific criteria in as easy and reproducible a manner.
I like K8s when dealing with x.js bc when you audit cpu cpre useage you'll find a lot of hipster code isn't utilizing 50%+ of the vm's allocated cpu and ram.
Scale out in this situation becomes a cost issue that can be solved with other tools.

I dabble in GCP, just because it feels like a lot of the applications I'm deploying are the same ol as 8 years ago.....so you find cheaper and easier ways to package and deploy them.

There is nothing worse than watching a month's budget getting eaten by scaling events time after time after time.
 
Last edited:
From personal experience, node.js is great for embedded linux especially when memory is often at a premium. Also, sometimes you just want to serve up a simple browser-based interface from your IoT device without resorting to some otherwise heavy-handed solutions (like actually writing a client).

Second that. My own personal nodejs apps are running just fine on a Raspberry Pi
 
third, since posting this I have done a lot of work in both python and node... I feel like python is a great general purpose language, with just about every capability you could ask for (especially with django, etc.) but in certain situations I have found that node is just so super convenient and just works... and performs faster than anything else at the same time... I guess due to google's v8 engine?
 
I could never get into Django. I primarily write c++, but do some asp.net (c#) and have written react front ends using node as well as some smaller back end testing frameworks. I tried Python and Django but didn't ever really care for it. Maybe just my background, so take it with a grain of salt, but I would rather write js than python, plus the npm (node package manager) makes things really simple to add/use packages.
 
Back
Top