
Django UI in 2005 vs. Django UI in 2014 - Uninen
http://nerdy.dj.uninen.net/2014/09/django-2005-2014/
======
bradleyg_
I still really like main website, the admin site however could do with a total
overhaul in my opinion.

I normally use [http://djangosuit.com](http://djangosuit.com) or
[http://grappelliproject.com](http://grappelliproject.com) but would be nice
to have something good by default.

~~~
jerf
Those strike me more as reskinnings than total overhauls.

The thing about the Django admin interface is that it is very, very generic.
This is the source of its power, but also the source of the problem when it
comes to styling it. There's nothing to get any design traction on, because
all changes have to simultaneously work on just about everything. It's a
really potent example of how "generic" and "featureful" are often in direct
conflict with each other.

That is to say, not that the Django admin app doesn't have features. It does,
it's quite good and useful and a great generic default. But as you start
trying to add _more_ , the genericness fights you pretty hard. Django's admin
interface hasn't changed because it pretty much hit the local Pareto optima
that many years ago.

(And over the years, I'm developing an instinctive twitch whenever my
coworkers describe something as "generic". The Django interface is one of the
good exceptions, but in general I'm starting to automatically substitute
"generic" with "doesn't do anything". It works better than it should.)

~~~
stuaxo
I don't know about generic, it's not that extensible, it can be a pain when
you want to write widgets outside of what it does.

The same is true about other parts of Django. It's still quick to get things
running, and there is a great ecosystem.

[EDIT] Grapelli is a great example of how not-extensible the admin is - to do
something that should just be a reskin, they have to copy large parts of the
admin code and then adapt it.

The admin should be built in a way so that something like grapelli is just a
some new CSS. [/EDIT]

~~~
andybak
Grapelli chose not to stick to pure CSS. It's not a trade-off I think was
worth it as they have no cut themselves off from much of the 3rd party admin
extension ecosystem - unless those apps actively do a 'Grapelli version'

Pure CSS skins are a bit more work and you occasionally have to choose between
overriding more template code than you'd like - or doing a sneak bit of jQuery
DOM manipulation - but it's a better bet long term.

A really simple fix for the core Django team would be to add a heap of {%
block %} tags into admin templates so that we can selectively inherit and
override.

------
stuaxo
The django admin is not that nice when you look inside .. hardcoded html
strings, it doesn't use templating etc.

The same sort of thing applies to forms and other pieces.

Understanding how models work on the inside is tricky - there are a lot of
moving pieces.

I've built many sites with Django, a lot of the time you end up having to
delve into the internals, it could definitely do with simplification.

~~~
andybak
Tom Christie's stretch goals for the Django Rest Framework Kickstarter are
worth a peek. :-)

------
frankwiles
Having had the pleasure of working with him at the company that originally
created Django, I can confirm Wilson is the man.

------
rwhitman
I just got back into Django heavily after a 4 year hiatus -

It's a little frustrating that even though the platform has evolved, the
documentation has gotten much much worse.. back in 2008 the docs were one of
the best things about Django but today they are just a total headache.

The documentation is impossible to search using the built in search
functionality, because it only returns a fraction of the right results. There
are tons of omissions - key classes, methods etc that are only mentioned
casually in bits and pieces. Lots of pages of documentation you can't even
find without Google which half the time indexes docs for pages that are 4
versions outdated...

Also frustrating how much the admin is still frozen in 2008, the options out
there for responsive themes are really clumsy at best.

I was trying to introduce junior devs to Django this month and all they see is
an outdated interface and really really confusing documentation, it's a real
turnoff

~~~
wldcordeiro
That's odd, I've been using Django for 6 years now and to me it seems like the
documentation has improved.

~~~
rwhitman
If I had been using it every day since 2008 or so I probably wouldn't have
seen the issue. Coming back to djangoproject.com after 4 years, it now feels
like kind of a rats nest. Really wish they'd offload the documentation to
ReadTheDocs.org, I love the information architecture of that site

~~~
wldcordeiro
They kind of do, if you look at their offline documentation download links
they say that they're powered by Read The Docs.

------
pix64
[http://web.archive.org/web/20050717013110/http://www.djangop...](http://web.archive.org/web/20050717013110/http://www.djangoproject.com/)

July 17, 2005. Not blurry.

------
ryangallen
Just updating the admin header styling would be sufficient. That yellow h1 a
has got to go.
[https://github.com/django/django/blob/master/django/contrib/...](https://github.com/django/django/blob/master/django/contrib/admin/static/admin/css/base.css#L808)

------
wldcordeiro
I've been suggesting for a while that what Django's admin needs is a
completely barebones solution.

Something like

`django-admin startproject mysite --admin-theme=bare`

that gives you an admin with absolutely no JS/CSS and completely modular
templates to simplify the making of custom admin backends.

I think I might make this my personal pet project to contribute to Django.

~~~
andybak
I can't see the point of zeroing the js as I'd end up needing to reimplement
most of it.

CSS - however - yes! Our admin skin zeros the existing CSS just by making sure
we add an empty CSS file for each of the django admin css files - and that
they come afterwards in INSTALLED_APPS and therefore take precedence.

We then add Bootstrap and our own styles. Took less than a day to get it all
working nicely and it looks nothing like Django Admin at first glance.

~~~
wldcordeiro
For me it's because I may want to implement it differently in different
projects.

------
cdnsteve
I feel that the point the author is making is that this is hurting Django's
growth. I'm afraid I agree with that notion. Personally I've looked at Django
compared to other frameworks and ,for me at least, spending time skinning the
default 2005 theme is not well spent.

It also makes me think Django isn't keeping current. This is a very dangerous
sentiment to have in a world of ever competing web frameworks. I feel that
Djano is not marketing itself well.

My outsiders perspective, without having ever used Django, is the framework is
in decline. That's my outside perspective and I hope it to be wrong. I'd like
to reconsider using Django but I'm refraining myself from doing that until I
can see change in direction. Maybe it's just not the right framework for me.

~~~
squeaky-clean
>I don’t want to comment this in any other way but to notice that it’s quite
amazing that Djangoproject.com still looks so good and I actually like using
it every single day — it works really well. Way better than most newer
homepages of other open source projects.

Not really sure how the author is making the point that it's dated. Did you
read the article? It's probably less text than your comment.

------
bakareika
That's what I love in Django, they tend to keep intact things that are
functioning well. A rare quality.

I wish this was the case with many commercial programs, e.g. Skype.

