Is this some kind of Murphy's law? Maybe if I want to hire a very good programming ninja I should check out his website as in "Show my your website and I will tell how good you are"
EDIT: Go stackoverflow top users tab and you will see
Software Engineering Stack Exchange is a question and answer site for professionals, academics, and students working within the systems development life cycle. It only takes a minute to sign up.Sign up to join this community
Because design is a specialization, just like programming: not everyone can do it. It takes years of training and experience to know how to recognize and implement good design.
Most people are not true polymaths, and either do not have the time, inclination, or ability to master two specializations.
Beyond that, most people don't have the resources to hire a professional designer to do their website. So, add that to the general programmer inclination to write one's own version of a website instead of using off-the-shelf tools, and you have a recipe for a lot of programmers creating websites that don't really look all that great.
This is a very simple answer:
The car your mechanic drives is often a beat up clunking 'restoration work in progress'.
Your electrician likely has wires coming out of their ceiling in more than one place.
Your plumber might have kludges that belong in a museum.
I'm not just a programmer, I'm also a pretty good photographer. I rarely shoot a roll of 'family' film, I just don't have time (yes, some of us still use that stuff called 'film')
We do this every day, many of us six days a week. The last thing we want to do is work on something as trivial as a personal web site when there are more interesting things to work on in our 'spare time' :)
Sure, the site may be ugly, but it is easy to maintain and works in any browser. Additionally, I think visitors to my site are more interested in the information that I make available, rather than pretty styles.
Think about StackOverflow .. you search, you find a promising link and you find what you needed to solve you problem. Were you impressed with the style? Will you remember it a few months from now? Probably not, but you will likely remember the knowledge that you gained.
A good programmer != a good web designer. And there is absolutely nothing wrong with that. Putting pretty CSS on a site would also not be in any way indicative of a programmer's ability to write the PHP code (for example) that powers the site.
Not to mention that beauty is subjective and what looks horrible to you may look pretty good to the site's author. Unless they're applying for a web design gig, I wouldn't sweat it. Not having a "pretty" website does not make a programmer inferior or uncreative.
A well designed site consists of both good form and function. I think the OP talks about the form aspect here. From a function POV, I find most programmers' sites are quite well designed: I get the information I need quickly and clearly and the text is easy to read.
As for the form aspect, for obvious reason most programmers aren't trained designers. There's nothing wrong with that. However, you don't have to be a professional designer to create a decent simple site, as long as you are aware of basic design principals such as typography, layout, color theory etc and some common sense when it comes to usability your site will be quite polished. Having Photoshop knowledge has nothing to do with all this. You can have a perfectly elegant site without using a single piece of graphic.
I always tell my programmer friends to read some good design blogs(the ones that teach design fundamentals, not those who create list posts of the hottest trends). For those who are interested, here's a list design blogs I recommend: (reposted from Scott Hanselman's podcast)
Here are a few items
Just be thankful there's more than just a command-prompt.
This is an example of counter signaling: "showing off by not showing off, or by playing humble." Note that some elite programmers have exemplary websites, which falls under plain signaling.
If you spent too much time making a custom logo and picking nice colors, it might show that you care too much about what others think. Elite programmers already know they are good, and don't feel they have anything in particular that needs to be proved.
Footnote: Some elite programmers had some of the very first websites ever, and a lot has changed since then. To see what I mean, see Warner Bros's website for the movie Space Jam, which has been unchanged since 1996. Bad sites now could've been considered "clean" a decade ago.
I think it has has to with a utilitarian mind set. Think about it? What would a programmer consider flashy, a nice web site with pretty pictures, flash and an average load time of 30-60secs or a web site that is simple fast, contains everything the programmer thinks is useful and is really easy to maintain. Hell, some of use probably consider the command line more flashy than a neat pretty GUI. Ugly is in the mind of the user!
The cobblers children have no shoes. If the site is beautiful it may be that the programmer, being busy enough with his paid projects, has used an existing theme or template. Also, it really depends on what language the programmer prefers - perhaps they are not strong with HTML and CSS or perhaps they are busy learning other languages rather than doing something that can be easily achieved by using existing free templates.
There was a site I visited that compared a website built by someone with a programming background and a site built by a graphic designer/artist. You could clearly see the artist was more pleasing to look at.
Obviously, it is because the artist understands things like what typography is appropriate for this site, the color scheme matches, and layout of the site is important too. Many programmers were never taught those kinds of things.
Hard to say why. I'm sure you could come up with a different reason for each example. That said, aesthetics are very important in programming, just as they are with math. It's not enough to solve something--you have to do it with elegance. At least that's what I feel the difference between a good programmer and a great one is.
Elegance, simplicity, and other soft concepts are difficult to perform but easy to recognise when you see it. Perhaps education has emphasized too much science in computer science and not enough of the softer arts.
As for me, I used the default style that came with my blog software because I just haven't had the time to customize it. Nor do I seem to have the time to blog much anymore so it's even lower on my priority list. That doesn't mean I don't put the proper care and attention into the work I do for pay. It's just a matter of putting the most work where you get the most benefit.
It's a mindset based on a false presumption. Most Web Programmers presume that they are not any good at design from day one. Designers acquire their skills by watching and doing - not in a classroom.
Many people are multi-faceted but never reach out of their comfort zone. I personally do both because I realize that if you want something done right you have to do it yourself.
I'm a Web Developer working on the new design of my blog: http://twitpic.com/3ihbgt
I think that it's not a matter of specialization, or the amount of spare time or money programmers have.
What you say is not actually true. Most programmers have beautiful websites. You're just looking at the wrong place. Take a look at sources. If you want to assess beauty of something a programmer created, check the source code! Sources is what a programmer creates, not the appearance.
Well, because I have considerably more interesting projects going on than dolling up my web site. Don't get me wrong. I would like to have a spifftastic website, and probably will go on a rampage of HTML5 at some point and rework my sites. But when it comes to "work on really interesting program" vs. "make website look decent", I tend to pick #1.
And for sheer amusement, check the design on http://www.berkshirehathaway.com/.
This is exactly why I use http://themeforest.net/ I am a developer who dabbles in design. I can make things look great, but I need a designer to give me an over all look and feel.
The last time I did a design myself, it took me 2 weeks and looked okay. Then we hired someone and in 2 days he had a design that blew mine out of the water. But, it was his specialty. Code is my specialty.
I think programmers get saddled with design much of the time either financial reasons. But I'd rather have my employer spend $30 and buy a template rather than have me spend 2 weeks worth of time and pay creating something that is mediocre at best.
There's an old saying: Good programmers write good code. Great programmers copy good programmers' code. I think this applies to acquiring design templates online (legally of course).
preference is given to basic hand written html website that talks mainly about publications and research projects instead of fancy flash art and that gaudy stuff.
Programming is a way passing through the logic. When ever a programmer programs, he think of an item to complete efficient way and how easily he can achive it.
While design require Art to attract people. And if you have logic you cannot master art which all the people like.
So every time a programmer creates a design, he only thinks of what items are required and where to put them on page. They never think how to better represent it with help of design.
Programmers care about functionality, and are perfectly happy to not have gradients and curves when something simpler works just as well.
What does code look like? Probably "ugly" by the standards of the OP.
There's a reason that Piet paintings count as art, yet the Piet programming language is something nobody uses for real programs.