-
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 ]
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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?
June 24th, 2008 at 8:28 am
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.
June 24th, 2008 at 9:22 am
@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.
June 24th, 2008 at 12:04 pm
[…] 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. […]
June 24th, 2008 at 8:03 pm
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.
June 25th, 2008 at 9:19 am
[…] title says it all…read more | digg […]
July 3rd, 2008 at 10:59 am
[…] 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." […]
July 5th, 2008 at 5:59 pm
You had me sold on “web page jambalaya!” haha…
July 7th, 2008 at 1:39 pm
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 🙂
July 9th, 2008 at 2:40 pm
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!
July 10th, 2008 at 8:33 pm
Great Information!
I agree with David though.
July 16th, 2008 at 12:38 pm
[…] 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 […]
August 1st, 2008 at 10:49 am
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.
August 5th, 2008 at 1:37 pm
[…] 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 […]
August 9th, 2008 at 1:29 am
[…] » 10 Things Any Web Developer Worth Their Spit Should Know […]
September 1st, 2008 at 10:30 am
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…
September 1st, 2008 at 5:58 pm
Rex, the web page ‘used’ to validate, but when you install plugins, some times that causes a page to no longer validate. Oh well…