Monday, 28 September 2009

Getting ready for the National TV Retune

Tesco, alongside other TV retailers, is getting ready for customer calls on and after 30th September.

That date is called, in a rather community-spirited manner, the National TV Retune. It's where customers who receive digital channels through their aerial - Freeview - suddenly stop receiving a whole load of them and have to enter their Freeview receiver's setup menu to perform the retune.

The reason for the National TV Retune is that Freeview - that is, the UK's digital terrestrial (ground- based) television service - is an evolving system and a great deal of technical shifting around of TV and radio channels is required to:
  1. Allow Channel 5 ('Five') to be received everywhere on Freeview. This is a legal requirement as 'Five' is a public service broadcaster (PSB) like the BBC, ITV and Channel 4. As a PSB, Five is granted the right to be received everywhere digitally by Act of Parliament. It's important - whole swathes of the nation have missed out on its launch by the Spice Girls in 1997 and its evolution from original 'stripped and stranded' schedule to the very competent fairly upmarket format broadcast today.
  2. Empty one of the signal multiplexes completely so it can be re-calibrated to the new DVB-S2 format to support future HD channels (huzzah!). The existing channels on that multiplex (called 'Multiplex B') will be moved to some of the other 5 multiplexes which will themselves be re-calibrated to support them - and in the process make redundant a lot of old Freeview equipment.
  3. Take the channel information data (called the 'Network Information Table' or 'NIT' - the source of data that provides the channel line-up) , and split it into two because one can't support many more channels - and in the process make redundant a load more old Freeview equipment.
The re-calibrated multiplexes are more 'complex' in their make-up than before in order to carry the extra channels. I won't go into here because if I say Coded Orthogonal Frequency Division Multiplex (COFDM) you'll probably stop reading!

Let's just say that these signals need to be picked up more cleanly (and more strongly) so some customers with doddery old TV aerials that nevertheless picked up Freeview will probably find the service less reliable.

Some old Freeview equipment won't understand the re-calibrated signals so won't be able to receive them anyway. Add to that the splitting of the channel information data ('NIT') and it means that, on these boxes, whole swathes of channels will simply disappear. Now that will generate phone calls!

Some customers who pick up Freeview channels today on a relay station will actually lose some channels. So its goodbye to Poirot and other ITV gems unless you point your aerial to a main transmitter rather than a relay (if you can) to continue picking up ITV3 and ITV4.

I hope you're getting my message; it's all a bit of a mess which we (Tesco and others) have to mop up. As a technologist of course I understand why it's happening, and I know it is all for the future good.

The trouble is that Freeview is chosen by the least tech-savvy of the nation. After all if you're "into" TV then you'll have Sky or Freesat - and both Sky and Freesat offer automated updates of the channel line-up.

Freeview viewers do get a great channel line-up so it's certainly worth having over analogue - even my 96-year old Gran has it. She lives in Bournemouth and is an "old Tory" who is looking forward to watching the live Conservative Conference next week on channel 81, bless her.

Despite living most of her life with zero, then one, then two TV channels, she loves Freeview as she enjoys her politics and is hooked on the BBC Parliament channel.

Unless my Mum can work out how to retune her TV (with me on the phone if necessary) then Gran hasn't a hope of watching.

Tesco is standing by to help our other customers.

On the official Tesco iPhone Application and some developer disquiet.

A recent article concerning the Tesco API appeared in Computing magazine on 22 September 2009 telling of some developers being unhappy at our plans to have our own iPhone application for grocery in the Apple App Store.

One paragraph in the article quoted an anoymous developer who apparently said,
“Tesco has just taken a big dump on our heads by announcing the creation of an official iPhone app for Tesco,” said one developer, who wrote to Computing on condition of anonymity.
“I don’t know how many other developers were looking at iPhone solutions but I was certainly one of them. Fortunately I had only invested about 20 hours so far in a project I expected to take 400-600 hours, but I think Tesco has sent a clear message to developers that as soon as a market looks like it might have mass appeal they intend to stomp all over the little guys by writing an official app of their own. That is not how to foster creativity with an experimental new API.”

Despite the robust language of the developer, and bemused concern that he demanded anonymity (in case I go round his house and 'request' our Tesco Direct catalogue back?), I certainly empathise with his view.

But I also disagree.

