Saturday, 14 March 2009

Scared? You should be - its the beeb!

Job Title: Software Engineer
Department: BBC FM&T Scotland

A job specification is a written statement of the essential characteristics of the job indicating duties, responsibilities, the degree of authority of the function, and the required knowledge, experience and personal attributes of the post holder.

To work closely with the Technical Project Managers, Designers, Developers and Producers, to develop and build high quality new media services for the BBC.


The post holder will report to the Technical Project Manager / Team Leader, Scotland.

BBC Future Media and Technology (FM&T) is responsible for delivering a wide range of interactive services to license payers on all the main digital platforms including the internet, mobile and interactive television.

BBC Scotland is responsible for local and national output across Scotland on TV, Radio and Online. New Media services include amongst many others: T in the Park, BBC Sport Scotland Online, and a large range of television and radio websites – e.g. River City. The Glasgow based FM&T team provides the design and technical resources to support and develop all new media activity across BBC Scotland, working closely with the production teams around the country.

To support the work of the Designers, Producers and Developers through the provision of high quality, reliable coding.
To manipulate and re-purpose code/functions.
To liaise with other production and online teams on technical issues.
To contribute to design and development ideas for Websites.
To liaise with Producers and Designers to contribute to the look, feel and functionality of interactive concepts.
To support Producers by accurately planning and estimating the time and resources required to produce commissions.
To liaise with other technical online staff in the other BBC centres to keep abreast of new developments and share experience and expertise.
To ensure that all work is carried out in line with the BBC’s Future Media Standards & Guidelines.
To document code projects to agreed standards.

Substantial professional experience of web development and a thorough understanding of the structure and function of Websites.
Thorough understanding of XML and XSLT, with regard to transforming XML to HTML or other text-based formats.
Thorough understanding of at least one high level object orientated programming language such as Perl or PHP.
A good working knowledge of MySQL databases, with regard to storing, organising and retrieving data from within Perl/PHP.
A good working knowledge of HTML 4.01 and XHTML 1.0, including frames and tables.
A good working knowledge of CSS and how best to separate content and layout for the Web.
Knowledge of relevant key issues - e.g. layout variations caused by browsers, screen resolution, colours, etc.
Broad knowledge of BBC output across all media and an insight into how Online services can augment existing services.

Experience of templating systems such as perl’s HTML::Template.
Experience of using or developing for a Content Management System.
A working knowledge of Flash 9 / ActionScript 3.
Experience of using Apache’s XSSI functions and htaccess files.
A good working knowledge of cross-browser Javascript.


Ability to work with a team of project managers, producers and designers and to apply structured creative and practical thinking to the resolution of problems in a highly professional environment.
Ability to meet challenging deadlines.
Flexible approach to both individual and team working.
Ability to express technical ideas in an accessible manner.
Good time-management in order to plan and organise the delivery of projects to deadline.

Analytical thinking - able to simplify complex problems, processes or projects into component parts explore and evaluate them systematically.

Influencing and persuading - able to present sound and well reasoned arguments to convince others. Can draw from a range of strategies to persuade people in a way that results in agreement or behaviour change.

Managing relationships and team working - able to build and maintain effective working relationships with a range of people. Works co-operatively with others to be part of a team, as opposed to working separately or competitively.

Flexibility - adapts and works effectively with a variety of situations, individuals or groups. Able to understand and appreciate different and opposing perspectives on an issue, to adapt an approach as the requirements of a situation change, and to change or easily accept changes in one’s own organisation or job requirements.

Communication - able to get one’s message understood clearly by adopting a range of styles, tools and techniques appropriate to the audience and the nature of the information.

Resilience - manages personal effectiveness by managing emotions in the face of pressure, set backs or when dealing with provocative situations. Demonstrates an approach to work that is characterised by commitment, motivation and energy.

Thursday, 12 March 2009




  1. 1st
    May – end of research

  2. 1st
    August – end of implementation & testing.


  1. We can assume that
    there is a sensor for every square foot of area of the flat / house.
    if not, then it is inferred from the times, entrances & exits to
    other adjacent areas to the unknown. There should be a minimum of
    unknowns since inference will become ambiguous.

  2. The sensors are
    not moved and are always working.

  3. Someone will be
    periodically reviewing the data whether there is a warning /
    emergency or not plus someone to check system viability.

  4. Emergency systems to pick up critical events
    would be handled by the specialised system, instant warning. May or
    not use same sensors. This system is designed for care
    providers to have more information to provide suitable
    care rather than be an hour by hour detection / alarm system.
    Some conditions if met could produce a warning after 30 mins; some
    after 6 hours; some, 2 or more days would create a warning, see
    trending below.

  5. Each house is different, and will have
    differing numbers of sensors and qualities.

  6. External doors & windows are higher
    priority than internal ones.

