Project proposal

Computer modelling is playing an increasingly important role in fields as varied as sociology, epidemiology, zoology, economics, archaeology, ecology, climate, and engineering. Currently, only researchers or students with sufficient programming skills are able to participate in this new way of exploring and understanding real-world phenomena. The Modelling4All Project aims to greatly broaden this participation. We intend to explore three innovations that promise to make modelling widely accessible by:

  • Providing an alternative to computer programming that is based upon composing and customising pre-built code fragments
  • Providing a web service for building, exploring, analysing, and sharing computer models
  • Building Web 2.0 services to support the formation of an on-line community where models and model components are shared, tagged, discussed, organised, and linked to other resources.

Furthermore, we will explore the possibilities and benefits of providing an immersive first-hand experience of the execution of a model within a virtual space such as Second Life.


The aim of the project is to significantly increase the number of students and researchers who can build and analyse computer models of a wide variety of real-world phenomena. Computer modelling is playing an increasingly important role in the social, life, and physical sciences. Computer modelling provides new ways of thinking about, understanding, and exploring complex real-world processes. Several projects (e.g. NetLogo and StarLogo) are under way that provide user-friendly tools to program computer models. We plan to build upon this so that students don’t need to master a programming language before they can build computer models. As part of the JISC-funded Constructing2Learn Project we are building the BehaviourComposer, a desktop application that enables users to build models by composing and customising pre-built micro-behaviours.

We propose to further this research by making it possible for a productive Web 2.0-style community to form around model building and analysis and to enable learners to experience immersively the execution of models. The community will also support teachers by providing a location where they can share and discuss learning designs for modelling and other teaching resources. Despite the growing importance of computer models in society and research, students today rarely get an opportunity to learn how models are designed, constructed, or studied. We aim to give them that opportunity without requiring a high-level of technical skills and a large prior investment in acquiring programming skills.


The first objective is to build a web service for model building. By doing so we will enable users to be able to build, share, and run models using any web browser. From any platform, without installing any special software, users will be able to access services to

  • browse an extensible library of composable model pieces called micro-behaviours
  • compose and parameterise these to specify the behaviours of elements of a model
  • observe animations of the execution of models
  • run experiments on models and analyse the data produced
  • use and contribute to a repository of models

The second objective is to build a Web 2.0 style community around model building. The web services we plan to provide are intended to give community members the means to

  • discuss models in a setting where models can be run, examined, and enhanced
  • tag and organise a growing collection of micro-behaviours, model elements, models, and experiments recommend exceptional models
  • provide technical, design, and scientific support to beginners and peers
  • provide auxiliary material such as real-world data for comparison and videos of the real-world phenomena produce and share model building lesson plans
  • discuss public policy implications of models in a setting where the assumptions and limitations of the models are transparent

The third objective is to provide a means of experiencing the execution of a model as an individual or observer inside the model. We want model makers and users to have an alternative to the “god’s eye” view of a model. Being inside a model, perhaps having a game-like goal of influencing the way it unfolds, can be a powerful way of understanding. Running a model inside a shared virtual space, such as Second Life, provides the opportunity for social learning and understanding. It can also be a strong motivation to build models.

For example, consider students who have built a model of collective animal behaviour. They can run the model via their web browser and see, from the outside, their simulated fish form a school. To gain a different kind of understanding they can click a button and obtain a version of their model in Linden Scripting Language. They can paste the code into Second Life representations of fish and they see similar schooling behaviour. Their avatars can swim (or walk or fly) into the school and perform experiments such as placing obstacles in front of the school to see whether the school stays together or fragments. Alternatively, they can become fish and join the simulated school. They can experience first hand being hungry but safe in the centre or being well-fed but at risk for predation at the perimeter of the school. Or they can interact with the other fish, maybe to try to influence the direction the school is moving.


We intend to develop the proposed software and services in an iterated design manner. We will actively solicit suggestions and feedback from potential users. This process will be informal and ongoing since its purpose is to inform the design. From an early start, we will frequently release beta versions of the services. Our design decisions will be based upon beta users’ feedback and usage patterns. We plan to instrument our web services to learn what aspects of the software are deficient or going unnoticed. The fundamental research question driving us is whether properly designed web services can facilitate the creation and growth of a thriving and broad community of modellers. Kahn and Noble will share the high-level design tasks and project planning. Kahn will be responsible for the detailed design and programming of the model creation web service. Kahn and Noble will design the Web 2.0 services and a new part-time employee or contractor will install, customise, and maintain the service. The services will build upon existing software such as the Markaboo open source code. Kahn will seed the library of dual implemented micro-behaviours (NetLogo and Second Life) and oversee the community contributions.

Start and end months of tasks:

  • 0-2 Set up project wiki, bug tracker, versioning software
  • 0-2 Create a detailed project plan
  • 0-2 Design the model builder (building upon the experiences with our BehaviourComposer application)
  • 0-2 Investigate the best platforms upon which to build services (e.g. Google’s Java to JavaScript AJAX tools)
  • 2-6 Build the first prototype version of the model builder web service
  • 3-7 Customise and launch prototype Web 2.0 services
  • 4-8 Build initial prototype micro-behaviour library
  • 8-24 Repeatedly test and improve all services
  • 8-24 Track and support community development
  • 21-24 Package and polish completed versions of all programs

We believe it is best to get something working and make it available as early as possible in order to learn how to make it capable of attracting and supporting a large sustainable productive community of modellers. Progress will be measured by the feedback from users, the effectiveness of the software, the number of users, and the quality and quantity of models and discussions produced. We will rely upon teachers to inform us regarding the effectiveness of the learning experiences. A more formal evaluation of learning outcomes could be accomplished by a subsequent project.

