Saturday, 27 December 2008

Tesco.com API now searches for barcodes

Hello my fellow post-Christmas Tesco.com API coders!

It's great to see so many of you signed up already and that several of you are already having fun with the Tesco.com Grocery API.

This is an update to let you know that the API works well searching for barcodes so if you are in a mind to recreate the Tesco@Home demo application's ability to take a barcode and search Tesco.com for the product, go right ahead.

You'll need to use the ProductSearch method of the GroceryClient class as well as some some software that yields a numeric barcode number from an image of a barcode. I have updated the API reference to show how to call the API using a typical barcode number.

Just bear in mind:
  1. The number will only resolve to a product if the customer's home store stocks it (not all Tesco stores are the same size nor have the same range of products).
  2. The number you resolve from the barcode must be either 8 or 13 numeric characters in length. This depends on the product - most products are 13 characters. The numeric format that the API understands is the 'European Article Number', or EAN.
  3. The system cannot resolve a Tesco in-store printed barcode. These barcodes are what you see on individually printed labels for pre-packed meats, and products from the delicatessen or fish counters. These are internally generated barcodes with the price embedded inside so a checkout can resolve that price. Every such product is different and the API cannot understand such barcodes at present.
  4. You won't get the barcode to work with Tesco Direct or other non-food products that you can't buy from the grocery section of the Tesco.com web site.
Have fun writing software to turn barcodes into search results, and let me know what you come up with!

Saturday, 20 December 2008

Tesco API now live and documented

UPDATED: lansleytech.com is now techfortesco.com
UPDATED: API support documentation now at this link.

Well I may be dying from this terrible cold but 'the show must go on' and the Tesco.com Grocery API is now live.

Head to the support web site at http://www.techfortesco.com/tescoapiweb where you can register and get access not only to the service location but also a complete reference guide, and a coded example using a Windows Form application compatible with Visual Studio 2008 SP1 (any edition including the free 'express' version).

In Hitchhiker's Guide, Arthur Dent says "I feel like a military academy, bits of me keep passing out!". Arthur's excuse was having just been beamed on board a Vogon ship by a matter transfer beam. My cold's making me feel the exactly same way, so Party On! during this festive Yuletide weekend while I lay in bed moaning randomly and demanding that a lorry load of flu relief be sent to me immediately...

Tuesday, 16 December 2008

Tesco.com API Support Web Live!

As we head towards Friday and the launch of the Community Technical Preview edition of the Tesco.com grocery API, it's time to sign up now as a developer.

Head to: https://www.lansleytech.com/tescoapiweb

Register, check through the terms and conditions (I particularly like condition 20), then login and set up an Application Key so you are ready to make a start from 19th December.

Now don't go criticising the support web's look and feel - I've rustled it up using Visual Studio 2008 and C# and I am an engineer rather than a designer. The site has been checked (actually, tortured) by our security team to make sure it is secure and survives being hacked by them. So I say let's get it up and running and I can make it beautiful later.

If you have any questions or issues specifically with any part of the API Support Site, or you have a problem with one or more of the terms, conditions that you are being asked to agree to, email me at the API support email address of tescoapisupport@lansley.com

During Friday, all registered developers will receive an email with instructions to get started, and I'll announce it here too.

Monday, 15 December 2008

Tesco API registration./support site undergoing final test


Just a quick note to let you know that the Tesco API registration and support web site is in place and is just being tested by us right now.

I'll be launching the site tomorrow via this blog so you can register and prepare for Friday when the API itself goes on the air.

We've got a nice logo for the Tesco API too!

Friday, 12 December 2008

SMS 'Where's My Delivery?' service suspended temporarily

The SMS-based 'Where's My Delivery?' service has been temporarily suspended as a fault has developed on our SMS server.

I am working with the SMS software and the cellular provider to fix the problem and I'll restart the service once I am happy that the issue is unlikely to re-occur. 

Until then, any messages you send to 81550 will sit on the network and will not be sent to our SMS server until the service resumes. No delivery messages will be sent, either, at this time.

Apologies for any inconvenience.

Wednesday, 10 December 2008

Tesco.com API reg / support site nearly built - and the ethics of logging.

I'm not far away from launching the Tesco.com API registration and support site. I hope to have it ready by the weekend and will announce the web link from here.

