A/B testing

Post
How to use Firebase Remote Config and A/B testing on an iOS app(part II)
June 30, 2019 - 9 min read

In the previous article, we described the steps required to set up Firebase Remote Config and A/B testing. So, it is time to proceed with the implementat...

Post
How to use Firebase Remote Config and A/B testing on an iOS app(part I)
June 22, 2019 - 5 min read

This article is part of a series on how to setup and integrate Firebase Remote Config and A/B testing on an iOS app. To illustrate and describe the proce...

AVFoundation

Post
Improve In App Video Guides with Picture-in-Picture in SwiftUI
April 18, 2026 - 5 min read

When we build features like widgets or Safari extensions in our app, short video guides can help our users follow the setup steps that must be performed ...

AVKit

Post
Improve In App Video Guides with Picture-in-Picture in SwiftUI
April 18, 2026 - 5 min read

When we build features like widgets or Safari extensions in our app, short video guides can help our users follow the setup steps that must be performed ...

Tip
How to loop a video on iOS
May 9, 2026 - 2 min read

When displaying videos in an iOS app, you may sometimes need them to loop continuously. Think of a workout app where a trainer demonstrates an exercise. ...

Android

Post
Running an HTTP server on an Android app
November 10, 2019 - 4 min read

A few days ago I wrote a post describing how to run an HTTP server from an iOS app. This intrigued me to start investigating how to implement a similar a...

Post
Continuous Integration for Kotlin Native projects with Gitlab CI
September 8, 2019 - 6 min read

How many times have you started a project with the intent to follow practices such as writing unit tests and enforcing a code style, only to give up afte...

Post
Kotlin Multiplatform Project: Code styling for iOS and Android
September 1, 2019 - 6 min read

Continuing my journey on Kotlin Multiplatform Project, this time I will explore some tools that can be used to apply code style conventions on such proje...

Post
Kotlin Multiplatform Project: Unit tests for iOS and Android
August 25, 2019 - 7 min read

In every project, regardless of the language or framework, it’s really important to have confidence when making a code change. Unit tests are here for th...

Post
Thoughts on Kotlin Multiplatform Project structure
August 17, 2019 - 10 min read

In the previous article, I tried to explain step by step the process of creating an iOS and Android app with a shared library using Kotlin Multiplatform ...

Post
How to setup a Kotlin Multiplatform Project for iOS and Android
August 4, 2019 - 5 min read

Hi, time has come to write something about Kotlin Multiplatform Project and more specifically how to setup a project with an iOS app, an Android app and ...

Tip
How to fix adb's `Permission denied` when copying a file from a device
July 8, 2020 - 2 min read

On a recent attempt to pull a realm database file created by an application that I built on my device, I got an error with the following message:

Tip
How to specify an alternative location for the AndroidManifest.xml
July 11, 2020 - 2 min read

By default, Gradle expects an AndroidManifest.xml file on the root directory of the main source set of every Android project. But what if for some reason...

Apollo

Post
Custom GraphQL types on Swift projects
May 31, 2020 - 11 min read

By default, GraphQL supports only a handful of basic types that we can use on the schema definition. This list includes Int, Float, String, Boolean and I...

Post
Swift ❤️ GraphQL: How to create a GraphQL server with Vapor and an iOS app as a client
May 24, 2020 - 8 min read

Nowadays, it’s quite common for many iOS apps to rely on the communication with a server to deliver their services to the user. And while in most cases t...

App Extensions

Post
Accessing web page properties from an iOS Share Extension
January 19, 2020 - 6 min read

A Share Extension is a type of App Extension which is used to share content with other apps. One such content type and a quite popular use case for share...

Post
Custom UI for Share Extensions
January 11, 2020 - 7 min read

iOS comes with a plethora of App Extensions that you can use to improve the functionality and the user experience of your app. An example of such extensi...

AppleScript

Post
Use AppleScript to generate an enum for SF Symbols
June 28, 2020 - 11 min read

SF Symbols is a great way to add symbols in apps. Introduced during WWDC 2019, and with a new updated version this year, the SF Symbols app now provides ...

Post
Download provision profiles with AppleScript
November 25, 2018 - 6 min read

In my try to empty my To-do list, one item that caught my attention and I decided to give it a try is AppleScript.

Blog

Post
Why I choose Jekyll over competition
October 23, 2018 - 4 min read

A few months ago, I took the decision that I wanted to start writing some articles. At that time, one of the first things to consider, and that would def...

Post
Why I start a blog
September 23, 2018 - 3 min read

Hello world, this is my first blog post!! 🚀 My name is Ioannis Diamantidis, I am a software developer and a few months ago I decided to start my own blog...

Bundler

Post
Setting up a new iOS project (Part I)
April 26, 2020 - 7 min read

What are the initial steps that you take when creating a new iOS project? Regardless of the language or the framework, it’s quite common when creating a...

CI

Post
Continuous Integration with GitHub Actions for a Scala project
May 17, 2020 - 7 min read

In this post, I am going to walk you through the process of setting up a CI(Continuous Integration) workflow with GitHub Actions on a Scala project.

Post
Setting up a new iOS project (Part II)
May 3, 2020 - 7 min read

This is the second part of a series of posts about the steps that I usually take when creating a new iOS project.

Post
A guide to SwiftLint
December 23, 2018 - 5 min read

SwiftLint is a great tool to enforce Swift style and conventions. When working with different developers with different levels of experience and differen...

Catalyst

Post
Scan and broadcast to nearby devices with Core Bluetooth
February 16, 2020 - 11 min read

The topic of this post is about Bluetooth and how we can use it in our applications.

CocoaPods

Post
Setting up a new iOS project (Part I)
April 26, 2020 - 7 min read

What are the initial steps that you take when creating a new iOS project? Regardless of the language or the framework, it’s quite common when creating a...

Codecov

Post
Continuous Integration with GitHub Actions for a Scala project
May 17, 2020 - 7 min read

In this post, I am going to walk you through the process of setting up a CI(Continuous Integration) workflow with GitHub Actions on a Scala project.

Command Line

Post
How to find large files from the command line
January 4, 2020 - 5 min read

Have you ever ran into issues with your storage disk being full?

Post
Useful Curl features
January 6, 2019 - 5 min read

Happy New Year everyone!! This is my first post of the year!! Today’s topic is a guide about some of the features of curl. Curl is a command line tool th...

Tip
cd command hidden gem
June 15, 2020 - 1 min read

If you are a heavy user of the command line (as I am 🤓), there is a high chance that you use the command cd quite often to navigate back and forth to dif...

Tip
Serve your local website or service on HTTPS with mkcert
June 26, 2020 - 1 min read

When working on a website or a service, the development environment should imitate as much as possible the production one. And since most production webs...

Tip
How to list all the targets on a Makefile
July 1, 2020 - 2 min read

make is great tool to orchestrate the setup and build process of a project. It expects a Makefile, where we define targets to execute, like for example i...

Core Bluetooth

Post
Scan and broadcast to nearby devices with Core Bluetooth
February 16, 2020 - 11 min read

The topic of this post is about Bluetooth and how we can use it in our applications.

Curl

Post
Useful Curl features
January 6, 2019 - 5 min read

Happy New Year everyone!! This is my first post of the year!! Today’s topic is a guide about some of the features of curl. Curl is a command line tool th...

Dart

Post
Dart extensions to flatten Flutter's deep nested widget trees
July 7, 2020 - 4 min read

In version 2.7, Dart introduced extensions to allow developers to add further functionality to an existing component. Extensions can be a great tool in o...

Detekt

Post
Kotlin Multiplatform Project: Code styling for iOS and Android
September 1, 2019 - 6 min read

Continuing my journey on Kotlin Multiplatform Project, this time I will explore some tools that can be used to apply code style conventions on such proje...

File Upload

Post
Useful Curl features
January 6, 2019 - 5 min read

Happy New Year everyone!! This is my first post of the year!! Today’s topic is a guide about some of the features of curl. Curl is a command line tool th...

Firebase

Post
How to use Firebase Remote Config and A/B testing on an iOS app(part II)
June 30, 2019 - 9 min read

In the previous article, we described the steps required to set up Firebase Remote Config and A/B testing. So, it is time to proceed with the implementat...

Post
How to use Firebase Remote Config and A/B testing on an iOS app(part I)
June 22, 2019 - 5 min read

This article is part of a series on how to setup and integrate Firebase Remote Config and A/B testing on an iOS app. To illustrate and describe the proce...

Flutter

Post
Flutter: Two-way communication between a WebView and a web page
October 17, 2021 - 7 min read

Displaying web content in an app is quite easy and straightforward with WebViews but what happens when we want to open a communication channel between th...

Post
Exploring Flutter's Scrollable.ensureVisible
October 10, 2021 - 10 min read

Have you ever had to build an app with a scroll view of multiple widgets with different heights, and you wanted to add a link so that the user can automa...

Post
Dart extensions to flatten Flutter's deep nested widget trees
July 7, 2020 - 4 min read

