We have outsourced the html and css design to an external company. We want to make sure the quality of code is good. What benchmarks can we set to achieve this.
Use lint tools:
The source for css lint is also available at github and according to their docs, html lint should be available soon. The advantages of using the source are:
- You can work offline
- You can define your own lint rules
- You can have your outsourcers integrate your rules into their pipeline to ensure they catch any obvious errors soon
Have a coding standard for both CSS and HTML and ensure that they're given to your outsourcers. Ensure that deviations from your standard are followed up on and the work rejected. Make sure that you follow this rigidly. As time goes on, one would hope that you get less errors, but the more you allow (especially early on), the more frequent (and worse) they can become.
Make sure you specify in the contract what you will validate.
- Browser support. Consider requiring that the code work in all the browsers that you require (not just Firefox or Chrome). This will go a long way to getting you something you can actually use. By far the most common problem is receiving code that works in one browser, and then when you try to actually deploy it, discover it doesn't work in any other browsers, and fixing it is very expensive.
- Validate. You can require your service provider to provide validated code using various validation services. Google W3C HTML validator, and work out what version of HTML you will support. There are similar CSS validators. Neither guarantee quality-- but perhaps they will discourage some service providers from applying or doing a really bad job. At least it is a bar you can set
- Hire an Independent Reviewer. If don't have the technical expertise, get someone on your side that can be part of the whole process in a very limited advisory role.
- Demand Transparency and Early Delivery I like to try out vendors and test that early on. This means starting with a small project, seeing how they do. Request a small change to measure their response (communication, responsiveness, attitude, etc.). Get a independent party to review the work, and see how they react to the feedback. This will give you insights into how the relationship will play out long term.