Why Is the Django Admin "Ugly"?
In UI design, developers perennially mistake the aesthetics of a design with how well the design functions, generally. Interfaces are a form of <i>communication,</i> and the most important pieces of it are things like visual hierarchy, gestalt, and implied lines to show relationships between elements. Just like any other sort of communication, lay people tend to either say all the right things in a way most people find confusing, or not say enough because the other way is too confusing and assume the problem is what&#x27;s being communicated rather than how it was communicated. Developers putting an interface together ad-hoc tend to do the former, blowing off complaints as people not trying hard enough or reading the docs or whatever. Other developers trying to gussy up the mess the first developer made assuming the problem is aesthetic tend to do the latter, and dismiss complaints by saying things like &#x27;design is subjective&#x27; entirely disregarding the possibility that they did a bad job.<p>An aesthetically pleasing interface is a side effect of someone fluent in that language working hard to figure out how to communicate information, action, cause and effect, etc to the end user. It&#x27;s not an easy language to learn, it&#x27;s important even in relatively trivial cases, and developers trying to wing it are about as good at it as designers cargo-cult assembling PHP to modify a WordPress deployment: It might get the job done in a very basic way, but nobody should convince themselves it&#x27;s a real solution. Just like a developer might look at their interface and say &quot;read the docs&quot; or &quot;design is subjective,&quot; that designer might see how slow their 5-deep for looped set of database queries is and say &quot;this server is too slow&quot; or &quot;why can&#x27;t those damned developers make WordPress faster?&quot;