Published inBetter ProgrammingiOS: Protecting against TLS Bypass attacksThe cat and mouse game against hacker never ends. While we can never fully prevent against hackers modifying our runtime binaries and…Nov 4, 2023Nov 4, 2023
An impossible plan for peace in PalestineI’ve been learning more and more about the history of the region, and I am by no mean an expert. I am not Palestinian. I am not Israeli.Nov 2, 2023Nov 2, 2023
Published inBetter ProgrammingiOS Mobile App Security TipsI’ve been working in the software industry for well over twenty years touching all levels of security requirementsOct 16, 20232Oct 16, 20232
Published inSwift2GoViewRep-Intent StateMachine iOS architectureI love state machines, they are easy to reason about, they are predictable.Aug 30, 20232Aug 30, 20232
Published inSwift2GoSwiftUI Opinion: ViewModel doesn’t belong in PreviewsSwiftUI Previews are key to making SwiftUI development fast and easy. However, if your views require a ViewModel, you are impeding your own…May 22, 20225May 22, 20225
Using ~ instead of .rawValueThere’s a super handy little prefix I started using in several of my projects.May 18, 2022May 18, 2022
Published inITNEXTSwiftUI Case Study: Data modelling of Brotherhood AlchemistSwiftUI is relatively new and many of us in the iOS development community are still adapting to this declarative language. There are many…Apr 22, 20221Apr 22, 20221
Published inITNEXTType Enforced UserDefaultsOn iOS the UserDefaults is a persistent dictionary stored and managed by iOS that survives the application runtime. It can be used to store…Mar 25, 2022Mar 25, 2022
Published inITNEXTIntroducing SwiftEmailValidatorValidating 99% of North-American emails takes less than 5 minutes of efforts, but validating 100% of valid email addresses world-wide can…Jan 28, 2022Jan 28, 2022
Published inSwift2GoSecure JSON handling in SwiftWhen storing/reading data to/from disk, or when performing API calls, is your app’s only validation of data making sure the JSON can be…Jan 15, 2022Jan 15, 2022