OU blog

Personal Blogs

Christopher Douce

European Innovation Academy

Visible to anyone in the world

In July I went to something called the European Innovation Academy. The idea behind the academy was to get groups of students together with the intention of creating a product or solution to a problem.  (By product, think of ‘mobile app’ or digital service of some kind).  As a part of a three week programme, students were taught about what is meant by innovation, introduced to concepts such as user centred design and different business models, before being presented with some talks about how to further develop their ideas.  At the end of the third week, participants were encouraged to write a short pitch to sell their product, solution or service, to potential investors, with a view to securing further funding.

Making skills visible

A couple of months earlier, I went to a UK Higher Education Academy event (blog) that was all about how best to go about the teaching of programming to those students who want to learn how to develop software for mobile devices.  What struck me was the point that if students want to get ahead, a really good idea is to create some kind of product that could be sold through vendor app stores (such as Google Play, for instance).  The advantage of doing this is that you advertise your skills in a very direct way and can clearly describe what you’ve done and achieved on your CV.

A substantial part of the academy was all about creating something.  As far as I understand it, there was time on the programme to allow students to not only learn about different platforms and tools, but also time to try (as best as possible) to create some prototype software that could be demonstrated to others.  Creating an artefact, as far as I could see, was considered to be a really important aspect.

Taking software further

A number of years ago, I used to have a job as a professional software developer.  It was thinking back to these times that I asked myself a fundamental question: ‘what on earth could I potentially say to the participants to help them appreciate some of the challenges inherent in creating software systems and products?’  I’ll put my hand up and say that I’ve always had one foot more firmly in the technology side of things than the business side.

I struck on an idea to not only talk about software, but also some of the more human sides of software development.  Software is, of course, a creative product, and there are things that we can do (in terms of structuring things to help people work together) to get things done. The things that we choose to do, however, are fundamentally affected by the types of product that we’re creating.  Some products or solutions require us to use different methods.

So, what did I talk about?  I had three hours to fill!  Below is a quick summary of what I considered to be the highlights.  The participants might have different views.

Challenges

First of all, I asked the groups some questions to help them consider what they considered to be the most important or significant challenges that they felt they needed to address.  When you’re going head long into a development, I thought it might be useful to find a bit of time to step back and ask the participants about the problems that they were facing, and whether they might be able to share some advice about how to solve some of their problems and how to manage some of the risks that each project group might face.

Interaction design

Since the participants were creating prototypes, I talked a bit about the process of interaction design and the ideas of different types of prototypes (i.e. horizontal prototypes and vertical prototypes).  I also spoke about the necessity to consider the user, the task and the environment, since considering all these aspects are really important when considering the final usability of a system (and usability will fundamentally influence whether or not a product or idea is accepted).

Processes

You could argue that interaction design is all about process.  I also introduced the idea of software development processes, notably, agile development which emphasises regular and constant communication between both developers and stakeholders.  I made the fundamental point that constant communication is a necessity since software is an intangible product; the only way to make software real is to talk about it.  Agile methods facilitates that talking.

Testing

In some software development cultures (and each culture is slightly different), software testing can be an integral component, but it is a subject that can be very easily overlooked.  Software testing is a pretty big subject, covering a huge variety of different techniques and approaches.  When we move from the small to the large, we fundamentally need to make sure that things work as they should be (since if things go wrong, then our customers don’t get a good customer experience).  I spoke about two important aspects to testing (and highlighted a bunch of others).  These were: different types of usability testing, and test driven development.

Abstraction

Abstraction is, perhaps, one of the most important and fundamental concepts in computing.  An abstraction could be described as an essence of a concept which doesn’t contain any superfluous detail or ideas.  When our abstractions are right, our software becomes easy to work with.  Abstractions represent a really important way to manage complexity.  We need abstractions within our code because programmers can only deal with a limited amount of stuff and connections between parts of a program at any one time.

One approach to creating software is to create our code in different layers.  Software developers constantly use code libraries as well as consume data from other information sources.   When talking about abstractions I also introduced the idea of design patterns.  These represent templates of common solutions to coding (and software design) problems that have been shown to occur time and time again.   Coming back to the point of processes and the need for constant communication, if we can put a name against our various types of abstraction (which is something that the concept of a design pattern does for us), this can make the communication between developers a whole lot easier.

Version management

When you’re working with code things can get very complicated very quickly.  There’s multiple files, different versions of libraries, you might include a whole bunch of different graphics or change database structures or web services... and then the bugs start to creep in and give both you (and your customers) a whole set of headaches.

I felt that it was important to saying something about version control and configuration management.  When we’re in the zone of high productivity (when we’re at one with the problem and our tools), creating new products and services, we can quickly lose our own history in the path of continual change.  Version management systems (or whatever you choose to call them) enable some aspects of development history to be captured and saved.  One challenge that we need to be aware of is that the use of these tools requires discipline.

Technologies

To create any software of substance, you’ve got to use some technology that already exists.  If you’re creating apps, you’re going to use some kind of integrated development environment (which consists of programming languages, debuggers, code profilers, and a whole bunch of other goodies).  Another subject that I wanted to mention was that there is a whole set of other technologies that developers could use.

One really useful concept is the software framework.  In essence, frameworks can be considered as a set of high level abstractions that allow developer to more efficiently solve common problems.  A framework can allow you to work more quickly (and hopefully more efficiently) by building on the work of other developers.  Two challenges include: figuring out which framework to choose (and whether it really would help you or not), and then understanding how a framework might work.

Another broad set of technologies that developers might utilise is web services.  Web services can now be used to store data and host applications.  Rather than having to manage their own servers and systems, an app developer might be able to use services that have been developed and deployed by other companies.  The challenge lies in figuring out what they are and making choices between different possibilities.

Community

In terms of software, the word community can be interpreted and understood in a number of different ways.  There might be a user community or a developer community, for instance.  You might want to share information about an emerging product through blogs and direct interested users to these updates through Twitter updates.  My point was that community, whatever form this might take, is fundamentally important.  Although technology is a necessity, technology won’t develop, change or improve if there isn’t a community of users or developers that are keen on using or enhancing a system.

Another notion of community lies with the area of open source software.  I understand that during earlier parts of the academy, students were introduced to different types of business models.  Some business models work through the use, application and development of open source software.  In some situations, open sourcing a development might be a part of a wider strategy.  If so, then it is fundamentally important to consider how to support and nurture a community that makes use of any software (or service) that is made available to others.

A final connection to the notion of community that came to mind was the importance of partnerships. Creating effective software and services is something that requires a lot of specialist skills and expertise. I remember one story from a HEA event that I attended some time ago.  I remember being shown an example, a collaboration between a graphics artist and a programmer, that led to the development of a really nice product; an interesting and playable mobile game.  A fundamental point was that sometimes, the best work that we do is when we work with others. 

Reflections

A personal reflection is that putting together these series of talks seemed to take up quite a lot of time, but it was pretty good fun thinking about what to include and what not to include.  I asked myself a really simple question, which was, ‘if I was there, being a delegate as a part of this programme, what would I really want to know?’  In retrospect, I fear I might have perhaps crammed in too much material, perhaps covering too many ideas or too many technologies in what was a very short space of time.  On the other hand, I think this was the point of the programme: to introduce people to new concepts and ideas, and to allow those on the programme to be fundamentally challenged.

One thing that struck me was that some of the teams gave the impression that they needed more developers; more people who were able to use the software development environment to create new products.  If you’ve never seen an integrated development environment before, the learning curve is practically vertical - it takes time to appreciate their intricacies and idiosyncratic ways.   Three weeks is an impossibly short time to come up with a new innovative idea that actually does something if working with technology isn’t something that you do all the time.

Since I attended the programme during the third week, I wanted to positively tantalise the participants.  I wanted to say to them, ‘you know, all this tech that you’re playing with, and all these cool prototypes that you’re creating using tools that you’ve never used before? Well… this is only the beginning – there’s a whole bigger world of software tech out there ready for when your ideas and inventions become real.’  I hope I managed to expose some of that bigger world of software to some of them.

Permalink Add your comment
Share post
Christopher Douce

1st International Aegis Conference

Visible to anyone in the world

 Aegis project logo: Open accessibility everywhere - groundwork, infrastructure, standards

7-8 October 2010

It seems like a lot of time has passed between this blog post and my previous one. I begin this entry with an explicit statement of: less time will pass between this one and the next!

