Open innovation in software

by Gabriel Hanganu on 18 January 2011 , last updated

Introduction

A radical shift in the way innovation takes place is unfolding around the globe. Driven largely by the Internet and the collaborative communities it enables, this new open innovation culture changes everything, from the ways in which science and invention evolve to the development of societies and economies.

This document approaches open innovation from the perspective of open source software development. It looks at the innovation processes that take place naturally in successful open source projects, and at open innovation programmes specially designed to initiate and manage such processes in organizations determined to open up their research and development activity.

The document is illustrated with video references from open source and open innovation practitioners, who provide insights and real-life examples of successful open innovation in software development.

The open context of innovation

The transparency of the processes associated with open innovation contrasts starkly with those employed in closed innovation. In the latter, organizations create new products in closed-off laboratories, fiercely guarding their innovations with powerful patent armouries.

However, increasingly companies are opening up their innovation through a combination of crowdsourcing, pooling resources, sharing intellectual property, and offering limited rights to patented technology to allow third parties to work with those innovations. In this new innovation context consumers are no longer passive recipients of products, but co-creators and valuable sources of new ideas.

In many ways, this shift to a more open innovation context has affected the education and research sectors as well as the commercial sector. Increasingly, there are new ways in which academics create, store, analyse and transmit information and research. As described in Open Source and Research Infrastructure, the UK has developed a powerful technical infrastructure for sharing academic knowledge. The critical thing now is to encourage academics to embrace this culture of openness more actively.

A recent Future of Research report suggests that for UK researchers to remain competitive globally, they need to get used to sharing data and move freely between sectors and countries. In the words of Rufus Pollock, co-founder of the Open Knowledge Foundation, ‘the best thing to do with your data will be thought of by someone else’1.

The European Union’s Lisbon Council has initiated a process of opening up access to research funded through its programmes. The Open Access Infrastructure for Research project has been tasked with making 20% of the FP7 research outputs available as open access resources, and as much as 80% of EU-funded research is planned to be made publicly available from 2014.

Open innovation

For Henry Chesbrough, a professor at the University of California Berkeley, who coined the term, open innovation is a way in which companies do research and development by making greater use of external ideas and technology in their own business, and in turn let others benefit from their unused ideas.

In the classic, technology-push model, the innovation process is usually pictured as a funnel turned on its side, with selected ideas picked from a science and technology base and taken down to the market. Increasingly, however, there is too much knowledge available in too many parts of the world for companies to continue to innovate successfully on their own.

In Chesbrough’s model of open innovation, new ideas are drawn from both inside and outside the organization, so the classic funnel diagram needs to be adjusted accordingly. Ideas are also allowed to go to market through both the company’s own internal processes and external-facing activities, such as licensing, spin-offs and joint ventures.

‘Discover’ and ‘jam’ open innovation

Many open innovation processes in companies start from a clearly defined problem or requirement that the innovation process attempts to address.

However, Roland Harwood, co-founder of the NESTA spin-off 100% Open, emphasizes that there are in fact at least two ways in which organizations can open up their innovation processes. Roland distinguishes between so-called ‘discover’ and ‘jam’ open innovation approaches. A ‘discover’ programme usually starts with a ‘what’ question, such as ‘What is the specific idea or technology we need?’ In this scenario, requirements are written in a formal brief calling for a technical solution or a specific business partnership.

By contrast, a ‘jam’ programme normally starts with a ‘who’ question, such as ‘Who are the potential collaborators we can work with to the greatest effect?’. In this case, there is no clearly defined problem – just an area of opportunity that will be defined in collaboration with the partners identified in this process.

Examples of open innovation in software

In his keynote at TransferSummitUK 2010, Roland Harwood provided two examples of open innovation in software projects facilitated by NESTA.

The first example was a ‘discover’ programme that addressed a clearly defined set of requirements put forward by the network operator Orange. Orange was interested in ideas for products and services that would generate revenue in the region of £50m over three years. Eighty-five SMEs and independent innovators submitted ideas, of which six were selected for further development. One of these ideas was ‘Last Second Tickets’, a software-based mobile service offering Orange customers unsold cinema and theatre tickets at a discounted price.

The second example was a ‘jam’ programme that resulted in an unexpected collaboration between the Formula 1 car manufacturer McLaren and the UK National Air Transport Control Services (NACTS). The highly accurate airport operation management software built as a result of this collaboration around McLaren’s Formula 1 pit stops management software allowed NACTS to better manage airport operations and save costs estimated at several million pounds.

In these and other open innovation programmes, NESTA acted as an independent broker between research and development units in different companies, or between large corporates and SMEs or independent developers, to help them manage the IPR and software development processes. In open source software environments such processes are the norm. Over the years, open source communities have accumulated a huge amount of expertise that can provide extremely useful lessons in this respect.

