June 24th, 2008 - by Golgotha

  1. DOCTYPE Declaration

    DOCTYPE (short for “document type declaration”) informs the browser of which HTML or XHTML standards you would like your code to be checked against. You’re essentially declaring to the browser that these are the rules that you have used to create this page and in return you are expecting that it will render accordingly. Failure to specify a DOCTYPE can lead to unexpected rendering — a developers worst nightmare.

    [ further reading ]

  2. Navigation

    A website’s navigation plays a key role in the success or failure of a site. It allows humans and search engines alike to easily locate the desired information. Or it doesn’t. Navigations made up of Flash or JavaScript/DHTML may seem attractive at first, but ultimately can cripple a website by not allowing search engines to crawl and index the entire site. In addition, viewers that choose not to partake in these technologies can be left with no means to move within the site.

    Most experienced webmasters have left such navigations back in the 90′s with all those AOL discs.

  3. CSS is Not an Option

    In the past webmasters could choose to ignore CSS if they so desired. Those days are gone. CSS is no longer an option, it’s part of the trifecta (see The Separation of Concerns for the trifecta) that makes up a quality website. A good webmaster will use CSS exclusively to define the look and layout of a website.

  4. The Separation of Concerns

    In days gone by web developers would meld HTML, CSS, and JavaScript code all into a single page; like a web page jambalaya. Inexperienced web developers may still do this, but the experienced ones took notice that the make up of any given page is defined by three elements: the content of the page, the presentation of that content and the behavior of that content.

    Realizing this, competent developers have made an effort to keep these three layers separate from one another. Kevin Yank does a fine job explaining our three layers in his article: Simply JavaScript: The Three Layers of the Web

    When building a site, we work through these layers from the bottom up:

    1. We start by producing the content in HTML format. This is the base layer, which any visitor using any kind of browser should be able to view.

    2. With that done, we can focus on making the site look better, by adding a layer of presentation information using CSS. The site will now look good to users able to display CSS styles.

    3. Lastly, we can use JavaScript to introduce an added layer of interactivity and dynamic behavior, which will make the site easier to use in browsers equipped with JavaScript.

  5. Cross-Browser Support

    Any developer that has been building websites for awhile has the battle scars that you get when you try and make your website work on all browsers. Each browser has it’s own idiosyncrasies (some more than others) and designing and redesigning your site to function under each can be a battle; but it’s a battle that must be fought and won.

    [ for more help with cross-browser CSS read this ]

  6. It’s Not About You

    A common trait of the rookie developer is they think the design of a website is about them. That through the design of the site they somehow get the chance to express themselves. The professional realizes that it would be a huge mistake to design the site in such a way that pleases them only to neglect the site’s visitors.

    As a developer you must heed the words of Spock in The Wrath of Khan that the good of the many outweighs the good of the few, or the one. You are the one, the website’s viewers are the many; make the website for them, not you.

  7. Standards Are There For A Reason

    Let established web standards be your true north when you’re deciding which way to go. Users, when they visit a website, expect a standard convention. For example, the main navigation we expect to be along the top or left hand side of the page, a search box above the fold and vertical scrolling. These are a few of the design traits we have come to expect, been conditioned to expect in Pavlovian fashion. Don’t fight this, don’t make us think, remember these have become the standards because they work, not because they don’t work.

  8. Validation

    Validation is not just a niceness, it’s a necessity. Paul O’Brien has done an excellent job explaining the significance of validation in his article Why Validate.

  9. Keep It Simple

    The novice developer can often feel compelled to flex their design muscles in an attempt to prove themselves. Far too often this can be reflected in bloated pages that are not easy to read, navigate or load. It is a great challenge to design a site that is visually appealing and yet serves to enhance the readability, not take away from it. Sites that cannot be easily scanned or navigated that cause a slow down in the browsing process run the risk of losing audience. The experienced developer has come to learn this, often the hard way. The novice will learn this, in time.

  10. Nobody’s Reading This

    Perhaps the biggest giveaway that a website was done by a rookie developer is the verbose content. The novice developer will often try and turn the company’s preexisting marketing material into the website’s context without efficiently editing it for the web. Good offline marketing doesn’t always translate to good online marketing where users are impatient and looking for instant gratification.

    In a study done by Penn State University they concluded that web users are picky and impatient; one in five searchers spend 60 seconds or less on a document.

    “People make instantaneous judgments about whether to stay on a site, and if a site doesn’t give the right impression, users will bypass it,” said Dr. Jim Jansen, assistant professor in Penn State’s information sciences and technology (IST). “A page has to be well-designed, easy to load and relevant to a searcher’s needs.”

    Otherwise, by the time three minutes have elapsed, 40 percent of searchers will have moved on. While some may have found what they wanted, others may simply have given up and moved to a different site, said the faculty member in Penn State’s School of Information Sciences and Technology (IST).

    [ more here ]

