Our web app published road closures data we already had as a map, and reduced the manual labor of data entry. This enabled internal employees to deliver more value with less work.
Drivers could only learn about road closures from subscribing to the newspaper, or a mailing list
Even though the City is the official data source on which roads will close, this data was mostly used for internal processes.
The City published a weekly mailing list of road closures. However, the Mayor felt political pressure to get the City’s data on road closures into the hands of the public in a format they can understand.
Illuminating the process with user shadowing
Emails about road closures accumulated throughout the week. Starting on Friday morning, our maintainer opened every single one, copying and pasting the information into a new email window.
Replacing the mailing list with a web app
Rapid iterating in mixed fidelity
Pulling the best pieces together on a whiteboard
Designing high-fidelity in code
There were no high fidelity mockups for this project, because some design I did directly in code earlier in the year was a step up in design quality compared to what the team had delivered before I joined.
UI Remix, 2023
I’ve learned a lot about how to make a design look cleaner, and make the product look more dependable since I did this project. In 2023, I remixed this project in Figma, to show what it might look like if I designed this today.
Can we make this responsive?
Public feedback revealed demand for this web app to work on phones. I quickly did some sketches on note cards to show how a responsive design could work.
Bringing it all together with the admin UI
The developer and I sketched out form fields based on what we observed when we shadowed the mailing list maintainer.
“Ugh. I clicked wrong again.”
When the developer and I tested our work, we both said out loud that we made a mistake, and we just needed to learn the UI correctly. But when it happened several times, I realized we weren’t the problem—the problem was the UI, and we can fix it.
We kept accidentally drawing on the map, when we intended to drag, because the UI started with drawing mode enabled by default. I solved the problem by having it start in dragging mode, letting us choose the drawing tool when we’re ready to draw.
The Admin UI enabled a game-changing productivity trick
Our UI enabled the admin to enter road closures in short bursts throughout the week. Compared to the old workflow, this changed their Friday schedule from being completely full, to completely open.
They told us, ”I keep joking with my coworkers, if you have a hard problem, just have the folks in IT make an app for you! It’s as simple as that!”
The app was a winner at the Code for America Technology Awards, for putting government data in the hands of the public.
Don’t let technology become a barrier to giving users what they expect
Let users choose what they want to do before they do it. In hindsight, we made that mistake with the drawing tool because we were excited about working with a new technology. This showed me how important it is to put the user’s needs ahead of our excitement.
Sharing elements between the desktop and mobile UI made it possible to deliver what users expected. Even though this app shows a lot of information, I was able to make it work on a mobile device by showing fewer parts of the UI at a time.
Questions and research that feel obvious to me now
If a stakeholder approached me about replacing a mailing list with a web app, the first question I would ask is, “How many subscribers are on this list?” to get a ballpark estimate of user engagement.
Run a user survey to check some basic assumptions. What devices users expect to see road closures information with? Would they use a dedicated app? Or do they expect this information in an app they already use?