Re: [GNOME-India] conference follow up..



Hi Sri,

Sorry, I took some notes the day after meeting the OpenForge folks,
but I forgot to post it here. Thanks for the reminder!

Shobha and I met with three main persons that work with the Indian
government's e-Governance department in the Ministry of Electronics
and IT[1]:

Debabrata Nayak, who is the Director of DigiLocker and OpenForge
Amit Ranjan, the Product Architect of OpenForge and DigiLocker; also
the founder of Slideshare.net
Amit Savant, the Technical Product Manager of OpenForge and DigiLocker
(our primary contact)

1. http://meity.gov.in/content/e-governance

We spoke for about 4 hours on various topics related to open source,
OpenForge, and so on. Here's a collated summary:

What is OpenForge's purpose?
======================

This will sound familiar to software people who have interacted with
governments before—the way software acquisition, development, and
deployment happens right now in the Indian government is very
haphazard. Departments at all levels ranging from central (federal),
state, to municipality, all work independently and usually reimplement
everything they need from scratch. They usually contract the job out
via a tendering process and pick a company that usually ends up
creating some proprietary .NET/Java-based application that uses Oracle
DB and runs on IIS or a custom web server (if it has a web component).

Worse, the code written for this usually gets lost very quickly
because infrastructure is ephemeral or is never acquired in the first
place. If they want to upgrade the system, they go through the same
tendering process and more often than not this results in the software
being rewritten from scratch. There are 31 states and union
territories with a total of ~4000 state-level constituencies, and
hundreds of thousands of municipalities. Besides the obvious cost and
waste, the security implications of this sort of crappy development
process are obvious.

To combat this inefficiency and duplication, many months ago Debabrata
Nayak was successful in pushing through a series of policies that all
government software must be open source[2]. OpenForge[3] is the
project that they have created to serve as a 'central repository' for
all software used by all levels of the Indian government. To start
with, the goal is to get departments to open source and upload all
their software here. Later, it is intended that departments start to
reuse and build upon the code used by other departments. For instance,
each state has its own portals and applications for handling drivers
licenses. There is absolutely no reason for that.

They also want the general public to be able to contribute patches to
these same repositories, but they realize that they are quite far from
that right now.

2. https://openforge.gov.in/opengovernance.php
3. https://openforge.gov.in/

The team
=======

Everyone in the team is fully on-board with the idea of FOSS and is
very well-versed in its concepts, advantages, and so on. I was very
happy to see this. They understand the benefits of code reuse,
transparency in government, collaboration, that open source code is
less likely to be bad because it's out there with your name on it,
that it won't get lost in the sands of time if it's out there, and so
on. They all use git to manage their code, know how bugzilla works,
and OpenForge itself is a fork of Tuleap[4], which is a FOSS PHP-based
software development platform. They run it on a LAMP stack.

What they don't know is how collaboration works in the FOSS world, the
social aspects of it, the business models around it, what GNOME is
exactly, and other details. This reflects in their implementation of
OpenForge and their expectations of GNOME, but I spoke to Amit Savant
in detail about this and he's a very quick study and immediately got
what I meant. For instance, I explained and showed him the GitHub
model vs the bugzilla model vs the Linux kernel mode of collaborative
software development, and he immediately understood how that is
missing in OpenForge and is working on fixing it.

4. http://tuleap.org/
4. https://openforge.gov.in/about.php

Challenges faced
=============

People in the government (bureaucrats, consultants, etc) have inertia
(obviously), but they are also actively against change and refuse to
do so unless forced. When they are told that so and so policy now
requires them to open source their code, their response is that they
will do nothing till they are explicitly ordered by their immediate
superior.

These same people are extremely territorial, which means even with an
explicit order it would be difficult to get them to open source their
code, and almost impossible to get them to collaborate with or build
upon some other department's code.

The only way around this is to gather momentum around open source and
its benefits and build trust in the idea, the platform (OpenForge) and
the development platform (Linux, Apache/Nginx, PHP/Python, etc).