It's been quite a week - talk in the web world of this being a busy few days for taking orders has certainly proved true here at Tesco.com and it's been 'all hands to the mill' to ensure everything is flowing sweetly. All seems to be well - at least the infrastructure team aren't running around installing extra bits of server equipment like we used to in the 'olden' days at this time of year.

Ah yes, maybe I should recall in some future blog entries some memories of days of yore when our small but merry band kept things humming thanks to the small matter of working 12-14 hour days...!

Anyway back to the future and Tesco.com registration: When you register you will obtain a 20-character alphanumeric text string which I am calling a developer key which you need to supply to the Login() web method of the API as part of successful authentication. The key is entirely randomly generated at registration (I'm not hiding anything encrypted in it) and is then used to look up your developer record in a database to ensure that you are 'allowed' to use the service.

Don't worry - I'm going to use a light touch when it comes to regulating this community preview edition of the API (conscious though I am that 'light touch' is what the Financial Services Watchdog did to the banks and look what's happened...) so as to get your feedback at this early stage.

I'm genuinely delighted by messages from developers who are excited about what they might do with the API, and I plan to launch a competition in the coming weeks to find the the most innovative use of the service.

I've also got an interesting ethical puzzle: I am about to provide for the API to include a logging facility. The idea is that you can call a 'log' web method anytime you want from your client application to log some event or other. You will then be able to analyse events through the developer web site by logging in with your developer-id. You will be able to see if users under-use some aspect of your application, for example. But what do you and I tell the customer that the application is logging about their behaviour? And how far do we go with logging? Every key press or mouse-click? The output from this CTP version of the API is going to have to come up with some rules about behaviour with client application logging, as well as reassure the customer.

My focus at the moment, though, is stabilising the service and launching this CTP edition in the next few days. Better get back to my C# coding...

Tuesday, 2 December 2008

Tesco.com API (CTP) available over Christmas and New Year

Thanks to those of you who have sent me emails asking if you can have early access to the Tesco.com API that is running on one of our R&D servers.

After much thought, my answer is Yes, you can have early access to the API and try out some stuff with your own applications! I'll call this a Community Technical Preview (CTP) and it will be available by Friday 19th December and will be on air until at least the end of January 2009.

The "much thought" was simply because I had to find my way through the set of things that could go wrong. Events that either give you a disappointing service or (frankly worse) upset our web offering for everyone else. All the problems I have foreseen have been accounted for so I'm in a "let's do this!" mood.

In a week or so I'll announce a web site where you can register to obtain a Developer ID - a string of random characters created when you register - which you must use with the 'Login' web method call. You will have to agree to some terms and conditions such as accessing the API for your own use only, and not selling any client software you create (mainly because the API will surely evolve and change service URI whilst it is in any pre-beta mode, breaking your app).

The CTP version of the Tesco.com API will:
  1. Allow logging in, searching for products, and adding to basket.
  2. Allows three unsuccessful login attempts in a 24 hour period.
  3. Limits the number of product searches per IP address to 100 in any 24 hour period.
  4. Limit the count of products returned in each search to 20.
  5. Provides both SOAP and REST services - you choose the appropriate service for the device you are developing for.
  6. Sit on a single server that I can actively monitor for instances of what I will only describe as 'naughtiness'. Such stuff as hammering the API continuously with sub-second calls, or attempting to hack the API (or server), is included in this subjective term. If things don't work out I can block an IP address or, worst case, shut down the server.
However the API will be real: taking your supplied real customer account credentials and adding real products to your real Tesco.com grocery basket in real-time. However, you will have to go to the standard Tesco web site for functions such as select a delivery slot and checkout. The CTP edition of the API will not have that functionality.

If you wish to take advantage and rustle up an application or two over the Holiday period, you are welcome.

If you wish to download some free software development tools, here are some links:

Let me know if your favourite free develoment platform is not listed - I'll include it on the API support website when it launches in a week or so. Monitor this blog for the web address which I'll publish here as soon as it's ready.

Friday, 28 November 2008

Tesco.com API first cut is up and running

What a nice way to end the week: A very first edition Tesco.com API is up and running on one of the internet-facing R&D servers. It supports the core functionality of grocery shopping:
  • logging-in,
  • searching for products (text search and using the dept-aisle-shelf hierarchy)
  • adding products to/removing from basket
  • showing all the products and quantities in the basket.
I've forwarded the API connection details to some colleagues who, like me, are going to geek-out this weekend rustling up some test applications to try it out!

Since it's built on Windows Communication Foundation (WCF) it will be hopefully a simple case of extending the API to support the simpler Representational State Transfer (REST) interfaces as well as today's weightier Simple Object Application Protocol (SOAP) interface.

Of course I know a lot of readers of this blog are wanting to have a play too. In my view it's going to be a few weeks before I get it out to a wider audience. Well, we're not too far away but we need to build in all the important factors such as security and resilience before we allow a in wider developer base.

I've got to think about assigning and managing developer-ids and application-ids so that we can control who and what can access the API. I've also got to think about fair usage limitations, such as how many results are returned in each search, and how many searches per day are allowed.

After all, do we want loads of clients dragging the service down by asking for all 30,000+ products every hour? Someone is going to write such a thing, I know it!

However this all good stuff and I must really thank Paul Tallett at Microsoft UK for his skills, knowledge and enthusiasm in helping deliver the API, and his understanding management for agreeing for him to work on this for us.

Wednesday, 26 November 2008

'Where's My Delivery?" beta now extended to 20 stores.

Recently I discussed the launch of the SMS service we have started in beta mode where customers can find out by text exactly when their delivery is arriving.

Well I am happy to say that we have now extended the service to 20 stores around the country. The branches are listed below, so if you have your Tesco.com groceries delivered by one of these stores you are welcome to join the beta test (the branch name is shown on your last home shopping delivery receipt):


  • BLACKBURN
  • BOSTON
  • BURY ST EDMUNDS
  • CHELTENHAM
  • CUMBERNAULD
  • GALASHIELS
  • HASLINGDEN
  • HEXHAM
  • HULL
  • LANARK GALLOWHILL RD
  • LEIGHTON BUZZARD
  • LUDLOW
  • PLYMOUTH TRANSIT WAY
  • PORT GLASGOW EXTRA
  • SOLIHULL EXTRA
  • SWANSEA LLANSAMLET
  • WARWICK
  • WIGAN EXTRA
  • WISHAW BELHAVEN
  • WORKSOP

If your grocery delivery store is in the above list, text the word GROCERY to 81550 (and await a confirmation message). That's it! You'll receive a free text message every time a delivery is on its way from then onwards.

If you wish to stop the service, text the word STOP to 81550, and (after a confirmation text) the text messages will stop.

Please note:

  • SMS texts sent to 81550 cost 10p.
  • If you have a 'text bundle' as part of your mobile phone contract, any texts you send to 81550 will not come from your bundle, so will be charged as an extra outside your monthly inclusive contract cost.
  • Any texts you receive from us from this service are free to you, since we're picking up the bill. However if you pay to receive texts when abroad, you will be paying to receive this text too. We advise that you send STOP to 81550 before you leave the country.
  • The number you use to send the GROCERY text must be the same as one of the numbers in your Tesco.com grocery account, or we cannot match them. Quite a few people can now send and receive texts from their home landline. That's fine - just make sure it is one of the numbers in your Tesco.com account.
  • You will go on receiving texts for future deliveries until you send STOP to 81550.
  • May not work on mobile phones with non-UK numbers. However if you change your Tesco.com online account's mobile number entry to include the country code as a prefix then it should work. So in Ireland you would lose the first zero and replace it with '353'. If you have a UK number, though, leave it as-is with a zero prefix.
  • If your store is not in the list, you will get a confirmation message when you send GROCERY to 81550 but you will not receive any delivery texts.
  • There are occasions when you will not receive a text even though a delivery is on its way. There can be a number of technical or data reasons for this, which we are working through at the moment (thus the 'beta' tag!). For example, the odd occasion when a vehicle does not pass our internal checks before it leaves the store, and your groceries are transferred onto another van at the last minute.

Thursday, 13 November 2008

What Time is it in the Windows Azure 'cloud'?

I had very interesting meeting yesterday with Neil Hutson and James Conard from Microsoft Corp who are members of a team responsible for the forthcoming Windows Azure 'cloud' platform.

Microsoft recently announced Azure at the PDC in Los Angeles. It's essentially a Microsoft owned and run hosting solution. If, like us, your systems run on Microsoft.Net and SQL Server then it is possible that those systems could be run in Azure.

I hasten to add that we have no plans to host Tesco.com anywhere other than our own hosted spaces. This solution wins for us on many fronts including security & legal (where data is hosted and how it is protected), availability (given that we are a 24/7 operation) and performance (not too many hops from the customer's computer to our web servers).

However it's my job to look at new technologies even if it is to prove that we do now is best, and so Azure has arrived as a project to see if it could a possible future hosting solution from a technical viewpoint.

Neil and James explored with me the facilities that will be available on Azure. Since the service is at an early stage of development there were many questions, the most important of which was the various elements of service level agreements that would need to be place.

There was also the subject of performance and efficient coding for optimal use of Azure without too much CPU or memory requirements (as this would affect cost directly).

One interesting question I posed them, however, was one that they have had to go away and answer: What time is it in Azure?

In other words, if I create an ASP.Net application with a web page that prints out the system date/time, and upload it from London what will it say?

Response.WriteLine("The time in Azure is: " + System.DateTime.Now.ToString());


What will it say to users in the UK (Summer/Winter time)? In the USA (Summer/Winter time + 4 time zones)? In India (constant time all year)?

Time is critically important to Tesco.com as it is involved in nearly every aspect of our service from scheduling vehicles to texting customers. It's no good a customer choosing a 10am to 12 slot when the time is an hour different, for example.

Now the easiest way out for Microsoft is to simply offer up UTC/GMT time for everyone, and it's up to the application to work out what local time it is. However that's a bit unfair - after all our Windows Servers all set the Summer/Winter time seamlessly and we don't have to worry about it. In addition, Tesco has its own time server ('tesco time!') which is used by all servers across the company to set their time by - a service which Azure would not have/want access to!

I suspect that Azure applications are going to have to have an extra parameter in Web.Config that allow developers to set the local country or region. That way Azure can supply the correct local time to the application through System.DateTime.Now and Transact-SQL's GETDATE() function, and switch it between summer and winter time at the appropriate moment.

It's important the Azure team get time right, so next time you discuss Azure with Microsoft, ask them what time it is!

Sunday, 9 November 2008

Using SMS texting to communicate with customers

In a recent post I talked about how we have started to trial a service which sends out SMS text messages to customers to let them know exactly when their delivery will be arriving.

The SMS service works using our own SMS server linked to cellular provider O2. The server can receive messages, process commands in the text, and of course send an appropriate response.

Since the interfaces of the SMS server are built with Microsoft .Net, it has been easy for us to integrate it with the rest of our .Net-based infrastructure. Indeed, it has somewhat fired up the imagination of our business who are encouraging me to try all kinds of ways of communicating useful services with customers using SMS!

Not surprisingly O2 are excited by our plans too so we jointly agreed to create a video that explores some of our ideas.

Also at http://uk.youtube.com/watch?v=zD_OKiCoOB0

Thursday, 6 November 2008

HD video of Tesco presentation at PDC

I have had several requests from people asking for a much higher quality video of the Tesco presentation at Microsoft PDC than the one I made available via YouTube.

If you right-click the following link you can download a WMV version of the 5 minute segment in 'near HD' quality. It's about 65MB in size:

http://www.lansleytech.com/videos/tescoatmicrosoftpdc.wmv

Tesco@Home application making the news

News travels fast and far from the joyous √úbergeek land that is the Microsoft Professional Developers Conference.

Here are some noteworthy articles about the Tesco presentation:

I also like the BBC's Rory Cellan-Jones blog entry where he aims to explain the PDC event to the public. Rather pleasantly he says:

"The audience is mostly quietly enthusiastic, sometimes cheering "awesome" new software features - the loudest applause was for a Tesco executive presenting a new online shopping application hosted in the cloud."

Thanks for all the continued enthusiastic feedback. I have asked Paul Dawson from Conchango to bow at regular intervals to accept thanks for his team's design and development of the prototype application.

Stay tuned to this blog to be the first to know about the Tesco API as we begin to unfurl a beta version in the coming weeks.

Tuesday, 4 November 2008

Where's My Delivery?

So back to the office and today marks the launch of our trial/beta of the 'Where's My Delivery?' service for customers.

I'll write more in a near-future post about the telematics system we are installing in every Tesco.com delivery van in the UK which we're using mainly to monitor and cut-down on fuel usage so that we can deliver a more environmentally-friendly and cost effective delivery service for customers.

From now on, whenever our vans drive away from the Blackburn Tesco Extra they 'break through a geofence' surrounding the store.

Imagine that we've drawn a square around the Blackburn Tesco building and car-park which each van drives through as they start out on their deliveries. This 'break' triggers a server monitoring the location of each van which then runs a satellite navigation algorithm to plot the journey to each customer. Each delivery has a time and it's this time that we will now be texting to Blackburn customers if they have registered for the service.

The magic of this solution is that customers who have booked their two-hour delivery slot can now get most of their time back since they know much more precisely when the van will arrive.

If the van gets stuck in traffic (say, an accident occurs on the road ahead) the system will detect this and, if necessary, send a subsequent text message (apologising!) with a renewed time.

If you have your groceries delivered from the Blackburn store, simply login to the Tesco.com grocery website and you'll see more information about how to register for the SMS service.

We will be rolling this service to several more stores over the coming weeks. Just login to the Tesco.com grocery web and you'll see more info if it applies to you.

The service is running in R&D mode at the moment as we tune the software to make sure everything is accurate. Once we're happy my production colleagues are rather eager to take it on and roll it out nationwide.

After all, we work for Tesco.com but we're all customers too!

Sunday, 2 November 2008

My presentation at Microsoft PDC2008

Here is the video of my presentation at the Microsoft PDC 2008 keynote by Scott Guthrie, Corporate Vice President in the Microsoft Developer Division (who introduces me).

My 'glamorous assistant' operating the HP TouchSmart PC is Conchango's Experience Director, Paul Dawson, whose team researched, designed and built the prototype for us.

Running time 5:54.

(UPDATE: I have moved the video to the 'tescocomtv' account on YouTube so if you have bookmarked the old link it is no longer available).

Also at http://www.youtube.com/watch?v=kSJBKXlz9Wg

Download a near-HD version (Windows Media Video format) from
http://www.lansleytech.com/videos/tescoatmicrosoftpdc.wmv



Saturday, 1 November 2008

Closeup of the Tesco Shopping Application shown at Microsoft PDC

Just arrived back in London after a great week at the Microsoft Professional Developer's Conference (PDC2008) in Los Angeles where the announcement of the forthcoming Tesco API and the Tesco Shopping Application went down a storm!

I'm not just 'saying that' - the unexpected huge 'wall' of joyous applause that crashed into me when I was on stage when the webcam barcode scanning was demonstrated is not one I'll forget (see video blog entry).

Here are some screenshots of the prototype Tesco grocery home shopping application to give you a sense of what we are trying to achieve with this prototype. It's all about quick and convenient shopping for groceries., as well as easily finding cheaper alternatives and remembering interesting items you wish to buy in the future.

The prototype application was researched and developed for us by Conchango, a company specialising in designing excellent experiences in software. As you can see, they raised their game pretty high to help create this groundbreaking application.


Above is the 'corkboard'-style main screen. It accesses feeds from Flickr, Live and other RSS-compatible photo feeds that you can set up.

The calendar is 'powered' by Window Live/Hotmail so if you have a Live-ID you can let the application load up your calendar to display various entries you have added. Usefully, the application stores your booked Tesco delivery slot. You can also plan meals by dragging products (and whole meal ideas and recipes) into the calendar in order to plan and budget. This is saved into your Live calendar which can be accessed from the web and other applications, too.




Above is the result of a product search. You can move products into your shopping basket or favourite lists by dragging them from their location across into one of the circled areas.


Here is an example of a recipe. You can alter ingredient levels by altering the 'serve' number. You can then drag the whole thing into a shopping basket.

The whole application is at the prototype stage and we're going to be testing it over the coming weeks and months alongside the Tesco API which is at the prototype stage and going through its first peer review.

My goal is to make the whole thing fully live by Summer 2009, and 'quietly live' (or what the rest of the internet likes to refer to as 'beta'!) much sooner.

Tuesday, 28 October 2008

On stage at Microsoft PDC

I'm on stage at Microsoft PDC2008 - live (and archived) video at http://www.microsoftpdc.com from 8:30am Pacific / 3:30pm London. I'm on at approx 9:45am.

Pictures from behind the scenes at Microsoft PDC 2008

Whilst rehearsing for my presentation during the Ray Ozzie/Scott Guthrie keynote presentation at Microsoft PDC 2008, I took some photos of what was happening behind the scenes.

If you are at PDC 2008, don't miss it - I'm on at approx. 9.45am LA time (4.45pm London).

http://www.flickr.com/photos/nicklansley/sets/72157608435251415/

Monday, 27 October 2008

New announcements at Microsoft PDC

Just arrived at Microsoft's Professional Developers Conference in Los Angeles, and listened to the announcement of Microsoft Azure, 'windows in the cloud' - a set of all the server services that you can have on the Windows Server platform (.Net, web services, SQL etc) but running on Microsoft's own global infrastructure.

I'm giving a presentation as part of Scott Guthrie's keynote speech tomorrow, alongside Paul Dawon of Conchango as we demo a new prorotype best-of-breed grocery shopping experience for Tesco customers built in Microsft's Silverlight/WPF technology.

Bizarrely the Microsoft Wifi network here at PDC refuses to give me DHCP network settings when in Vista (bootcamp) but all works great in OS X!

Wednesday, 15 October 2008

Tesco.com installes Cisco Telepresence

As you may be aware, Tesco operates an IT development facility in Hindustan, Bangalore, India as well as in Welwyn Garden City, England.

In order to improve our ways of working and frankly make our Indian colleagues feel part of the team, the Tesco.com HQ building (and several other Tesco sites worldwide) have had installed an outstanding piece of technology called Cisco Telepresence.

Telepresence is a form of video conferencing designed to make you forget (after a few minutes) that you are in fact watching someone on TV! Indeed, the design of the system makes you feel that the the room you are in is twice the size it really is - even the table is half an oval which completes its circular loop on the 'other side'.

The technology achieves this using high definition video pictures across three screens, and high quality audio set up to make sure that each person speaking is coming from the right place in the room, spatially.

The system requires a 15Mbps digital private link, the latest video and audio compression technologies, and an intelligent design of room without too many moving parts (so no windows where moving trees might eat into the bandwidth).

The result: you soon feel that your colleagues are really in the room. If you are sceptical then so was I but believe me you soon lose the 'watching TV' effect within a minute of starting a meeting, and the sound of voices is so realistic (not too much bass or treble) that each person sounds likes they are in the room with you.

Thanks to my two colleagues who didn't mind me barging in and snapping them mid-meeting yesterday!



Friday, 10 October 2008

Lille VAD Expo yields European innovation

I've just come back from an excellent three day visit to the VAD Expo in Lille, France.

VAD's purpose is to act as "The international e-business, direct marketing and distance selling rendez-vous", and I was happy to speak at the conference on what I expect from innovation and how we do well when we think relentlessly of the customer and what they are looking for.

What impressed me were the small and medium sized companies who have listened to customers and then delivered what they were asking for. Many have applied new technologies and new thinking to old business problems and turned lack of progress (and debt in some cases) into thriving businesses.

One company I met have solved a general problem on the web whereby clothes are returned in great quantities by customers who do not receive the size that they expect. This was mainly found to be because manufacturers' ideas of known clothing size numbers (as well as S, M, L, etc) all differ.

This company sends out small cheap swatches to show the materials, and get the customer to measure themslves following instructions from an on-screen web wizard. Clothes are then made to this specification on a one-by-one basis and are sent to customers and far lower returns than the average are achieved. Thanks to technology advances available to small clothes manufacturers, all this can be achieved quickly and at low cost.

Given the direction of the economy at the moment, its ideas and innovation like this that will keep companies trading and hard-pressed customers happy.

Monday, 6 October 2008

Silverlight and WPF makes easy and engaging applications



A couple of weeks ago I was down in Brighton at Microsoft's ReMix'08 conference. The purpose of the conference was to engage designers and developers in a 'conversation' about how to deliver the next generation of compelling computer applications, whether installed or online.

Of course the 'big thing' featured at the conference was Windows Presentation Framework (WPF) and its online sibling Silverlight. To deliver such applications requires an extension to Microsoft's Visual Studio suite - so along comes Expression Studio with it's excellent Expression Blend integrated programming environment.

I must say I got to grips with Expression Blend quickly, and loved its ability to enable to me to engage with on-screen objects in 3D, and use Storyboards to animate them in an event driven manner!

The first milestone for getting to grips with Expression and WPF was to improve the look of the application I created that runs 24/7 on the 42 large media information screens around Tesco.com's HQ building in Welwyn Garden City.

The first application which I wrote in May this year used basic Windows forms objects to display basic information plus PowerPoint slides (saved as JPEGs). Teams around the building quickly engaged with the concept of sending up slides to the screens so everyone knew what they doing (whether work or some team do), and there is always some great content up there.

The application also monitors a Twitter account where people can send text messages straight to the screens - something which works really easily and is very popular.

Post reMix I decided that this would be the application I would re-write. It also meant that I could get through the wish-list of extra features people wanted - including news headlines, weather, and displaying the time both for UK and India. It also show the current Tesco share price and our 'Tesco week number' (where week 1 is the first week of our financial year). The application also includes 'anti burn-in' features that move objects around the screen to a different location every hour, and changes the background colours - that way every pixel on every screen gets the full exercise of all colours and all brightnesses!

It took just about 20 man hours to re-write and it too runs happily 24 hours a day across all the screens. It was designed in Expression Blend, then programmed in Visual Studio 2008 Professional edition using C#. It runs on a Windows XP box in the server room, and distributed as a radio signal (within the cables) with HD distribution amplifiers over our CAT5e cabling before being fed into the PC in socket on each screen.

Links for Technorati

Technorati Profile


Add to Technorati Favorites

Tesco Wine Festival features Microsoft Surface


Thanks to some excellent negotiation - and design - skills from my colleague Mark Wilkinson who managed to secure a Microsoft Surface table for a couple of weeks, he's showing off a great application that engages people to try out different wines.

Microsoft Surface is a 90kg 'table computer' running Windows Vista Business edition with an up-projected screen and a series of cameras that watch for the presence of hands and other objects placed on the table. Once detected the software can react to it according to application design.

Mark has designed an application that allows him to place wine bottles on the surface with a form of barcode underneath. Microsoft Surface reads the barcode using the cameras under the screen and works out which wine has been placed on the table. The base of the bottle is then surrounded by a circle of tags which he can flip out to reveal various types of information about the bottle (country, grape, style. etc). Mark can then pull out a tag and expand it into an information box. In true Microsoft Surface style, the info box can be resized and rotated using a couple of fingers, and generally pushed around the table top and bounced off the sides!

Mark also places wine glass coasters on the table - again with a unique barcode underneath - and surface surrounds the coaster with buttons to press and - very impressive - a 'rotation of stars' to indicate what the user thought of that wine.

Usefully, the feedback is then built up in a database to uncover the most popular wines - an important objective of the Tesco Wine Festival in the first place.

This Tesco/Microsoft Surface application is very engaging, quickly taking the users beyond the 'wow factor' of the technology and engaging them with a fantastic wine tasting experience.

So congratulations to Mark and the rest of the Tesco & Microsoft teams who have helped him create an experience that is both useful and engaging.

Saturday, 4 October 2008

Welcome

Hello and welcome to my new 'Technology For Tesco.com' web log.

So, if you haven't guessed yet, my name is Nick Lansley and I work for Tesco. Specifically I manage R&D projects for Tesco.com which is a hugely rewarding experience and allows me to personally connect with customers who use our service.

Just to fill in some blanks for those of you have never heard of Tesco, the company is one of the world's leading retailers, with a core business of selling groceries through the UK and in a dozen other countries.

Tesco also runs Tesco.com (where I work), an online retail services division which again delivers groceries as part of its core business. It also runs a major 'non-food' service through a catalogue (Tesco Direct), as well as Tesco Personal Finance (all kinds of financial products from credit cards, bank accounts to insurance service) and Tesco Telecoms (Tesco Broadband and Tesco Mobile).

You can find out more about Tesco at http://www.tescocorporate.com which is a great place to start if you wish to understand the context of where I work.

Good!

So now I can get on with my blog. It's purpose is for me to let you know about the Technology Research projects I am working on, the people I am meeting to get these projects up and running, and how & why I have chosen them.

My philosophy for research and development is:
  • Translate observations in industry, business, and the home into specific ideas for analysis.
  • Develop and create value to the company and customers through design excellence.
  • Ensure Tesco.com's competitiveness is protected through continuous improvement and breakthrough innovations.
  • Concentrate on those projects which makes the Tesco.com experience better for customers, simpler for staff and/or cheaper for Tesco (preferably all three!).
  • API: Analyse, Prototype, Improve!

Researching projects and delivering the right results is the journey I will take in this blog. My aim is to write 'little and often' and so you can watch progress.

From time to time I may ask you if you would like to try out something that I have set up on an R&D server and see what you think.

You are welcome to comment as I blog. All I ask is that you keep it relevant to the topic and not use it as an excuse to sound-off about Tesco in general or lament about the price of baked beans or other specific!