The government of India has recently announced a big push into open source as a part of its Digital Initiative. For a country of more than a billion people and thousands of government organizations, I see this as a long overdue move that will hopefully boost the faltering free and open source software communities in India.

On the face of it, this initiative should not be written off as yet another bureaucratic exercise into nothingness, because the program seems to be headed by an able administrator, RS Sharma, who was a part of the massive Universal ID (UID) project executed by the government of India. That project has issued bio-metric based IDs to around 700 million Indians. Mr. Sharma and has also managed to build an impressive and tasteful attendance application based on the UID infrastructure.

From my experience in the free and open source software industry, I think if public money could be used to either build a public or private asset, it should be used to create public assets.

Make it free

The first and most well-understood virtue of an open source application is that the source code is available for everyone to see and build upon. This also helps us avoid reinventing the wheel. There is also another, less-understood feature that open source software must also be well-engineered, reusable, documented, and near production quality. Some call it "free" software because it means that a community is encouraged to use it without depending on the original developers. I think the Indian government must also address this idea of "free", otherwise some of the key components of the tools could be left out.

Engage the community

Given the resources available to a powerful government, software can be built by its own groups or by contracts with large IT firms. But, these large organizations are not designed to build software in the open, and they may not want to engage the community—they may think that if the knowledge goes out, the commercial potential of the project will come down. This is a tough problem, and I am interested to learn what development model they adopt.

Open data standards

Along with being open source, the software that will be built should be Internet ready with public APIs and open standards. If the government is really thinking of building the next generation of IT infrastructure, it should make sure that the applications that are built use standardized schemas and are easily used by citizens, or "civic hackers."

One example is public transport data. There is a well accepted standard for publishing Public Transport schedules (GTFS), but there is almost no government body in India that publishes data in GTFS, even though a private company like Google can provide accurate data via GoogleMaps.

Repositiories

The announcement also says that the government is contemplating building a GitHub/SourceForge-like repository that will host all applications built under this initiative. The first thought for any open source developer is, "Why not GitHub? or "Why not let each organization publish on its own, be it GitHub, or their self-hosted GitLab instance?" By creating a centralized repository, we might see each organization mandated to publish X number of repositories, no matter how meanlingless. It might be a better idea to set publishing standards for such software and let different organizations host it wherever they like. This will encourage diversity in platforms and that leads to much better software being built.

Expectations

So far, the Indian government has a mixed record of implementing large IT projects and a shockingly poor record when it comes to open source software. The government's nodal agency, the National Resource Center for Free and Open Source Software (NRCFOSS), and the Center for Development of Advanced Computing (CDAC), have been publishing free and open source software for a while, but I cannot find the repositories, nor the products, nor the documentation. Their flagship BOSS Linux Distribution is so popular that the last question on its forum is from 2010, and if you want to find the source of their cloud computing project (MEGHDOOT), you might have to file a Right-to-Information application.

As a tax-paying Indian citizen, it is disheartening to see the state of affairs. Considering these poor standards, any new initiative will be better. But, with a new administration in place, my hopes are running high, though I don't expect much, especially in a short time.