Civic Innovations

Technology, Government Innovation, and Open Data

Which Less is More?

In the last several months, nothing has generated more buzz than ChatGPT. ChatGPT and similar LLM tools hold huge potential value for governments as they work to provide better digital services to the people they serve. However, the AI landscape is changing very rapidly and a number of questions surrounding the appropriate use of AI tools remain unresolved. Its easy to get confused.

Governments should approach these tools with caution, and with a clear understanding of the benefits they hope to achieve by using them.

Writing Less Code vs. Writing Less Code

One application of ChatGPT that seems to hold potential value is using it to write software code. Examples of people using ChatGPT to create a new website or do other kinds of programming tasks are legion on the Internet, and there is an ongoing debate as to what the future of professional coding looks like in a world with ChatGPT.

The idea of using AI to write code, or to assist coders as they develop new software, is not a new one. Tools like GitHub Copilot and Microsoft Intellicode have been around for a while. I also think there are some parallels between these kinds of AI-assistant tools and low-code / no-code tools that abstract away the details of coding, and enable even non-developers to create new applications. AI-assisted coding and low-code / no-code tools have the common goal of reducing the number of lines of code a software developer has to write themselves – i.e., to write less code.

To be clear, there are some significant benefits to adopting tools that improve developer productivity, making it easier and faster to build software. But there are also significant benefits to reducing the amount of code that is used to support a software solution. Larger code bases are harder to maintain, harder to debug and secure, and harder to get an ATO for. The weight of additional code may not age well and accumulate technical debt faster than a solution built on a smaller code base.

As such, an additional issue for governments to consider as they look at the potential benefits of AI-assisted coding or low-code / no-code tools is the tradeoff between writing less code and writing less code.

A Pathway to Less Code

One strategy that governments can adopt to reduce the code footprint of digital solutions – making them cheaper to build and maintain, faster to deliver, and easier to authorize – is to adopt a platform approach.

Platform engineering has been generating lots of buzz lately as well, albeit in a much narrower way inside of tech circles. (Some people complain that it is overhyped, or just a rebranding of modern DevOps practices.) But I think it is an important approach for governments to consider to improve the way they deliver and maintain digital solutions.

Platforms create a separation of responsibility between the team managing the platform – all of the common components, services, and tools that make up a platform – and the product team building a specific digital solution. This reduces the cognitive load on the product team, shrinks the amount of code needed to build a solution, speeds delivery, and makes it easier to get an ATO.

Governments can magnify the benefits of platforms by layering on additional components like reusable modules or services (for things like authentication and search, etc.), and extensible tools like design systems. Adopting a platform approach can help governments speed up the delivery of digital services, and reduce the amount of code needed to support them.

There’s no shortage of hype these days surrounding ChatGPT, LLMs and other generative AI tools. A good way for governments to cut through the hype and determine if these tools provide real value is to ask whether they are interested in writing less code, or writing less code.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

About Me

I am the former Chief Data Officer for the City of Philadelphia. I also served as Director of Government Relations at Code for America, and as Director of the State of Delaware’s Government Information Center. For about six years, I served in the General Services Administration’s Technology Transformation Services (TTS), and helped pioneer their work with state and local governments. I also led platform evangelism efforts for TTS’ cloud platform, which supports over 30 critical federal agency systems.

%d bloggers like this: