Why Couldn't Mobile Build a Solid Foundation?
Why do we see more backend engineers at the CTO, staff, and principal levels? This post discusses why frontend, and especially mobile, couldn't build a mature engineering foundation.
Why do we see more backend engineers at the CTO, staff, and principal levels? This post discusses why frontend, and especially mobile, couldn't build a mature engineering foundation.
Recently I wanted to share the app development process I went through with Claude and the notes I took. Building on my previous Cursor post, this time I raised the bar a bit and brought up a produc...
Over the last few days I had the chance to build an iOS app from scratch using Cursor. I want to share the experience I had and the challenges I ran into. The Mesmerizing Creation Process One of ...
1. Introduction It all started when this tiny piece of code started to fail after Swift 6 concurrency updates: final class MyClass { var value: Int = 0 } func hello() { let myInstance = MyCl...
We had another very exciting WWDC, one focused on a $3500 headset. After leaving a few suggestions here on how you should follow the announcements, I want to share the videos I recommend watching, ...
I want to look at this topic under two main headings: The Development Phase You can build the visual interface much faster. Because you can see the final output, the chance of making a mistake...
Note: This post was written in 2020 and discusses type erasure patterns in Swift. While the fundamental concept of type erasure remains a useful technique, Swift has evolved with improved protocol ...
Note: This post was written in 2020 and discusses Swift’s opaque return types. While the core concepts of opaque types remain valid, Swift has continued to evolve with improvements to protocol capa...
Note: This post was written in 2019 and discusses Swift’s handling of protocols with associated types. While the fundamental concepts remain relevant, Swift has evolved significantly since then wit...
Don’t convert the deviceToken you get from APNS to String using description property. Convert the byte sequence manually since description doesn’t return corresponding hexadecimal representation fo...