Blog

Deep Dives & Practical Solutions for Web & Mobile

The reentrancy problem

The reentrancy problem

When a new feature is introduced in a programming language, we as developers are often quick to assume it will solve many of their challenges. The excitement to experiment with such features is natural, but it’s often accompanied by the realisation that every solution brings its own set of unique challenges. This was no different when actors were introduced.

Read more
Tips and tricks for iOS & macOS cross platform development

Tips and tricks for iOS & macOS cross platform development

You may have heard how incredibly easy it is to develop user interfaces that work well in all platforms with SwiftUI. But I have some bad news for you, while SwiftUI indeed makes our lives a lot easier, you will still have to invest some time to get the best results out of it.

Read more
Debugging memory leaks in Xcode

Debugging memory leaks in Xcode

Ever got into a situation where you observed some strange behaviour with your app? Crashes, very bad performance or strange warnings in the console? Or simply you looked at the memory usage of your app and realised that it’s way too high for what your app should be doing? Yeah! Most likely you are dealing with a memory leak.

Read more
Testing your backend integration with ease

Testing your backend integration with ease

While working on a client application, you may be wondering, what is the most effective way to test (or even to develop) your networking layer without trying to alter the backend in order to replicate certain scenarios. Working with the backend is time consuming. Real requests take time, you may have to follow certain steps for every action you are trying to test and in many cases, you may not even have the flexibility to reproduce certain states in your backed.

Read more
Simplify your code with @Entry

Simplify your code with @Entry

If you’ve ever tried to tap into the systems provided by SwiftUI, you are very likely to know, how quickly the boilerplate in your code can grow in size. The @Entry macro provides a solution to that

Read more
Designing for yourself versus for a public library

Designing for yourself versus for a public library

There is a big huge difference between 'well designed code' in case of an application and a public library. Don't over-engineer your apps like you were building a library.

Read more
Customise property coding with Property wrappers

Customise property coding with Property wrappers

Struggle with custom encoding/decoding for specific properties in your Codable models? This post explores how Property Wrappers can help eliminating the need for custom encoding / decoding in your types

Read more
Launching your product without breaking the bank

Launching your product without breaking the bank

An MVP, or minimum viable product, is a stripped-down version of your app or website that gets core features into users' hands fast. This lets you see if there's real interest in your idea before investing heavily in development. It's all about learning what resonates with your target market, so you can iterate and improve based on their feedback.

Read more