Introducing gnes - Reverse engineering the NetworkExtension API

Apple giveth, Apple taketh away

Mar 16, 2022 - 30 minute read

Categories: Open Source   Swift   Xcode   Objective-C   Reverse Engineering   Headers   Python   PyObjC  

Part of my old job and new job is ensuring that various pieces of software are installed, configured and if tampered with, maliciously or not, to bring it back into a desired state.

Demystifying SwiftUI for Macadmins Part 2 - Passing State through multiple views with ObservableObject and friends

Creating two-way communications

Jun 14, 2021 - 13 minute read

Categories: Open Source   Swift   SwiftUI   Xcode   ObservableObject   State  

In Part 1, I showcased how you can create a hero image with ZStack.

Demystifying SwiftUI for Macadmins Part 1 - Creating a hero image with ZStack

SwiftUI is amazing and ZStacks are powerful

Jun 13, 2021 - 37 minute read

Categories: Open Source   Swift   SwiftUI   Xcode   SF Symbols  

This past week was WWDC ‘21 and I came away pretty inspired with Apple’s new features in Swift 5.5 and SwiftUI 3. Ultimately in just a few days I was able to create a new onboarding app called hello based on Kandji’s Liftoff.

Nudge Swift - Texas macadmins presentation

Learn about the new Nudge

Mar 30, 2021 - 1 minute read

Categories: Open Source   Nudge   DEP   MDM   Mobile Device Management  

Today I presented at the Texas Macadmins, doing a presentation on Nudge.

COVID - A commitment to Open Source

Doing the right thing

Apr 1, 2020 - 2 minute read

Categories: Open Source   Nudge   UMAD   InstallApplications   DEP   MDM   Mobile Device Management  

I will make this short and sweet. Even while social distancing, I am at high risk if I contract COVID-19.

C-MDM Part 2 - Managing Workspace One profiles with Chef using the new v1910 hubcli agent

Finally something secure enough for production use

Oct 31, 2019 - 9 minute read

Categories: ABM   AirWatch   API   CM   Configuration Management   Chef   DEP   MDM   Mobile Device Management   Munki  

It’s been a while…