Django vs. Node, React etc for full-stack? | SoloLearn: Learn to code for FREE!


Django vs. Node, React etc for full-stack?

Assumed that I have equal knowledge in Python and JavaScript, which one should I learn for full-stack website development: Django or any JavaScript frameworks (Node, React etc.)?

11/29/2019 4:35:34 AM

Prof. Dr. Zoltán Vass

5 Answers

New Answer


The first question that you should ask yourself is:What are my short/long term goals and then in what field may i get more opportunities and flexibility? As we are in the context of web development and not data science or AI, I'll definitely go for javascript, but why? In terms of modern web development stack, where UI layer is most of the times separated from API server layer, you can use both Node.js /express or Django Rest framework for the API, and for UI at the most of the time javascript is leading the market. So you'll work maybe with React, Vuejs, angular, next, etc.. And if to go for Django, you'll to use python for backend and javascript for the front-end, so 2 programming language which are very different. But if you invest into javascript, you'll gain is productivity by using the same Language at the 2 sides, same shared libraries that you access through NPM, can reause your javascript knowledge to do more that just web dev by doing mobile dev with javascript (react native), or electron for desk


Django is a Fullstack framework, so you can do everything with it, it uses the traditional web architecture where your browser triggers an http request for a web page, Django in the server side prepared the page and returns back to the client(browser) a static page(html, css and js), so for every request you should ask again for static assets.But if you use Django only as a REST interface with Django REST Framework, you use any javascript front-end library or mobile application front-end and access data through you Django API


It's been 7 or 8 years since I've built any web solution where the web server returned dynamic HTML in the response stream. Javascript SPA frameworks and libraries have really changed the landscape for full stack development. I typically commit to NodeJS or ASP.NET WebAPI for RESTful API services and ReactJS for the UI. If you are doing this professionally, my experience is ASP.NET WebAPI, Ruby on Rails, and NodeJS are the highest in demand. But that could be different in other job markets. I understand that PHP is still strong in many markets outside the USA. Despite the hype and popularity of Python among students, data scientists, and devops, I don't think the demand for Python is strong in software development.


Very sophisticated and smart answer!


But if I go for Django, should I really use javascript for frontend...? Or Django is enough?