Maximum Potential – the tech concept.
Posted on | November 27, 2009 | 4 Comments
3 hours ago John posted about our design / branding concept, Dr Hue. Here, Dave Fletcher (24hour-start-up’s technical director) talks about how his team of developers concentrated on building a platform as much potential to create value for our eBay buyer as possible in the time they had…
—
Here’s the techy deal. Dave and the development team are far too busy to post any details at the moment, but Dave has promised he will update this section with lots of technical lingo as soon as possible!
—
Update: we have a tech doc!
Dave took his time with this because it’s important! …
Technical overview
The website is built using PHP 5 with a MySQL database. We’ve used the symfony framework for PHP which helped significantly improve the speed of development, as well as making the site easily extensible for whoever takes it on.
The most challenging part of the project was the code to analyse and pull colours out of the product images, and for this we’ve used the OpenCV library. This required us to write and compile some C to run on the server.
The front end of the site is all table-less XHTML with CSS, and where we’ve used JavaScript we’ve used the jQuery JavaScript library.
Modules
- Feed import
The feed import takes an XML feed from an affiliate scheme and imports the data into our database and pulls in the image files onto the server. It also strips any colour text information out and tags the products against the RGB colour values. The first time a feed is imported, any product categories listed in the feed are recorded in our database, but the products themselves are not placed into any Dr Hue categories. The administrator can then use the category mapping tool (see below) to map feed categories to Dr Hue categories – this allows the products to be placed into a hierarchical structure of categories on the site.Development needed: 2 big areas of development will be needed to make this site sustainable. Firstly a process for updating the products imported from a feed is needed – we’ve already written the code for the import, so it’s really just writing the process of running that import automatically. Second, the site currently deals with one schema of XML feed from one affiliate : coding would be needed to import feeds from other affiliates. We can envisage building a module to allow a non-technical person to import new feeds : this would be an interface to allow them to map product attributes from new feeds to Dr Hue product attributes. This would probably take a few days to put together.
- Image colour analyser
The image colour analyser does several things. Firstly it draws an outline around the product image, so that it can cut out the background (usually white). Then it looks at a histogram of the image, and picks out any colours that are present in large quantities in the image and tags the image against these colours. This works really well and we don’t think it needs any more work. With a lot of testing it may need some fine tuning however. - Category mapping
This admin module allows a non-technical person to map categories imported from a feed to Dr Hue categories by selecting a drop-down from each. It wasn’t functioning at 100% shortly before we went live, but wouldn’t take much to get there.Development needed: one of the biggest areas that will need work is the Dr Hue category management. This needs an admin interface to allow new categories to be added and the structure of the categories to be moved around. The category mapping tool could then be enhanced to use the tree structure (rather than listing all Dr Hue categories alphabetically in a drop-down) which would make the mapping process easier.
- Colour search
The colour search on the front end searches for matching colours along a range of the RGB colour being searched for. E.g. if you are looking for items close to the colour R (128), G (55), B (109) then it will return products that have an R within a range of 60 of 128, a G within a range of 60 of 55, and a B within a range of 60 of 109. This works really well for some colours (e.g. blue), but not so well for other colours (e.g. grey). We’ve come up with a plan for solving this, which would involve mapping the RGB colour values to a different colour definition called CIELAB. CIELAB allows us to easily compute the distance that one colour is from another reliably across the whole spectrum and so we can return search results in order of proximity to the search colour. Once we’ve worked out the algorithm for the conversion to CIELAB this would be a really simple change to make. - Advanced colour search picker
We’ve used a JavaScript colour picker for the advanced colour picker which opens up as a dialog on the main category page. This works well and allows users to search for a specific colour. - Twitter integration
One of the last bits that we added was a neat bit of code which integrates the site with Twitter. New followers of @Dr_Hue will get DM’d with a message which includes a link to search results for the average colour of their Twitter profile pic. This is great, although for a lot of people it comes out as brown or green (if they’re supporting revolution in Iran!) and really for this to work well we’d want to tie it in with the image colour analyser module so that it could pick strong colours out of the profile picture rather than the average colour of the whole pic.
Future development
In order to make this site work in the long term, there’s no doubt it’s going to need some more development. There are areas which need to be improved so that non-technical people can run it from day-to-day, plus there are features which would be really neat to implement. Here are a few essentials:
- Feed management : the ability to add new feeds and map them to the Dr Hue products
- Category management : the ability to manage the Dr Hue categories and add intro text and SEO keywords and descriptions
- Site map : in order to get any sort of visibility on Google, a multi-page site map would be needed : we’ve got some really neat ideas for this though!
Not so essential (but still pretty important):
- Use of CIELAB rather than RGB for colour matching : vastly improve the accuracy of the search
- Improved category interface on the front end (we’ve actually built half of this already!)
- “Match colours from your photo” feature : allow users to upload a photo and then pick colours from it to match against (again, we’ve started doing this)
Nice to haves:
- Colour pallet history : a shallow bar keeping a record of the colours that you choose as you try searching for different colours : allows you to go back to a previous colour quickly
- Auto colour schemes : pick a colour and it shows you complimentary colours that could work with hit. There are a number of different algorithms for working out different complementary colours, so it could come up with a few schemes.
- Wish list : a place to put products that you fancy while you search for more so that you can come back to them
We’re sure there are loads of other features that would help make Dr Hue even better, so this last list would grow and grow…
Comments
4 Responses to “Maximum Potential – the tech concept.”
Leave a Reply

November 30th, 2009 @ 1:41 pm
Guys, despite the work you may (or may not)have done, without this part it remains a puff piece. Hope this has not been done after a session in the pub or, worse, in it.
If you are for real, then good luck.
November 30th, 2009 @ 3:56 pm
True Duggie, very true. We’ll have a video up on the homepage with Dave explaining a bit of that (which we did just before going to the pub!)
However, the meat of this stuff will be added to this post this week. We’re all really convinced in DrHue’s ability to scale and make money, and have a vested interest in convincing our eBay bidders too.
There’s also loads of ideas, some partially coded, for improving the site further which we will also be added to this blog.
Right – I’m off to write a summary of the last 4 hours!
December 3rd, 2009 @ 4:43 pm
Hey Duggie… hope this UPDATE does it for ya! (It’s a biggie!)
December 4th, 2009 @ 1:46 pm
[...] a tad overdue, but we now have a pretty detailed technical description of what DrHue.com does, and what improvements would need to be made by our [...]