4 ms·
Django is a whole different beast though. It comes with the kitchen sink and its own cheeseshop. It was designed to cater for every single edge case, but in my
by chewxy 14y ago
Django is a whole different beast though. It comes with the kitchen sink and its own cheeseshop. It was designed to cater for every single edge case, but in my opinion, is the very definition of excessive complexity.
Most of the things aren't needed by most people, but it gets installed anyway.
EDIT: I am an idiot who clearly doesn't know much about Django and spake without prior research.
- ericflo 14y agoA) The kind of complexity you're referring to is different from what this blog post is talking about. (Specifically cyclomatic complexity.) B) Django doesn't have its own cheeseshop. Django developers use PyPI and pip just like everyone else. (Maybe you're thinking of Crate.io, which is a PyPI mirror that happens to use Django in its implementation.)
- chewxy 14y agoOh. Thanks for setting me straight on the cheeseshop (I actually thinking that since it has its own package management system, it would have its own cheeseshop) Sorry. As for complexity, I still think it's excessive. It's good to know the internals of a module/package/whatever, and django is really really complex, of which cyclomatic complexity quantifies I believe. I mean, if you have code that branches off everywhere, it'd be hard to follow the logic when inspecting the internals.
- jacobian 14y agoSo Django doesn't have its own package management system, either. I'm curious: where did you read/see that?
- shabble 14y agoMaybe the 'django [reusable] app' terminology? One of the first few pages in the tutorial includes: "Django apps are "pluggable": You can use an app in multiple projects, and you can distribute apps, because they don't have to be tied to a given Django installation." and I guess it might be possible to mistake 'manage.py startapp ...' as some sort of internal packaging thing if you don't look too deeply.
- chewxy 14y agoYah. Obviously I was mistaken. But your points exactly
- chewxy 14y agoHoly ... jacobian replied me. To answer your question: I am an idiot and I didn't know much about Django. I did once find djangopackages or something like that and simply jumped to the conclusion. Big and Unwieldly is the brand perception I had.
- andybak 14y agoThe overwhelming majority of functionality in Django is useful for day to day web development. An argument could be made that a few bits of contrib and stuff like databrowse should be culled but they are completely separate from the rest of the framework and don't add to the conceptual complexity in any meaningful way. And catering to 'every single edge case' actually seems to contradict the philosophy I've observed on the django-developers list.