Hacker News new | ask | show | jobs
by roddds 3355 days ago
Background: I work at a Fintech startup where the backend is built with Django. I have about 4 years of experience with it, and have worked on Django projects from several different industries, from education to ecommerce. I absolutely recommend that you go with Django. Your project sounds like will deal with many different types of problems, and using Django and Python will allow you to take advantage of the huge ecosystem of third-party libraries that will save you a ton of time. CMS systems like Drupal are great if your main activity is publishing content, but anything past that will leave you fighting with its internals while you should be writing business logic.
1 comments

Interesting. I am not arguing, just sharing: people say that Drupal now is a framework and you an actually write custom stuff, not just stack modules. Can that be, what do you think?
Yes - that is what is being said about Drupal 8 but I see it more of a shoehorning a CMS into a framework. Custom modules can be written - but doing the same in Django is much easier.

One approach that you can also look at is build the platform as an API in Django and build the wrappers / customizations for the sites in Drupal.

Actually it's always been a framework, it's just there's lots of shoehorning of CMS functionality. And it's less of shoehorning, it's just where the $s are flowing, I work with a team who do a lot of native CRM & BPM with Drupal it's just they haven't got $m so you haven't heard of them.

Drupal's fundamentally different than Django as not only are you able to code less due to the sharing of modules but you're also collaborating with thousands of others.

So with Django where you're coding coding coding, i.e. creating technical debt, the idea with Drupal is you only need to code what business logic hasn't already been built over the last 16 years. You're leveraging code and community, so you can focus on what you're good at and collaborate with thousands of others to fill the gaps.