First of all, applications of this new genre follow the principles of evolution by natural selection - each new application takes all the good bits - and dumps the bad bits - of previous incarnations, evolving as new ideas come into focus, and following popular ideas.

A good example is the evolution of Twitter clients - each application has evolved and extended the Twitter system way beyond its original design. I'm on my third iPhone Twitter client (Twitterific) because it has more facilities than previous clients and is easy to use.

I hope the same happens with our iPhone grocery application. Yes it will be good, if basic, but I encourage third parties to take its best bits and go forward.

Secondly, if I denied anyone in Tesco.com from writing an iPhone application (or for any platform for that matter) what message would it send to our staff? That they are forbidden from spending time working with this form of innovation? If that message got out we would get a worthy exodus from Tesco.com of the most innovative of my colleagues and a total inability to recruit anyone.

In Tesco.com IT I am working with the leadership team to foster innovation – indeed we have our own embryonic IT Innovation Club up and running, and colleagues can spend both their own time and some business hours on R&D projects that they wish to try out. It’s from this source that our first iPhone ‘Store Finder’ application has been created.

Tesco.com is a great place to work but not everyone thinks of us first when considering an exciting future in IT. The Tesco.com IT Innovation Club is my overt part in changing that external attitude. If that means we have applications from our developers in our name (and theirs of course) alongside applications of third party developers, so be it.

Monday, 21 September 2009

Important API Updates: Dev Portal moved; Azure tear-down ready for beta API

Dear API Developer

There are some important updates to the Tesco API and the developer portal that have occurred today, and there is action you must take to keep your client application running against the community technical preview edition of the API.

Developer Portal Moved
--------------------------------
The API developer portal, where you manage your developer & application keys, and consult the online API documentation has moved to its new home at techfortesco.com where your developer account and keys are now stored.

The developer portal is now at:

