[HN Gopher] iOS indie app development looks like
       ___________________________________________________________________
        
       iOS indie app development looks like
        
       Author : satanworker
       Score  : 31 points
       Date   : 2025-02-10 12:48 UTC (2 days ago)
        
 (HTM) web link (safespace.is)
 (TXT) w3m dump (safespace.is)
        
       | peterallport wrote:
       | Won't folks prefer to use native system features (e.g. password
       | protected apps or the "hidden" album in Photos app)?
        
         | JTyQZSnP3cQGa8B wrote:
         | That, and how did Apple managed to approve an application that
         | hides its true purpose like that?
        
           | Twisell wrote:
           | The scariest part is probably the user-base ready to purchase
           | such an App. The demo gif literally showcase "Jenn*Nud*.jpg"
           | as an example..
        
             | NoMoreNicksLeft wrote:
             | Maybe I'm way out of touch, but does anyone over the 18
             | bother to hide their stash of pornography unless it's
             | somehow illegal? I mean, be worried whether or not there's
             | parental controls so the kids can't get to it, but to
             | encrypt it?
        
               | brailsafe wrote:
               | I feel like encrypting and hiding personal private
               | photos/video would be the point, not so much downloaded
               | porn.
        
               | idolofdust wrote:
               | Some people hide their porn from their partner /
               | significant other; I don't know why people rationalize
               | that, but it's common enough.
        
             | brailsafe wrote:
             | I mean, I don't like JPGs as much as the next guy, but idk
             | that I'd call them scary
        
         | gumby271 wrote:
         | Maybe, but does that mean this app doesn't deserve to exist on
         | user's computers if they so choose? Not sure why Apple has a
         | say in that just because they have a massive advantage over
         | every other dev on their platform.
        
           | jll29 wrote:
           | There can be different views on this, I guess.
           | 
           | Apple is known to like to exercise control and to keep their
           | ecosystem closed (recall that Jobs was initially AGAINST the
           | AppStore concept entirely, which was invented by someone else
           | and now makes a ton of money for Apple).
           | 
           | Open systems with little control lead to a bazar like the
           | various Linux distros with inconsistent-looking and buggy
           | apps mixed with great apps - anything goes.
           | 
           | Imagine you are Apple and you want your AppStore to convey a
           | professional and safe look and feel, you probably don't want
           | 60,000 converter or image viewer app but a variety of tools,
           | maybe 5-10 per category max, or it will be hard for users to
           | navigate and tiring to explore.
        
             | gumby271 wrote:
             | I guess my disconnect is that the computer that a person
             | owns isn't the same as a store that Apple runs and can
             | carefully curate that runs on that computer. Combining
             | those into one thing strikes me as dangerous, with not much
             | upside. Everything you described can be true while allowing
             | the user to use their computer how they want, it just
             | doesn't make Apple as much money.
        
             | CharlesW wrote:
             | > _recall that Jobs was initially AGAINST the AppStore
             | concept entirely..._
             | 
             | Jobs was initially against allowing third-party native apps
             | on the iPhone, but not App Store as a distribution
             | mechanism. Once he relented on inviting ISVs to the profit
             | party, the iTunes Store model was never in question.
        
       | emoII wrote:
       | Really, the fact that Apple pushes swiftui as production ready is
       | laughable. The framework is so ridden in bugs, does not play
       | nicely with the other frameworks like photosui, and the language
       | itself is incredibly bloated.
        
         | samtheprogram wrote:
         | People I know who are iOS developers say differently.
         | 
         | The Swift language itself is bloated? Compared to what? Golang?
        
           | wahnfrieden wrote:
           | there's a meme that it has too many keywords, but this
           | criticism is shallow. it also grew a lot of features quickly
           | to prioritize SwiftUI support perhaps with unnecessary
           | language complexity as a result.
           | 
           | I'm an iOS dev full-time now (bootstrapped) and SwiftUI is
           | definitely not production ready if it means that it can be
           | used without needing UIKit introspection hacks. I like it and
           | ship all my work with it, but it is painfully broken and will
           | take years more to mature
        
         | brailsafe wrote:
         | I have no idea how well it works on iOS, but on Mac it's a
         | sluggish black box api that could otherwise have some
         | potential. There are workarounds, there are some nice
         | components you can put together, but for me it was a little
         | defeating to continue bashing my head against it.
        
         | sandoze wrote:
         | So many things wrong with this. Reminds me of the Objective-c
         | vs Swift arguments from back in the day. The author mentions
         | the initial release, as someone who held out migrating
         | production apps to Swift until v3 I think we all know early
         | adoption is going to be bumpy.
         | 
         | But as of iOS 15+ SwiftUI is very production ready. I've
         | migrated two production applications from UIKit to SwiftUI.
         | These have active users and are available on the App Store.
         | 
         | Bloated? The last migration resulted in 79k new lines of code
         | written and 181k deletions after rewriting 80% of the
         | application.
         | 
         | Photos album works out of the box. If you mean camera then
         | there are some issues depending on your use case. Beauty of
         | SwiftUI is we can wrap UIKit views and interop allowing it to
         | play nicely with other frameworks.
         | 
         | If you're supporting applications that target the last few iOS
         | versions it's time to learn the new paradigm. Do yourself a
         | favor but most of all anyone who might inherit your codebase.
        
           | wahnfrieden wrote:
           | Try doing performant infinite scrolling on macOS
        
             | sandoze wrote:
             | I primarily do iOS and iPadOS, but it's far easier to
             | bridge the gap between all the platforms than the
             | experience I had in the past with UIKit/AppKit. My last
             | MacOS app sadly does not do infinite scrolling.
             | 
             | Off the top of my head, I'd consider the approach. Is it a
             | ScrollView? A LazyVStack? What do your view redraws look
             | like?
             | 
             | Anyone working with Swift Strings back in Swift 1+2 was in
             | for some shockingly bad performance. We adopt, we adapt,
             | and the framework matures.
        
               | wahnfrieden wrote:
               | LazyVStack and ScrollView don't scale (no cell reuse / no
               | unloading). The only option is List which has different
               | behaviors and performance characteristics on macOS
               | including issues with eager rendering
        
               | sandoze wrote:
               | To be fair a LazyVStack handles cell reuse and unloading
               | automatically which is why offscreen content that was
               | previously viewed further back on the list will only
               | maintain the root level state (children in the view
               | hierarchy may and will lose state in order to save memory
               | and energy). How that data is loaded and how you key off
               | Identifiable is also important.
               | 
               | Apple's own documentation discusses this in detail and
               | for large data sets recommends the Lazy approach. If
               | you're using List you're in for some issues.
        
               | wahnfrieden wrote:
               | Where do you see that it does cell reuse? Their docs only
               | talk about lazy loading, not reuse or unloading, eg: http
               | s://developer.apple.com/documentation/swiftui/creating-p.
               | ..
        
       | danielscrubs wrote:
       | The Swift compiler is still the only compiler I know that times
       | out.
       | 
       | Algorithmic complexity is such a large part of a fancy university
       | education that I just don't understand how they could come up
       | with swifts feature set if they knew it would come back and
       | royally bite them.
       | 
       | What an I missing? What is the backstory?
        
       | 999900000999 wrote:
       | I gave up on mobile app dev years ago.
       | 
       | To Apple, I'm not giving you $100 per year for four people to
       | play my hobbyist games. Not to mention getting my account
       | approved in the first place was such a horrible process. They can
       | and will deny your app for random reasons. I don't know how any
       | independent developer really wants to base their entire income
       | around such madness .
       | 
       | What they want is multi-billion companies publishing content
       | consumption apps, and occasionally some slightly smaller multi-
       | million dollar companies might get some sales.
       | 
       | Google used to be cool, but now you need to have 20 or something
       | people download the app to test it first. Which is easy to game
       | if you have enough money ( or I guess you just go out and buy 20
       | devices yourself, a cheap Android device is going to run you $50
       | or so).
       | 
       | At least with Android I can point you to my git repository, feel
       | free to download my free APK.
       | 
       | Look at the source code, the build process, install it if you'd
       | like.
       | 
       | However, there's always light. WebGL is at the point where I can
       | publish small games directly onto a web page. No one needs to
       | download anything, and no one needs to worry about me doing
       | something bad.
        
       | mertbio wrote:
       | > we decided to test a sharp pivot just before shutting it down:
       | rename the app, change the concept from a photo vault to a
       | converter disguise, and sell encryption as a feature.
       | 
       | I'm not really convinced that by just changing those you can
       | suddenly get a lot of downloads.
        
       ___________________________________________________________________
       (page generated 2025-02-12 23:01 UTC)