Those are our ten things any web developer worth their spit should know. What do you think? Did we leave anything off the list that you think we should have included?

16 Responses to “10 Things Any Web Developer Worth Their Spit Should Know”

1 Will

Considering that this is meant for the ‘new Internet’ #4 isn’t really adapted to newer dynamics. (PHP, e.g.)

Other than that, nice article.

2 Golgotha

@Will – The Separation of Concerns still holds true today, more so than ever. PHP and .NET or other server-side languages don’t change that; but rather enhance the need for separation.

[...] This post over at Search-This is one that I can file under the category “Posts I wish I had written”. It offers 10 great points that every serious web developer should know. This is probably a good list of things a client could ask of their next web developer as well. [...]

4 John

The separation of concerns deals with client-side code, that which the user directly interacts with; not server-side code like ASP, PHP etc which can be used to output the client-side code.

[...] title says it all…read more | digg [...]

6 Flash Menu/HTML/CSS Body - DesignersTalk

[...] 10 Things Any Web Developer Worth Their Spit Should Know "Navigation A website’s navigation plays a key role in the success or failure of a site. It allows humans and search engines alike to easily locate the desired information. Or it doesn’t. Navigations made up of Flash or JavaScript/DHTML may seem attractive at first, but ultimately can cripple a website by not allowing search engines to crawl and index the entire site. In addition, viewers that choose not to partake in these technologies can be left with no means to move within the site. Most experienced webmasters have left such navigations back in the 90’s with all those AOL discs." [...]

7 Link Building Bible

You had me sold on “web page jambalaya!” haha…

8 Jeff Davis

Some of these things are related to development, but these are more design concerns than development concerns.

Also, I like jambalaya, it’s quite tasty :)

9 david

Great list for people who use cookie cutter applications and content management. Hey look, I can make a blog with a cool repeating background! And look at my cool web 2.0 logo!

10 Chris

Great Information!
I agree with David though.

[...] just read an article over at search-this.com about the 10 things every developer should know. It was quite refreshing as I agree with them 110%. If you don’t already know, or do these 10 [...]

12 Joe

A rookie designer/developer can make mistakes but to allow the business owner full control over the entire design process is also a mistake. A person with no experience in web design/development will have you placing navigation, color schemes and font styles that are not appropriate for the web. Doing so will cause your site to show up on the “Worst of the Web!” list.

13 Progamming Langugaes and My Plan « Short Stories

[...] in Uncategorized 10 Programming Languages You Should Learn Right Now10 Things Any Web Developer Worth Their Spit Should KnowTop 5 programming languages you should know in [...]

[...] » 10 Things Any Web Developer Worth Their Spit Should Know [...]

15 Rex Mundi

If you gonna tell us what we should know, then at least get you HTML validated. This should be an important rule for any Web Developer Worth Their Spit Should Know…

16 Golgotha

Rex, the web page ‘used’ to validate, but when you install plugins, some times that causes a page to no longer validate. Oh well…

mulberry sale spyder womens jacket cheap new balance 574 mulberry outlet cheap new balance 574 arcteryx outlet mulberry sale spyder womens jacket mulberry sale spyder womens jacket mulberry outlet mulberry outlet new balance 574

Popular Articles

Top 10 Commentators


Subscribe to this feed! Subscribe by Email!

Random Bits Podcast

You need to download the Flash player from Adobe

Blogs Worth Reading


    Warning: fopen(./wp-content/themes/big-blue/my_blogroll.php): failed to open stream: Permission denied in /home/mangeletti/search-this.com/wp-content/themes/big-blue/get_blogroll.php on line 5

    Warning: fread() expects parameter 1 to be resource, boolean given in /home/mangeletti/search-this.com/wp-content/themes/big-blue/get_blogroll.php on line 6

    Warning: fclose() expects parameter 1 to be resource, boolean given in /home/mangeletti/search-this.com/wp-content/themes/big-blue/get_blogroll.php on line 7
  • Smashing Magazine