On the morning of January 2nd, I opened my laptop to find a colleague sharing an alert: our app was crashing for a substantial number of users. These crashes started happening out of nowhere on January 1st, specifically in the Stats feature of the app when accessing data for a specific date. My immediate thought […] Read more
During the last few years, dealing with uncertainty has become my biggest challenge. The first 25 years of my life were perfectly timed the progress and optimism around me. Although there were occasional slumps, they felt more like exceptions rather than the norm. I felt strong, or at least I believed I did. In reality, […] Read more
During WWDC20 Apple is introducing new App Clips feature. As it’s described in the landing page: An app clip is a small part of your app that’s discoverable at the moment it’s needed. Apple already suggested some possible use cases such as ordering from a take-out restaurant or renting a scooter. And App Clips will […] Read more
Publish is a static site generator built for Swift developers. We’ll be migrating a static blog generation from Jekyll to Publish. The previous version of a blog was generated using Jekyll and a provided theme without putting too much effort in understanding the whole creation process. This time I decided to dig deeper into understanding […] Read more
When starting to develop any application it’s beneficial to think early about the way code can be testable and whether it would be scalable or maintainable. Many iOS applications have suffered from what is called Massive View Controller problem. By putting all the code that fetches, maps, presents and styles into one ViewController it very […] Read more
User experience (UX) and design is an integral part of any application. As a developer, I don’t have much knowledge or “feeling” towards good looking designs. Moreover, truly great user experience requires many iterations of development and feedback. In this part we’ll see how we can take example from Apple’s mobile apps and design guidelines […] Read more
In the previous part we discovered a way to separate our application into frameworks and setup the architecture of our app to support dependency injection. In this part of the series we’ll be fetching and parsing data from the backend using Alamofire and Codable. API Client Although in the scope of this tutorial we’ll be […] Read more
In this part of the series we’ll overview how to properly setup the application. Creating Frameworks As we talked in the previous part, we’ll begin the creation of the project by creating 3 separate frameworks inside our XCode project (TravelKit, TravelDataKit, TravelFeatureKit). An article on raywenderlich.com has a thorough explanation of the whole process. After […] Read more
When learning any new technology I find it beneficial to follow a real world example. In this tutorial series we’ll be creating and releasing an iOS application. The application will be created by showing a real thinking process, going through essential steps and providing the motivation behind them. Although every single line of code won’t […] Read more
An archive of 100days.travel blog created in 2021-2022 during a 4 month trip to South America.
Travel day. We spent the whole night flying to São Paulo, Brazil. Due to time zone shifts, the night became twice as long but the flight still went quite fast. After couple of hours of sipping coffee in a busy São Paulo airport we finally got on the plane again and landed to our final… Read more