This post is all about an accessibility conference that I recently attended in Seville, Spain, on behalf of the EU4ALL project in which the Open University has played an important part. Before saying something about the themes of the Aegis conference and summarising some of the notes that I made during some of the presentations, I guess I ought to say something about the project (from an outsiders perspective).

Aegis is an EU funded project that begins with a silent O (the O stands for Open). It then continues to use the first letters of the words Accessibility Everywhere: Groundwork, Infrastructure, Standards. My understanding is that it aims to learn more about the design, development and implementation of assistive and accessible technologies by not only carrying out what could be termed basic research, but also through the development and testing of new software.

Without further ado, here is a rough summary of my conference notes, complete with accompanying links.  I hope it is useful to someone!

Opening

After Evangelos Bekiaris presented the four cornerstones of the project (make things open, make things programmatically accessible, make sample applications and make things personalisable), Miguel Gonzalez Sancho outlined different EU research objectives and initatives. It was stated that 'there must be research in the area of ICT and accessibility, and this will continue'.

Pointers towards future research included a FP7 call that related to ICT for aging and well being. Other subjects mentioned included the areas of 'tools and infrastructures for mainstream accessibility', 'intelligent and social computing for social interaction' (which would be interdisciplinary, perhaps drawing upon the social sciences) and 'brain-neuronal computer interfaces' (BNCI), as well as plans to develop collaborations with other parts of the world.

It was useful not only get an overview of the domains that the funders are likely to be interested in, but also useful to be given a wealth of information rich links that researchers could explore later. The following links stood out for me: the EC ICT Research in FP7 site and the e-Inclusion activities page.

The Aegis Concept

Peter Korn from Oracle presented a very brief history of accessibility, drawing on the notion of 'building in accessibility' into the built environment. He presented a total of six steps, which I hope I have noted down correctly.

The first is to define what 'accessible' is. This may involve the taking of measurements, such as the width of doors and maybe the tones of elevators, or the sounds that are made of road crossings. The next (second) stage is to create standard building materials. Here you might have a building company creating standard door frames or even making electronic circuits to make consistent tones and noises (this is my own paraphrasing!). The next step is to create some tools to know how best to combine our pieces together. The tools may take the form of standardised instructions.

The next three items are more about the use of the physical items. The fourth step is that you need to make a choice as to where to place a building. Ideally it should be situated close to public transport and in a convenient place. The fifth step is to go ahead and to 'build' the building. The final step is all about dissemination: the telling of people about what has been created.

Peter drew a parallel between the process of creating physical acccessibility and creating accessibility for ICT systems. There ought to be 'stock' components of interface elements (such as the Fluid component set), developers and designers should adhere to good practice guidelines (such as the WCAG guidelines), applications need to be then created (which is akin to going ahead and making our building), and then we need to tell others what we have done.

If my memory is serving me well, Peter then went onto talk about the different generations of assistive technologies. More information about the generations can be found by jumping to my earlier blog post. From my own perspective (as a technologist), all this history stuff is really interesting, but there's such a lot of it, especially when technology is moving on so quickly. Our current challenge is to begin to understand the challenge of mobile devices and learn about how to develop tools and systems that remain optimally functional and accessible.

Other Projects

One of the great things of going to conferences (other than the cakes, of course) is an opportunity to learn about loads of other stuff that you had never heard of before. Blanca Alcanda from Technosite (Fundacion ONCE) spoke briefly about a number of projects, including T-Orienta (slideshare), Gametel (the development of accessible games) and INREDIS (self-adaptive inverfaces).

Roundtable Discussion

Karen Van Isacker was our question master. He kicked off with few killer questions (a number of which he tried to answer himself!) The panel comprised of a journalist, industrialists, researchers and user representatives. The notable questions were: ' what are your opinions about the [Aegis] products that are being developed?', 'how are you going to make sure users know about the tools [that are being developed]?', 'what are the current barriers people face?', and 'can you say something about the quality of AT training in Europe?'

In many ways, these questions were addressed by many of the conference presentations as well as by the panel. Challenges relating to the development of assistive technologies include the continual necessity of maintenance and updates, that users ought to be more aware of the different types of technologies that may be available, the price of technology is significant and one of the significant challenges relating to training is the fact of continual technological change.

After a short break the conference then split into two parallel sessions. I tended to opt for sessions that focussed on more general issues rather than those that related to particular technologies (such as mobile devices) or operating systems. This said, there is always a huge amount of cross over between the different talks.

