A guide to help you deploy cross-platform builds from your M1 Mac

Apple Silicon M1 and Docker
Apple Silicon M1 and Docker
Apple Silicon M1 and Docker. Photo by the author.

While using an early “Tech Preview” Docker Desktop build for Apple Silicon I quickly ran into a learning curve related to different architectures and deployment. I can build and run images on my M1 Mac just fine now but this was the error I saw when pushing an image built on a Mac with Apple Silicon to an ECS instance on AWS:

standard_init_linux.go:219: exec user process caused: exec format error

Hopefully, this guide will help you start deploying images built from your amazing new machine faster!

Install a Compatible Docker Version

Kudos to the Docker team for moving very fast on a build for the…

As a mostly self-taught developer in startup environments here are my top tricks for learning what you need.

Create a feedback loop

Your goal is to maximize your time and condition your mind. Your most finite resource will be put to the best use if you can see it working or more importantly, failing.

There are two stages of the feedback loop. First you want to get to the point where you are able to view a valid error message about your code while trying to run it. It doesn’t matter if you are learning your first language or your 11th you will have…

In this article I will talk about some different techniques I use to maintain some sane code while learning Apples new declarative frameworks.

I created a project that will let my upload files to an S3 bucket using the AWS iOS S3 SDK. I also rely on notes from this project, Using Combine.

Legacy async to Combine Futures

The first thing I needed to do to jump into the word of Combine was turn some asynchronous code into a Combine Future publisher. A Future publisher is a “one shot” type publisher in contrast to a publisher such as PassthroughSubject that delivers values continuously. Here is…

An iOS developer’s bleeding-edge dream

Photo by the author.


We will introspect the Yelp GraphQL API using a Swift package and the Apollo iOS library. We will use the Apollo library again in the main project to work with the generated networking and model code. The app will observe your location and search input via Combine to display YELP API results in SwiftUI.

The two waves of software product automation.

Serverless, containers, big data, declarative frameworks and AI will all converge to make no code a reality.


Any person who has made a serious commitment to writing software professionally knows there is a hum of anxiety in the back of your head about becoming obsolete and or feeling like you are not good enough. Mix that with some well executed motivation and I’m confident you can stay ahead of the game.

I try to avoid cult like infatuations with people but I am a fan of sound bites. In this case Jeff Bezos has a good one.

“Focus on the things that will not change”

- Jeff Bezos

I would…

Besides wanting to learn SwiftUI and Swift Package manger I have always thought a grid style menu could be a great alternative to hamburgers or tab bars.


The source code for this project can be found at this git hub repo.

Swift Package

I also wanted to break away from the cocoapods mindset so I decided to ship this as a Swift Package.

You could argue that you should not ship SwiftUI code in a Swift Package as a Swift Package can be used by anyone with the Swift runtime and SwiftUI is an exclusive Apple Framework. Also, Xcode allows you to…

A convergence of forces is making the scientific method more important than ever.

We all learned this one in school - “Facts are only a hypothesis that has not been proven wrong”

We are in the age of information and dis-information. Anyone can pull anything out of their ass and put it on the internet. Hell. That’s what I’m doing right now.

The scientific method is not someones thesis. It’s a succinct model that encapsulates the type of human thought that drives discovery, innovation, and change. Refined through the minds of enduring intellects throughout history.

There is a convergence of…

In our busy world compassion is an easy thing to avoid. Even if you are the person who openly admits you don’t care about certain things you can still gain perspective.

Why not make laws that help institutionalize this basic human emotion? If on an individual basis we get to choose to volunteer our time and money to a cause we deem worthy why not protect against bias by providing a basic level of income for people? Or providing a basic level of healthcare? Even more though provoking, a basic level of mental health care?


It will never disappear from…

Impeachment is a catalyst for taming hyper partisanship.

It’s safe to say that impeachment of Donald Trump is “Live History”, an unsettling parallel to the fact that the sitting president is a reality TV star. America! Anything is possible.

Like most liberals I was shocked to see Donald Trump walking across his stage on election night. Slowly with dilated eyes like a shark he declared victory.

At this point every American should be aware of the hyper political polarization in our country. It was at its most visceral point on social media in 2016.

The Facts

We have learned a lot about…

ECS + Hasura = Amazing backend

We will be building a horizontally scalable GraphQL API that runs over a PostgreSQL database powered by AWS’s serverless Aurora product. We will be using Hasura for the GraphQL API, AWS ECR and ECS to run the docker image and AWS Cloudformation to deploy resources.

First, huge shout out to the team at Hasura. Their product allows any professional to feel like they are part of the GraphQL buzz and provides incredible value to any project.

To accomplish the article's title, we will need to assume some AWS resources are already in place.

  1. You should own a domain name and…

Jon Vogel

I contribute to the start-up grind in Seattle as an iOS Engineer. I also used to fly airplanes.

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