This post is written by and for developers. We want to share with you the Service Innovation Lab's commitment to open source everything we can, how and why we work this way, and the things we have open sourced that pre-date the creation of the Lab. We’d love to hear your feedback and collaborate on better ways to code openly in government.
Work in the open
We work in the open. We have open sourced all our Life Event Alpha work, reusable components and experimental work and made it available on Github. The road map for our work is recorded openly alongside the source code and all our work is informed by user centred service design. We're using agile software methodology so we have “stories” describing what we'll build next. These are recorded as “issues” on Github. Most of these stories we'll complete, but of course with the experimental nature of our work, some we'll work out we don't need. We use an application called waffle.io to present a board/swimlane view over the Github issues. You can see the stories from one of our current projects (at the time of writing).
Because it’s public, the code is open for anyone to build on our work, to request features or report bugs within Github. The person who reported a bug can see if/when we address bugs and when the change is released.
Reuse other peoples work
We also reuse existing open source software where possible and make our intentions public so people can tell us about great things already out there. For instance, when we started looking at the idea of an entitlements engine, we had a visitor from France come and talk to us about OpenFisca, an incredible open source tool developed by the French Government to store eligibility and calculation information about benefits and taxation across departments for use in service delivery and financial modelling.
We use NZGOAL-SE to determine which open source licence to use on a software project. They broadly recommend MIT or GPL. Both are good and we have a mix, but most of our work is MIT because we largely build demonstrators or reference implementations.
Enable reuse by others
Our Github account is ServiceInnovationLab. This is where we keep and work our code. You can follow our progress there. You’ll see some projects we start, and some we fork from other efforts.
Open source projects include:
- Searchinator - when we worked with the Family Services Directory (FSD) team in the Ministry of Social Development (MSD) to open up FSD as a public data set for service delivery, we built a simple search interface for reuse by MSD or anyone else. It is a client-based simple responsive web application that could be used for any service directory to find services near you. Play with searchinator or check out the source code.
- SmartStart has a frontend in reactjs, and a backend in django hosted on Catalyst’s cloud. There is also a real gem we're proud to have open-sourced recently, a Django app for integrating the RealMe authentication service. It was used for the SmartStart integrated services and is likely to be useful to many people integrating with Realme. All with thanks to Catalyst IT.
- A Common Data Model - an early collaboration between Department of Internal Affairs (DIA) and Ministry of Business, Innovation and Employment (MBIE) on a prototype for “consent based information sharing” (now called BusinessConnect) resulted in the creation of a generic data model which might be useful to others. We are assessing it for our use and would love your feedback and suggestions.
- When we developed a virtual reality optimistic future, a 50 year future as part of the Digital 5 Showcase in February, we wanted to make sure others could continue to expand the ideas so we organised for the project itself to be open sourced, with the exception of some of the proprietary assets used in the live version. Although this requires the developer to use Unity3d, the development stack is open source and we wanted to enable extensions of the work. We have also now found web responsive Virtual Reality/Augmented Reality platforms that we’ll be exploring for future mixed reality work.
- We've just delivered an experimental Rates Rebate application with an Alpha that's being tested with Tauranga City Council. You can read more about our journey to develop the Rates Rebate Alpha. The source code (code name pancake) is in active development on our Github.
If you'd like to stay across our work, please join our mailing list.