A few months ago I tweeted about how in my opinion a lot of Drupal sites out there are horribly laid out and ugly. This is a harsh statement, but it got me thinking about why this happens. There are Drupal groups and even conferences dedicated to improving the quality of Designs in Drupal but yet not a lot has changed.
Left brain vs. Right brain
So, why are Drupal sites ugly? On a basic level Drupal is extremely complicated to comprehend, designed by and for left brain people. We all now take the concept of nodes, blocks and regions for granted but for a new user, especially a designer this is really hard to comprehend. In addition to this Drupal's admin area is really complex and its not clear to newbies/designers how to do simple things like create menus or change your slogan. Things have gotten better with Drupal 7 in a lot of ways but over all the admin is still difficult to understand. I hate to use the 'W' word here but Wordpress's admin area makes a lot more sense for managing content.
Complexity of theming
The complexity of theming in Drupal is probably one of the main reasons a lot of Drupal sites are ugly. As a newbie you're basically at the mercy of whatever theme you pick to frankenstein and as we all know not every theme is right for every project. Even if you find the right theme, configuring it is equally hard for a beginner. Don't get me started about purchasing themes! Unless you buy from a reputable Drupal theme source, they're usually complete garbage, filled with bad practices in Drupal standards.
Say you find a great theme and configure it, you'll still most likely need to edit it. Template.php? What the hell is that and why is there all this code? Page.tpl.php and style.css are just about the only things that makes sense to a designer. As any experienced themer knows theres only so far you can get going this route. To get into the really good stuff and major customization you have to know PHP. A lot of designers are not comfortable with this, even at a basic level. Also a lot of the time changing something simple is overly complicated.
Although I'm not a fan of the wordpress theming system its pretty easy for most designers to understand, especially with the theme editor right there in the cms. Its full of terms that designers understand: index, header, footer, sidebar etc. In Drupal you have .info files, blocks, nodes, theme functions and regions, this would make my head spin if I didn't fully grasp it already. I don't think Drupal's theme system should change because I love how it works but I think things should be easier for a designer to grasp. How that can be achieved, I have no idea!!
Drupal community & processes
Joining the Drupal community as a newbie is extremely intimidating. I didn't understand what was going on with issue queues, documentation and the api. To me it was (and still is) a confusing mess. You have to really WANT to get involved to make sense of it all. Module/theme maintainers are not always so friendly and willing to repeat the basics over and over. Which is understandable when considering that contributors are dedicating their personal time to the community. A lot of people just take that for granted and complain without any appreciation.
Another aspect of Drupal that I think turns designers away is the process of contributing to Drupal. The CVS application process is stressful, when I applied some people were rude for no reason. Then once you get through that you have to try and wrap your head around CVS itself! (and now GIT!!) I STILL don't get it completely and I've contributed themes to D.O. Additionally maintaining a theme to be compatible with every module configuration is a complete chore.
Drupal is too developer-centric to catch on with designers.
Designers and themers are not created equal...
...there is a huge difference between the two. I believe a lot of companies are lacking real designers and what ends up happening is that themers are being giving the title 'designer' when they don't posses the needed skill sets. I can only guess this is for three possible reasons:
1 - Company owners assume that they don't need designers.
2 - They don't know that a themer isn't necessarily a designer.
3 - They are too cheap to hire both so they cut corners.
Any of these cases is really a shame and these companies are only hurting themselves. Even if someone is a good designer and good themer, you need to constantly nurture your skills or one will suffer.
On a similar note I think a lot of companies just have developers do the front end work because they are too cheap to hire a themer or designer. Infact I would bet that most of the ugly Drupal sites I see are themed by a developer. I'm not trying to insult developers here, most are aware that they lack design skills. Unfortunately, this is common even in shops that don't use Drupal.
Drupal done right
There are definitely a lot of really great looking Drupal sites out there, shops that have proper designers and themers that know enough to execute even the most complicated designs. You can get a great looking Drupal site if you go down the right path and are willing to pay the cost of that path.
For designers looking to learn Drupal, my only advice is to google and try to decipher documentation. Most of what I've learned is out of necessity, searching for days to figure out one thing and also trial and error. Drupal is insanely frustrating to learn, so any training you can go to is very helpful. If you're new to Drupal reading this and theres something you've been dying to figure out but cannot find searching api's and google, comment here and I'll post a tutorial.