Tags:

Web development considerations

Website development is a very interdisciplinary field. Most sites can get by with general consideration towards just two areas: design and organizing content. As sites grow, so do the opportunities for failure. Just to give an idea of the complexity that can be involved, here are a bunch of things of various levels of importance that have run through my mind while working with Carolyn on our current project. I stopped at about two pages, but this is nowhere near complete.

Accessibility
  • Are we using Flash in a way that would prevent people without Flash from accessing parts of the site?
  • How many of our users have the Flash player plug-in? What version?
  • Are we using JavaScript in a way that would prevent people without Flash from accessing parts of the site?
  • How many of our users surf with JavaScript on?
  • How are we going to handle ALT tags on images pulled from the database?
  • What’s the proper way to use ALT tags on other images?
  • Can I create a text-only version of the site in a reasonable amount of time without breaking the ‘normal’ site?
  • Do the behind the scenes admin tools need to have strong accessibility?
  • Does it affect our accessibility goals that students with certain disabilities are very likely to go to private schools?
  • Does it affect my accessibility goals that no one but me as ever thought of accessibility as a goal?
Content & Features & Information Architecture
  • What content are we putting on the site?
  • Are we going to duplicate content that’s already on department sites?
  • Are we deprecating department sites?
  • Are we aiming our content mostly towards district staff? Parents? Are we going to gear anything towards students? Should we spend much time worrying about community member who aren’t parents, students, employees, or volunteers?
  • Is anyone else going to be able to post content to our new project?
  • Are we going to allow comments on articles? What would that take technically? How long would it take each day to moderate them? Would there be a comments RSS feed?
  • What happens to the old databases? How much content do we move to the new databases?
  • What images do we need to accompany articles?
  • How long is it going to take to setup those images?
  • What database tables do we need?
  • What fields do each of those tables need?
  • Do I shoot for a specific normal form for the database?
  • Where do I balance database complexity against ease of use with Dreamweaver?
  • Which features do we try to have for the release and which wait for later?
  • How do we handle old pages? Is it worth contacting tech to try to get a custom 404 page setup that would give a link to new versions of old content? How many hits are we getting on old pages?
  • What resources do news media want to have? Do they want RSS feeds? Do they want articles about individual schools and teachers, or only major, major information? Which media outlets do we talk to answer these questions?
Design & Aesthetics
  • Background images
  • Page layout
  • Headline styles
  • Body text styles
  • Link styles
  • List styles
  • Quote styles?
  • Image styles
  • Menu / navigation styles
  • All of the above for each different type of page (around 3-10 page types)
  • All of the above should support flexible text length as well as possible
  • All of the above should be done with external CSS to help filesizes, etc
  • All of the above should be done with semantic HTML/XHTML and class/id names, as much as possible
Technical Concerns
  • What browsers do our visitors use now?
  • What browsers will our visitors be using when we go live?
  • What resolution do our visitors surf at now?
  • What resolution will our visitors be using when we go live?
  • What are the details of the new image rollout by the Tech Dept? When is it happening? What browsers will be included? What will the default resolution (and color-depth) be?
  • As web experts, should we try to influence what browser(s) are included in that image?
  • What percentage of our visitors are from HEBISD computers?
  • What connection speed do visitors from non-HEBISD computers have?
  • How many of our visitors are using mobile devices?
  • Can I create a mobile version of the site in a reasonable amount of time without breaking the ‘normal’ site?
  • What database are we going to use?
  • What server-side language are we going to use?
  • What HTML/XHTML version are we going to use?
  • What CSS level are we aiming for (or do we work towards browser support)?
  • What’s an acceptable range for filesize on HTML? Images?
  • Should JavaScript be external?
Usability
  • How much emphasis will there be on designing to common usability standards versus doing user testing after the fact to make improvements as necessary?
  • How much time would user testing take up? Can we find neutral users?
  • Does usability ever trump design?
  • How are we going to make sure that titles are usable?
  • How long should article teasers be?
  • What is our target for contrast ratio between text and background? This applies to headlines, body text, links, visited links, hover links, etc etc.
  • Make sure the search feature is usable and returns useful results
  • Does usability & web writing ever trump copy – can we rewrite for the web, adding emphasis on keywords, lists, subheadings, etc?
  • Does it affect my usability goals that I’m pretty much the only one pushing for usability?
  • Does our JavaScript / CSS / HTML / etc gracefully degrade?

David NielsenApr 8, 2008 1:33 PM

I want to add, also, that many of these one-line questions are actually massive topics.

For example, CSS is a language used to specify how a website should look. There are 4 main versions of CSS: Level 1, Level 2, CSS 2.1, and Level 3. Each of those has maybe a hundred pages of spec documentation that officially describe that version of the language. Two of those documents aren't actually finished, but are still in use anyways (it's like building a house at the same time that the foundation is being put in). Every browser has different levels of support for each of those versions -- there are parts of the spec that browsers like Firefox, Safari, and Opera support that Internet Explorer might not. Internet Explorer has also had major flaws in basic parts of the support that they claimed to have correct. So, to really start understanding the intricacies of CSS, you need to be slightly familiar with those 4 huge spec documents, which browsers claim to support which parts, which browsers have bugs in which parts, etc. You need to know what browsers the visitors to your site use so that you know which browsers and browser versions are important to support. At that point, you'll be OK with the technical details. From there, you'll want to read articles, books, and blog archives to see what you can actually accomplish with CSS -- many interesting features, like borders that can be images, are not yet part of CSS but can effectively be accomplished in roundabout ways. You'll also want to monitor blogs and columns to see what new ideas are being developed.

That's just CSS. Those same resources and issues exist for HTML and XHTML and RSS. JavaScript, Flash, ASP, and database tools have similar situations. There are similar specifications, blogs, books, and articles about usability and accessibility. Design and information architecture are each their own massive field of study.

If you think it looks easy, that's good, it means we're handling the questions in the post so that you don't have to think about them.