It has been ~15 years that I've been into web design where the first 5 was totally amateur, 7 years were for creating client projects and the last 3 is focused on personal ones.
When looking back, I'm thankful to many stuff that helped me improve my skills on web design/development. And, there are some important ones that makes me say “I wish I had..”.
This article is mostly focused on the “I wish” part hoping it may help anyone who is new to web design.

They are not the absolute truths, in fact, they may be wrong. They are simply my thoughts based on what I experienced. You decide if they'll fit you or not.
So, starting now. If I had started web design today, I would (share yours in the comments):
Start With PHP
When I started web development, the stability of open source was still a question mark and developers were discussing whether ASP or PHP was more powerful.
As a user of Windows, having Ms Access already installed in my PC and no idea what MySQL was, I started with ASP. Bang!.. wrong move.
ASP is not developed further after 2000 however PHP is improved so much and so is its community, tutorials, etc. Today, it is clearly the most popular scripting language.
There are also many other great languages like Python, Perl, ASP.NET, Ruby, etc. However, learning the most popular one at first is the easiest, most functional and you can better decide which other language you want to learn after that.
Learn JavaScript Very Well
JavaScript was always popular but never as this much. And every new day makes it more popular and required.
It was mostly used for form validations, displaying alerts or pop-ups and knowing few things about it was enough.
Today, it is hard to think of a non-Ajaxed web application, we can pull tweets, Flickr images, draw images, implement animations and much more.
Also, it is the best cure for the biggest headache: browser incompatibilities. And, the HTML5 world will push it more.
Use Frameworks
To me, words like CodeIgniter, Zend, MooTools or jQuery sounded like totally new languages and didn't know why to use them when I already can do anything I want.
After spending few hours to understand their basics and experiencing them, that was the moment when I realized I was coding so slow and not.. that organized.
Why not use something that enables to manipulate images or upload files with ready-to-go functions and validate forms or use Ajax easily and better?
There are awesome frameworks for every language, just spend some time on reading/understanding them, choose one and master it.
Store Snippets
Within time, you start re-coding stuff like a contact form, an e-mail validation pattern ,etc.
I started storing such snippets ~3 years ago (better late than ever) and it now takes me to build a membership module (new user, e-mail validation, forgot password & login) no more than 15 minutes.
Also, in every project, take a little time to look skeptically on the snippets used that will help you to figure out any possible bugs and make the code better (if needed).
Store (or Bookmark) Resources
While building something, I used to say “I had seen something nice that would fit here but can't remember the URL”. Pretty sure, you live that too.
Whether it is an icon set, an application or a tutorial, store or bookmark them with a good categorization. That saves too much time.
Learn Tricks Of Image Editing
If you design a website in an image editing application (like Photoshop) and it gets too much time of yours to make it look good, then you may be missing the tricks as they are the one that makes the difference.
Not everyone is a designer, that's ok (I'm not as well) but learning tricks like using filters, gradients, patterns or effects can convert a standard object into something impressive.
Besides the basics, make sure you learn them (following tutorials is a great way).
Never Build A CMS
Many developers don't like ready-to-use codes but prefer to build everything from scratch. That has a reason: “it is usually harder to learn another system compared to building your own”.
By thinking the same, I have built various CMSs for years, small to complicated ones or project-specific ones to smarter ones that would fit many projects.
When I look back, I see that none of them were better than WordPress, Drupal,
Recent Comments