Open innovation in software is open development

Open source projects provide an excellent environment for software innovation because they employ an open development methodology. For Ross Gardler, OSS Watch manager at the time of writing, open development is ‘a way for distributed team members to collaboratively develop shared resources in a managed and sustainable way’. Or, in the snappier formulation of Yochai Benkler, Professor of Entrepreneurial Legal Studies at Harvard, open development is ‘an example of commons-based peer-production’.

The accessibility and transparency of the collaborative activities facilitated by open development encourage cultural diversity, and this in turn is conducive to innovation. For Mårten Mickos, former CEO of MySQL, innovation is most likely to happen when people encounter each other in social spaces where different views and solutions can be explored. Diversity brings long-term sustainability precisely because diverse people pursuing their own self-interests within a community are likely to end up working together for the benefit of everyone.

Apache Hadoop is a good example of a complex ecosystem of widely diverse partners collaborating in an open source project. Large and small companies, including IBM, Google, Facebook, Yahoo, Microsoft, Cloudera, and six universities work together to build this research infrastructure for massive data analysis.

In the same spirit of encouraging collaboration diversity, OSS Watch has initiated Open Source Junction, a series of events that bring together a wide range of practitioners from the open source mobile technologies space. In the first event of the series, a workshop on open source cross-platform mobile apps, delegates from industry and academia discussed issues relevant to mobile open development and opportunities for cross-sector partnership in this space.

Quick and effective feedback loop

For Bertrand Delacretaz, Senior Developer at Adobe, open development methods allow developers to get immediate and effective feedback from project stakeholders. This direct feedback loop is acquired through a combination of communication channels, including commit messages, email discussion lists, issue tracker events and automated builds.

The quality of this quick and direct feedback is essential. Instead of hiring expensive experts to provide feedback on a product, as many companies do, open source projects have online processes for bringing together the best minds in the industry to collectively solve a problem that benefits all the involved parts.

Event-based collaboration

The development work carried out in open source projects is sometimes described as ‘event-based collaboration’. This is because all project communication channels are geared towards sharing one’s development activity with the entire project community.

Bertrand Delacretaz identifies several features of open source collaboration. First, because all project activity is reflected on the mailing lists, a shared vision among the project members is acquired. Second, with the transparent commit activity, one gets real-time status updates, which signal what everyone else is working on. Third, through the use of issue trackers, one is able to create real-time help requests without interfering with other people’s schedules, thus allowing these requests to be prioritized and dealt with appropriately. Finally, this transparent project activity creates self-service archives, which are extremely useful for tracking past discussions and decision-making proceses. They also provide documentation for the newcomers joining the project.

Scratch an itch and make a better world

For Gianugo Rabellino, Senior Director for Open Source Communities at Microsoft, the term ‘community’ is entangled in complex disciplinary and cultural ambiguities. In an online collaboration context, ‘community’ is more difficult to define than physical community, given the lack of unity of time and space in which collaboration takes place.

To emphasize the dual nature of one’s motivations for contributing to an open source project, Gianugo refers to the distinction between the terms ‘Gemeinschaft’ and ‘Gesellschaft’. In German, ‘Gemeinschaft’ is used in linguistic contexts where a group is perceived as more important than the individual members. In contrast, ‘Gesellshaft’ tends to be used in situations where individuals are more important than the group they belong to. Open source projects, Gianugo suggests, are typically somewhere in between: people contribute both because this helps them ‘scratch an itch’, i.e. find solutions to a problem that affects them directly, and because they feel that by doing this, all the other people involved - and society as a whole - are likely to benefit.

Come for the code and stay for the community

Very often, developers start contributing to an open source project following their successful attempt to adapt existing software to their needs, or to improve a piece of code. Once they have fixed the problem, they have a choice of either contributing their code back to the community, or keeping the modified version on their machine. At this stage, some developers realize that the effort of contributing back can actually save them a lot of effort in the long term, as they won’t need to apply their changes to every new release of the software. In addition, and perhaps even more importantly, they realize that by contributing back they get access to a wealth of community-related benefits, including the opportunity to learn by monitoring the online activity of some of the most respected names in the software world.

Reflecting on his early experience as a developer on the Apache Cocoon project, Gianugo Rabellino recalls how he himself initially ‘came for the code and stayed for the community’.

Conclusion

Open innovation is about innovating both inside and outside your organization or project, and bringing these innovations to market through both internal and external routes. In a software development context, open innovation is open development. Open development has processes and tools that encourage innovation by boosting internal, and harnessing external, creativity, and by bringing the innovation results to market through both internal and external channels. If you need help with opening up innovation in your software project to make it more appealing to external contributors and more sustainable in the long term, OSS Watch is here to help.

Further reading

Links:

Related information from OSS Watch: