Image for post
Image for post

SwiftUI is Apple’s new framework for making user interfaces. If you have ever built a web application using a declarative framework like React or Vue.js, you will feel right at home using SwiftUI. If not, you’re welcome too. This is part 1 of a 3 part series to teach you the basics of building an app to target iPhones and iPads. Read and follow along for some of the tips I’ve learned adopting SwiftUI for making apps.

In part 1, we will go over the basics to get your environment set up to build your first app. We will build…

In my last article, I kicked off our discussion on design patterns in Swift by outlining how to use the Factory pattern. The Factory pattern is way to encapsulate the details of creating an object that adheres to a common base class or interface. If you haven’t read that post, you can check it out here. In this article, I’m going to cover the Decorator pattern, which is a Structural pattern. Structural patterns are groups of patterns that focus on making interactions between objects and classes easier.

The Decorator pattern provides a recipe for adding new behaviors to an object…

As a budding computer scientist, you no doubt have heard of design patterns in your classes and learning paths. Design patterns are blueprints which outline the best practices that create re-usable object oriented code, solving common software problems. To avoid giving you a long history lesson, I will describe the origin of design patterns as dating back to the 1970s but gaining wide acceptance with the release of Design Patterns: Elements of Reusable Object-Oriented Software, published in 1994 and authored by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides, collectively referred to as the Gang of Four (GoF). The…

Just a few years back, we were all talking about mobile being the future. That’s no longer the case.. mobile is the present. It’s the here and now of business. Mobile apps serve as the tipping point that will increase sales and customer satisfaction. Mobile is too big to ignore, and you’re missing out.

Frankly, there are many reasons that a small business needs a mobile app. Today, I’ll focus on three standout areas that make having an app essential. …

Image for post
Image for post

I have a fascination and deep passion for learning. Recently, I developed a hypothesis that I could apply the principles of game making to app development to improve experiences for my users. Lots of people throw around terms like “Gamification” as buzzwords that will cure the ails of your application by delighting your users into wanting to interact and engage more with whatever it is that your app offers. We won’t debate that today (I won’t even bring up the question of if the promoters of adding game-like behaviors to apps even play games). …

Image for post
Image for post

I have a confession. I love the web, and the language of the web is JavaScript. There are so many libraries written in JavaScript that I frankly think it’s silly to have to recreate those for other languages. As you might guess, I’m going to talk about how you can integrate JavaScript libraries into your Swift code and then how to can share data and call methods in JavaScript from Swift.

To keep this article reasonable in length, I will briefly cover the basic elements you need and then dive into some examples.


A JSVirtualMachine is the self-contained environment within…

Today’s article is the zip, map, and reduce functions in Swift. Let’s walkthrough a typical problem that you might come across in your coding endeavors.

Problem Statement

You work on a school grading app that allows teachers to monitor their students’ progress. You have information on each student in a class along with their grades for assignments and tests. All of this information is stored and can be retrieved in JSON, which means you can ultimately have structured arrays and dictionaries of data.

So far so good. However, your boss wants changes. She has asked you to give teachers more ways to…

Image for post
Image for post

The FinTech space is booming and there is a lot of buzz around development topics. So, I thought would write about how to store money using Swift. We will cover why this is even an issue in the first place and how you might address it in your code.

Decimal versus Binary Number Systems — The Heart of the Problem

Humans count things using base 10; computers find it easier to count using base 2 (1 and 0). Integers translate from base 10 to base 2 just fine. The problem arises with fractions. Not every base 10 fraction can be represented accurately when using base 2. …

Image for post
Image for post

In Part 1 of this series, we covered Arrays and Sets — two of the collection types in Swift. We hit the highlights and went over how they are similar and where they differ. If you didn’t read part 1, do that before reading this article to make sure you get the background on Arrays and Sets.

In Part 2 of this series, we explored Set operations and Dictionaries as a collection type. You’ll want to read part 2 before covering today’s topic.

This article is going to cover how to code your classes and structs to take advantage of…

Keith Elliott

We solve top of mind problems for companies using exceptional developers. You can find me at

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store