Live data from Hacker News

100 Days of SwiftUI

hackingwithswift.com

81–90 of 110 posts

Re: 100 Days of SwiftUI

#81
post #4

Tangent but I'm holding out from learning Swift until I see how the "Cross platform UI" wars shake out. We've got at least Kotlin, Dart, and JavaScript all battling it out (via Kotlin Multiplatform, Flutter, React Native) to be the king of UI languages across all platforms. I really like Swift though (from the little I've learned), so it's too bad it doesn't really have a cross platform UI story yet. (I could learn a…

I've worked in mobile since 2004 (not a typo, '04). The 'one platform to rule them all' has been just around the corner the entire time. As was already said, don't hold your breath. All of that said, if you are time constrained and really want to look at a single thing, I would go with Flutter. It impressed me when I cranked out a side project with it a year or so ago. Hopefully they continue to put effort towards it…

More specifically, there are a bunch of efforts, but the Swift ecosystem doesn't seem too interested in this.

Even Apple can barely get it with SwiftUI being a dumpster fire on macOS.

Re: 100 Days of SwiftUI

#82
post #33
post #13

Earlier quoted context omitted.

From our experience Flutter apps are easy to start with but quite hard to maintain. The core system keeps changing so much you are constantly having to fix things and dealing with broken dependencies. Would never use it for anything important.

I have the same problem with react native.

I stopped supporting an open source React Native library because keeping the sample code working in Expo was taking too much of my time.

This was years ago, maybe things have calmed down since then, but Expo always felt like hanging onto the horns of a bull, so long as you didn't fall off it was a fun ride!

Re: 100 Days of SwiftUI

#83
post #37

Earlier quoted context omitted.

Flutter is mostly fine. Until you need to implement text input in your app. And it turns out that autocomplete doesn’t work properly on iOS for non-English phones and you discover there’s a bug filled on their tracker for 5 years already and it’s still open [1]. Or you encounter another similar issue that is niche enough that the developers ignore it completely but is frustrating for your users and there’s nothing yo…

Isn't getting 95% of the way there better than getting 0% of the way there? What are you going to do instead?

You can get 100% of the way there with Kotlin and Swift for UIs and a multiplatform library. Or web.

Re: 100 Days of SwiftUI

#84

Earlier quoted context omitted.

A lot of people saying it doesn’t exist or work, but as the creator of Tamagui, I have to vouch for it. I think it works pretty amazingly, and we have some really beautiful apps in every App Store (plus web).

It certainly exists/works, but is it productive? With my time using Tamagui I would go with no. There are just so many traps everywhere. 99% of it isn't your fault, just the name of the fragile RN game. Install another package here to handle one use case on one platform, avoid this component on one platform because RN doesn't support this thing, entire blocks of very simple styles commented out due to performance cos…

Good to hear about your experience, and we’ve steadily improved the onboarding costs. Also have a new starter kit coming soon that goes all in on batteries included.

When did you last try it? Because it’s improved dramatically since January.

But of course you have to compare it to the alternatives.

Aka have you tried to build a SwiftUI app? There’s endless problems. And then you have to rewrite your whole app three times.

Building any app will leave you delirious, but I’ve found myself far more productive in React Native than the alternatives - and I’ve tried them. I would happily challenge anyone to ship a cross platform app using their framework of choice and compare on time to ship and ultimate UX. I think there’s a clear winner.

Re: 100 Days of SwiftUI

#85
post #82
post #33

Earlier quoted context omitted.

I have the same problem with react native.

I stopped supporting an open source React Native library because keeping the sample code working in Expo was taking too much of my time. This was years ago, maybe things have calmed down since then, but Expo always felt like hanging onto the horns of a bull, so long as you didn't fall off it was a fun ride!

That's similar to my experience. Not just React but across JS in general. Was super hard to keep everything at pace when it was and is moving so fast. I slightly envy the old COBOL people sometimes...

Re: 100 Days of SwiftUI

#86
post #23

Earlier quoted context omitted.

No, it won't be Reactive Native or any other. There are no cross-platform UI wars any more. There are efforts at this, all with huge compromises, but working with a native UI toolkit on any platform will always offer a superior developer experience and a superior user experience; that's just the way it has always been, still is, and I'd predict always will be.

The problem is that developer experience (and often user experience) aren’t always the highest priority. For many businesses that want to ship a mobile app, cost is by far the biggest constraint. And “writing once, shipping everywhere” pushes out native development. We at Khan Academy have moved much of our app to React Native and overall it’s a great experience and much easier to maintain than two native apps. Of co…

How much of KA's web react code (I'm assuming?) can be re-used in RN land?

Or vice versa, do you use RN-Web or plan to?

Re: 100 Days of SwiftUI

#87

Earlier quoted context omitted.

The URL is correct for SwiftUI.

Yeah, I know, but the comment mentions Swift everywhere else, including in the name of the list being created in Reminders. The conflation of Swift and SwiftUI also shows up a few other times in the comments here.

ahhh yeah, wish i could update my comment to give that context. i learned swift via swiftui, as it seemed like the most accessible avenue (as far as quality resources go)!

Re: 100 Days of SwiftUI

#88
post #4

Tangent but I'm holding out from learning Swift until I see how the "Cross platform UI" wars shake out. We've got at least Kotlin, Dart, and JavaScript all battling it out (via Kotlin Multiplatform, Flutter, React Native) to be the king of UI languages across all platforms. I really like Swift though (from the little I've learned), so it's too bad it doesn't really have a cross platform UI story yet. (I could learn a…

I'm still hoping that Kotlin Multiplatform succeeds. Since kotlin is now the language recommended by Google so should be able to natively write for Android while also being able to deploy to other OS.

Re: 100 Days of SwiftUI

#89
post #4

Tangent but I'm holding out from learning Swift until I see how the "Cross platform UI" wars shake out. We've got at least Kotlin, Dart, and JavaScript all battling it out (via Kotlin Multiplatform, Flutter, React Native) to be the king of UI languages across all platforms. I really like Swift though (from the little I've learned), so it's too bad it doesn't really have a cross platform UI story yet. (I could learn a…

I’ve written a few command-line utilities in Swift lately and really enjoyed working with it. The type system I find especially appealing, being an enabler far more than an impediment, and coming from writing tons of C and Ruby there’s a lot that is familiar. Thus making the current multi-platform story a real shame, it’s a massive barrier to ever choosing Swift for a significant project.

It feels like Apple’s reflexive parochialism is limiting their influence, and that is something only leadership could overturn. I doubt they feel any financial incentive to do so.

Re: 100 Days of SwiftUI

#90
post #4

Tangent but I'm holding out from learning Swift until I see how the "Cross platform UI" wars shake out. We've got at least Kotlin, Dart, and JavaScript all battling it out (via Kotlin Multiplatform, Flutter, React Native) to be the king of UI languages across all platforms. I really like Swift though (from the little I've learned), so it's too bad it doesn't really have a cross platform UI story yet. (I could learn a…

The only cross-platform UI that is likely to be feasible to use long term is HTML/CSS/JS. That comes with significant downsides in terms of display fidelity. But that is going to be the case (to some degree) with any cross-platform toolkit.

This seems right, at least for the next decade.

Recently, I really enjoy running containerized apps locally and accessing the GUI as a website on localhost. It feels like there’s a lot of room to build on that model.

Post reply on HN