In version 2.7, Dart introduced extensions to allow developers to add further functionality to an existing component. Extensions can be a great tool in o...

Git

Post
Save time with git aliases
November 10, 2018 - 3 min read

This is a blog post for those that don’t like using the computer mouse or trackpad, those who don’t use Sourcetree or other version-control tools to mana...

GitLab

Post
Continuous Integration for Kotlin Native projects with Gitlab CI
September 8, 2019 - 6 min read

How many times have you started a project with the intent to follow practices such as writing unit tests and enforcing a code style, only to give up afte...

Github Actions

Post
Continuous Integration with GitHub Actions for a Scala project
May 17, 2020 - 7 min read

In this post, I am going to walk you through the process of setting up a CI(Continuous Integration) workflow with GitHub Actions on a Scala project.

GraphQL

Post
GraphQL mutations for iOS apps (with the help of Combine's Future)
June 14, 2020 - 11 min read

Nowadays, more and more apps rely on a server to support their functionality. One part of this communication is the ability of the app to create new and ...

Post
Mutations on a GraphQL server built with Vapor
June 7, 2020 - 10 min read

One characteristic of a complete API is its ability to allow clients to modify the server-side data. This can be in the form of creating new entries, upd...

Post
Custom GraphQL types on Swift projects
May 31, 2020 - 11 min read

By default, GraphQL supports only a handful of basic types that we can use on the schema definition. This list includes Int, Float, String, Boolean and I...

Post
Swift ❤️ GraphQL: How to create a GraphQL server with Vapor and an iOS app as a client
May 24, 2020 - 8 min read

Nowadays, it’s quite common for many iOS apps to rely on the communication with a server to deliver their services to the user. And while in most cases t...

IntelliJ

Post
How to setup a Kotlin Multiplatform Project for iOS and Android
August 4, 2019 - 5 min read

Hi, time has come to write something about Kotlin Multiplatform Project and more specifically how to setup a project with an iOS app, an Android app and ...

JSON feed

Post
JSON feed reader app with Kotlin Native
October 13, 2019 - 18 min read

Having spent some time exploring and learning more about Kotlin Native, time has come to start building an app where I can use Kotlin Native in a real wo...

Post
JSON feed for Jekyll sites
October 5, 2019 - 5 min read

Feed is a term used to usually describe a text file that provides information about the content of a website and it is primarily intended to be used for ...

JavaScript

Post
Two-way communication between an iOS WKWebView and a web page
February 2, 2020 - 9 min read

Sometimes, on a native iOS app, there is the need to embed a web page within the application. To cater for cases like this, iOS provides WKWebView, an ob...

Post
Download provision profiles with AppleScript
November 25, 2018 - 6 min read

In my try to empty my To-do list, one item that caught my attention and I decided to give it a try is AppleScript.

Jekyll

Post
JSON feed for Jekyll sites
October 5, 2019 - 5 min read

Feed is a term used to usually describe a text file that provides information about the content of a website and it is primarily intended to be used for ...

Post
Why I choose Jekyll over competition
October 23, 2018 - 4 min read

A few months ago, I took the decision that I wanted to start writing some articles. At that time, one of the first things to consider, and that would def...

Tip
Working with drafts on a Jekyll blog
June 13, 2020 - 1 min read

Did you know that Jekyll supports drafts by default?

Tip
Browsing a local Jekyll blog from your mobile device
June 23, 2020 - 1 min read

The command jekyll server, by default, binds to 127.0.0.1, as you can see in the following logs.

KMP

Post
From Kotlin to Native: Or how Kotlin concepts are mapped to the Apple framework
September 19, 2019 - 14 min read

TL;DR This post is about how some specific Kotlin features are compiled to Objective-C and how they can be used in a Swift project when using Kotlin Nati...

Post
Continuous Integration for Kotlin Native projects with Gitlab CI
September 8, 2019 - 6 min read

How many times have you started a project with the intent to follow practices such as writing unit tests and enforcing a code style, only to give up afte...

Post
Kotlin Multiplatform Project: Code styling for iOS and Android
September 1, 2019 - 6 min read

Continuing my journey on Kotlin Multiplatform Project, this time I will explore some tools that can be used to apply code style conventions on such proje...

Post
Kotlin Multiplatform Project: Unit tests for iOS and Android
August 25, 2019 - 7 min read

In every project, regardless of the language or framework, it’s really important to have confidence when making a code change. Unit tests are here for th...

Post
Thoughts on Kotlin Multiplatform Project structure
August 17, 2019 - 10 min read

In the previous article, I tried to explain step by step the process of creating an iOS and Android app with a shared library using Kotlin Multiplatform ...

Kotlin

Post
Running an HTTP server on an Android app
November 10, 2019 - 4 min read

A few days ago I wrote a post describing how to run an HTTP server from an iOS app. This intrigued me to start investigating how to implement a similar a...

Post
JSON feed reader app with Kotlin Native
October 13, 2019 - 18 min read

Having spent some time exploring and learning more about Kotlin Native, time has come to start building an app where I can use Kotlin Native in a real wo...

Post
From Kotlin to Native: Or how Kotlin concepts are mapped to the Apple framework
September 19, 2019 - 14 min read

TL;DR This post is about how some specific Kotlin features are compiled to Objective-C and how they can be used in a Swift project when using Kotlin Nati...

Post
Thoughts on Kotlin Multiplatform Project structure
August 17, 2019 - 10 min read

In the previous article, I tried to explain step by step the process of creating an iOS and Android app with a shared library using Kotlin Multiplatform ...

Post
How to setup a Kotlin Multiplatform Project for iOS and Android
August 4, 2019 - 5 min read

Hi, time has come to write something about Kotlin Multiplatform Project and more specifically how to setup a project with an iOS app, an Android app and ...

Kotlin Native

Post
JSON feed reader app with Kotlin Native
October 13, 2019 - 18 min read

Having spent some time exploring and learning more about Kotlin Native, time has come to start building an app where I can use Kotlin Native in a real wo...

Post
How to setup a Kotlin Multiplatform Project for iOS and Android
August 4, 2019 - 5 min read

Hi, time has come to write something about Kotlin Multiplatform Project and more specifically how to setup a project with an iOS app, an Android app and ...

Ktor

Post
Running an HTTP server on an Android app
November 10, 2019 - 4 min read

A few days ago I wrote a post describing how to run an HTTP server from an iOS app. This intrigued me to start investigating how to implement a similar a...

LLDB

Post
Modifying UI elements with Xcode and LLDB v2
October 14, 2018 - 7 min read

In a previous post, I wrote an introduction about the use of LLDB expressions to modify the UI elements. In this post, I will continue on the same topics...

Post
Modifying UI elements with LLDB
September 30, 2018 - 5 min read

Have you ever been in a situation where you have to experiment with UI and change colors frequent? Does the designer or PM asks for changes in font size...

Licenses

Post
A brief introduction to open source licenses
March 28, 2020 - 7 min read

As you may have noticed from the URL, I am using GitHub Pages to host this blog, which means that the whole code is open-sourced. Amongst other things, a...

OSA

Post
Download provision profiles with AppleScript
November 25, 2018 - 6 min read

In my try to empty my To-do list, one item that caught my attention and I decided to give it a try is AppleScript.

ObjC

Post
From Kotlin to Native: Or how Kotlin concepts are mapped to the Apple framework
September 19, 2019 - 14 min read

TL;DR This post is about how some specific Kotlin features are compiled to Objective-C and how they can be used in a Swift project when using Kotlin Nati...

Open Source

Post
A brief introduction to open source licenses
March 28, 2020 - 7 min read

As you may have noticed from the URL, I am using GitHub Pages to host this blog, which means that the whole code is open-sourced. Amongst other things, a...

Performance

Post
Quick and simple load testing with Apache Bench
July 15, 2020 - 4 min read

Apache Bench or ab for short, is a command-line tool to perform simple load tests on an HTTP server, be it a website or an API.

Personal

Post
Why I choose Jekyll over competition
October 23, 2018 - 4 min read

A few months ago, I took the decision that I wanted to start writing some articles. At that time, one of the first things to consider, and that would def...

Post
Why I start a blog
September 23, 2018 - 3 min read

Hello world, this is my first blog post!! 🚀 My name is Ioannis Diamantidis, I am a software developer and a few months ago I decided to start my own blog...

Productivity

Post
How to get the most out of Xcode: Xcode Snippets
January 26, 2020 - 6 min read

One of the hidden gems of Xcode is a feature called Xcode Snippets. Despite the fact that most developers happen to use them quite often, only handful of...

Post
A step-by-step guide to create a custom Xcode template
July 21, 2019 - 8 min read

For quite a long time I wanted to experiment with the creation of a custom Xcode template and finally the time has come!! In this article, I will try to ...

Post
Xcode shortcuts and custom key bindings
December 7, 2018 - 4 min read

A recent discussion with a colleague about the use of the Xcode shortcuts is the reason behind this blog post.

Post
Save time with git aliases
November 10, 2018 - 3 min read

This is a blog post for those that don’t like using the computer mouse or trackpad, those who don’t use Sourcetree or other version-control tools to mana...

Python

Post
Modifying UI elements with Xcode and LLDB v2
October 14, 2018 - 7 min read

In a previous post, I wrote an introduction about the use of LLDB expressions to modify the UI elements. In this post, I will continue on the same topics...

R.Swift

Post
Setting up a new iOS project (Part II)
May 3, 2020 - 7 min read

This is the second part of a series of posts about the steps that I usually take when creating a new iOS project.

Remote Config

Post
How to use Firebase Remote Config and A/B testing on an iOS app(part II)
June 30, 2019 - 9 min read

In the previous article, we described the steps required to set up Firebase Remote Config and A/B testing. So, it is time to proceed with the implementat...

Post
How to use Firebase Remote Config and A/B testing on an iOS app(part I)
June 22, 2019 - 5 min read

This article is part of a series on how to setup and integrate Firebase Remote Config and A/B testing on an iOS app. To illustrate and describe the proce...

SF Symbols

Post
Use AppleScript to generate an enum for SF Symbols
June 28, 2020 - 11 min read

SF Symbols is a great way to add symbols in apps. Introduced during WWDC 2019, and with a new updated version this year, the SF Symbols app now provides ...

Scala

Post
Continuous Integration with GitHub Actions for a Scala project
May 17, 2020 - 7 min read

In this post, I am going to walk you through the process of setting up a CI(Continuous Integration) workflow with GitHub Actions on a Scala project.

Post
A Scala script to take full size webpage screenshots for different screen dimensions
April 19, 2020 - 8 min read

Today, I had yet another usual Sunday morning. Drinking my tea, doing some UI experiments on this blog and using Chrome’s DevTools and the Device Mode to...

Selenium

Post
A Scala script to take full size webpage screenshots for different screen dimensions
April 19, 2020 - 8 min read

Today, I had yet another usual Sunday morning. Drinking my tea, doing some UI experiments on this blog and using Chrome’s DevTools and the Device Mode to...

Storage

Post
How to find large files from the command line
January 4, 2020 - 5 min read

Have you ever ran into issues with your storage disk being full?

Swift

Post
Improve In App Video Guides with Picture-in-Picture in SwiftUI
April 18, 2026 - 5 min read

When we build features like widgets or Safari extensions in our app, short video guides can help our users follow the setup steps that must be performed ...

Post
Keyboards options for SwiftUI fields
June 21, 2020 - 8 min read

One of the ways to improve the user experience when they fill a form on iOS apps is the use of keyboard types. Keyboard types can be used to show differe...

Post
GraphQL mutations for iOS apps (with the help of Combine's Future)
June 14, 2020 - 11 min read

Nowadays, more and more apps rely on a server to support their functionality. One part of this communication is the ability of the app to create new and ...

Post
Mutations on a GraphQL server built with Vapor
June 7, 2020 - 10 min read

One characteristic of a complete API is its ability to allow clients to modify the server-side data. This can be in the form of creating new entries, upd...

Post
Custom GraphQL types on Swift projects
May 31, 2020 - 11 min read

By default, GraphQL supports only a handful of basic types that we can use on the schema definition. This list includes Int, Float, String, Boolean and I...

Post
Swift ❤️ GraphQL: How to create a GraphQL server with Vapor and an iOS app as a client
May 24, 2020 - 8 min read

Nowadays, it’s quite common for many iOS apps to rely on the communication with a server to deliver their services to the user. And while in most cases t...

Post
Setting up a new iOS project (Part I)
April 26, 2020 - 7 min read

What are the initial steps that you take when creating a new iOS project? Regardless of the language or the framework, it’s quite common when creating a...

Post
Notifying users when an iOS app update is available on AppStore
April 12, 2020 - 11 min read

Have you ever been into a situation where you would love to see all of your users to update to the latest version of your app?

Post
Help your user rate and review your iOS app!
April 5, 2020 - 11 min read

Nowadays, more and more users rely on ratings and reviews when they are about to make a purchasing decision, whether it is buying products, deciding on a...

Post
Scan and broadcast to nearby devices with Core Bluetooth
February 16, 2020 - 11 min read

The topic of this post is about Bluetooth and how we can use it in our applications.

Post
Two-way communication between an iOS WKWebView and a web page
February 2, 2020 - 9 min read

Sometimes, on a native iOS app, there is the need to embed a web page within the application. To cater for cases like this, iOS provides WKWebView, an ob...

Post
Accessing web page properties from an iOS Share Extension
January 19, 2020 - 6 min read

A Share Extension is a type of App Extension which is used to share content with other apps. One such content type and a quite popular use case for share...

Post
Custom UI for Share Extensions
January 11, 2020 - 7 min read

iOS comes with a plethora of App Extensions that you can use to improve the functionality and the user experience of your app. An example of such extensi...

Post
Running a SwiftNIO Server in an iOS app
October 27, 2019 - 8 min read

Have you ever wondered if it is possible to run a server in an iOS app? A while ago I had this question! It seems that SwiftNIO and SwiftNIO Transport Se...

Post
From Kotlin to Native: Or how Kotlin concepts are mapped to the Apple framework
September 19, 2019 - 14 min read

TL;DR This post is about how some specific Kotlin features are compiled to Objective-C and how they can be used in a Swift project when using Kotlin Nati...

Post
How to use Firebase Remote Config and A/B testing on an iOS app(part II)
June 30, 2019 - 9 min read

In the previous article, we described the steps required to set up Firebase Remote Config and A/B testing. So, it is time to proceed with the implementat...

Tip
How to loop a video on iOS
May 9, 2026 - 2 min read

When displaying videos in an iOS app, you may sometimes need them to loop continuously. Think of a workout app where a trainer demonstrates an exercise. ...

SwiftLint

Post
Setting up a new iOS project (Part I)
April 26, 2020 - 7 min read

What are the initial steps that you take when creating a new iOS project? Regardless of the language or the framework, it’s quite common when creating a...

Post
Kotlin Multiplatform Project: Code styling for iOS and Android
September 1, 2019 - 6 min read

Continuing my journey on Kotlin Multiplatform Project, this time I will explore some tools that can be used to apply code style conventions on such proje...

Post
A guide to SwiftLint
December 23, 2018 - 5 min read

SwiftLint is a great tool to enforce Swift style and conventions. When working with different developers with different levels of experience and differen...

SwiftNIO

Post
Running a SwiftNIO Server in an iOS app
October 27, 2019 - 8 min read

Have you ever wondered if it is possible to run a server in an iOS app? A while ago I had this question! It seems that SwiftNIO and SwiftNIO Transport Se...

SwiftUI

Post
Improve In App Video Guides with Picture-in-Picture in SwiftUI
April 18, 2026 - 5 min read

When we build features like widgets or Safari extensions in our app, short video guides can help our users follow the setup steps that must be performed ...

Post
Keyboards options for SwiftUI fields
June 21, 2020 - 8 min read

One of the ways to improve the user experience when they fill a form on iOS apps is the use of keyboard types. Keyboard types can be used to show differe...

Unix

Post
How to find large files from the command line
January 4, 2020 - 5 min read

Have you ever ran into issues with your storage disk being full?

Vapor

Post
Mutations on a GraphQL server built with Vapor
June 7, 2020 - 10 min read

One characteristic of a complete API is its ability to allow clients to modify the server-side data. This can be in the form of creating new entries, upd...

Post
Custom GraphQL types on Swift projects
May 31, 2020 - 11 min read

By default, GraphQL supports only a handful of basic types that we can use on the schema definition. This list includes Int, Float, String, Boolean and I...

Post
Swift ❤️ GraphQL: How to create a GraphQL server with Vapor and an iOS app as a client
May 24, 2020 - 8 min read

Nowadays, it’s quite common for many iOS apps to rely on the communication with a server to deliver their services to the user. And while in most cases t...

WKWebview

Post
Two-way communication between an iOS WKWebView and a web page
February 2, 2020 - 9 min read

Sometimes, on a native iOS app, there is the need to embed a web page within the application. To cater for cases like this, iOS provides WKWebView, an ob...

Xcode

Post
How to get the most out of Xcode: Xcode Snippets
January 26, 2020 - 6 min read

One of the hidden gems of Xcode is a feature called Xcode Snippets. Despite the fact that most developers happen to use them quite often, only handful of...

Post
Thoughts on Kotlin Multiplatform Project structure
August 17, 2019 - 10 min read

In the previous article, I tried to explain step by step the process of creating an iOS and Android app with a shared library using Kotlin Multiplatform ...

Post
How to setup a Kotlin Multiplatform Project for iOS and Android
August 4, 2019 - 5 min read

Hi, time has come to write something about Kotlin Multiplatform Project and more specifically how to setup a project with an iOS app, an Android app and ...

Post
A step-by-step guide to create a custom Xcode template
July 21, 2019 - 8 min read

For quite a long time I wanted to experiment with the creation of a custom Xcode template and finally the time has come!! In this article, I will try to ...

Post
A guide to SwiftLint
December 23, 2018 - 5 min read

SwiftLint is a great tool to enforce Swift style and conventions. When working with different developers with different levels of experience and differen...

Post
Xcode shortcuts and custom key bindings
December 7, 2018 - 4 min read

A recent discussion with a colleague about the use of the Xcode shortcuts is the reason behind this blog post.

Post
Download provision profiles with AppleScript
November 25, 2018 - 6 min read

In my try to empty my To-do list, one item that caught my attention and I decided to give it a try is AppleScript.

Post
Modifying UI elements with Xcode and LLDB v2
October 14, 2018 - 7 min read

In a previous post, I wrote an introduction about the use of LLDB expressions to modify the UI elements. In this post, I will continue on the same topics...

Post
Modifying UI elements with LLDB
September 30, 2018 - 5 min read

Have you ever been in a situation where you have to experiment with UI and change colors frequent? Does the designer or PM asks for changes in font size...

Tip
How to fix Xcode Playground getting stuck on 'Running'
June 20, 2020 - 1 min read

Sometimes when working on Xcode Playground you may experience some unexpected behavior where Playground gets stuck on ‘Running…’ without any obvious reas...

badge

Post
How to add a shield on the App Icon of beta builds
May 10, 2020 - 6 min read

Have you ever ended up in a situation where you have multiple builds of the same app installed on a device and you find it hard to figure out the configu...

fastlane

Post
How to add a shield on the App Icon of beta builds
May 10, 2020 - 6 min read

Have you ever ended up in a situation where you have multiple builds of the same app installed on a device and you find it hard to figure out the configu...

Post
Setting up a new iOS project (Part II)
May 3, 2020 - 7 min read

This is the second part of a series of posts about the steps that I usually take when creating a new iOS project.

Post
Kotlin Multiplatform Project: Code styling for iOS and Android
September 1, 2019 - 6 min read

Continuing my journey on Kotlin Multiplatform Project, this time I will explore some tools that can be used to apply code style conventions on such proje...

Post
Kotlin Multiplatform Project: Unit tests for iOS and Android
August 25, 2019 - 7 min read

In every project, regardless of the language or framework, it’s really important to have confidence when making a code change. Unit tests are here for th...

Post
A guide to SwiftLint
December 23, 2018 - 5 min read

SwiftLint is a great tool to enforce Swift style and conventions. When working with different developers with different levels of experience and differen...

iOS

Post
Improve In App Video Guides with Picture-in-Picture in SwiftUI
April 18, 2026 - 5 min read

When we build features like widgets or Safari extensions in our app, short video guides can help our users follow the setup steps that must be performed ...

Post
Keyboards options for SwiftUI fields
June 21, 2020 - 8 min read

One of the ways to improve the user experience when they fill a form on iOS apps is the use of keyboard types. Keyboard types can be used to show differe...

Post
GraphQL mutations for iOS apps (with the help of Combine's Future)
June 14, 2020 - 11 min read

Nowadays, more and more apps rely on a server to support their functionality. One part of this communication is the ability of the app to create new and ...

Post
Custom GraphQL types on Swift projects
May 31, 2020 - 11 min read

By default, GraphQL supports only a handful of basic types that we can use on the schema definition. This list includes Int, Float, String, Boolean and I...

Post
Swift ❤️ GraphQL: How to create a GraphQL server with Vapor and an iOS app as a client
May 24, 2020 - 8 min read

Nowadays, it’s quite common for many iOS apps to rely on the communication with a server to deliver their services to the user. And while in most cases t...

Post
How to add a shield on the App Icon of beta builds
May 10, 2020 - 6 min read

Have you ever ended up in a situation where you have multiple builds of the same app installed on a device and you find it hard to figure out the configu...

Post
Setting up a new iOS project (Part II)
May 3, 2020 - 7 min read

This is the second part of a series of posts about the steps that I usually take when creating a new iOS project.

Post
Setting up a new iOS project (Part I)
April 26, 2020 - 7 min read

What are the initial steps that you take when creating a new iOS project? Regardless of the language or the framework, it’s quite common when creating a...

Post
Notifying users when an iOS app update is available on AppStore
April 12, 2020 - 11 min read

Have you ever been into a situation where you would love to see all of your users to update to the latest version of your app?

Post
Help your user rate and review your iOS app!
April 5, 2020 - 11 min read

Nowadays, more and more users rely on ratings and reviews when they are about to make a purchasing decision, whether it is buying products, deciding on a...

Post
Scan and broadcast to nearby devices with Core Bluetooth
February 16, 2020 - 11 min read

The topic of this post is about Bluetooth and how we can use it in our applications.

Post
Two-way communication between an iOS WKWebView and a web page
February 2, 2020 - 9 min read

Sometimes, on a native iOS app, there is the need to embed a web page within the application. To cater for cases like this, iOS provides WKWebView, an ob...

Post
How to get the most out of Xcode: Xcode Snippets
January 26, 2020 - 6 min read

One of the hidden gems of Xcode is a feature called Xcode Snippets. Despite the fact that most developers happen to use them quite often, only handful of...

Post
Accessing web page properties from an iOS Share Extension
January 19, 2020 - 6 min read

A Share Extension is a type of App Extension which is used to share content with other apps. One such content type and a quite popular use case for share...

Post
Custom UI for Share Extensions
January 11, 2020 - 7 min read

iOS comes with a plethora of App Extensions that you can use to improve the functionality and the user experience of your app. An example of such extensi...

Post
Running a SwiftNIO Server in an iOS app
October 27, 2019 - 8 min read

Have you ever wondered if it is possible to run a server in an iOS app? A while ago I had this question! It seems that SwiftNIO and SwiftNIO Transport Se...

Post
Continuous Integration for Kotlin Native projects with Gitlab CI
September 8, 2019 - 6 min read

How many times have you started a project with the intent to follow practices such as writing unit tests and enforcing a code style, only to give up afte...

Post
Kotlin Multiplatform Project: Code styling for iOS and Android
September 1, 2019 - 6 min read

Continuing my journey on Kotlin Multiplatform Project, this time I will explore some tools that can be used to apply code style conventions on such proje...

Post
Kotlin Multiplatform Project: Unit tests for iOS and Android
August 25, 2019 - 7 min read

In every project, regardless of the language or framework, it’s really important to have confidence when making a code change. Unit tests are here for th...

Post
Thoughts on Kotlin Multiplatform Project structure
August 17, 2019 - 10 min read

In the previous article, I tried to explain step by step the process of creating an iOS and Android app with a shared library using Kotlin Multiplatform ...

Post
How to setup a Kotlin Multiplatform Project for iOS and Android
August 4, 2019 - 5 min read

Hi, time has come to write something about Kotlin Multiplatform Project and more specifically how to setup a project with an iOS app, an Android app and ...

Post
A step-by-step guide to create a custom Xcode template
July 21, 2019 - 8 min read

For quite a long time I wanted to experiment with the creation of a custom Xcode template and finally the time has come!! In this article, I will try to ...

Post
How to use Firebase Remote Config and A/B testing on an iOS app(part II)
June 30, 2019 - 9 min read

In the previous article, we described the steps required to set up Firebase Remote Config and A/B testing. So, it is time to proceed with the implementat...

Post
Modifying UI elements with Xcode and LLDB v2
October 14, 2018 - 7 min read

In a previous post, I wrote an introduction about the use of LLDB expressions to modify the UI elements. In this post, I will continue on the same topics...

Post
Modifying UI elements with LLDB
September 30, 2018 - 5 min read

Have you ever been in a situation where you have to experiment with UI and change colors frequent? Does the designer or PM asks for changes in font size...

Tip
A simple extension to add buttons above the keyboard on iOS apps
June 21, 2020 - 3 min read
iOS

It is quite common when you have an input view on an iOS app to show some actions above the keyboard to improve the user experience. Those actions can ra...

Tip
How to loop a video on iOS
May 9, 2026 - 2 min read

When displaying videos in an iOS app, you may sometimes need them to loop continuously. Think of a workout app where a trainer demonstrates an exercise. ...

CSS

Tip
CSS variables
June 17, 2020 - 2 min read
CSS

Did you know that you can define variables in CSS as well? And not only that, but also all the major browsers support this feature.

Tip
How to add support for dark mode on a website
June 29, 2020 - 2 min read
CSS

In recent years, dark mode has grown in popularity as more and more devices and browsers are adding support for it.

Accessibility

Tip
Improve the accessibility of your website using the aria-label attribute
June 27, 2020 - 1 min read

With the ever-growing number of services offering their products solely through digital channels, digital accessibility is becoming more and more importa...

Web

Tip
Turn your browser into an WYSIWYG editor with document designMode
July 3, 2020 - 1 min read
Web

TLDR; Open the browser’s Javascript console, Execute document.designMode = 'on';, Click on any text in the screen and start typing!

HTML

Tip
Prevent browser translation with the translate='no' attribute
April 26, 2026 - 1 min read

When building a website, especially one for a brand or a company, maintaining the integrity of your brand’s name and specific terms is crucial. However, ...