Skip to main content

Programming to 'Make Sparks Fly'?

Tools for making sure that "Sparks will Fly"
This year's Royal Institution Christmas Lectures, titled "Sparks will Fly" were all about 'hacking' everyday objects to make them part of the Internet of Everything.  Presented by Prof. Danielle George from University of Manchester, they were a great showcase of how engineers tackle challenging problems by extending the capabilities of technologies like the light bulb, the telephone and the motor.

Across the three lectures, the audience got to take part in building systems that used internet connected lights to play Tetris on a London skyscraper, to holographic communications and a robotic orchestra.  Through this process, we understood how to build solutions to complex problems by:

  1. decomposing them into simpler sub-problems;
  2. identifying technologies that could help us solve the sub-problems, using techniques like abstraction and analogical reasoning;
  3. building prototypes to test our hypotheses about these technologies could be extended to solve each sub-problem; and
  4. integrating the individual solutions to build a system that addresses the initial challenge.
Although the engineer in me found this to be a very engaging way to inspire the next generation of inventors and engineers, the computer scientist in me was disappointed by the very cursory treatment of computing and computational thinking - with only the briefest references to programming in the first lecture.  This seemed like a missed opportunity but I guess with only three lectures to cover everything, something had to give.  Hopefully there will be a future lecture series that explores ubiquitous computing in greater depth - bringing to life the exciting opportunities (and threats!) of the Internet of Everything.




Post a Comment

Popular posts from this blog

Visual programming for 'wiring' the Internet of Things

There is a proliferation of devices being developed to form the building blocks of the Internet of Things (IoT), from Internet-connected power sockets and light bulbs to kettles, toasters and washing machines. However, to realise the full potential of the IoT, it will be necessary to allow these devices to interconnect and share data with each other to deliver the functionalities required by end-users. In recent research on end-user programming for the IoT, my colleagues Pierre Akiki, Yijun Yu and myself have proposed the notion of Visual Simple Transformations (ViSiT), that provides a visual programming paradigm for users to wire together IoT devices. The video above shows a demonstration of the ViSiT solution and full details of the approach will appear in an upcoming special issue of the ACM Transactions on Computer-Human Interaction (ToCHI).

This work is highlighted in a recent IEEE Software Blog: Empowering Users to Build IoT Software with a Puzzle-like Environment and full deta…

Privacy-by-Design Framework for Internet of Things Systems

IOT-2016 7-9 September, 2016, Stuttgart, Germany from Charith Perera
Recent DDoS attacks on key internet services, like the attack that affected the Dyn domain name service, highlighted the security challenges associated with the proliferation of insecure Internet of Things (IoT) systems.  This attack exploited common vulnerabilities like the use of default administration passwords on IoT devices such as internet-enabled CCTV cameras, internet-enabled appliances and smart home devices, to recruit over hundreds of thousands of nodes into a botnet.   This capability highlights the cyber security threats associated with the IoT and brings into sharp relief the importance of considering both security and privacy when designing these systems.

In recent work, presented at the Internet of Things Conference, we describe a privacy-by-design framework for assessing the privacy capabilities of IoT applications and platforms.  Building on more general design strategies for privacy in informaiton …

Are we losing the Internet Security battle?

I was recently invited by Heimdal Security to take part in an expert roundup, with the theme of "Is Internet Security a Losing Battle?".  The main thrust of my answer was to question our use of analogies of conflict in the context of Internet Security or cyber security.  As I said in my response:
"... in this context the metaphors of conflict, such as ‘war’ and ‘battle’ are unhelpful because they suggest that internet security is the responsibility of the technologists who act our defensive force against attackers.   Instead, as has been argued by technology activists like Cory Doctorow and others we might have more success by thinking of cyber security using the analogy of public health and communicable diseases.   By using this analogy, we make cyber security issues more relevant to people and spur them to gain a better understanding that, like diseases, any of us can be afflicted by a cyber security attack.  We can also adopt an analogous approach for handling cyber …