(You can also type in http://www.techfortesco.com/tescoapiweb whereupon you will be auto redirected to the secure web address).

The developer portal at lansleytech.com is now shut down and soon all of lansleytech.com will be completely shut down as applications are transferred to the techfortesco.com domain.


Don’t use Azure from now until Beta API is ready
-----------------------------------------------------------------
We’re going through the process of re-equipping our space on the Microsoft Azure cloud computing platform ready for the new beta API. On Wednesday 23rd September the community technical preview API hosted there will be torn down so we can start uploading the daily beta builds to the Azure space. If you followed the online documentation to move the endpoint from lansleytech.com or techfortesco.com to the tesco.cloudapp.net domain, now you will have to move it back to http://www.techfortesco.com/TescoAPI/TescoAPI.svc. Sorry!

The community technical preview API will still run at:
http://www.techfortesco.com/TescoAPI/TescoAPI.svc where it will live until the final customer has been moved over to the Martini platform in the coming next few weeks.


Beta API dev progressing
-----------------------------------
Finally we are ploughing through the API development that will run the service on top of the new Martini platform. More news as we progress coming soon!


All the best
Nick Lansley
Head of R&D
Tesco.com

Friday, 18 September 2009

Letter of Rejection

So I come back from holiday to uncover that the Tesco.com R&D team’s first iPhone application to be submitted to the Apple App Store has been rejected!

The letter of rejection was pleasant and helpful, detailing a user-interface reason for the rejection and looking forward to a rapid re-submission.

The Tesco.com R&D 'Store Finder' application, which allows iPhone users to locate their nearest Tesco branch, had a problem if the user denied it access to iPhone’s location service so it could not obtain the current latitude and longitude of the phone.

Basically it had been accidentally programmed to have the same attitude as an affronted celebrity denied access to a posh night club (“Don’t you know who I am?”) then give them a ‘stores near me’ list anyway by assuming they were actually located at Tesco.com HQ in Welwyn Garden City!

It’s a minor change (disable the ‘Stores Near Me’ button and switch to the ‘Town/City Search’ screen) so I have to thank the App Store team for their detailed response and their encouraging tone.

It’s no discredit to the developer either - the brief was that the application had to get the customer quickly to the store, so denying the application access to the current location and having to perform a manual search will make the it considerably less ‘immediately’ useful.

It’s some time since I’ve had a letter of rejection so today I will pin it to my local office noticeboard under one of the written tenets of research: “Go Wrong Quickly and you’ll Learn Quickly”.

Friday, 4 September 2009

Fake email phishing for Tesco usernames and password - ignore!

It may be a poor attempt at phishing but look out for this email message and delete it. Mine came from "Tesco Webmaster" webhelpdsk02@gmail.com but there may be other email sources. The perpetrator may be trying to snag a Tesco email account to make future phishing emails look more authentic. Help me make sure his/her failure is complete.

----Tesco Webmail Technical Services-----

Account Subscriber,

We are currently performing maintenance on our Digital webmail Server to improve the spam filter services in our webmail systems for better online services to avoid virus and spam mails. In order to ensure you do not experience service interruption, respond to this email immediately and enter your Username/id here (********) password here (********) and future password here (********). Checkout new features and enhancements with our newly improved and secured webmail.

NB: We require your username and password for Identification purpose only.

----Copyright © 1997-2009 Tesco!. All rights reserved-----

Monday, 31 August 2009

Beta Tesco API NOT Yet Ready - Waiting for 'Martini' Readiness

Dear Tesco API Developer

This is an update to let you know the status of the beta edition of the Tesco API is not quite ready.

The underlying ‘Martini’ grocery platform on which the beta API relies is still being tuned up, and the side effect of this work is that the sand keeps shifting beneath the beta API’s feet.

Of course we need to make sure that the new grocery service is not only fully functional but performs really well, so these final adjustments are vital before we start moving customer accounts across. The grocery web service is core to Tesco.com so you can imagine that every member of the production team is involved.

Until the ‘sands stop shifting’ there is little I can do to launch the beta API. However I can still tempt you: If you would like to take a look at the new objects available (or rather, existing objects with many new extended properties), you can. Using your SOAP client such as Visual Studio 2008 (free Express, Standard or Pro editions), set up a new service endpoint at http://www.lansley.com/tescoapibeta/tescoapibeta.svc where the nightly builds are being tested. Don't try and log anyone in though - nobody is on 'Martini' just yet so it won't work.

Have a look particularly at the new product object which should satisfy just about any product information desire:

.ProductId =262612635
.BaseProductID =61358077
.Name =Flora Buttery 500g
.ProductType =QuantityOnlyProduct
.ExtendedDescription =(manufacturer can enthuse about product here)
.ImagePath =http://img.tesco.com/Groceries/pi/349/8722700187349/IDShot_90x90.jpg
.MaximumPurchaseQuantity=99
.NoteForPersonalShopper = (when sending to basket this note is shown to shopper)
.OfferPromotion =Buy 1 Get 1 FREE
.OfferValidity =valid from 26/8/2009 until 1/9/2009
.Price =1.5
.PriceDescription =(£3.00/kg)
.Quantity =1
.Rating =0
.StorageInfo =
.UnitPrice =3
.UnitType =kg
Nutrients count: 19
Nutrient =Energy
SampleDescription =Typical values per 10g
SampleSize =261kJ/63kcal
ServingDescription =-
ServingSize =-
Nutrient =Protein
SampleDescription =Typical values per 10g
SampleSize =trace
ServingDescription =-
ServingSize =-
Nutrient =Carbohydrate
SampleDescription =Typical values per 10g
SampleSize =0.1g
ServingDescription =-
ServingSize =-
Nutrient = - of which Sugars
SampleDescription =Typical values per 10g
SampleSize =0.1g
ServingDescription =-
ServingSize =-
Nutrient =Fat
SampleDescription =Typical values per 10g
SampleSize =7.0g
ServingDescription =-
ServingSize =-
Nutrient = - of which Saturates
SampleDescription =Typical values per 10g
SampleSize =1.6g
ServingDescription =-
ServingSize =-
Nutrient = - monounsaturates
SampleDescription =Typical values per 10g
SampleSize =2.0g
ServingDescription =-
ServingSize =-
Nutrient = - polyunsaturates
SampleDescription =Typical values per 10g
SampleSize =3.4g
ServingDescription =-
ServingSize =-
Nutrient =- omega 3 fatty acids*
SampleDescription =Typical values per 10g
SampleSize =0.6g
ServingDescription =-
ServingSize =-
Nutrient =- omega 6 fatty acids
SampleDescription =Typical values per 10g
SampleSize =2.8g
ServingDescription =-
ServingSize =-
Nutrient =Fibre
SampleDescription =Typical values per 10g
SampleSize =0g
ServingDescription =-
ServingSize =-
Nutrient =Sodium
SampleDescription =Typical values per 10g
SampleSize =0.1g
ServingDescription =-
ServingSize =-
Nutrient =Salt (based on sodium)
SampleDescription =Typical values per 10g
SampleSize =0.2g
ServingDescription =-
ServingSize =-
Nutrient =Vitamin A
SampleDescription =Typical values per 10g
SampleSize =(10% RDA) 80 µg
ServingDescription =-
ServingSize =-
Nutrient =Vitamin D
SampleDescription =Typical values per 10g
SampleSize =(15%) RDA) 0.75 µg
ServingDescription =-
ServingSize =-
Nutrient =Vitamin E
SampleDescription =Typical values per 10g
SampleSize =(20% RDA) 2 mg
ServingDescription =-
ServingSize =-
Nutrient =Vitamin B6
SampleDescription =Typical values per 10g
SampleSize =(25%) RDA) 0.5 mg
ServingDescription =-
ServingSize =-
Nutrient =Folic Acid
SampleDescription =Typical values per 10g
SampleSize =(25%) RDA) 50 µg
ServingDescription =-
ServingSize =-
Nutrient =Vitamin B12
SampleDescription =Typical values per 10g
SampleSize =(25% RDA) 0.25 µg
ServingDescription =-
ServingSize =-
Ingredients count: 12
Ingredient =Water
Ingredient =Buttermilk (10.5%)
Ingredient =Salt (1.5%)
Ingredient =Lecithin
Ingredient =Flavourings
Ingredient =Citric Acid
Ingredient =Vitamin E
Ingredient =Vitamin B6
Ingredient =Colour: Beta-Carotene
Ingredient =Vitamin A
Ingredient =Folic Acid
Ingredient =Vitamins D and B12



