I always thought that setting iOS environment was "complex": installing Xcode, Xcode dev tools, simulator, probably ruby + fastlane, etc...
And then... I tried to make some backend development for my company. iOS environment setup is so easy π
Finally had time to check what was going on with my project when compiling with Xcode 16.2/16.3
https://t.co/aZZpF8cM7Z gets way bigger (57-> 161mb). Some assets go from 2mb to 20mb.
Opened a ticket to apple. Hopefully it will get fixed.
Just discovered that using containerRelativeFrame inside a HStack inside a ScrollView retriggers everytime you scroll.
Moving to LazyHStack would fix the issue but I can't for various reasons.
So in short: don't use ScrollView + HStack + containerRelativeFrame π
I'm more and more frustrated of using #SwiftUI. It has countless bugs, even on simple things. Is it worth filling a bug ticket? Feels like @Apple won't never fix them :(
@SwiftDev_UI@Apple In my code I say I want hierarchical secondary color which was set to Green so I should have got green. If you look to screenshot you see that it works in one case, but not the other one
Over the years SwiftUI has improved. But I'm also seeing countless bugs in each version. Some very important like this one (I face it too).
https://t.co/UUzVNOB5F7
But after many months... still not fixed :(
@SwiftDev_UI Didn't dig on the why, just notice that the same app built with 16.2 is bigger than on 16.1.
Some other people have the same issue:
https://t.co/X95KqhW11a
Seriously there are some things that are broken like hell in SwiftUI. Just stumbled on this bug:
https://t.co/VgF7TKc8yu
Worst thing: if set a custom TextField style, it gets called 3 times. π€¦ββοΈ
(Backend) developers still find ways to surprise me.
Latest idea: sending ids that can't be used as such. Because they are in the form of "Object:ID". So frontend need to parse them to get the ACTUAL id and send it to backend (whenever needed). π
Even though you probably want your object to be initialized only once, this is yet another case/reason why having side effect in init is not a good idea
https://t.co/8zjogoQDJi
Interesting article
https://t.co/P1g9Wq7jTt
But one thing as I already said: don't put side effect inside your init! That's by far the BEST way of avoiding issues.
Tip#16: Keep your processes simple
Donβt complexify your validation processes. The more you add the less efficient you are. Itβs bureaucracy.
πΒ Use Trunk Based Development
πΒ Communication over documentation
Tip #29: Look to other platforms
Sometimes we think we know more than others or that our community is the best. Maybe itβs true π. But you still have nice things to learn from others π
πΒ Look to other languages
πΒ Look to other frameworks
Tip #12: Donβt give the wrong naming to the wrong class.
People tend confuse naming with role.
Itβs not because you're naming something βpotatoβ that it magically make it one!
π THINK about what your objet DO before naming it