Today I wanna talk briefly about a problem that can be a pain in the ass to solve: conflicts on AppCompat version. Well, if you are working on a well-structured project where there are pipelines for CI/CD and it tests the build of the application every time you generate a PR, then you're good. You will have... Continue Reading →
Solving Azure DevOps Authentication Issues in Pipelines
If you've ever tried to authenticate a private Maven or NuGet repository in Azure DevOps, you might have encountered the dreaded 401 Unauthorized error. Even with the correct credentials, pipelines often fail due to missing authentication tokens or incorrect configurations. I recently faced this problem when trying to integrate a private Maven repository into an Android project using Azure DevOps pipelines. After some... Continue Reading →
The Art of Building Fluent SwiftUI Components
As developers, we are used to creating reusable UI components to use across different views of our applications. This behavior is pretty common since we do that with code in general. It is a fundamental principle of writing efficient code. We are constantly creating reusable code, or even extracting existing code to reuse it in... Continue Reading →
Updating your SQLite table structures with Swift
Introduction When developing an iOS app that uses SQLite for local data storage, one of the significant challenges is updating the structure of tables in the database. Unlike Core Data, which provides built-in mechanisms for versioning and schema migration, SQLite lacks a native, straightforward method for altering table structures. This can be particularly problematic when... Continue Reading →
Bridging C++ and Swift for Modern iOS Development
Introduction In iOS development, we often find ourselves working between two worlds: the old and the new. Languages like C++ and Objective-C belong to the "old world," tried and tested, still powerful, and full of history. On the other hand, Swift represents the "new world," bringing modern features and ease of use to the table.... Continue Reading →
Refactoring Bad Code: Applying SRP in Practice
The Single Responsibility Principle (SRP) is one of the five SOLID principles. It tells us that a class should have only one responsibility. Obviously this rule can be extended also for methods. In this post, I’ll walk you through an example, from a project that I worked on, where a method violated SRP. Then I will... Continue Reading →
The Day I Was Beaten by the Sliding Window Algorithm
If you're a developer or studying to become one, you've likely encountered algorithms. But if you're not familiar with them yet, don't worry! Algorithms are essentially step-by-step procedures designed to solve specific problems. Think of them as a series of instructions that guide you to a solution. Given how many algorithms exist, it’s nearly impossible... Continue Reading →
