Everything that is not related to software development: ideas on natural languages, countries I have lived in, my life, stuff that make me curious. All sort of interesting things.

My last day at TripAdvisor

Today is my last day at TripAdvisor, where I have been part of the personalization team.

I have joined this office a few months after it was started. When I arrived there were less than ten engineers and I was the second of my team, with the first being sent over from the USA. We were staying in a small office in Sheriff street. I had the chance of seeing new people joining us, knowing them one by one during these months. Many things happened, as we grew to occupy another room in the Liffey Trust and as we later moved to our new office in Grand Canal.

Being part of TripAdvisor has been great for different reasons. The first one is that we do something that matters (~300 Millions of unique visitors per month!) and that people love: I remember when we went to the Web Summit and everyone was stopping by to our stand just to tell us how much they loved our website, how frequently they have used it and how many reviews they had written for us.

Another reason why it has been great working here is because I had fantastic colleagues. Build a no-assholes company is easy to say but difficult to deliver. Well, TripAdvisor managed. It was a pleasure to work with every single colleague. This was very important also because this one is the first engineering office outside USA, and the first remote office for my team. It meant that we had to learn on the job how to organize things. Things worked out because my colleagues and my managers (here and in the USA) were always looking for ways to improve the processes and our colleagues in the USA were supportive. Things were not perfect from the beginning, of course, but it was great to be part of a growing thing, trying to give my contribution.

As always happens I would like to have delivered more, but still there a few things I am happy to have done:

  • I have been the main author of the “reason messages”. Those messages explaining why we are suggesting an hotel to you. I am happy to have done that because it was a key element to activate the personalization feature for 100% of our traffic and also because those messages had a strong impact for our click rates

Screen Shot 2015-01-16 at 11.55.43

  • I advocated a stronger focus on testing. While we are far to reach a coverage I would be happy with, we improved a little bit our situation
  • I spent some time in improving internal debugging tools mainly used by our PMs. During my previous life in research I discovered the importance of tools and I always loved the idea to create tools that facilitate the job of someone. I happy that here I had the possibility to give a small contribution in that direction

Here I had the chance to understand what it means to work in a successful company with a huge user base. You learn to remain calm, find a solution quickly and push that commit to production, when it is needed.

I think this experience will help me a lot in my new position a Groupon, working on the Platform Services. There I hope to have the chance to work with more diversified technologies. But for now, all what I want to say is thank you TripAdvisor, it has been a great time for me.

My first month working at TripAdvisor

So I just finished my first month at TripAdvisor.

It has been quite an intense period and it involved spending a couple of weeks at the headquarters in Newton (MA, USA).

Working at TripAdvisor is both completely different and very similar to what I used to do.

It is similar because I am still playing with code; the very same activity I have been doing since I remember. Whatever particular type of code you are working on you always feel this sense of familiarity  while you are programming. It makes me feel comfortable and relaxed, after all I keep doing the same thing over and over: reading, reasoning about and writing code.

On the other hand this job it is very new for me because I used to work in an Acamedic environment or to do other stuff (MDD/DSL consultant, Java teacher, etc.) which did not imply working with such a large codebase, on a project with hundreds of millions of user which is constantly evolving (and at a fast pace: Speed wins!).

There are a lot of new challenges in this kind of environment and I am enjoying them. I do not have problems understanding the code base (everything seems reasonable and there is enough documentation) but I am still very clumsy in following the processes and I should improve in the way I interact with the other members of the teams.

Maybe I could have expected these differences but there were also a few surprises.

The first one is how helpful all my team-mates are: you can just go and interrupt everyone asking about a piece of code, which is the best way to perform a task, if some idea of yours make sense. Everyone is always ready to help. This is simply astonishing and it is something I still need to get used to.

The second one is that the company wants you to understand that they care and they are happy about having you on board. They spoil you in any possible way and they do an effort to put you in the best conditions to do your work. So you can relax, open your brand new mac and focus on writing code.

Another thing I am starting to like is being a completely full-stack engineer: I am working on back-end and front-end. If I find a possibility for improvements in any script I am encouraged to implement and share them. Everyone has the possibility to intervene and improve things around himself. The result is that things are always evolving in a positive way. Things are not perfect in every single area, but you feel you can actually change the bits you are not happy with, you feel empowered. If you decide to not fix something, well, you have no excuses to complain about that.

Dublin and Irish people are another variable of the equation. Let me just say that they play a huge role in making this new adventure a very happy one, so far.

How the languages we use affect the way we think

The first to consider this hypothesis were Sapir and Whorf, with their work on linguist relativity.

They started examine different languages of the natives of America and look into the differences between them. For example, they found out that some languages did not have an explicit notion of time: there were no future tenses or words to express the concept of “tomorrow” . They did some errors, due to their misunderstanding of these languages, so their theory, after an initial success was rejected by the scientific community. For many decades every attempt to revive the theory that languages affect they we think was disdainfully dismissed as a whorfianism.

Recently this old idea is coming back and there are different works showing an empirical link between a language and some behaviour. For example on TED Keith Chen tells us about this fact: considering two families from the same city of a bilingual nation, considering also that these families were classified in the same category under many dimensions, it seems that depending on the language they speak, they tend to save more or less. He concludes that speaker of languages with an explicit verbal form for the future tend to perceive the events to come as more distant and therefore they tend to save 30% less in comparison to speakers of “futureless” languages.

Fascinating, isn’t it?

There are a lot of studies about that. It has to be said that many scientists like Steven Pinker, to my understandings, do not support this theory. As far as I can understand Pinker, as Chomsky, suggests that language is a natural instinct, and the natural languages we speak just reflect that “internal language”, but we still think using this internal language and we are therefore not so much influenced by the external language we happen to use.

Still, I read a lot of material on this topics and discovered weird differences between languages around the world. Did you know there are languages which do not permit to express relative positioning? They do not have constructs to say that sometimes is “at your left”, they can only use absolute positioning: they can say something is east or north-west. As a side effect speakers of this language tend to be always conscious about directions, they can immediately point out where the north is, for example. Consider a speaker of such a language walking in the corridor of an hotel. Both on its left and its right there rooms. When you open the door of one of this room you could see that the bed is on the left and the closet is on the right. To you they rooms look all the same. To such a speaker they would look as opposite rooms.

Absolutely fascinating for me.

Joy of Clojure

They picked up for the second time a sentence of mine for a book cover. This time is Joy of Clojure. I think the language and the book are really worthy to take a look at them.