Parallel session 1b (part 1)

It was good to see a clear presentation of a user centred design methodology (UCD) by Evangelos Bakiaris. Evangelos described user research techniques such as interviews, questionnaires and something called contextual enquiry. His talk reminded me of materials that are presented through the Open University course Fundamentals of Interaction Design (a course which I wholeheartedly recommend!)

My colleague Carlos Velasco from FIT, Germany, gave a very concise outline of early web software before introducing us to WCAG (W3C). Carlos then went onto summarise some intresting research from something called the 'technology penetration report' where it was discovered that out of 1.5 million websites, 65% of them use Javascript (which is know to yield challenges for some assistive technologies). The prevalance of Javascript relates to the increasing application and development of Rich Internet Applications (or RIAs, such as Google Maps, for instance). The characteristics of RIAs include the presentation of engaging UI's and asynchronous content retieval (getting many bits of 'stuff' at the same time). All these developments led to the creation of the WAI-ARIA guidelines (Accessible Rich Internet Applications).

Carlos argued that it was once relatively straightforward to test earlier types of web application, since the pages themselves didn't change. You could just send the pages to an 'page analysis server' or system (perhaps like Imergo), which may then persent a report, perhaps in a formal language like EARL (W3C). Due to the advent of RIAs, the situation has changed. The accessibility of a system very much depends on the state in which it is, and this can change. Testing web accessibility has therefore changed into something more resembling traditional usability testing.

A higher level question might be, 'having an application or product that is accessible is all very well, but do people have access to assistive technology (AT) that enable web sites to be used?' Other related questions include, 'if people have access to AT, do they use it? If not, why not?' These were the questions that Karel Van Isacker aimed to address.

Karel began by saying that different definitions within Europe leads to different estimates of the number of people with disabilities. He told us that the AT supplier market is rather fragmented: there are many suppliers in different countries and there are also substantial differences in terms of how purchases of AT equipment can be funded. He went on to suggest that different countries applied different models of disability (medical, social and consumer) to different market segments.

Some of the challenges were clear: people were often unaware of the solutions that best meet their ICT needs, users of AT's are just given very rudimentary training, and many people may even have a computer that they have used once, and there is a high level of users discarding their AT due to low levels of satisfaction.

Parallel session 1b (part 2)

Francesca Cesaroni began the next part of the afternoon by describing a set of projects that related to the broad theme of user requirements. These included the VISIOBOARD project (which related to eye tracking) and the CAALYX project (Complete Ambiant Assisted Living Experiment).

Harry Geyskens then went on to consider the following question from the perspective of someone with a visual impairment: 'how can I use a device in a comfortable and safe way that is good as a non-disabled person?' Harry then presented different design for all principles (wikipedia) : that a product must be equitable in use, be flexible, be simple and intuitive, provide perceptable information, be tolerant for error, permit usage through low physical effort.

Begona Pino gave an interesting presentation about the use of video game systems and how they could potentially be used for different groups, whilst clearly expressing a call for design simplicity.

The final talk of the day was given my yours truly, where I tried to present a summary of four year project called EU4ALL in twenty minutes. To summarise, the aim of EU4ALL is to try to consider how to enhance the provision of accessible systems and services in higher eduction through the creation of a small number of prototype systems. A copy of my presentation and accompanying paper can be found by visiting the OU knowledge network site (a version will eventually be deposited into the Open Research Online system).

Day 2 keynote

Gregg Venderheiden kicked off day 2 with a keynote entitled 'Roadmap for building a global public inclusive infrastructure'. Gregg imagined a future where user interfaces change to the needs of individual users. Rather than presenting a complicated set of interfaces, a system (a PC or mobile device) may present a more simplified user interface. Gregg pointed us to a project called NPII (National Public Inclusive Infrastructures). It was good to learn that some of the challenges that Gregg mentioned, specifically security and ways to gather preferences were also lightly echoed in the earlier EU4ALL presentation.

Parallel session 2a: Rich RIA!

RIA is an abbreviation for Rich Internet Application. The canonical example of a RIA is, of course, Google Maps or Gmail. Web application development techniques (such as AJAX, wikipedia) that were pioneered by Google and other organisations have now found their way into a myriad of other web products. From their inception RIAs proved to be troublesome for users of assistive technologies.

