How do you perfect your craft as a web developer or designer?

Monday, 15 February 2010

by Silumesii Maboshe

In secondary school, I used to love mathematics. One of my teachers advised that the only way to get good at it was to practice everyday. I did this with religious fervour and became quite good. Is there an equivalent for web design and development? How does one perfect this craft?

The Complexity

The trouble, I find, is that making a website isn’t just one thing. It is a right and left-brain undertaking. Throw in client interactions and you have a mix as beautiful as a flame lily or as deadly as a black mamba.

In designing a website as a freelancer, there are several things to consider and weigh out including audience, language, how much or how little information to display, where to display it, colour palette, mood, tone, body copy. Then there are technical factors like bandwidth, search engine accessibility and analytics (which doesn’t even sound like a real word). Not forgetting your bread-and-butter concerns like price, deadlines, payment options, payment plans.

Yes, it can be overwhelming.

Where to start

I’ll suggest three steps to get you from “here” to “there”:

  1. Start small
  2. Work on an area where you are weak
  3. Practice

Start small

I had a loathing for CSS, getting started. Rather than hack away at a large project, I’d break out my problem in to a mini-project focused specifically on the element I was having trouble with. I quickly learned that cascading is a powerful part of CSS but also a bit of a nuisance if you aren’t paying attention.

Work on an area where you are weak

Right now, Javascript is an area that I am weak in so I am working on a project in which I am having to write AJAX. Debugging is proving difficult but a bit of Googling lead me to Firebug for Firefox. A Godsend!


The Kariba Dam was not built in a day and it is unlikely you’ll have your website project completed in a day either. You can save yourself time in the future by practicing your skill now. Start a personal project or two even if you know you’ll throw it away.

I’d highly recommend reading other people’s books, blog posts and the like but there is no substitute (that I’ve found) for actually doing some flexing and working things out yourself. I have my math teacher to thank—practice is a powerful exercise.


My examples have focused on XHTML, CSS and Javascript but I find that the principles cross over. If setting a price is an issue for you, why not make that the focus of your efforts for a while. The same goes for the other aspects in the long list of elements required to make a website.

  1. Start small
  2. Work on an area where you are weak
  3. Practice

In a sense you are the ultimate project. A tweak here and a nudge there and after some time you’ll be a lethal website ninja!