It was definitely not intended to be ugly — the first version was designed by Wilson Miner, a great designer. In fact, an argument could be made that a key reason for Django's early success was that the admin was so nicely designed. Same goes for the framework's website in general; the standard open-source project website in that era was really plain and uninspiring.
To answer "Why is the Django admin ugly?", I think there are two separate issues:
* A gradual bolting on of admin features without enough thought given to visual consistency and elegance. Particularly, the left sidebar (in the screenshot of the original article) was a later addition and looks unpolished.
* A misunderstanding of the Django admin's goals. It's meant to be for "internal use" — that is, it's meant to be used by people who operate your website, not by people who visit your website. Ever since we open-sourced Django, many people (through either laziness or lack of understanding) misunderstood the point of the Django admin, thinking it's meant to be for end users. It is not and never was.