As I'm getting a better handle on concurrency in #Swift / #SwiftUI I come across this:
Changing
locations.foreach { loc in … }
to
for loc in locations { ... }
fixes an error calling some other async func passing loc in the loop.
I understand the reasons but its frustrating that there are so many little ways to get things wrong even with this so called "approachable" concurrency
Let's not even get into sprinkling magic annotation dust all over your code and hoping that's the trick
Playing with shape elasticity via #swiftui and #metalshaders for #RandomForms. It doesn’t quite behave like vinyl, but it’s pretty good.
Soooo good! #UIKit #SwiftUI
https://mastodon.social/@nicoreese/115538932773336254
Whoah, iOS 26.2 beta 2 finally introduces the context menu animations that were presented at WWDC with all their bubbliness and motion blur effects. It's not 100% there yet, but much closer! #UIKit #SwiftUI
Recently I had the honor to join the Apple @ Work Podcast again and talk about Root3 Support App 3.0!
https://podcasts.apple.com/nl/podcast/apple-work/id1500332802?l=en-GB&i=1000736250533
#SwiftUI #macOS #MDM #Accessibility #LiquidGlass
Why are gestures in #SwiftUI so bad. I simply want to recognize a long press after a certain amount of time, do something when it happens and do something else when I let go. This also should not interfere with scroll events or other (tap) gestures. No matter what I use, something breaks (onLongPressGesture, LongPressGesture()).
@helge @softmaus To be fair: AFAIK, the whole result builder thing was added to Swift mainly to allow #SwiftUI the way it is. Given that, SwiftUI is not “simply a consumer of Swift”.
Result builders in turn are, in combination with Swift’s automatic type detection, terrible for error messages.
Added a bunch more tests, and discovered some issues decoding cursors in the process! Tomorrow, let’s resolve the decoding issues and write more edge case tests. See you during the day!
🔜 Tomorrow’s stream: https://youtube.com/live/r0asYeNp8hE
⏮️ Playlist so far: https://www.youtube.com/playlist?list=PLRxjf93xotuofCtaxtGOcWeuxVZYJyY-m
📲 Download Jiiiii: https://apps.apple.com/app/apple-store/id6472801548?pt=14724&ct=MastodonCCStreams&mt=8
#Jiiiii #DevStream #tvOS #visionOS #macOS #iOS #iPadOS #Anime #Swift #SwiftUI #Vapor #WebAuthn #BuildInPublic #TestFlight #PWA #WebPush
Your SwiftUI app rendering views too often? Xcode 26's new SwiftUI Instruments help you identify which views are updating excessively. Mark shows you how to use them for real performance wins.
🔗: https://swiftdevjournal.com/posts/swiftui-frequent-view-updates/ by Mark Szymczyk (@swiftdevjournal)
#SwiftUI #iOSDevelopment #Performance
I'm making a seasonal anime guide app, in the open for all to experience and learn from.
Let's start mocking lists to make sure they can be loaded in tests!
#Jiiiii #DevStream #tvOS #visionOS #macOS #iOS #iPadOS #Anime #SwiftLang #SwiftUI #Vapor #WebAuthn #BuildInPublic #TestFlight #PWA #WebPush
Come chill with me: https://youtube.com/live/cHxliiDbVBM
Form validation getting out of hand? Daniel shows how keypaths reduce boilerplate and boost readability in SwiftUI forms, making validation logic cleaner and more maintainable.
🔗: https://danielsaidi.com/blog/2025/10/24/power-up-swiftui-form-validation-with-key-paths by Daniel Saidi (@danielsaidi)
#SwiftUI #iOSDevelopment #Forms
Thanks @donnywals for the great workshop on improving #SwiftUI performance using Instruments. Was an insightful and fun day.
Looking forward to the talks the next two days at #DoiOS.
