Thoughts, reflections, and ideas


Posted on

I'm flying to Granada with 2 of my best friends in Berlin, Andrea and Romain. I used to work with both at SoundCloud, where we built more than just a work relationship. The reason why we are flying to Granada is because Andrea accepted an offer to move to NYC to work for Spotify, and we decided to do a farewell trip. I'm so happy for him because I'm sure it'll be a great experience, but on the other side I'm also sad because I'm also missing a friend in the city. Berlin can be very tough without friends, and he was a cornerstone to keep my motivation alive in those moments when I felt really down. I guess this is how life is; you meet people with whom you cross paths that eventually end up diverging.

I'm looking forward to the weekend. Granada is a beautiful city. I've been there two times and this would be my third. The beauty of Alhambra and the quality of the food ther is hard to describe with words. It's a city in which I don't mind getting lost and discovering new places. Even though this time I'm doing things that I've already done, like visiting the Alhambra or going to thermal springs, I know it won't be different, and I like that.

Before I decided to write this random blog post on the flight, I was working a bit on Shopify trying to add Tuist to the iOS codebase. The team did an amazing job keeping a well-structured frameworks' architecture, but there are some quirks that complicate the work a bit, like having sources or resources that don't match the files in the filesystem. Complications aside, I'd like to port the whole project, which is not small, and then open a pull request where I can discuss the idea further for other teams.

I've also done a bit of Tuist. I don't have the list of issues in mind so I basically worked on some minor things that have been in my mind for some time. I really like tackling minor things, cleaning up the code base, and refactoring it to enable future growth. One of my roles in the project is ensuring that you are not building a complex and messy codebase on top of which it'll be impossible to build new features. We started with just one target that contained all the business logic, and nowadays we have more than 10. Each of then focuses on a different domain of the business logic.

Together with Andrea, we started building a service for Tuist, Galaxy. We believe besides the maintenance burden that large Xcode projects entail, another struggle that teams face is build times. We would like to take ideas from build systems like Bazel and Buck and leverage project generation to speed up build times. It's sounds straightforward, which makes me think that we might be missing some rabbid holes. However, we are very optimistic so we'll try and see how far we get. If it ends up working, we'll focus on optimizing it, and getting Tuist users to adopt it.

That was all I could write down before I turned off my laptop because we were landing.