Ken Muse
The Magic of Scaling and Auto-Scaling
Scaling systems is a process that is often counter-intuitive. It’s not just about adding more resources. It’s about understanding the bottlenecks and how to overcome them. After years spent troubleshooting highly scaled systems, I’ve learned a few things that can make the journey easier.

Read this article

Strategies for Upgrading ARC
What are the best practices best practices for upgrading your ARC cluster? Want to know whether you can safely run without taking the latest releases? In this post, we’ll explore the answers to both of these questions.

Read this article

Decoding Binary Data in Swift
In the last post, we started to explore how to create a Decoder and its containers in Swift. Now, we need to have a good way to read the data and provide it back to the decoder so that it can create the type instances. Today’s post will introduce pattern for reading binary data and converting it to Swift types. We’ll then discuss how to integrate it with the Decoder.

Read this article

Creating Swift Binary Decoders
If we’re going to build a Bluetooth application, we need to be able to decode the data we receive. Swift has a native way to convert encoded data into types – the Decoder protocol. In today’s post, we’ll explore the basics of implementing a custom binary data decoder in Swift. We’ll also look at the different types of “containers” and how they work.

Read this article

Building Base Images for ARC

Building Base Images for ARC

If you’re using Actions Runner Controller, the provided base image may not be enough. In fact, it’s important to build your own to ensure that you have all the dependencies you need for your workflows.

Read this article

Supply Chain Security in CI/CD Systems
Do you know what the main threat is to your CI/CD systems? It’s not the code you write, the tools you use, or the cloud provider you rely on. It’s the supply chain, and that is frequently the most vulnerable part of the development process. Today, let’s understand why.

Read this article

Creating an Int24 for iOS
If we’re going to build a Bluetooth app for WatchOS and iOS, we need at least one additional primitive to be available – a 24-bit unsigned integer. Since Swift doesn’t provide that, we’ll just have to create it ourselves. This post will dive into how to create a custom numeric data type in Swift (and how to overcome some limits of the platform in the process).

Read this article

Fashion, DevOps, and Certificates
The world of software development is changing rapidly. With Google’s latest announcement, part of how we deploy systems is getting ready to change for the better for nearly half of all companies. Are your teams ready for the challenge?

Read this article

Understanding Bluetooth Basics
If we’re going to build a Blutooth-enabled application, the first step is understanding the basics of how data is provided to clients. In this post, I’ll explore some basic terminology and concepts. We’ll then look at how the data is structured so that we can interpret it in our application.

Read this article

Swift, Workouts, and Bluetooth Low Energy
I decided that it was time to improve the integration between my treadmill and my watch. First, I upgraded my treadmill with a smart device that provides standardized services using Bluetooth Low Energy. Next, I created an application that integrated everything together. After that, I began this series to make it easier for you to build a Bluetooth-integrated application in Swift.

Read this article