Technical debt (also known as design debt or code debt) is a neologistic metaphor referring to the eventual consequences of poor or evolving software architecture and software development within a codebase. [Source: Wikipedia]
Way too often than I like. The HTML markup (UI) is overlooked due to the perception:
“HTML is easy. There’s no need to plan or care about the HTML markup. We can rewrite/build the entire UI from scratch in no time.”
This is partly true. But something we often forget is; we’re now in web2.0. We don’t have static “hard-coded” web pages any more. Now-days we have UIs that interact extensively with back-end system(s) via AJAX.
The above is just the tip of the ice berg and most noticeably the most important too. But there are many more aspects we need to consider. Like for example:
To provide support for multiple web browsers AND web browser versions (not just talking about Internet Explorer here!).
Search Engine Optimisation (SEO)
Search Engine Optimisation/Support has become part of the standard package of any website build.
Usability and Accessibility
Along with SEO, usability and accessibility have joined the standard requirements of any website build.
Semantic web is what HTML5 is all about (if you’re a coder!). If you’re not using the new tags correctly. You midas well not use the new tags at all and just stick with the classic DIV and SPAN tags.
Flexibility to change
There’s not a single project that I’ve worked on that haven’t had its requirements / UI tweaked during the development phase.
Here’s a few tips to help you on the way:
- use CSS for styling (preferably an external CSS file) – avoid element attributes.
- don’t use html generators – especially Microsoft Word.
- less code is always better. (I remember the old days when I had double the amount of markup just to have rounded corners. Persuade your colleagues / managers / clients / stakeholders to adopt the Progressive enhancement approach.)
- manually validate your markup if your IDE doesn’t already do it for you. (W3C HTML4/XHTML1 – http://validator.w3.org/. HTML5 – http://html5.validator.nu/)