Live data from Hacker News

30k lines of SwiftUI in production later

blog.timing.is

11–20 of 124 posts

Re: 30k lines of SwiftUI in production later

#11
post #2

What amazes me is that scrolling has never really been an issue in any native app? And yet here we are in 2023, with a native framework built for modern devices (where scrolling is the main interaction) that... inherits the worst behaviors of web of all things?

I don't think this is true, I recall an interview with the original Instagram people saying that it was not possible to scroll with that many photos and text being live rendered and they had to fake it with something like pre-rendering the UI as an image and scrolling that.

Re: 30k lines of SwiftUI in production later

#13
post #9
post #3

I also fell in love with swift when I had to learn it trying metal. it just succs how you have to use xcode with it.

What's wrong with Xcode? Is it the usual "iPhone is preparing for development" type of annoyances? Is it the bugs that sometimes prevent you from compiling? Or is it something more fundamental like even when everything works fine you don't like it?

The first, yes.

The second, also yes.

The third, also, also yes.

Re: 30k lines of SwiftUI in production later

#14
post #9

Earlier quoted context omitted.

What's wrong with Xcode? Is it the usual "iPhone is preparing for development" type of annoyances? Is it the bugs that sometimes prevent you from compiling? Or is it something more fundamental like even when everything works fine you don't like it?

The first, yes. The second, also yes. The third, also, also yes.

Okay, can you give some details on what's wrong for you? Like what is the better way to do it?

Re: 30k lines of SwiftUI in production later

#15
post #9
post #3

I also fell in love with swift when I had to learn it trying metal. it just succs how you have to use xcode with it.

What's wrong with Xcode? Is it the usual "iPhone is preparing for development" type of annoyances? Is it the bugs that sometimes prevent you from compiling? Or is it something more fundamental like even when everything works fine you don't like it?

its the I'm used to vim and transitioned to helix and kinda like everything in terminal. it feels heavy

Re: 30k lines of SwiftUI in production later

#17
SwiftUI and UIKit compose well in both directions, so if you choose SwiftUI as your framework, but then run into a wall, it's an option to partially rewrite that difficult part with UIKit.

Of course if the problem is with the core of your application like the scrolling example in the article, this is not going to help you much.

Re: 30k lines of SwiftUI in production later

#18
> It could — and really should — have been easier, especially considering SwiftUI has had three major updates since it was announced in 2019.

Apple (and Next) have been iterating on AppKit for three decades. The UIKit fork of AppKit for iOS is a decade and a half old.

Expecting the same level of polish in SwiftUI after three years is a bit overoptimistic.

Apple has said that SwiftUI is "where the puck is going" so you can expect that they will keep on iterating on it for many years to come.

Re: 30k lines of SwiftUI in production later

#19
post #14

Earlier quoted context omitted.

The first, yes. The second, also yes. The third, also, also yes.

Okay, can you give some details on what's wrong for you? Like what is the better way to do it?

Xcode doesnt even support features like format on save nor does it have powerful enough api to support a mod ecosystem to fill in its gaps.

It has all sorts of bugs and weird fail cases.

Honestly you should just search the internet for testimonials because anyone who uses Xcode can create a list of issues rather than rehash them all here in response.

Re: 30k lines of SwiftUI in production later

#20
the worst isn't mentioned : not only is swiftui causing all kinds of glitches of it own, but despite being a brand new framework, it still locks you 100% to apple devices.

I mean, i had hoped that with a declarative UI apple would at least create some kind of path to web or android renderering, making at least part of the code reusable somewhere. But no, still 100% lockin. Which to me is a HUGE missed opportunity.

Post reply on HN