Pierre Tacchi's Avatar

Pierre Tacchi

@pyroh.bsky.social

Head of Research & Development @ Velvet Flare. I create and solve problems with #SwiftUI.

43 Followers  |  88 Following  |  118 Posts  |  Joined: 06.08.2023  |  2.0702

Latest posts by pyroh.bsky.social on Bluesky

iOS 26 is ugly but as far as I experienced pretty stable. And recent changes made is readable too. But I just can’t w/ macOS 26… this sidebar design alone is an insult to whoever invented the sidebar…

12.11.2025 15:00 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Yep, that’s the way πŸ‘

19.10.2025 12:41 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Et ils en auraient installΓ© presque 800 alors ?!

11.10.2025 11:28 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Does someone also sees SwiftUI lists not working properly (unable to select item) on MacOS 14 for apps compiled under Xcode 26 ?

10.10.2025 17:06 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

I won’t argue on the AI part. But yeah I don’t see Apple gatekeeping everything too. Thank you for sharing your view πŸ˜ƒ

08.10.2025 19:50 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Thank you for the explanation! If we put aside app stores I’m worried about access to the platform as a whole. I write code that runs 24/7 on Mac and nobody will ever install it through any store, I do iOS tooling too. I wonder if at some point I’ll be barred from the tools / signing system, …

08.10.2025 18:04 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

They’re US* tech, sorry.

08.10.2025 11:55 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Interested to know more. Also since we both dev on Apple platforms should we be worried as they’re IS tech also ?

08.10.2025 11:54 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 2    πŸ“Œ 0

"anti-AI people should just learn more about it" motherfucker I know so much about it, that's why I'm anti-AI

06.10.2025 12:28 β€” πŸ‘ 825    πŸ” 215    πŸ’¬ 12    πŸ“Œ 16

J’en suis arrivΓ© Γ  la mΓͺme conclusion.

05.10.2025 08:10 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Sounds like fun !

27.09.2025 20:33 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Never thought about using AnyCancellable for tasks. Great idea thank you for sharing!
I think you made a mistake in the first code example featuring setup, you use the store method on the task before introducing it when should have used it on the publisher.

18.09.2025 18:24 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

πŸ₯³ (thank you !)

09.09.2025 09:38 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

I have trouble reading the comments and method/func names. Not enough contrast I think. But overall I like it πŸ˜ƒ.

08.09.2025 17:46 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

I never update until the x.2, earlier if stability and app availability are a consensus. But here I know I’ll wait for a backlash and a potential redesign and I know they won’t… πŸ˜•

07.09.2025 16:55 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Not a fan of iPadOS and iOS 26 but I feel that something I could acclimate to. But macOS ? An insult…

07.09.2025 16:49 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Would be great if you hadn’t to backstick them at call site. Like you do w/ keyword used as variable names (var `for` = 4)

21.08.2025 12:49 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

@ FocusState and the focus modifier. But it’s way more limited than messing w/ the first responder directly.

12.08.2025 12:14 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Exactly ! This nuance is important and shows how rare the need of global actors really is.

20.07.2025 07:19 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

It’s really about coordinating concurrent accesses to a unique ressource. Say a database client, writing to a single log file, etc… Global actors allow you to make this a simple decoration in your code while doing all the heavy lifting. And it’s clearly and solely about isolation.

20.07.2025 06:09 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

In the early days of SwiftUI I remember asking myself β€œis that buggy or do I still dont get the thing” a lot ! Now it’s better, on both sides.

10.07.2025 18:15 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
PayMe Professional invoicing software with just a 1% fee. Send clients professional invoices, choose who pays fees, accept payments, and get free payouts.

Hello! I’m excited to introduce an idea that’s been floating in my head for a while: PayMe

PayMe is invoicing software for creators and professionals, with just a 1% fee.

Photographer invoicing for a shoot? You could save >2% of your income using PayMe over QuickBooks!

Check it out!
usepayme.app

10.07.2025 13:34 β€” πŸ‘ 1    πŸ” 1    πŸ’¬ 2    πŸ“Œ 0

Those are indeed pretty nice !

07.07.2025 05:10 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Congrats ! I'd be interested to know what technique you use to generate the beat. Simple timer or something else ? I'm about to start working on a tool where I need a precise beat and I'm not sure how to do it the right way. So far I used AsyncStream + Task.sleep when needed...

02.07.2025 08:46 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Attribute graph β€” Chris Eidhof

I recorded my Attribute Graph talk from a few weeks ago. I hope this is helpful! chris.eidhof.nl/presentation...

01.07.2025 09:39 β€” πŸ‘ 11    πŸ” 2    πŸ’¬ 0    πŸ“Œ 0

App + framework both swift 6.0 at the time. Might have been a compiler bug. I’ll try removing the isolation w/ the last stable version and see if it catches it.

27.06.2025 17:19 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Didn’t had time to test 6.2 yet I thought I read it being an opt-out πŸ˜…

27.06.2025 17:15 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

It’s pretty hard to explain without showing code + analysis but it was marked as data race by the runtime. A WebSocket server w/ clients stored in an array + client factories (for connections). It was iterating through the array while appending to it. Had to isolate it w/ a global actor.

27.06.2025 17:13 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Yes I get the nuance. I meant compilation errors. But you can still have data races at runtime in 6 lang mode. The ones I got were due to actor rentrancy.

27.06.2025 17:02 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

I guess that being Swift 6.2 everything is isolated on the MainActor by default. Since your class is nonisolated you’re prone to introduce data races as name is mutable.

27.06.2025 16:55 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 2    πŸ“Œ 0

@pyroh is following 20 prominent accounts