Matteo | Swift, iOS, Best Practices
@MatManferdini
Followers
2K
Following
9K
Media
270
Statuses
6K
I write about app architecture, Swift, and iOS development best practices at https://t.co/NXWOl0M1pM
Amsterdam
Joined May 2011
Third time’s the charm. I updated my article on MVVM with SwiftData again and ironed out the few problems in the code. Thanks to all who pointed them out. Overall, the article's main point still stands. But I hope I learned an important lesson: I should keep these articles
1
0
2
That's a good observation. It happens because it's not a @State property, but trying to add that wrapper causes other problems. It seems that this property wrapper approach needs more analysis. Talking about production code, I usually use another pattern for my view models
@MatManferdini That behavior breaks bindings, so things like this: @Observable class Model { var isOn = false } … Toggle("Is on?", isOn: $model.isOn) …will not work. It’s impossible to toggle the value on because the current model is deallocated and a new one is allocated with isOn=false
1
0
4
I remember when developers had to spend years to be promoted to a managing position they dreaded where they didn't get to write code anymore. Now they are doing it to themselves without the benefits and the salary of a promotion.
Seeing “Build Succeeded” in Xcode doesn’t feel the same anymore 🙁 I kinda miss the good old days of iOS development. The time when you had to figure everything out by yourself. When you were desperately searching through Stack Overflow, books, or blogs (many of which are no
0
0
2
I updated the last section of the article to fix the mistake. Luckily, it was the least important, and that's why it is at the end.
2
0
1
As a reader pointed out, there is a mistake at the end of the article. I added a warning while I work on an update.
Some developers claim that MVVM is incompatible with SwiftUI. However, with a proper understanding of SwiftUI, it is possible to address any criticism and remove the boilerplate code shown in many online blogs.
0
0
1
In my new article, we will explore some fundamental yet ignored SwiftUI features to understand how to replicate its integration with SwiftData inside our view models. Link below.
1
0
1
Some developers claim that MVVM is incompatible with SwiftUI. However, with a proper understanding of SwiftUI, it is possible to address any criticism and remove the boilerplate code shown in many online blogs.
3
1
14
I just finished writing an article on MVVM and SwiftData and it's spicy 🔥 It came out even better than I expected. It just needs some editing before publishing. It comes out next week. Join my newsletter to be notified. Link in the replies.
1
0
6
Apple × Payouts schedule 2026 🤡 Google: pays every 15th Apple: “Let’s make it mystery season”
11
2
90
To be notified when the course opens, join my email list on
matteomanferdini.com
Matteo Manferdini
0
0
1
I finally published module 7 of my Scalable Networking Architecture course, focusing on error handling. The module contains four lessons covering how to: 🔵 Follow Swift's error-handling philosophy for typed and untyped throws. 🔵 Handle simple errors as optionals and logging
1
0
5
Trends like #ShipATon might give some people the necessary push to finally publish something on the App Store. However, for now, I have only seen people shipping low-effort AI slop trying to make a quick buck, further polluting the App Store, with no regards for craftmanship of
0
0
4
It can also reveal information about other apps. There was one app (I won't name it) doing something that seemed impossible and the author would not answer questions about it. Opening the app bundle revealed he used open source framework that access private Apple APIs.
iOS engineers: Have you ever peeked into a .app file Xcode generates? It can lead to insights like: - Unused assets - Unused embedded frameworks - 3rd party libraries injecting resources https://t.co/ddvTRIlwsy
#swiftlang #iosdev
0
0
2
I published an Android app in June. Spent $640 on ads, made $134, and got a bunch of 1 star reviews because the app is not free. What a great market! #buildinpublic
4
1
7
How to use AUTORELEASEPOOL in the real world to reduce your peak memory footprint With an autoreleasepool block, each UIImage and file data in our loop are released upon leaving the scope of the pool. Therefore the loop iterations don’t add up, and peak memory use stays nice and
3
2
13
This is the first time I am resisting upgrading to macOS and iOS 26. I will eventually have to, but they offer no compelling feature and I dread already having to deal with this awful and unnecessary UI overhaul.
Downgrading my Mac has felt like a MASSIVE UPGRADE: - 30fps => 120fps - apps stuttering constantly => buttery smooth - looks and feels so much better - 1-2 hours max of battery (yes really) back to 8+ hours - not overheating while running cursor How tf did this happen man...
0
0
3