A more research-focused activity will run alongside the technical development and support effort once the Web service has been launched. This will be aimed at fostering the growth of an online community of people building models whether as part of their work, formal studies and/or the informal pursuit of personal interests and concerns. It will capitalise on the findings of previous research into the formation and subsequent trajectories of communities, both professional and social.

Note (March 2009): Eduserv have agreed to extend funding to span until August 2010


The primary outcomes will be the web services we create and provide, the community of students and researchers using our services to build models, and the output of micro-behaviours, models, and other resources by the community. Prototype versions of the web services should be widely available by month 6. Mature versions supported by a thriving community are anticipated by the end of the project. If we are successful, we should be able to ensure additional funding to maintain the services or else migrate them to another provider. All source code will be freely available.

We envisage the following learning outcomes:

  • Deeper understanding of the subject domain. For example, a student building and analysing a model of, say, an ecosystem will learn how ecologies behave and their underlying processes.
  • Improved analytical and critical skills. Modelling is now the third way of doing science: supplementing experimentation and mathematical analysis.
  • Users will be able to critically evaluate public policy issues including climate change, habitat conservation, energy alternatives, population trends, epidemics, and pollution.
  • Understanding of the strengths and drawbacks of the modelling process. Rather than treating computer models uncritically as “oracles of the truth” users will understand first hand the strengths and weaknesses of using models for understanding and prediction.
  • Skills in collaborative learning, research and working. Users will be collaborating and supporting each other. They will also experience how they can support, and be supported by, other people through social software.
  • Development of other research-related skills. Building computer models and games is a creative activity that draws upon and improves many skills including design, planning, debugging, and background research.
  • New ways of thinking. Modelling can be a means of combating a centralised mindset. It can be a way to learn about conceptual knowledge which is otherwise difficult to grasp. Software of this sort can turn the computer into a tool to think with.

Furthermore, we intend to publish conference and journal papers on our research results. The anticipated research results include the novel software designs and an understanding of the mechanisms by which on-line communities can develop to share models and expertise across a range of domains and levels of experience. We will target the modelling and simulation audience as well as educational researchers. We will host and organize a one-day workshop for UK teachers and researchers to learn about modelling and our web services.

Project team

Ken Kahn

Senior Researcher, Oxford University Computing Services

In 1992, after 15 years of research in computer science and artificial intelligence, Kahn returned to research in technology enhanced learning. In the 1970s he worked with Seymour Papert at MIT on programming languages for children. He is the developer and designer of ToonTalk, a game-like programming language for children. We worked with the European Playground Project to support the making of computer games in ToonTalk by young children. He was member of the European WebLabs Project, where he developed scientific model construction tools and tested them with children. He was the designer and developer of two proof-of-concept games for making science games funded by the BBC Digital Curriculum Project. He is currently leading the JISC-funded Constructing2Learn Project, in which he is building tools and learning designs to enable university students without programming experience to build and run computer simulations in their field of interest. As part of this project he is connecting with the scientific modelling community. He is also a member of the London Knowledge Lab where he is participating in the European ReMath Project, where he is developing a simulation and game-making tool based upon the construction and application of algebraic equations.

In the last 5 years Kahn has given over 40 seminars in Europe, Japan, New Zealand, and the US. Several of these were invited or keynote speeches at conferences. The audiences ranged from computer science, educational research, game development (including a keynote at the New Zealand Game Developers Conference), zoology, business, and sociology. He has over 75 publications.

Kahn founded and ran Animated Programs, a company which produced ToonTalk, a programming system for children. He worked with sub-contractors to create animation assets and voice recordings, professional software testing, public relations, and intellectual property rights. He negotiated publishing deals in Sweden, UK, Brazil, Portugal, and Japan and worked with those publishers to produce localised versions of ToonTalk. He also has many colleagues whose experience he can draw upon. Several have been doing research on making computer modelling more accessible. These colleagues include Uri Wilensky (NetLogo), Mitch Resnick (StarLogo), Andy diSessa (Boxer), Alex Repenning (AgentSheets), and Alan Kay (Squeak). They are likely to provide valuable suggestions and comments on this project.

Howard Noble

Researcher, Oxford University Computing Services

Howard's role at Oxford is split between externally funded research projects and leading requirements gathering initiatives. Howard has been involved in the following projects:

  • Principle investigator on the JISC low-carbon ICT project (Oct 2007 - March 2009)
  • Co-investigator on the eduserv modelling4all project (Aug 2007 - July 2009)
  • Principal investigator of the JISC Accessing and Storing Knowledge project (Aug 2005 - Oct 2007)
  • Researcher on the JISC Constructing2Learn Project (May 2006 - Nov 2007)
  • Contributing author on the JISC River project (May 2005 - Nov 2005)
  • Principal investigator on the JISC Tools Integration project (Sep 2004 - March 2006)
  • Researcher on the JISC eLISA project (Oct 2004 - Oct 2005)
  • Project manager on the JISC Middleware for Distributed Cognition project (March 2004 - March 2005)
  • Co-author of the JISC DiVLE Evaluation Report (Sep 2003-Dec 2003)

Before joining Oxford University Howard was a freelance developer at the Royal Holloway University, a business analyst at a London-based CRM consultancy (2000-2001), and a developer and analyst at IBM Global Services (1997-2000). Howard has a Master's in Human Centred Computing Systems from Sussex University (2000-2001) and a Bachelor's degree in Genetics and Molecular Biology from Manchester University (1994-1997).


The project team would like to thank the following people for their highly valued contributions to the project:

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License