Syntax adventures in 43 languages

It’s 8:30 am and I’m sitting on the floor by my desk muttering to myself, surrounded by multi-coloured post-its. Most of the fourth floor come in mid-morning, but I need some time alone to think.

Being a stubborn, multilingual grammar dictator, I had picked a fight with an area of the website that most people preferred to steer clear of. If I couldn’t fully understand these policies, then what about the people using our website?

Back then in 2015, we had a system where partners (property owners or managers) would speak to someone on our local team, defining the conditions that allow guests to cancel reservations at their property. The Booking.com employee would then select these options from a variety of possibilities that would make up a rather disjointed sentence, or they could create a new one from a jumble of existing phrases. These sentences would then appear in all the languages that Booking.com can be used in (43 at time of writing).

This is how policies looked for employees selecting them. Underlined phrases were selected from a list of options. You could add an infinite number of contradictory rules.
This is how policies appeared to people using the website - in the yellow box of doom.

The little box that was supposed to tell you in the blink of an eye if you could cancel your reservation later or not was, in reality, a monster. In some cases, the text would go on and on in a jumble of incomprehensible words and numbers. On our website it came across as alarming fine print that was impossible to read. In English it was awkward, but in some languages it was a grammatical absurdity that even our own employees couldn’t fully understand. Most people simply ignored it.

However, a small team had started looking into how to start taking customer payments on behalf of our partners, and in order to do this our systems needed to understand what the policies were. This in turn meant that we, the humans behind the systems, needed to understand them fully too.

While a developer was working on turning these policies into code, I had embarked on the mission to turn them into full sentences that actually made sense to us, to our partners, and to the people using our website.

My approach was to break these policies down into four basic building blocks: action, amount, condition and time. I then added words to these sentences and played around with them until I could make them interchangeable, thus allowing for an unlimited number of combinations.

Illustration by UX Designer Elena Scherer
The dynamic questions and answers form that partners can fill in themselves now. Each question appears after the previous one is answered and is automatically filled with the information already given.

These sentences were automated from the answers given by partners to a series of simple questions that I created, allowing them to take control of the policies they show on Booking.com.

That was the easy part. Now I needed to make it work in all 43 languages, and others that we might add in the future. I’m lucky enough to come from a multilingual household, which meant I could already try my system out in English, French, Polish and Czech. However, we needed it to work in languages such as Arabic, Latvian, Turkish and Icelandic too.

I summoned one contact from each of our language teams to translate the system and try it out in their respective languages. With a fair amount of fine-tuning, we eventually had grammatically correct and relatively comprehensible sentences being formed in all languages.

Working on text that will be auto-generated in 43 languages, and making it make sense is a truly humbling experience for a linguist. I discovered that in Thai the word “policies” needs to be translated differently according to whether it’s being shown to a partner or a potential guest, and that in Hebrew “policies” does not exist as a plural. The grammar of Traditional Chinese, Simplified Chinese, Japanese and Korean is so different that simply being able to change the syntax was not enough, so we discussed how to structure the information differently. The solution came in the form of short sentences that read like bullet points.

Eventually we pushed forward, wrapped up the details and started testing it. It wasn’t just needed to enable us to take payments; many more people were realising the impact it could have on reducing confusion for both our partners and the people using our website. We needed to enable our partners to choose their own policies for themselves, and we needed to be able to start testing how we present those policies to the guests booking through our website so that they could understand them fully.

On a typically rainy October day, a small group of people gathered around a desk. We held our breath as the experiment went live for the nth time. No errors, no mysterious blips. I felt like we collectively held our breath for the entire time that it ran. As it finished and the new system went live, the tension evaporated. The millions of people that visit the website every day could finally understand if and up to when they could cancel their booking. Because at the end of the day, that’s what my work is all about; empowering people to experience the world (as smoothly as possible).