Tuesday, 6 March 2012

Tag Channels for Follow-up / Sticky EPG (2007)


This was an idea I had back in 2007 which coincidentally was shared by two other colleagues. We collaborated on the the concepts and jointly submitted the idea through the patents process. Unfortunately, having invested a lot of time and energy into fleshing out the patent proposal, and reviewing counter claims -- it was decided that there was enough prior art to nullify the patent application, i.e. the concept was considered a natural evolution of existing features.

Nevertheless, five years down the line, and I have yet to see this feature implemented in any form of user experience in the real world, particularly the satellite Set-Top-Box decoders. For the IP and Internet TV space, there is the concept of bookmarks, but I still haven't seen the concept implemented as I envision it.  I've worked with EPG UI Application development for some years now, and from the basic to the most advanced state-of-the-art, the closest feature remotely related to this idea is that of Favourite Channels.  But I'm pretty sure there must be an IPTV app around that exposes this idea, to be honest, I've not done an in-depth search to verify...

Here's the idea in a nutshell:
Posted: 18 July 2007 Tag Channels for Follow-up
Some users start channel surfing from the first available channel till the last channel, spanning all the channels - in the hope of finding something useful to watch. For each channel that seems interesting to follow up, the user tries to remember it - to get back to it - after completing the search.

It's often the case that the user would forget which channels were interesting, and at times, by the time it took to complete the search, and jumping back to what seemed to be interesting - the event would have finished.

Wouldn't it be nice to allow a channel to be tagged as ''interesting to follow up'' similar to Outlooks ''Mark for follow-up'' on email. When the user finishes the search, he/she could then bring up the list of channels for ''follow-up''. This will be the subset of channels he/she may be interested (yes, you have a way of setting favorites - but this usage scenario is transient - just for one instance).

Wouldn't it be nice if all these channels were being recorded in the background so the you don't miss out the stuff that for following up?

Realistically the box is limited to the number of tuners, and transponders carrying the channels as well - but don't limit this to broadcast - this feature will be possible in the IP-domain, there is no restriction on physical tuners - in the IP-world you can tune and record as many channels as you like.

Then end result could be a mosaic generated for the tagged channels - allowing the user to switch between channels, etc - all with confidence that your items for follow-up are being recorded and will be available for you to consume at your leisure...


Snippets of Patent Application

Background including Known Relevant References:

The invention is in the area of digital TV and the use of the Electronic Program Guide (EPG) and the problem of channel selection from a set of hundreds of available services. The area includes using the following EPG features:
1.      Selecting a television service to watch from a list that is greater than can be shown on a screen at once.
2.      Selecting a television service to watch after having browsed each channel in turn through channel surfing from the first channel, to the last available channel.

Most set top boxes provide a mechanism whereby a list of favourite services is maintained from which the user may select one that could offer entertainment. The user is left to make his selection based on historic performance, i.e. what has been shown on that service in the past – it does not show what that service is currently showing now, or indeed over the next few hours.

In addition, the use of a favourite list restricts the user to a choice of previously selected services – a subset of what is currently available. Thus, favourite lists are static, related to services, although those services themselves may not be showing something interesting that would be worth watching.

The Problem:

When settling down to watch television, or listen to the radio over digital TV, there are is a lot of choice(just over a thousand channels nowadays), certainly more services than can be examined at a time.
The typical scenario for searching for something to watch now, is to use one of the following:
  1. Using the EPG feature of channel listings (example, a Program Guide), one starts from the beginning (say channel 101) and browses till the end (say channel 999) to find a channel that is interesting that is worth following up.
  2. By channel changing in turn (from 101 to 999), spending about 1-3 minutes on the channel, to gauge the channel’s content.

As I am unlikely to see a service that I *must* watch, I will want to search through all available channels first, and then make a selection from those services that I *might* watch (or follow-up on). However, by the time I have reached the end of the search of services, I can no longer remember what the acceptable choices were, and the associated channel numbers!

For example, when looking for something to watch, a possible candidate is the BBC 1 News. But I’ll keep looking, and see if there is a Schwarzenegger film with a high body count. While looking for that, I’ll see a re-run of the definitive Sherlock Holmes series with Jeremy Brett. But I’ve seen them all, so it’s only a ‘maybe’. And so on, until I reach the end of my search, by which time I have no idea of what the choices were, or where to find them, or indeed what the channels or channel numbers were.

The Solution in Brief:

Two approaches for solving the two use cases must be considerd, that will ultimately solve the problem of going back to the list of channels that should be followed up to watch:
  1. Using the EPG grid, that usually displays a program guide consisting of channel listings: By selecting a service in a particular manner (e.g. pressing the purple button while the service is highlighted), it becomes ‘sticky’, always staying on the screen. The other services scroll around it, as the list is navigated. Further services can be selected in the same manner, also remaining on the screen, up to a limit imposed by the number of services that can be displayed on a single screen. Once I reach the end of the list of services, I have a list of services, all of which I might want to watch. I can now select what I consider to be the most interesting.
  2. During the channel surfing (from first to last channel), use special buttons (e.g. pressing the purple button whilst tuned to the channel), the STB “tags” the channel for follow-up, adding it to its “sticky” list in memory. Once I have channel changed to the last channel, I use another special button (e.g. pressing the yellow key) that will present the list of channels I’ve marked for follow-up. The presentation can be similar to the list generated in 1).

The Solution in Detail:

1) Solution for navigating the EPG listings

When the EPG displays a list of services to the user, make one of the remote control keys (e.g. the blue button) into the ‘sticky select’ key.
Consider the list of services displayed on screen to be made up of two lists, displayed one after another on the screen. The second list is scrolled up and down as normal; the first list always occupies the top N locations on the screen. Initially, the first list has zero entries, and the second list has as many entries as can be displayed on the screen (say 8). Behaviour is thus exactly the same as the normal EPG.
When the ‘sticky select’ key is pressed, the currently highlighted service is moved to the first free position in the first list (currently top of screen), and the services in the list above this moved down one. This implementation causes the selected service to appear to be shuffled to the top of screen. The first list now has 1 entry, the second list 7. As the user scrolls through more services, only the 7 lower services scroll – the top service stays put.
‘Sticky select’ another service. This service moves to the second position in the first list, other services move down one line. The first list now has two elements, which stay on the screen, while the user scrolls through the rest of the service list, displaying 6 at a time. Repeat as necessary.
Once the user has viewed the list of all services, he has a selection of services that he might like to watch. Pressing another key on the remote control (say the yellow button), moves the highlight to the sticky list. The user moves up/down in the list by the up/down keys, selects a service by means of the ‘select’ button (which then tunes the STB to the service in the usual manner), or unsticks the service by pressing the blue button, to drop this service from the sticky list. Pressing the yellow button takes the user back to the non-sticky scrolling list.

2) Solution for channel changing (ie. Tune to channel, watch for a short while, tag for follow-up)
The scenario is that one would start from the first channel, surf to the last available channel, tagging a channel (by pressing a special key e.g. purple key) for follow up as desired. Once finished, one then hits another key (e.g. yellow key) to view the list of channels that were tagged or “sticky”.
Because this process is a dynamic and the generation of the stick list is transient, the STB would maintain a cache in volatile memory of all the channels that were tagged. When the STB is powered on, the cache is empty. The cache is built, and updated each time a channel is tagged. If the channel has been tagged before, the STB could either ignore this channel (as it’s already in the cache) or remove the channel from the cache. Alternatively, the user could be asked to confirm deletion. Alternatively, by pressing the blue button, the user is able to untag or “unstuck” the service. This usage scenario should be easily customized via one of the EPG setup menus.
The cache is basically a structure that would contain all information required for the STB to remember the channel details. Usually these details are easily obtained through the STB middleware API, and may vary according to the type of digital TV environment. For example, for systems in the DVB domain, this would typically include all Transport stream data relevant for channel tuning (network triple, delivery descriptor, service descriptors) – and for DirecTV DSS systems in the US, typically APG data. The cache would typically be controlled by the underlying middleware, and could be realized using the existing mechanism of service list database, with the addition of a new flag that marks the service as Sticky. A typical EPG application could then use a simple interface like “Get number of Stick Services” to which the middleware will return the number of sticky services marked. The EPG would then iterate through the number of sticky services, and for each service returned, display the results in the list accordingly. This mechanism of list generation and display is already widely used in STB EPG/Middleware code, and would be relatively straightforward enhancement to this mechanism – making it possible to be realized in past, present and future STB EPGs.


Points of Novelty that go Beyond the Known Relevant References:

This mechanism permits the user to make an informed decision from a small number of nearly equally acceptable choices, in a manner easily integrated into the normal functioning of the STB user interface.
The novelty includes the generation and display of the “sticky list”. On the basic solution would be typlical list displayed on screen, similar to the usual EPG listings.

Possible Novelty Enhancements linked to the basic idea of Sticky Lists
A more advanced novelty is that the STB now has knowledge of the interest channels and can then decide to intelligently record these services in the background. Recording these services in the background ensures the viewer wouldn’t miss out on anything whilst searching for channels to watch. Moreover, it’ll offer enormous benefits to the user knowing that two channels interesting, and the user wouldn’t have to choose between the two, as the channels are being recorded. If the channels are being recorded, then the “sticky list” that’s generated by pressing the said key, could be displayed as a mosaic of services, with video thumbnails of the subset of “sticky services” – not much dissimilar from a mosaic channel, but only this time – this mosaic is dynamic, and generated by the STB in realtime, and by the STB itself, and not displayed by the headend.

Monday, 27 February 2012

EPG for the Blind / Talking EPG / Speaking EPG (2006)


In late 2006, I reminisced about a very special interaction I had with a blind person who left quite an impression on my life at the time. Whilst I was still at university I used to work weekends and holidays for a major national clothing retail store, called Asmalls.  The receptionist for the head office; as well as personal assistant to the CEO, was manned by a lady who was completely blind. She operated a computer, answered the telephones, listened to the radio and read books all by herself, she even lived on her own and braved the walk to work by herself....she was absolutely amazing. She inspired me to raise the idea of a Talking TV, learn about accessibility to the point of becoming evangelical about it - so much so that I took the concept from idea to prototype, in under a year, all in my spare time - back in the years 2006/2007 when absolutely no other company or research body were publicly demonstrating this technology on Set-Top-Boxes.  Alas, what should've been my chance at innovating for humanity, was beaten by another company who partnered with the leading blind organisation in the UK and produced the world's first Talking TV product, 3-4 years later...

Again, why am I posting this now - almost 6 years later??
If you've been reading my other posts on Ideas, you'll know that I want to use my blog as a platform to make public the ideas I've had to date as well as my current ideas, in the hope that it will lead to making connections and other opportunities.  With this particular idea, I want to show you that I've done real work, with real organisations and people, and have what it takes to take something from a concept through to completion, despite the resistance from a corporate who saw no real monetizing value of the concept, although fully supported the idea as being socially beneficial.

In 2006 I set out on this project pet project to prove I could build a talking TV product, using existing set-top-box hardware and software, without the need for additional and complicated hardware.  I sought out real people to get the requirements, and iterated a few prototypes until I had a working demo of the concept running on a BSkyB platform, that is currently being powered by NDS software (the fact that NDS powers BSkyB products is already in the public domain).  Working outside normal work hours I built up relationships with other industry players and engaged in workshops.  I found out at the time that the RNIB was indeed engaged with OceanBlue on a similar project, but they shared their requirements with me in the spirit of collaboration.

