Idea details: Open Source Software

The government of Canada (GOC) produces more software (aka. applications, code, computer programs, scripts…) then you might think. All the data recently published on had to come from somewhere! In-house software is often needed to collect, sort & analyse this information.


If more of the software produced in the GOC was open source software (OSS) Canadians would have a larger say in the data produced, citizens and business would be able to use the software to be more efficient in their work and the GOC would get to improve its software by receiving feedback and contributions from the public.


OSS is by no means the universal best approach but there are already great success stories in the GOC, for example: Web Experience Toolkit and METRo (EC road forecast). Even better, OSS promotes openness and accountability while providing Canadians with more opportunities to participate in government.


Open source software should be central to Canada’s Action Plan on Open Government.

Thumbs up (136people agree)


N'oublions pas de bâtir sur les efforts passés, tels que les lignes directrices sur les logiciels libres du CNRC publiées sur GCPEDIA :0)
Let's not forget previous efforts such as the NRC Open Source Software Guidelines published on GCPEDIA :0)

Une évidence, je me demande bien pourquoi ça doit faire l'objet d'une suggestion de ce type, le gouvernement Canadian a besoin de s'ouvrir!

I think any and all of the steps mentioned go in the right direction. Take as many such steps as practical.

But for licencing, may I suggest that there should be a recommended licence that is compatible with as many other popular licenses as possible? The MIT licence would seem to fit the bill better tha the GPL. And if the code uses media resources, such as images, which could normally use a creative-commons license, please dual-licence it under both a such a medua licence and a licence that is commonly used for program code, just to eliminate any ambiguity about distributing programs containing these media.

Yes, please. Let our government use/contribute/promote OSS. We want both said public data to be available, AND software to support mandatory filling (e.g. Yearly income tax filling software to be ALSO open source).

There was a "No Charge Licensed Software" RFI run in 2009. Over 50, largely positive, responses were received from many groups, including open source and proprietary companies, small and medium-sized enterprises (SMEs), consultants, industry associations, foundations, the academic community, collaborative groups, and private citizens. An internal draft report was prepared by PWGSC, as reported in the September 22 2009 PWGSC ITAC update, but I am not aware that the report or any following recommendations were ever published.

There is currently no published position for OSS on the GC Treasury Board Secretariat, CIO Branch, site, only a reference to old related document currently archived at Library and Archives. This is a big contrast to other countries, including USA, UK, Australia and many more. If Canada is to fully benefit from OSS, then I think we should follow step, and develop a clear position and strategy.

France is a good example of a country that has a strong adoption of OSS and were a whole ecosystem has developed to provide OSS solutions and support. The French government has issued an RFP for OSS support services for a very broad base of OSS solutions to multiple departments to facilitate their use of OSS based solutions. And, reportedly, benefits are not only in potential cost savings, but primarily in increased flexibility.

Matthew, I especially like your comment: "forces the direction of the project". Too often in government we make software that is convenient for us, not necessarily the end user. In an open source project your developers are your users and you get feedback from all around! You are much more likely to come up with a final product that is user/human-centric and convenient for your intended audience.

This is a great idea! I would love to see the software tools developed within the Federal Government available to the public under an open source license. I feel that open data and open source software can really complement each other, and access to the software facilitates effective use of the data.

As someone who develops software, I would be interested in seeing the sorts of software projects being worked on within government, and also potentially contributing back to them.

I strongly support this initiative! The code quality alone between the government closed-source vs open-sourced projects I've worked on speak volumes (even taking into consideration that the latter didn't contain decades of legacy code.)

Real value exists in data and the use of the software, not the software itself most often. Opening the source on a project empowers many more eyes to examine the code, explore new potential in the code by extending it, and forces the direction of the project to be much more sustainable.

Some great examples from other governments! I especially like how Scotland translated into Gaelic. How much fun would it be to translate similar software into Inuktitut or other languages used by many Canadians!

There are so many possibilities when it comes to Open Source Software. It seems that the time is right for Canada to get on board in a decisive way.

I support the suggestion, but hope the GoC will not focus on costs but rather accountability and transparency.

When the government automates policy in software, that software should be seen as a 'translation' of the policy and thus as open and accountable as the original policy. This should suggest proactive disclosure, or otherwise availability under ATIP requests just as would be assumed if policy was translated from French to English.

To be accountable it is not only the lines written by the government itself that needs to be transparent, but the software stack that the code runs on: we need to ensure that authors of lower level software are not able to corrupt/manipulate the intent of the policy. I don't think Canada has to go as far as China is proposing and have government move towards a government mandated microprocessor, but there should be some recognition of the need for a publicly disclosed audit of government systems.

One primer for this way of thinking of software is Lawrence Lessig's book "Code and Other Laws of Cyberspace."

At the moment too much policy is being authored outside of government by entities that are non-transparent and unaccountable, and where alleged "trade secrets" or other government granted exclusivity (copyright, patents, etc) are being abused as an excuse to hide the actual workings of government when the real-world implementations in software don't match the theoretical policy set by parliament and other non-software policy makers.

GC should encourage, support and contribute to the use of major FOSS like Linux and Open Office instead of spend tens of millions of dollars in licenses for Microsoft products and antivirus... The majority of staff are equipped with a conventional office environment with Outlook, Excel and a bunch of Web applications to do their job, to the replacement could be done easily and transparently to the end user...