Juta Trevianus gave a talk with an intreguing title: 'changing the world - on a tiny budget'. She began by saying that being on-line and being connected is no longer an option. Digital exclusion can lead to social exclusion. The best bargain is often, in my experience, one that you can find through a web browser. I made a note of some parts of her talk that jumped out at me, i.e., 'laws work when they are clear, simple, consistent and stable', but, 'laws cannot create a culture of change'. Also, perhaps we need to move from a case where one size fits all (universal design) to the case where one size fits one (personalised design, which may be facilited through technology).

Being an engineer, I was struck by Juta's quote from computer scientist Alan Kay: 'the best way to predict the futuer is to invent it'. It's not too difficult to relate this quote back to the Aegis theme of openness and open source software (OSS): freedom of code has the potential enable the freedom of invention.

The first session was concluded by Dominique Hazael-Massieux from the W3C mobile web initative (W3C). The challenges of accessibility now reach much further than the increasingly quaint desktop PC. They now sit within the hands and pockets of users.

One early approach to dealing with the explosion of new devices was to provide a separate websites: one for mobile devices, another for 'traditional' computers. This approach yields the inevitable challenge of maintenance. Dominique told us about HTML 5 (wikipedia) and mentioned that it has the potential to help with site navigation and make it easier for developers (and end users) to work with rich media.

The remainder of the day was mainly focused upon WAI-ARIA. I particularly enjoyed Mike Squillace's presentation that returned to the challenge of testing rich internet applications. Mike presented some work that attempted to codify with WCAG rules into executable Javascript which could then be used within a test engine. Jan Richards, from OCAD, Canada, presented the Fluid project.

Parallel session 3b: Standardisation and valorisation

I split my time in the final afternoon between the two parallel sessions, visiting the standardisation session first, then moving onto the coordination strand half way through. There were presentations that described the process of standardisation and its importance in the process of accessibility. During this session Loic Martinez presented his work on the creation of a tool to support the development of accessible software.

Parallel session 3a: Coordinating research

The final session of the conference yielded a mix of presentations, ranging from description of physical centres that people could visit through to another presentation about the EU4ALL project made by my colleague from Madrid. This second EU4ALL presentation outlined a number of proposed prototype accessibility information services. Our two presentations complemented each other very well: my presentation outlined (roughly) an accessibility framework, whereas this second presentation seemed to an alternative perspective on how the framework might be applied and used within an institution.

Summary

One of the overriding themes was the necessity to not only make assistive technology available to others but also to make sure the right kind of technology was selected, and to ensure that users were given ample opportunity to learn how to use it. If you are given a car and you have never driven before you shouldn't just get into it and start driving: it takes time to learn the controls, and it takes time to build confidence and to learn about the different places you might want to go to (and besides, it's dangerous!) To risk stretching a metaphor too far, this is a bit like assistive technologies: it takes time to understand what controls you have at your disposal and where you would like to travel to. As Karol pointed out in his talk: far too much technology sits unused in a box.

Another theme of the conference was about the solidity of 'this box'. Rather than having everyting in 'a box' or installed on your computer (or mobile device), perhaps another idea might be to use technology 'on demand' from 'the cloud' (aka, the internet). Tools may have the potential to be liberated, but this depends on other types of technology 'groundwork' being available, i.e. good, fast and reliable connectivity.

Finally, another theme (and one that is pretty fundamental) is the issue of usability and simplicity. The ease of use of systems will continue to be a perpetual challenge due to the continual differences between people, task and context (where the person and the task takes place). Whilst universal design offers much possibility in terms of making product for the widest possible audience, there is also much opportunity to continue to explore the notion of interface, product and system personalisation. Through simplicity comes accessibility, and visa versa.

All in all, a very interesting couple of days. I came away feeling that there was a strong and vibrant community committed to creating useful technologies to help people in their daily lives. I also came away feeling that there is so much more to do, and a stronger feeling that whilst technology can certainly help there are many other complementary actions that need to be taken before technology can even begin to play a part.

The latest project newsletter (available at the time for writing) can now be downloaded (pdf).

See also Second International Education for All Conference (blog post), 24 October 2009.

Permalink
Share post

This blog might contain posts that are only visible to logged-in users, or where only logged-in users can comment. If you have an account on the system, please log in for full access.

Total visits to this blog: 2356720