What set my project apart was that I used an implementation that was completely based on software speech synthesis, based on an Open Source technology called Flite (Festival-Lite), kindly offered free for commercial use by the kind people at Carnegie Mellon University.  The other projects took a different approach of enhancing the physical hardware chipset for speech processing functions, adding cost to the set-top-box hardware, the quality of the sound was questionable at the time as well.  What eventually transpired was that the end product that was released was based on a commercial speech engine offering better quality voices...

In short I was able to showcase my demo to prospective customers, had a real working prototype built in 2007 - I've got a video that proves it as well.  My work was mentioned in press release in Jan 2009, but we didn't go public with any official demonstration of the technology. Instead, the PR noted that:


NDS is also researching new technologies that will help sight-impaired people

to access Electronic Program Guide information and other digital TV services.

One such NDS innovation enables people who are sight-impaired, and others who

have difficulty using text-based EPGs, to hear EPG listings and content read
aloud in real time in a natural sounding voice.

Getting my work mentioned in a press release felt great - my fifteen minutes of fame.  Alas, despite all my efforts of self promoting the project, it lacked the monetizing appeal and wasn't in-line with the product's roadmap and customer expectations at the time. People were more interested in home networking, advanced 3D graphics and animation, to be concerned about promoting accessibility. The feeling was that from a technology-provider point of view, it's easy to implement but there wasn't demand. The onus was more for operators and broadcasters, and depended on regulation. With little regulation to enforce this upon operators, this feature fell right to the bottom of the priority queue.  Even six years later, in 2012, despite headway being made in EU/UK/US, it still not a mandatory requirement to implement accessible EPGs using speech synthesis. It is rather an optional, much desired nice-to-have, and the market demand is small...So to cut a long-story short, my project was put on the back-burner, giving enough time for other companies to catch-up and make use of this niche space that had yet been unfulfilled - and so in 2009 instead Oceanblue went public in Sept 2009...

Take a look at this video:

Suffice to say, I took that a little personal because I felt we'd missed out on the chance of becoming the first company to announce to the world that STBs can become more accessible, my Speaking EPG project dies a quiet death!  I even pursued the patent routes years earlier, but there was enough prior art in the PC domain to warrant the concept void from patenting...

The options a typical technology provider faces
STB Middleware providers are usually focussed on providing compelling, exciting features and pay little regard to promoting accessibility. It is also evident in most of the advanced user interfaces being published today, full of flashy animation and graphics, using 3D images and video clips, paying little attention to the usability requirements, especially for the rather overlooked segment of the market, the visually impaired audiences. Instead, the focus is on maximising screen real-estate as offered by HD resolutions - typically usability / accessibility is added as an afterthought.  Why can't these providers learn from Apple who've designed their products with accessibility in mind from the get-go? The operating system does not feel clunky at all, enabling VoiceOver or any other accessibility feature is almost natural to the interface...If only Digital TV Middleware providers and EPG Application vendors could support this mindset... So some of the options (as shared by an ex-colleague Paul Jackson) available to these vendors are:
  • Do nothing except what customer's (operators) specifically request 
  • Assume that this is a niche product / service area, thus provide APIs etc as below to let third parties sort it all out, as you don't believe it can make enough money or produce enough innovation in this area 
  • Assume that this is a niche product / service area, but try to make money and encourage innovation from within, leaving room to change direction if it turns out not to be such a niche area as is assumed
  • Realise that easy to use accessibility features and functionality are a key part of good general product and service design and will have positive, possibly unexpected and potentially lucrative spin-offs in the general mass market if designed in from the outset, and choose to develop accessibility solutions first, then encourage mass market for them (top down approach)
  • Realise that easy to use accessibility features and functionality are a key part of good general product and service design and will have positive, possibly unexpected and potentially lucrative spin-offs in the general mass market if designed in from the outset, and choose to develop mass market accessibility related solutions first, then provide more niche / specialised accessibility solutions once volumes of suitably enabled devices are in the market (bottom up approach)
Current Real-world Products Promoting Accessible Talking TVs
The RNIB has a good summary of the current technology offerings to date - see Accessible TV Devices promoting the Smart Talk TV (from RNIB/OceanBlue partnership), Sky Talker (BSkyB's own proprietary standalone device) & Apple TV (promoting Apple's VoiceOver technology).

I can offer consultation on STB/TV Accessibility Topics & Technology
Based on my close experience and hands-on implementation of the technology itself, I can offer consultancy on accessibility issues around TV. This has become a personal passion of mine.  If you're looking to implement speech processing in software, looking to prototype and experiment with speech technology options, I can advise on the options available.  I am planning to write a white paper that describes this topic in fair amount of detail....


White Paper In Progress
In my upcoming white paper, I will introduce the need and demand for Speaking Programme Guides using data from a variety of sources, will explain the high level requirements from a user point of view, provide an industry update as well as benchmark the technology options available today. I will also highlight a template project that one can use based on Open Source technology....Please get in touch with me if you can't wait for this white paper....

Other Snippets of Industry activity proving I wasn't all that nuts

Proof of what the market is doing:



                                                            oOo
                                         P r o o f s     of       I d e a 
                                                             oOo        
Original Idea Posted: 18 October 2006 EPG for the Blind

I have a friend who is blind - she is employed as a personal secretary(is able to email, fax, draft letters, etc), lives on her own, cooks her own food, travels to work alone, listens to music, reads books and is an amateur musician - which is quite amazing really.

She is able to do her work (and this is going back to Windows 3.1 days) by using specialised Microsoft product for the blind (hard-of-seeing?) - i.e. every key stroke is read out, etc. She is so good she can even touch-type without any braille on the keyboard...This is great for the PC, but what about TV, especially the EPG?

Certain channels broadcast events with audio descriptions - this is great. But what about the pressing the remote control, menu keys, menu options - grid, planner, etc- how is a blind person to navigate this? Also, how is one to find all the channels/events that have audio descriptions or even radio channels?

Basic idea: Embed audio as part of the navigation of the EPG, e.g. Pressing menu, would do something like read out ''Menu'' and as one navigates through the menu, each option in turn is read out...
That is only the beginning - the next step would be to embed audio description into the event information/synopsis.
And a further step would be to provide a personalised guide that is filter for the person's specific needs - and as she navigates through a grid for example - the content of the grid block is read out aloud...

Embedding built-in EPG audio samples/voice overs shouldn't be too much of a problem - a few K of memory probably - but with modern STBs this shouldn't cause a problem. Broadcasting audio description of events may add little to the BW overhead, but a few Kbps is likely...

Where is the money to be made? None - I hope - think of the service this would do to the community/society... 

Comments Received...
 An alternative approach which eliminates the cost of producing and transmitting spoken EPG data and synopsis information would be to simply enable the text highlighted / presented by navigation to be delivered as a data string out of a serial / USB port on the STB at the same time as it is rendered on the screen. External devices which are capable of text to speech are readily available (including as a standard feature of Microsoft OS) and offer multi language ''dictionaries''. The same methods can be extended to provide subtitle to speech capability.

One commercial downside is that it would be possible for third party devices to ''harvest'' this EPG and Synopsis data for other purposes. If this is considered to be a problem then the serial data could be encrypted using NDS solutions so only approved / paired devices could decrypt and text to speech these strings.
---------2006--------
That is interesting information indeed - but on the humane side, I'm against add-on peripheral features (leading to bloat, just look at the X-Box as an example!) - if a system can be made to natively support a feature, then it should...it may even be considered discriminatory - why should someone who's blind have to incur extra setup costs to experience TV compared to someone who isn't blind?

If the technology exists, it may well be worth considering implementing/porting this text-to-speech stack directly in a middleware itself...
--------2006---------
Thinking about this a little more: The feature to support the blind, should not be obtrusive, invasive and disrupt the viewing of other abled members of the household. As such, it should be discreet and could possibly use the following:

- The middleware could provide separate accessibility features like an independent remote command set - that allows one to seamlessly browse the EPG data without disrupting the live viewing at all. The EPG information can be streamed wirelessly to a headset and thus the audio of the TV program currently being listened to (by others), is not disrupted. Even helpful audio description could be sent in this format.

