Yours to Discover
Today I wanted to give some credit to our government. No, not the elected officials, about whom I have very little that's positive to say, especially during Covid. Instead, I'm talking about the team who just shipped Ontario's Covid-19 Verification app. I don't actually know who they are, but I respect what they did, how they did it, and I wanted to say so publicly.
Earlier in the fall, I was interested in media reports that hinted at how this app might get built (emphasis mine):
But during a press conference on Tuesday, Associate Minister of Digital Government Kaleed Rasheed stressed that both the enhanced vaccine certificate featuring a QR code and the app that will be used by businesses to read the codes are still “on track” to be released by Oct. 22. He said that the app will be open-sourced, allowing for it to be “continuously improved” once it is in use. "We have some of the most talented developers and designers in Ontario working on this app,” he said. “My team at the Ontario Digital Service is building the app in-house, taking advice from the private sector, and other jurisdictions to help us get this right, to protect your data and privacy from the start.”
Since then, I've been keeping any eye on https://github.com/ongov to see if they'd follow through. Sure enough, yesterday my Twitter feed was full of people talking about the new Verify app. While the media was keen to go download it on their phones, I went to GitHub to read the source code. It's now available at https://github.com/ongov/OpenVerify.
The app is Apache 2.0 licensed and written in React Native and TypeScript, using all the usual tools you'd expect (Jest, eslint, babel, etc). It's great to be able to show this stack to my students, who are learning all these same tools and frameworks this semester. Plus reading the code and tests took me down some interesting rabbit holes, as I learned about https://spec.smarthealth.cards/ and how the QR Code validation flow works:
The whole thing is well done. I'm impressed! It's fantastic to see my own government creating digital services in the same way that I work. I live on GitHub and seeing the potential to participate in the development and maintenance of the services I use is exciting.
There's still more I'm watching for in the coming weeks. For one, the repo currently feels a bit like it was "thrown over the wall" vs. being an "open source project." I don't fault the team for this, since the pressure to get it out on time must have been massive--shipped is more important than perfect & pending, and I know our family has been keen to see this thing become available in our community. But as I write this, there's only a single commit by a GitHub account that's only ever made a single contribution. There's no sense of who was involved, no real community here. That's too bad. It would be great to see some names and faces attached to this good work.
So, we have open source here, which is great; but I'd also love to see this "continuously improved" and ideally by people not in the government:
"We have some of the most talented developers and designers in Ontario working on this app,” he said
I believe it. But the number of talented developers and designers living and working in Ontario is much, much larger, and it would be great if there were obvious ways for us to get involved in projects like this. The next thing I'm watching for are how pull requests will be received. There's already been a bit of activity from people filing Issues, which is great to see, especially since it naturally filters a bit by geography (I'm seeing devs from Ontario show up that I haven't met before, which is fun).
I'm excited by our increasingly online society and the potential it has for enabling more of our government services and data to find their way onto GitHub. It's great that something as important as this Verification app can be trusted by the people who use it. Over coffee today, my wife and I downloaded it in order to verify our own COVID Passport QR codes. Seeing the green checkmark was reassuring, not least because I understood how it worked.