Now the second piece of news is that I am now on holiday, returning 14th September, by which time we will, I’m sure, be in a much better place concerning the API. I'm going to hurl myself around on a mountain-bike in the Wicklow mountains (south of Dublin), a beautiful part of Ireland where they seem to have forgotten to install any mobile phone masts.

Before I return to the UK, though, I am hoping to have available for you a set of test accounts linked to the new service which you can use to actually try out the beta service. These test accounts, when they become available, will be announced in the Forum and you can try them at the above endpoint.

Once the beta API service is fully ready for action, it will be hosted on techfortesco.com and our Microsoft Azure endpoint at http://tesco.cloudapp.net

In the meantime, you can use these latter endpoints for your application development using the CTP API (documented at http://www.lansleytech.com/tescoapiweb/reference.htm) - you’ll just get ‘more’ once the beta API is working and we’ve moved customer accounts across to it.

So, apologies for any inconvenience but let’s end on some good news: If you signed up at TJAM to join the Tesco affiliates scheme, we are now ready to accept your registration - see the Forum for instructions: http://www.techfortesco.com/forum

Monday, 24 August 2009

Tesco.com to create its own iPhone Grocery application

I thought we should let you know that our leadership team have asked us to look into creating an iPhone application of our own. Since TJAM, they have been really excited by the ideas and opportunities that have arisen and feel that we should also give our internal developers the opportunity to learn how to program for the iPhone.

We haven't taken this decision lightly now that we are fostering a developer community and we would still welcome some healthy competition from you - we're aiming to create a simple application that can do the basics of grocery shopping well, so there will still be plenty of opportunities for other third party iPhone applications to use the Tesco API to explore grocery shopping in a more fun and imaginative way.

There is some good news for third-party developers though - we have been given the go ahead to invest in a 'deep link' secure checkout web page designed for mobile use that will enable customers to checkout with confidence. All third party developers will have access to this checkout page.

We haven't agreed the scope yet, but we're expecting that the Tesco-owned grocery application will allow the customer to search for products from categories, and by text searching. It will also access the customer's favourites list and manage their basket. The software will use the forthcoming beta API and has no secret privileged access to our service so will not present an 'unfair advantage' over third party apps.

We have never said 'never' when it comes to writing applications ourselves but we don't want to discourage anyone from writing their own. However, occasionally we will want to reserve the right to step into a marketplace ourselves with a 'basic' application.

We have only just made this decision and we wanted to let Tesco API developers know immediately so they know where they stand. All I ask is that developers rise to the challenge and take on our application, now I've described it, with something better.