So moving forward, possible solutions for an EPG for the blind include:
1. Embedding audio to each remote control command
2. Embedding audio into the TS stream
3. Using a third-part add on that does Text-to-Speech translation
4. Building a Text-To-Speech translator as a component of the middleware
5. Streaming this EPG info in the least disruptive way, e.g. wireless headset
6. The service provider to provide a separate channel (like info/help) dedicated to serving the needs of the blind (like commentary on what's on, etc - perhaps even through an interactive app?)
--------2010---------
I just wanted to share with you some real life feedback of UK's Sky+ HD accessibility feedback. For the original post, you can read the Damon Rose's Blog.

Quote:
Hi there.
Sadly the new Sky HD box isn't accessible.
The elements that I most want to use, and that I could use on their previous boxes, have now been re-designed in such a way that they're impossible to navigate.
So whereas I could previously go into the list of programmes I've recorded on Sky + PVR, arrow up and down and have a good idea where my programme is ... I now can't. Arrowing up and down no longer is confined to the 'programmes you've recorded' list ... it also takes the control left and right, in a manner which is hard to understand if you can't see. It goes into sub menus of 'series linked' programmes ... and takes you off round the screen if you arrow too far.
Very disappointing, a disappointment that I now spend 10 pounds a month extra on.

So one lesson to learn here is a well known one, but worth reminding ourselves for any development project that has to deal with a legacy of users: be careful to break features that people have become accustomed to, consider all your users no matter how small the market is, customers are paying for the service and are contributing to the bottom line...

Like all other improvements to software products, accessibility needs to be built in from the start, and not added as an afterthought--------

Monday, 20 February 2012

Subscription-based Computing (Raised March 2007)


As mentioned in a previous post, another aim of this blog is to share my ideas...I have finally mustered up some courage and guts to start the process of showcasing some of the ideas I've had in the past, as well as ideas currently germinating -- opening up to public scrutiny, in the hope that people leave constructive feedback, or get in touch to jointly pursue ideas going forward -- ultimate dream is to latch onto an idea promising start-up possibilities.  This is partly due to Jeff Jarvis's influence as I'm currently reading his recent book Public Parts, having first read What Would Google Do which inspired me to create this blog in the first place!

I am also wary that my ideas at the time was raised whilst working for a company that is quite secretive and security-conscious. But I'm taking the risk in so far as only sharing my ideas that were raised that lead to nothing, zero, zilch: topic was raised, discussed and not taken forward. Hence I'm confident there are no existing IP-infringements on what I'm about to disclose now as well as in future posts.  After-all, these in fact were my own ideas that were submitted for review to an ideas committee but nothing really materialised mostly because the ideas were not relevant to the core business at the time... I had personally kept a record of all my ideas submitted for reasons such as this post...

Why am I still taking the risk then??  Well, I have a bee in my bonnet really - but I'm not stupid, I've edited our company-sensitive info.  I know that deep down inside of my I've got the entrepreneurial spirit, the mind of a thinker, a rebel and a desire to take risks, disruptive -- although I've not really taken most of my ideas past the initial stages, i.e. move from Idea to concept, to prototype (I have actually pushed one through to completion though, which you'll get to know of on a future post, "Talking TV"). You might think me crazy, but the more I dabble with ideas, the more I read about start-ups and entrepreneurship, the more closer I feel I am to latching on to something for real...it's a feeling I can't shake off, call it instinct, time will tell - I'm only 34, there's years in my yet to be inspirational...

I also want to prove to people out there, especially companies seeking like-minded-people such as myself, that my ideas are not just nuts, because there are companies that are indeed making similar products.  So unlike some folks who say "well I wish I would've thought of that", I am saying that "Dude, I did have the very same idea!" and can show you the proof as well...I want to be noticed (Google, please find me). I want to work for Tech Giants, the likes of Google / Apple / Microsoft - that's no secret, I would love to go to Silicon Valley / Redmond one day to experience the excitement of managing a start-up or working with a start-up...what's wrong with dreaming hey??

You don't have to believe me - it's the truth - that's about it.  I want to share the ideas I had in the past that are actually becoming real now, to not only prove to you that I do have innovative ideas but also to strengthen my case for offering professional technical consultancy...

Here goes:  I'm kicking off my first public idea by provoking some possible contention.  I had the notion of a WebOS, replacing the classic PC OS with an all-in-one-simple-device back in 2007 before Google or HP mentioned ChromeOS or HP/Palm's WebOS.  Of course those giants might've have seeded the ideas around the same time as me, but according to Wikipedia, Google first started work on ChromeOS in early 2009; HP also took forward Palm's WebOS around the same time in 2009.  So I keep telling myself I was two years ahead of these guys....

My idea went further in that Service Providers will have provided boxed, branded-units that basically just worked, was always online and met the basic technical/PC needs of the average PC consumer...Basically I predicted exactly this as portrayed by Google themselves (see video below).   Personally, I still think there is mileage in pursuing this going forward - most probably make a business on the back of ChromeOS - why? Because people still need to customize their applications and environment, ChromeOS doesn't yet offer you stress-free, seamless subscription-based computing. My bet is people will still want something that works out-of-the box, first time, without fuss (no wiring, no wireless contracts - it just works)....

                                                                      oOo                         

Below is a thread of discussions of how the idea unfolded and was left dangling in the air:
                                                                         oOo   


Subscription-Based Computing, Idea was raised on21 March 2007

I am wondering why a subscription-based model to PC computing hasn't taken off, or perhaps has it even been considered?
I'm questioning the need for having a PC in households. The majority of people are not techies, and will never be techies. People want things that just work, without needing any special knowledge, etc. With these assumptions, the requirements are simple:
1. I want to connect to the internet (and I don't care how it happens - it should just work)
2. I want to send email (and I don't want to know anything about POP, SMTP, User name, password, etc)
3. I want to write a document (and I don't care about integrated features)
4. I want to maintain a simple spreadsheet to manage my accounts
5. I want to be able to share photos (and I don't care about drivers, photo software, etc. My service provider can sort this out)
6. I want to watch TV (anything I fancy and no fixed schedule please)
7. I want to play games
8. I don't want to worry about Firewall protection, antivirus, anti-spyware, malware,etc.
9. I want access to my data anywhere, any time.
10. I just want my pc to work out-of-the-box, hassle-free.
And the most interesting part is: I am willing to pay a subscription to a service provider (BSkyB in 30 years time maybe?) I just don't care about the cheapest broadband service, the best AV, the best hardware, I don't want to manage OS upgrades, etc, etc - I want my service provider to do all of this for me - hassle-free - computing!
A PC is supposed to be general-purpose - but is it really that general? What do the majority of users do with their PCs? It would be interesting to learn if any surveys are available in this area...
Can such a system be realised? The consumer just subscribes for the services, and the service provider just serves? Can this semi-closed system survive? Will people be interested in this?
What I'm questioning is the need for people to buy PCs and for people to have the know-how to configure and operate them. The majority of people just want to use the internet, send email, view pictures and watch movies.
So, just as we have a subscription model for mobile phones, digital tv, etc - could the future provide a similar service for computers? For example, I purchase a subscription from Sky. A SkyPC is delivered, it may need installation as usual. But once installed, I have all my basic computing needs satisfied.
This device is still a PC, but a Sky-branded one - not a STB.
The device could be so dumb, it wouldn't even have a hard drive - a simple client connecting to a terminal. The terminal serves the needs of all clients. Ignore the physical limitations of this idea right now, and assume the infrastructure is present in 30-50 years time....
If this can fly, then the winner will truly dominate house-holds... 
Threads of discussion:


_____________________________________________
Sorry for bringing up this old thread again – but I was wondering if we were continuing to do anything in this area? Vodacom SA has released an offering that is not dissimilar to my original idea: http://www.linkbook.co.za/


Basically looking capitalising on the cloud, web apps, and web OS, offering a tightly controlled interface (as we do for EPGs) but still providing a portal to the internet (monitored), offering basic necessities of a browser, messenger, skype, etc. Everything is plug and play, the user basically doesn’t have to be technical.


Have we looked into the idea of being a Data Service Aggregator/Mediator? Why are devices exposing yet another interface for connectivity – 3g/4g sim cards? What if there was a mediator that deals with the likes of Virgin, O2, T-mobile, Orange, etc. I purchase a huge data bundle from all these providers. Consumers sign up with me for data services, they don’t care about the underlying platform offering, they just want to be online. I have a setup, just as current mobile operators do with their management systems, but my system intelligently handles handover of the data service from one operator to another, example – when a user is in an area known for poor coverage from Orange, but excellent coverage by Vodafone – because of my relationship with these operators, the user will seamlessly switch from one operator to the other, guaranteeing a sustained level of quality.
With this relationship and system in place, I can offer always on connectivity to subscribers without them worrying about where they get the data from. This could be extended to hot-spots as well, my system could negotiate deals automatically with hotspot providers without consumers having to worry about local payments, and configuring the connectivity…


_____________________________________________
This is interesting news indeed. I've tried to get the gist of the EasyNeuf (using Babelfish translation - why didn't the French colonize South Africa so I could've learnt French instead :-)


I am interested to learn more about that company; and if that project has had much success. Looking at the press releases, there seems to be some recent publications.


Although the idea of having 3 versions of the interfaces, taking the user from beginner to intermediate and then to advanced level sounds good (as it is empowering the users) - that's not the approach I had in mind originally - as I was targeting the segment of people who just want a box to do the basic stuff - non-technical users: parents, grandparents, or even younger middle-aged individuals who just couldn't be bothered with all the fancy applications - but just want to use their email, surf the net, shop online, socialise, do a bit of budgeting, shopping lists, downloading content, playing movies, listening to music, access to TV, etc, etc. That would be the entry level. The moment we grant freedom to advanced level - then people would want to experiment, tweak, configure, enhance, etc. That shouldn't be allowed - get a PC to do that :-)


Besides, if after paying a subscription of 40 euros (in addition to a 150 euro down payment) - after 2-3 years, the amount spent on subscriptions may well have amounted to the cost of a new laptop, without having to hassle with subscriptions. Having said that, the value add must be so good that consumers stick to their subscriptions because of their peace of mind, ease of use, flexibility, security, maintenance-free and mobility - that can be offered by such a device.


Yes, such as system presents a plethora of technical challenges: network infrastructure (routing, wi-fi, adsl, 3g, etc), Operating System (local OS or thin client), packaged applications, interoperability, etc, etc.


But I share Ronnie's view in that I just cannot see this not happening in the medium to long term future; and quite certainly a disruptive technology.


_____________________________________________
I will point at a french stuff that is exactly what Muhammad is talking about: it was announced last year by Neuf Telecom, and has been launched since then.


They call it ‘’easy neuf’’ and came with a surprising microwave-ish form factor !


Below is a related article in French: http://www.clubic.com/actualite-38705-easy-gate-box-routeur-pc.html


The commercial site is  http://www.easyneuf.fr/


It is based on Intel M600 + 852GM, 512 M RAM, 512 M Flash, linux 2.6.17, firefox, Gimp image soft, multimedia player and a small productivity suite (spreadsheet, text …).


No internal HDD (to be extended with external USB2 disc or memory stick)


Note that the product offers 3 level of UI: easy, ergo and expert (see picture above).


I have no idea where they are today and if they are successful. The price starts at 149 euros for the central unit (oven). See the ‘’tarif’’ (pricing) section on the commercial site.


Funny, even though I share the feeling that there is still something to dig here.


____________________________________________
Yes  - of course! The more comments the better…I really think subscription-based computing is not that impossible - especially when remote storage is becoming cheaper, web technologies providing not only online office apps, but video editing tools as well…there will come a time when the need for a monolithic local OS will disappear - and everything will be managed remotely and distributed…And assuming the problem of getting TV over the internet is solved, you not only have your personalised mobile "PC" but also access to TV…The best part is, no pains of security alerts, upgrades, etc…complete trust in your service provider! Who knows, we may travel full circle going back to the days of thin terminals….
_____________________________________________
Thanks again for replying. Perhaps the word "PC" is conveying the wrong meaning - I envision a closed device (could be a laptop, could be your STB Gateway, or STB itself) with a wireless keyboard (so you could use your HD tele) or indeed - a laptop-like device.


The device can only be tweaked and configured by the service provider, like [ServiceProvider]. Call it the "[ServiceProvider] Explorer" box - that meets all your internet or computer needs…


Think about it - how many people really use their PCs to their full potential? There should be some research to back this up: Mostly browse the internet, check email, online shopping, a bit of Word processing, and a bit of spreadsheets. No more than that. So a box that is always on, does not need tweaking, can interconnect with other devices (printers, cameras, etc) - and provides not only the security for online shopping - but also peace of mind because of [ServiceProvider]'s reputation with parental controls ( XXX's business)…


[ServiceProvider] could even have their own secure payment system ( XXX to provide the technology of course)
[ServiceProvider] would have to have their own OS (Linux or Fusion) - ( XXX to provide of course)…
[ServiceProvider] will need headend control -  XXX to provide of course… :-))


What a stir this would cause to Microsoft and other OEMS :-))


_____________________________________________ 
I'm sure you're probably getting loads of emails for review of ideas - I just thought I share this one more idea with you - and if you could provide your comments/feedback/gut-feel - that'll be great :-)


At a very high level: Provide box-standard, packaged solution - of a personal computer - providing:
- always on access to the internet (email, chat, browser, etc)
- office applications
- security (viruses, malware, etc)
- parental controls (filtered view of the internet) - using some sort of entitlements
- unlimited remote storage
- free maintenance, support, upgrades, etc
- usual share photos, content, etc - USB, plug and play, etc…
[Nick>]  Don't you think that people like HP, Dell and others already aspire to this?


Picture this: [ServiceProvider] offering the [ServiceProvider]PC. Engineer comes home, and installs the box. You don't need to worry about broadband tariffs, ISPS, Viruses, Software, Phone line, etc, etc. You have a box standard, all the tools one needs to meet the basic computing needs…offered by service provider.
[Nick>]  I agree completely with your proposition, and I think this is where [ServiceProvider] would like to go. The reason that they might shy away from it just now is a) most PCs are very user configurable, and this can lead to some very nasty support call headaches. With PCs (and even Macs), there isn't a viable business in supporting home users.


