It looks like you are using Internet Explorer, which unfortunately is not supported. Please use a modern browser like Chrome, Firefox, Safari or Edge.

AI helped Tommi Koirikivi to code a web service for detecting parking tickets

Published in People, Technology

Written by

Tommi Koirikivi
Principal Designer

Tommi Koirikivi is an experienced designer who every now and then enjoys coding. He likes to spend the days creating prototypes and talking with the users, finding the perfect balance of business and user needs. Crawling or running - in his free time, he likes to exercise in one way or another. With his dog. Self-proclaimed Twitter comedian. Tommi's heart beats to buzzwords such as: NLUI, VUI, Healthcare systems & Healthcare experience.

Article

June 6, 2023 · 4 min read time

Coded in just a few days with the help of ChatGPT, Virheet Kartalla is an online service that allows anyone to investigate parking errors on the map of Helsinki during 2022. Read how Tommi Koirikivi combined Nitor's Core time, AI, and open data from The City of Helsinki Urban Environment Division to create something meaningful.

I had been toying with the idea behind Virheet Kartalla in my mind for quite a while –  I found the first work file on my computer about it back in 2017. The project involves a wide range of implementation methods that I've always wanted to try out and also combine with each other. Now the topic was highly current, so I finally decided to kick off the project. 

In its simplest sense, Virheet Kartalla is a web application coded using Vue that allows you to study parking tickets in Helsinki during 2022. The service includes a search function to find individual street names and an interactive map for free exploration of the city area. The site also lists the five most ticketed areas by street and district. 

In spring 2023, the time felt ripe to tackle the project. ChatGPT -4 offered great tools for practical implementation significantly faster than a designer and front-end hobbyist could achieve on his own. I had initially estimated it would take a few weeks, but now I could have the finished service up and running in just a few days.

From sparring to coding – AI helped in various ways

I started my collaboration with ChatGPT by validating the data model I had created and translating the source data to fit into the existing model for further processing. I utilised the open data maintained by The City of Helsinki Urban Environment Division but couldn't use it directly as such in the project. Translating the source data manually would have been an effort, but ChatGPT made it a breeze. In practice, I combined the latitude and longitude coordinates from another file.

ChatGPT then helped me design the service's functionality: I described to the AI what kind of interactions I would like in the application and, as a result, received methods and functions to implement them. For example, I might ask the AI to provide a snippet of code to colour certain streets on the app's map or to narrow the search by region when the same street name appears in two cities.

I ended up copying the code snippets the AI provided into the application's source code with little or no modification, as ChatGPT always delivered the right solutions. However, this didn't mean they all worked without hiccups on the first try.

During the testing phase, I was able to fix some of the bugs myself, but I also often sparred with the AI. I might give it an error message I received, and it would then deliver a new functional code snippet. This sped up the iteration process tremendously. I was also surprised by ChatGPT's ability to find the reasons behind the errors so thoroughly. 

I work as a designer and only do front-end programming on a hobby basis. However, ChatGPT allows me to raise my skill bar even higher than average, as development is significantly faster and more efficient. AI also allows for rapid prototyping and learning through experimentation, but even this is only possible with some basic programming knowledge.

Tommi_virheet_kartalla

Core projects offer learnings for every digital engineer

Our personal development initiative, Core time, allows us to use our paid hours to work on internal company development and our own exciting projects. Virheet Kartalla was the perfect Core project, as I learned a lot, but it also developed Nitor's shared understanding of the possibilities and limitations of AI as part of digital engineering. 

For example, we don't use ChatGPT in client projects without the client's explicit consent. Even then, it is used to support content design, for example, and no business-critical information is ever exposed to ChatGPT. Samsung recently had a major data leak because of this. The use of AI for business purposes is pretty much held back by lacking security and trust –  to get the full benefits in a professional context, companies need their own solutions rather than public services.

However, for many in-house projects and more general sparring, AI brings efficiencies that were not previously possible. In this case, the technological revolution allowed me to bring to light, with relatively little effort and in a meaningful way, the parking statistics for which raw data have been available and accessible for a long time. We have access to a vast amount of interesting open data, and as the tools evolve, they can be used in imaginative and meaningful ways.

Do you want to have a Core project of your own? Check out our vacancies!

Written by

Tommi Koirikivi
Principal Designer

Tommi Koirikivi is an experienced designer who every now and then enjoys coding. He likes to spend the days creating prototypes and talking with the users, finding the perfect balance of business and user needs. Crawling or running - in his free time, he likes to exercise in one way or another. With his dog. Self-proclaimed Twitter comedian. Tommi's heart beats to buzzwords such as: NLUI, VUI, Healthcare systems & Healthcare experience.