These are all good ideas.

I'd also add that it's worth actively encouraging the public sector to contribute back to existing open source projects. Not only is this a good means to learn & build more secure/robust software, but it also helps out the greater community.

There's so much to learn from the UK, USA & Australia about the adoption of open source in government. Ultimately though by engaging with the open source community, the culture of the public sector can change to be more inclusive & evidence based.

1. On the legislative side of things, the best thing to do in my opinion would be to adopt a law modelled on the one Italy has. See these sources:

But a law is nothing if it is not applied by the civil service.

2. On the civil service side of things, one promising digital strategy I am aware of is that of UK Government Digital Service, which wrote a "Government Service Design Manual" implementing a "Digital By Default Service Standard". Criteria 15 of the said Service Standard states: "Make all new source code open and reusable, and publish it under appropriate licences (or give a convincing explanation as to why this can’t be done for specific subsets of the source code)." Progress reports of what is being actually done are impressive. See the documents here:

En français : FACIL a publié un document de recommandations (pour la Ville de Montréal) qui cite en exemple l'Italie pour la législation et le Royaume-Uni pour la stratégie d'action. Voir le document suivant aux pages 4 et 5 :

(Notez que l'auteur de ces lignes est membre du CA de FACIL et est le principal auteur du document de recommandations en question.)

There are several simple ways that Open Government could encourage Open Source Software inside government, any one of which would go a long way:
1. Give departments the same incentives for releasing software under an Open Source license as they do for publishing Open Data. (
2. Publish a statement similar to the White House’s statement on Open Source that describes how Open Source Software is desirable for government.
3. Have a senior body in the Government of Canada state that, where possible, software developed inside government should be Open Source.
4. Include an Open Source Software option (maintained or developed in house) for major software Requests For Proposals (RFP). The proposal should take into consideration the added benefit of openly sharing the development with Canadians.
5. Recommend an Open Source Initiative (OSI) approved license to use with software produced inside the Government of Canada. (
6. Ensure that departments which produce software have access to the Intellectual Property professionals required to make the informed decisions regarding Open Source Software.
7. Work with interested parties inside the Government of Canada to produce guidelines or best practices for Open Source Software.
8. Encourage software developers in the Government of Canada to use existing open source software as much as possible to reduce costs and development time.

If you agree with one or more of these statements, please like this idea and leave a comment to let us know which ones you support.

You’re right, the Government of Canada has a long history of using open source software when possible. Contributing back to the open source community and tools are essential to the growth and success of these products.

In addition to the Web Experience Toolkit and METRo, the Open Government Portal utilizes open source code that we have contributed back to the CKAN and Drupal Communities.

Formalizing our approach to the use of open source tools through Canada’s Action Plan on Open Government is certainly an option that we will explore.

Some departments have already established guidelines to using and distributing open source tools; this could be scaled up.

Awesome :) Thanks a lot for your comment!

BTW, we have an official Open Source Software Community of Practice in Shared Services Canada (which I'm one of the co-leader). Don't hesitate to contact me (info in, we'll be more than happy to help!

Thanks so much for the official response! It sounds like many of the pieces are already in place. I'd be happy to help where possible.

I have a slight quibble with 5. I think it should just be ´Recommend that an Open source...´ different groups have different goals, and so the appropriate license for one group, may not be appropriate for another. If the goal is to build community and collect contributions around a particular code-base, then a GPL oriented license, which requires changes distributed to be made available. If the goal is to promote a standard, or enable inter-operability, the BSD or MIT style licenses, are much better.
What is important is to discourage license proliferation which adds a crippling degree of friction to mixing code together with different licenses. Adoption of a well-known license is the main point. Not which one.

All these suggestions are great. However, it will be important to plan for software maintenance. There could be a central department that could just do that, with professional programmers to support software developpers, in addition to deal with copyright issues.

I agree that this is the dream. Every time something gets centralized though... it seems the budget gets cut in half.

If this was properly funded I think it could be (r)Evolutionary for the Canadian Government (might take a decade or two to figure out). There are already examples though. I think a friend of mine mentioned they had dedicated software teams at EC.

Please Read the Privacy Notice and the rules of engagement.

Privacy Notice

The information you provide is collected by the Treasury Board of Canada Secretariat under the authority of section 7 of the Financial Administration Act.

The information will be collected for the purposes of gathering feedback on Year 1 of Canada's Action Plan on Open Government for inclusion in the development of Canada's Self-Assessment Report.

Personal information will be protected under the provisions of the Privacy Act and will be stored in Personal Information Bank PSU 938, Outreach Activities. Under the Privacy Act, you have the right to request access to your personal information, held by a government institution, and to request corrections should you believe the information you provided contains errors or omissions. If you wish to avail yourself of this right or require clarification about this statement, contact the TBS Privacy Coordinator by email (by calling 613-946-6260 or toll free at 1-866-312-12511 or writing to the TBS Privacy Coordinator, Treasury Board of Canada Secretariat, 140 O'Connor Street 8th floor, Ottawa Ontario, Canada, K1A 0R5). For more information on privacy issues and the Privacy Act in general, consult the website of Office of the Privacy Commissioner or call 1-800-282-1376.

By choosing to participate you confirm that you agree to the terms above.