Blog POSTS
How to Generate API Client Code in React (Native) Apps
Keeping your API client code updated whenever there’s a change in the back-end rest apis and models is tedious and error prone as a front-end developer. A better way would be if the API client code was kept updated automatically so you have one less thing to worry about.
3 EAS Pipelines for Deploying React Native Apps in Teams
One of the best ways to increase productivity in a react native project is to automate the process of deploying builds you want to share internally in your team or with actual costumers via the app store. And you might be surprised at how easy it can actually be implemented when you have the right set of tools like GitHub Actions and EAS.
Refactoring iOS Apps – A Pragmatic Guide
While your app and development teams grow larger, the codebase is inevitably going to scream for refactoring – that is, improvements in the design of the existing code. There are no silver bullets to refactoring, but iOS apps tend to get into the same pitfalls. Luckily, the common cases of refactoring can be mitigated by being in line with the following set of practices on improving and maintaining code while speeding up development.
Architecting a Logging Service for iOS Apps
Understanding how your apps behave in production is a fundamental part of our jobs as iOS engineers. We need to gather log events in order to investigate and reproduce issues that customers run into. Here’s how you create a log service with a clean architecture that’s modular and easily extensible.
Architecting an Analytics Service for iOS Apps
Monitoring the behavior of your app’s users is critical to the success of your app. If the only feedback you get from your users are App Store review, now is the right time to start using analytics. We’ll go over how you create an analytics service that’s modular and easily extensible using a clean iOS architecture.
Architecting a Feature Toggle Service for iOS Apps
Feature toggling is essential for keeping your apps flexible in production. Sometimes you want to try ideas fast to see if they stick. Maybe you want to split test two ideas and see what performs the best. Whatever the case may be, the feature toggling service should be highly scalable and not be a bottleneck in your workflow. Here’s how you create a feature toggling service with a clean iOS architecture.
The Ten Commandments of iOS Development
Here’s a set of key principles to guide you to do iOS development according to best practices. They are all about the bigger picture of iOS development, including processes and architecture decisions – not simply language specific challenges.
Continuous Integration Using GitHub Actions for iOS Projects
Github Actions are finally publicly released! It’s an opportunity to easily enable continuous integration in your projects on GitHub, so here’s how you set it up for your iOS projects to perform automated code validation and testing on pull requests.
Manage Your iOS Resources Type-Safely with R.swift
A common frustration with the iOS platform is that resources are accessed using magic strings. In practice, this means you’ll find out if an image, icon, localized string etc. exists at runtime. Either by seeing what you were hoping for or getting a hard crash. Let’s fix this by introducing your new best friend – R.swift.
Eliminate Crashes & Incidents in Mobile Development Teams
Defect management should not be a phase in the lifecycle of an app, but instead a fundamental part of an agile process. Here is my recommendation of processes to enforce defect management into your team’s daily workflow.
Native App vs React Native App – What Should You Choose?
Gone are the days where the only options in mobile app development were native iOS and Android. The choices are broader nowadays, and frameworks have popped up with React Native being the most popular alternative. So what approach should you choose for your next app?
iOS Continuous Deployment Using Travis CI and Fastlane
Continuous Deployment (CD) is a practice of using automation to release your code in a quick and sustainable way. Here’s how you set up CD for iOS apps to perform automated building, code signing and deployment to the App Store.
iOS Continuous Integration Using Travis CI and Fastlane
Continuous Integration (CI) is a powerful practice to keep any app in a stable state throughout its development. Here’s how you set up CI for iOS apps to automatically perform code validation and testing whenever your code changes.
Automate Screenshot Framing with Text Using Fastlane
Framing your App Store screenshots greatly improves your store listing. But doing it manually takes hours away from perfecting your app. Instead, here’s how you automate the process of adding device frames and text to your screenshots.
Automate Screenshots for App Store Using Fastlane
Save yourself from spending hours on screenshots for the App Store. Here’s a step-by-step guide on how you automate the process of taking screenshots for all supported screen sizes and languages.
Learn RxSwift From This Production App
QCards is an app built with RxSwift for creating smarter cue cards. Take a look through the source code as it’s ultimately the fastest way to learn new things from a practical perspective.
How Do I Work?
Over the past few years, I’ve been exposed to various ideas and processes that have affected my way of working in software development teams. From my experiences, here’s what has helped me work as efficiently as possible as a software developer.
How to Make Animated 3D Mockups in Seconds
As an individual app developer, you need to bring attention to your published apps. Companies of top-selling apps agree on how this is executed successfully. They create stunning and professional-looking animated 3D mockups of the apps. I’m here to tell you how you can create these for yourself in a matter of seconds.
Start Your RxSwift Journey in Less Than 10 Minutes
RxSwift is well known for having a steep learning curve. But taking the time to learn it can easily be the next significant leap in your development abilities. We’ll cover the basic concepts of the library to quickly get you up to speed.
The 5 Most Important Combining Operators in RxSwift
RxSwift provides plenty of options for joining your observable sequences together. Let’s go over the 5 most important combining operators you’ll likely use the most.
Transforming Operators in RxSwift: map, flatMap & flatMapLatest
Transforming operators in RxSwift serve the purpose of preparing data coming from observables before it reaches the subscribers. Let’s cover this type of operators and look at 3 operators you will be using all the time.
7 Useful Filtering Operators in RxSwift
After using RxSwift for several months now, I can safely say that filtering is a key feature that has saved me plenty of lines of code. To know which filtering operators to use when, requires a basic overview, so let’s look at 7 of my favorite filtering operators this library has to offer.
All You Need to Know About the iOS App Lifecycle (Part 2)
As an iOS developer, the iOS app lifecycle is an area you can’t skip out on. Knowing how to hook into the individual state changes is just as important. Therefore, let’s get familiar with implementing lifecycle hooks in your apps.
All You Need to Know About the iOS App Lifecycle (Part 1)
Knowing about the states that iOS apps go through as they run is key to building solid apps. You’ll find that it’s an often asked interview question, so now is a good time to listen up. We’ll look at the essentials of the iOS app lifecycle, so you can prepare apps for any state changes.
A Practical Guide For Handling Optionals
So there you are. New to Swift and trying to wrap your head around the so-called optionals. Speaking of “wrapping”, let’s take a closer look at this wrapper-type and unwrap this feature of the programming language.
3 Online Courses to Kick-Start Your iOS Developer Career
Congratulations! You have decided to become an iOS developer and perhaps make a career out of it. So now it’s time to get started learning the application framework. So here are my recommendations of online video courses to go through to get your feet off the ground.