/ Features

  1. The system will work with any number of sensors and the minimum, 1.
    This flexibility is essential as people have differing access to

  2. Diagrams are deliver the message quicker than text, visual
    informational aids.

  3. The semantic of the living space is plotted with activity plot overlain.
  4. Trending can be observed over hours or weeks or months, perhaps its true benefit is on the long term scale.


  1. Life threatening conditions - what level of
    support? eg, heart attacks, strokes, falls etc. This system probably wont help with acute medical conditions, more spot the trend of a developing

    chronic complaints.

  2. Conditions which are non-life threatening but
    which need care. Dementia, incontinence, onset of deafness /
    blindness, mental health issues, and so forth - 3rd


  1. What are
    the common problems faced by the elderly & disabled? Who would
    know this? Nurses? Care providers. 1st step is to find
    out how to get to the people who know. This is to create template
    rules to assist the system with the 80% or majority of cases.

  2. Current 3rd
    generation systems providers.

Methodology - collecting the data.

  1. Divide the flat
    into logical units - a schematic will be helpful for this.
    unmonitored_outside | entrance1 | kitchen | corridor | living room |
    hall | study | bedroom | bathroom | entrance2 | unmonitored_outside

  2. Then show each
    unit's typical activities - monitorable states - like tap on / off,
    door open / ajar / closed / locked / unlocked

  3. The unit ought to
    be thought of as a cell to which there are entry & exit times,
    duration occupied, name, list of possible activities, detected
    activity and duration, came from, going to.

  4. The unit will have
    totals for a single period: total time occupying the cell (hr/day),
    total no of entrances, no of exits, activities, total no of change
    of states (tap/door)

  5. The above data is collected from the sensors
    for a 24 hr period starting at 12 noon / midnight.

Learning the behavioural patterns

  1. "Learning"
    is fancy way of saying there are record minimums and maxima, ie most
    number of this type of activity. Learning here is taken to mean
    finding the parameters of behaviour; for instance, goes to the
    toilet between 3 and 6 times a day. but usually 4 times.

  2. How should
    abnormal behaviour be dealt with? ie a "spike". This is a
    problem. It should be labeled as abnormal and not used in parameters
    of normal behaviour.

  3. Once running, it
    has a list of max/minimas for each cell; if on a monitoring session,
    a record is exceeded for the period, this is logged / warning sent.
    shorter periods - say 12hrs could be used as well.

  4. Trending in the
    data can be used to track the changes in behaviour, a slope in the
    graph, two or more de/increases, significant jumps; these trends can
    be used to send warnings, stay in same position (one not designated
    as a seating or sleeping area) for more than certain units of time.
    1 unit can be 20 mins or 30 mins, adjusted to the necessary factors,
    like type of client.

  5. Can have labels
    attached to cells with a green tick - "OK" or a circle
    with line through "STOP"

  6. Some kind of
    knowledge of chronobiology
    - science of body clocks, and what is normal for the age of the
    client. This can be used as offset.

  7. Templates can be used to help with inference
    - some built in rules, if these conditions are met and / or with
    certain detected patterns, can be used as a warning. E.G. pacing is
    detected & telephone not used for a certain period, can be
    symptom of dementia.

  8. Ideas of the “routine” and
    non-routine – avoid false positives; a lot of activity in
    kitchen, exceeding maxima; too many of these perception that system
    is flawed, too many false negatives and system isn't doing its job.

  9. Visitor problem. Differentiation of home
    dweller and outside; unlikely to stop owner's cat from being allowed in the residence. Use tags? Best to determine that there are two or more present and set a condition based on that time. And what if there are 2 residents?

Ethical issues involved in collecting data,
assurances to privacy

  1. Like being in front of the doctor. All
    personnel involved are vetted. Without webcams cant provide 100%
    protection, more false positives, image isn't always need, location

To Investigate

  1. Some study of the
    conditions of being disabled /elderly - what are the common
    problems? Which things can this system not solve? Which things are
    better left to 1st & 2nd generation systems?

  2. Statistical modelling - k-means, EM
    algorythim, cluster analysis.

  3. Rule based
    reasoning, jess.