The closest I have seen anyone come to this is the One Laptop per Child project (OLPC). If we could reproduce PC functionality with STB levels of reliability (you may laugh, but they are much more reliable in practice), then you might get close to your vision.


It works for TV, mobile phones - why can't this model work for the PCs.
[Nick>]  Because its very easy to mess them up as a user.


The majority of people just want something that works - not technical gurus - they don't want to control their pc environment - it's a headache really…
[Nick>]  So how about something which is more like a PC latop then, or more like an embedded device, and heavily cost reduced. Maybe very carbon efficient too.


What about parental controls for the internet?? Surely  XXX can offer something in this space?
[Nick>]  Looks like a good idea


I've blogged about this here: http://XXX


What do you think?
[Nick>]  We need to think about what the functionality as a user would really need to be, to provide something that would need little or no user support.


Cheers,
Muhammad


Tuesday, 14 February 2012

My Professional Software Engineering Background...Part 2

Latest update 2022 - CLICK HERE to read my reflections on the 22+ years of working, then read below for details of achievements.


Okay, as promised in an earlier part one post, I will attempt to describe my work experience:

                                                                               oOo


    Public mentions of projects I helped deliver:
    DStv launches 4K Decoder and OTT Streama Device

    Tuesday, 7 February 2012

    White Paper Preview: Technologies for Internet TV



    I am working together with a friend on a joint white paper covering popular technologies around Internet TV. We've been working with this on & off for a good few months, in between work, balancing family needs and what little spare time we have.  The idea is to share our skills & experiences through white papers, thus attracting offers for consulting...I'm releasing this very draft work in progress to act as a motivator for us to actually finish this white paper in 2012:

    If you stumble across this post and are interested in this topic, please get in touch.

    -----------------------------------------oOo-------------------------------------------------

    General Overview of IPTV Technologies, covering Online Portals with media consumption via PC, Internet Streaming technologies, Client implementation (PC, STB, TabletPC), Open Source tools & Home Networking


    Increasingly Telcos and Broadcast operators are looking into increasing their revenue generation stream by providing multiple mechanisms for customers to consume entertainment content over the Internet. These businesses usually decide that the achievement of this objective can be realised by having a web (or online on-demand) presence by creating a platform for delivering content over the Internet.

    The road to success lies in solving a multitude of issues in a variety of domains including marketing, sales, legal, and technical. This white paper focuses on the technology choices and challenges for implementation, providing a discussion point around a high-level, simplistic solution intended to highlight the challenges these businesses face when creating the solutions.

    So from the construct that a business decides to have a online presence and wishes to provide a entertainment video streaming solution to augment the bottom line the following issues needs to be resolved:
    • Rights to Content for distribution
    • Marketing the solution against other vendors
    • Technical solution to implement the portal and distribution mechanism
    • Support for customers
    Rights to Content for distribution
    This is key to the success of the project: If the telco is unwilling to acquire the right mix of content based on its targeted subscriber base the project is likely to fail.
    The fundamental issue impacting this area is getting the content providers to allow distribution of the content over the Internet in the background of security concerns where it seems nothing is safe to hacking attacks on the Internet. Content providers look for assurance that their content will not be compromised and redistributed without them realising revenue.

    This usually requires utilising a Digital Rights Management (DRM) solution into the product where the content provider feels satisfied that the protection mechanism is secure enough for them to use the solution.

    Choosing a DRM solution is an an activity that involves thorough planning right at the outset from designing the architecture, as this is a fundamental component to the system architecture, from back-end distribution to consumption on the end-consumer device. A number of DRM-solutions exist in the marketplace, this paper will focus on the popular (not necessarily most secure) solutions including Microsoft Windows Media DRM, Apple Streaming DRM, NDS Secure VG DRM, …

    Marketing of solution against other vendors

    Since businesses need to differentiate in the competition space, focus is made on a variety of factors such as price, product features (integration with devices, social networks, widgets etc) and type of content (niche versus premium) amongst others.
    Companies with existing Portal solutions (TODO: Give example references) generally adopt a common theme of marketing, specifically centred around on-demand, instant access to content, variety of content, consumer freedom to choose to watch “whatever you want, whenever you want, on any device, anywhere”. Of course this is music to the consumer’s ears but the proof of the pudding lies in the actual implementation - and to realise this marketing objective is to overcome a number of tough technical challenges as we’ll focus later in this paper.

    Technical solution to implement the portal and distribution mechanism

    The technical challenges in relation to the above two is a simpler problem to resolve and relates to creating the platform, infrastructure, know-how of a wide variety of issues that encompass the following areas:
    • Online Portal
    • Subscriber Management
    • Payment System
    • Content Management including Acquisition, Processing and Distribution
    • Content Consumption by devices
    • Support Systems
    • Regional Infrastructure

    Online Portal

    This is the gateway into the offering by the business; the user experience greatly drives the success or failure of the system. The Online Portal must provide features for:
    • authenticating the user;
    • managing the user’s profile;
    • billing information;
    • social network integration;
    • allow searching for content; and
    • placement of  recommended content for the user based on their previous usage; and
    • YouTube-style features to allow the user to follow trends and watch what other users of the system are watching, have recommended / commented upon etc. In essence this is the public face of the content management system which is integrated with the billing system and distribution system.


    This is an intensive area requiring expertise in creating a very usable interface for all types of users. Along with this, the main feature is to allow consumption of the content and is typically based around using a Flash Player (TODO Reference to Flash) providing a compelling experience in comparison to the user’s TV.
    There is a tremendous amount of integration work required, typically focused on:
    • adaptation of the user experience across all web-browser platforms
    • the content player that renders the content based on the format of the content
    • what audio/video players are available
    • what devices are required to be supported
    • what features are to be supported such as the protocol for delivery of content
    • support for degradation of video quality as the bandwidth available to the user fluctuates based on usage pattern in the user’s home;
    • the bandwidth available to the user;
    • the pathway between the source of the content on the Internet and the user’s consumption device.
    • Additionally other features including the DRM technology dictates how the interaction occurs.


    We shall aim to discuss each of the above points in further detail in future sections.

    Subscriber Management

    This domain needs to be well understood by the business model. It broadly encompasses the following areas:
    • uniquely identifying the user, the device (including the limitations of distribution profiles) being used for consumption;
    • business model restrictions based on subscription tier, promotions, discounts, billing information etc;
    • the management system integrates with the online portal in addition to the content management system as well as the payment system to realise the revenue.

    Payment System
    This is typically a legacy or third party system that the operator utilises and integration of this to the online system needs to occur.
    <TODO add more info>

    Content Management including Acquisition, Processing and Distribution
    This is a significant aspect of setting up the process flow and delivery chain for content consumption by the operator. Depending on the investment, an operator budgets for the solution that need to be defined encompassing the following:
    • Setting up infrastructure to acquire content from diverse content providers
    • Automating the ingest of content in to the system
    • Preparing the content for consumption of the variety of devices the platform is intending to support, ensuring that the correct DRM aspects are catered for each type of end user device
    • Managing the content through its life cycle which may entail marketing aspects such as promotions
    • Delivering the content through a variety of delivery mechanisms requiring integration with third party vendors


    Content Acquisition

    This area involves a plethora of decisions that need to be made about the content and how it becomes available on the platform and ultimately how it gets delivered. Issues to resolve include:
    • What format the content (audio, video) is provided in by the content provider?
    • What metadata is required for presenting to the user on the online portal or during playback and how that is transformed from the input all the way to the point of consumption?
    • Whether encoding services (software and or hardware) are required to transcode the content to the end device format?
    • Whether features such as adaptive bitrate streaming is required?
    • Whether support for live, restart, catch-up, on-demand playback of content is required?
    • What third parties to select and what level of integration is required?
    • What licensing issues resolve with content owners?
    • What licensing is required for encoding to different device formats?


    Content Processing

    Once the content has been ingested into the platform, decisions around the following areas need to be resolved that include:
    • What is the life-cycle of the content?
    • What promotion mechanisms are required?
    • What DRM(s) need to be applied and what business models will be applicable?
    • How is the content encrypted (dictated by the DRM(s) in use)?
    • How will the variety of DRM(s) work seamlessly as the user begins consuming content from a variety of devices?
    • What extra metadata needs to be added to support different types of playback and interactivity during consumption?
    • What support is required by the systems administrators to manage outages and issues with the process flow during deployment?


    Content Distribution

    Once the content is available for distribution it needs to be made available for consumption over a variety of mechanisms; issues that needs resolution include:
    • Protocol for delivery on the network (RTP, RTSP, HTTP, RTPM)
    • CDN (Content Delivery Network) support dependent on protocol choice
    • Commissioning of hardware resources to serve content to devices
    • Integration with DRM system(s)



    Content Consumption by devices

    Dependent on the number of devices being supported a large amount of effort is used in integrating the Content Player in to the OS (Operating System) framework of the end-device. This entails a variety of issues:
    • Choice of devices (PCs, Macs, Tablets, Smartphones, Set-Top-Box, SmartTVs)
    • Player Usage (such as Flash/Silverlight/QuickTime/Windows Media Player/Custom) of player using bespoke or open source software (typically involves providing plug-ins for web browsers on desktop (Windows/OSX/Linux) platforms and integrating to the mobile / tablet devices OS framework
    • Integration and maintaining integrity of DRM(s) on devices
    • Fine-tuning user experience of UI and play-back
    • Supporting integration between devices via UPnP (Universal Plug & Play) and DLNA (Digital Network Living Alliance) to support download and play-back between devices


    Support for customers

    This area revolves around trouble-shooting, resolving issues due to plurality of devices and the versions of software they run and creating baselines for the operator to know what issues cause outages and rectifying them.

    Infrastructure capacity

    A successful provisioning an online content portal with capacity for multiple device streaming to the home relies on fundamental components of infrastructure support being in place. Not only does the business need to ensure that it can deal with system loading (hundreds of thousands of subscribers accessing the content simultaneously; protection from attackers intent on crippling the service through denial of service attacks) but more importantly the business would have carried out an analysis covering the following areas:
    • Number of subscribers with online access, i.e. able to access the Internet?
    • Intended delivery mechanism for streaming (xDSL, WiFi, 3G, etc)
    • Solutions for supporting a number of different delivery profiles
    • Regulatory compliance - what relationships or conditions are in place to allow/prevent delivery of content over third-party networks (e.g. not all ISPs will allow traffic through)
    • Content Delivery Networks - is enough infrastructure in place to support the demand (Edge servers, etc)
    • Reliability of the underlying delivery network?

    Infrastructure and Regulatory concerns might not be an urgent topic to address if the business is operating in a developed country where access to Internet is now considered a basic utility, but for other parts of the world, especially the Indian/African countries, Internet adoption and underlying network infrastructure has not reached the maturity levels as say, compared with countries like the United Kingdom/Germany where there is a high penetration of cable supplying xDSL for instance.  In South Africa for example, xDSL is not the main player of Internet connectivity, instead 3G WiFi is the dominant player - and for such markets, the business must therefore have a solution that meets the variety of access mechanisms in front of the user.

    <TODO Examplae Case Study>

    We’ll now walk though a general architectural overview of the components in and end-to-end system, assuming the required infrastructure exists...