They've been using a combination of tactics to achieve this:
a) Proclamations about cost savings (to woo ministers, and especially
because it aligns with the current govt's policies/propaganda)
b) Value through association. Google, Twitter, Facebook, all of them
use and were made with open source, so it must be good
c) ICEGOV (the conference)[5] came at just the right time. It was a
good place to do the release of OpenForge due to the media presence,
and the fact that the MEIT minister Ravi Shankar Prasad would be able
to do the unveiling.
d) They want to build momentum around the use of open source in the
govt, and around OpenForge itself (this is where they want GNOME's
help; more on this later)

5. http://icegov.org/

Another challenge is that the entrenched software industry is doing a
lot of pushback. The govt is a cash-cow for Oracle Java, Oracle DB,
IIS, .NET, and Windows Server licenses. No specific names were taken,
but companies apply pressure at all levels. Ministers can be mostly
brought on our side because of the cost savings, but I came away with
the impression that bureaucrats/consultants have "incentives" to
oppose open source.

The pushback is so strong that they don't even want the words "open
source" used anywhere. Politicians have absolutely no clue about any
of this and usually just go with what is recommended to them (by their
bureaucrats), so they have to be educated.

Technology and platforms
===================

As I mentioned earlier, the platforms that most software is currently
written in and deployed on are proprietary and Microsoft/Oracle-based.
So for the govt departments they work with, a LAMP (Linux, Apache,
MySQL, PHP) stack is amazingly cutting-edge technology (welcome to
2005). The team understands that this is a stepping-stone, and that
trust will have to be built in all the other technologies for them to
be used. The first step is using FOSS in the deployment platform, then
in the development platform, and then further growth can happen there.

This is where they were hoping that GNOME would be able to help. If
GNOME were to start using OpenForge as a collaboration and development
platform for some of its projects, it would build momentum around it,
and they would be able to show this fact internally which would help
push this initiative a bit more (ref: Challenges faced). However, they
do understand that volunteer projects do not work by fiat, and after
seeing the collaborative workflow that is currently used by FOSS
projects (ref. The team), they understood that they need to work a lot
more on OpenForge before people will want to use it over something
like GitHub[6].

However, Shobha and I were able to tie in GNOME in one place: it can
be a good first development platform for people. I talked about how
we've been working on our development story with GNOME Builder for a
while now, and it's at a good place for people to use, and contribute
(such as PHP language server support). Amit Savant is going to try on
his machine first (he uses Windows right now and wants to move away
from it), and then we can see where it leads us.

6. I suggested that they can encourage people to use OpenForge by
making it a requirement for 3rd-party projects that interface with
government APIs via API keys (such as UPI, UIDAI, etc); with git, they
don't even have to use it exclusively.

GNOME's role
===========

The big questions. How can we help them? How can they help us?

I feel like the best help we can give them is by evangelising it at
every step of our encounter with the government in a software context.
The Datameet[7] folks have been successfully collaborating with the
Indian govt on this, and open data[8] has made surprisingly good
strides inside the government. A lot of these people have overlap with
Mapbox and OpenStreetMaps, so they are our natural allies, and we
should talk to them about how we can work together on this. I regret
not thinking about them when we were made aware of OpenForge and
ICEGOV since many of them are in Bangalore and could've joined us.

7. datameet.org
8. http://data.gov.in/

As for how they can help us, I think that will lead naturally out of
increased FOSS usage in the government.

There were many other conversations, but they were on topics such as
Aadhaar, UPI, privacy, and other topics completely unrelated to GNOME,
so I'll skip those. This email is already too long. ;) Feel free to
poke me about that at the next conference though!

Cheers,
Nirbheek

On Thu, Mar 16, 2017 at 11:54 PM, Sriram Ramkrishna <sri ramkrishna me> wrote:
How did things go at the conference?

sri

_______________________________________________
gnome-in-list mailing list
gnome-in-list gnome org
https://mail.gnome.org/mailman/listinfo/gnome-in-list



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]