The Shiny Newness of SwiftData
March 04, 2024 6:26pmI make the mistake of jumping on the shiny new thing a lot. I say "mistake" but it is completely on purpose and I intend to continue the pattern. I use CSS features with limited browser support. If you have a new video streaming service featuring even one thing I've heard of you will receive at least 12 months of payments from me before I admit to myself you're garbage. I put a lot of time into Ping.
This shiny thing jumping urge is strong each year during WWDC, when Apple shows off their new APIs. I always look forward to going through the session videos, seeing the beautiful work these hyper-talented nerds have done, hoping the next new API I stumble upon is going to unlock a new app idea or feature, or remove some giant pain point I've forgotten I even have.
SwiftData was easily the thing I was most excited about this year, the one I wanted to be the thing. I did not have any significant problems with CoreData, but it was never work I was particularly excited about doing. The idea of a more modern approach to working with your data models on Apple platforms was enough to get me mentally committed to using it essentially once I heard the name.
It wasn't without some bumps in the road. For example, there was a good portion of the summer where you couldn't actually delete things, which isn't what you want. But things eventually got ironed out and by the time I decided to revive and (completely rewrite) Carpark this past January, SwiftData was an easy choice.
Now with In Rotation I've shipped my second app using a technology that didn't exist publicly before last summer.
Hmm. I probably shouldn't stare at that sentence for too long.
But for now I'm happy I jumped on that shiny thing! It's nice when that works out.