Wyoming’s 250-person Enterprise Technology Services (ETS) group knew it had a good thing in its Enterprise Extensible Code Library, but it chose to keep things under wraps outside of the state until last week when members of that team attended an annual confab for state government CIOs.
It was at the National Association of State Chief Information Officers (NASCIO) convention in Orlando that the ETS code library project was honored with a Recognition Award for Enterprise IT Management Initiatives, and the inquiries from other states and organizations started streaming in.
As described in Wyoming’s NASCIO awards program entry submitted by Deputy State CIO Meredith Bickell, the project launched in 2013 and its main purpose is to serve as a repository of reusable code modules (or “lego blocks”) that can be employed and added to by state agencies building applications. ETS provides internet and enterprise IT services to Wyoming’s executive branch, agencies, boards and commissions.
The upshot of the code library is that apps can be built faster and less expensively – in some cases reducing costs from hundreds of thousands of dollars to less than a thousand. As you might imagine, plenty of what needs to go into such apps, from secure logins to reporting and notifications, is common across agencies.
“Agencies no longer need to navigate the procurement process requesting significant funds to build solutions,” the NASCIO awards entry reads. “With the reuse of code and standardization, ETS has created a new synergy previously absent from many state government projects.”
Or put another way by Wyoming Enterprise Solutions Architect and Geographic Information Officer Anthony Witbrod, “We hope to see an influx of new application development in-house using the lego libraries. Our goal is to see each new app dev project become a minimally viable project, create the new necessary capabilities and provide an even larger toolset that other agencies can continue to leverage.”
The reality was that often agencies would look to build seemingly unrelated applications that might actually share more than half of the same coding needs. Via the code library, an agency can employ reusable code to get, say 70% or 80% or even 90% of the way through an application, then seek funding for the rest, being sure to architect that additional code so that it too can be reused.
Among the apps built using the code library have been an educator credentialing system used by the Wyoming Professional Teaching Standards Board and a fully-automated Bid Waiver solution that has shortened to a couple of days a process that could take weeks via the old paper-based system.
The project’s NASCIO award win even got the attention of Wyoming Gov. Matt Mead, who said that “The extendable code cloud library helps Wyoming pursue high goals with cutting-edge technology. We are building out solutions for agencies and our partners to expand upon and creating opportunities as we take to the cloud.”
Inside the Wyoming code library
As for some of the particulars of the code library, Wyoming chose Java with Sencha GXT for its development language, figuring this would be the language most employees would be familiar with, and ETS uses BitBucket Git as its code repository.
Google App Engine, which plays nicely with Java, was selected for the NoOps cloud platform, and tools such as Maven are used to prototype new apps in a flash. Agile development frameworks such as Scrum and Kanban are used to keep development teams on track.
One beauty of the project, Witbrod says, is that the reusable code blocks are open source, so that developers from other state agencies – or from anywhere for that matter – can tap into them.
“It’s GPL, so it’s open to anyone once we get our release going, which hopefully will happen soon,” Witbrod says. “It’s open source code. It’s literally open to anyone, to you, to me, to any application shop, to any state government.”
After it was announced that ETS had won the NASCIO award, one state CIO immediately swung by the ETS table and expressed interest in learning about Wyoming’s upgraded Help Ticketing System 2.0, which was built via the code library.
“That state is about to go purchase a $300,000 ticketing application, so they want to see what they can do with ours,” Witbrod says. His hope is that there would be a reciprocal benefit by having other states build apps from the code library, then contribute code that they built on top of it. Thinking big picture, this could result in consolidated app development across the country, he says
The code library also grabbed the attention of the National Association of State Technology Directors and it has asked ETS to do some presentations and webinars with its community, Bickell says.
Another benefit of the code library is that even relatively simple application components and apps, such as helpdesk ticketing, can become hardened for more sophisticated uses, such as handling money or other sensitive information.
“It’s kind of like running through a gauntlet… just a simple application has to be very stout to get through all that,” Witbrod says. “It helps us build better lasting applications that we hope will be here for a very long time.”
This story, "Wyoming's open source enterprise code library a secret no more" was originally published by Network World.