Live data from Hacker News

Libraries Used in the Top 100 iOS Apps

medium.com

31–40 of 54 posts

Re: Libraries Used in the Top 100 iOS Apps

#31
post #7

Slightly off-topic but we're in the middle of building an iOS / Android SDK / library to drive improved location services. Does anybody have any solid resources on SDK marketing directly to iOS and Android developers? We've found some innovative ways to address the community (doesn't hurt to have an office packed with engineers to ask where they find solutions) but looking for ideas ranging from the best developer ev…

Couple of companies come to mind: * Realm.io has successfully positioned themselves as a thought leader in swift development for iOS by producing solid blog content and leading the Swift SF meetups (+ contributing to open-source projects). * Crashlytics/Fabric.io is more interesting -- my experience with them has been entirely word-of-mouth (but they have a big presence at Twitter's developer conference/WWDC/Google I…

I agree that both Realm and Fabric have done an excellent job reaching out to developers. Fabric went to another level in providing a slick interface to make it easy to drop in and update their SDKs. I'd be excited to see that more generally available, maybe integrated with CocoaPods.

Re: Libraries Used in the Top 100 iOS Apps

#32
post #28

I notice that no off-the-shelf web view wrappers (e.g. PhoneGap/Cordova) or non-web-view JavaScript frameworks (Titanium, NativeScript) are in this list. Would Xamarin, RoboVM, or RubyMotion be detectable with this method? Or can we safely assume that all of the top 100 apps are native ObjC or Swift?

I would expect that if an app is popular enough to be in the top 100 then it most likely has the bankroll to pay for native devs. I can't imagine ever seeing a non-native app in the top 100 with the exception of maybe ReactNative-based apps which is a bit of a grey area since it compiles into native.

There are many non-native apps in the top 100. Cordova is popular for business apps (Amazon and Walgreens both use it, for example). Unity (C#) is extremely popular for games because they built an awesome dev environment and it compiles to native, thanks to Mono's translation layer.

I agree that React Native is great, and you will be seeing a lot more apps using it, especially as their Android version comes out.

Re: Libraries Used in the Top 100 iOS Apps

#35

I notice that no off-the-shelf web view wrappers (e.g. PhoneGap/Cordova) or non-web-view JavaScript frameworks (Titanium, NativeScript) are in this list. Would Xamarin, RoboVM, or RubyMotion be detectable with this method? Or can we safely assume that all of the top 100 apps are native ObjC or Swift?

I don't see why Xamarin wouldn't be detectable but I don't think it would appear as a separate library. Due to the impedance mismatch between C# and ObjC, Xamarin has to generate proxies and wrappers as well as deal with some abstraction leaks. However, iOS (afaik) doesn't quite have shared libraries like you would have on a Linux server and there's no point in creating a separate ObjC library that would add bloat to…

Xamarin on iOS works in a similar way to Unity. They both use the Mono AOT compiler (ahead of time translation) to convert C# to native ARM code. It's not a JIT environment, like on Android. Miguel de Icaza is one of the founders of Xamarin and the Mono OSS project.

However, Mono isn't composed of ObjC classes so it's harder to detect just by looking at that list like the author did here. Xamarin does have a few ObjC components (such as XamarinNSThreadObject) since it adds a support library to the environment.

We actually match the structure of the code (control flow subgraphs), as well as other items like data references, so we get a more accurate view than you do just looking at class names.

You're right that each native or ObjC library you use with Xamarin has a plugin that exports a C# interface. It will be interesting to see how this evolves and if Xamarin will come up with a way of auto-generating these interfaces better.

Re: Libraries Used in the Top 100 iOS Apps

#36
post #30

Earlier quoted context omitted.

Just because it's old doesn't mean it's unmaintained.

ASIHTTPRequest has been unmaintained for years.

Correct, the banner shows it was last updated in 2011.

http://allseeing-i.com/ASIHTTPRequest/

Given the problems we found with SSL domain verification in another networking library, you definitely don't want to be using unmaintained code for this.

https://sourcedna.com/blog/20150420/afnetworking-vulnerabili...

(SourceDNA helps developers secure & improve their apps, and one of the things we identify is out-of-date static libraries.)

Re: Libraries Used in the Top 100 iOS Apps

#37
post #28

I notice that no off-the-shelf web view wrappers (e.g. PhoneGap/Cordova) or non-web-view JavaScript frameworks (Titanium, NativeScript) are in this list. Would Xamarin, RoboVM, or RubyMotion be detectable with this method? Or can we safely assume that all of the top 100 apps are native ObjC or Swift?

I would expect that if an app is popular enough to be in the top 100 then it most likely has the bankroll to pay for native devs. I can't imagine ever seeing a non-native app in the top 100 with the exception of maybe ReactNative-based apps which is a bit of a grey area since it compiles into native.

There are many reasons a business might choose to develop a web-wrapped iOS application besides not having the "bankroll to pay for native devs."

Re: Libraries Used in the Top 100 iOS Apps

#38
post #28

I notice that no off-the-shelf web view wrappers (e.g. PhoneGap/Cordova) or non-web-view JavaScript frameworks (Titanium, NativeScript) are in this list. Would Xamarin, RoboVM, or RubyMotion be detectable with this method? Or can we safely assume that all of the top 100 apps are native ObjC or Swift?

I would expect that if an app is popular enough to be in the top 100 then it most likely has the bankroll to pay for native devs. I can't imagine ever seeing a non-native app in the top 100 with the exception of maybe ReactNative-based apps which is a bit of a grey area since it compiles into native.

React Native apps aren't compiled ahead-of-time to native code; they use JavaScriptCore on both iOS and Android. Should be very easy to detect.

Re: Libraries Used in the Top 100 iOS Apps

#39
post #7

Slightly off-topic but we're in the middle of building an iOS / Android SDK / library to drive improved location services. Does anybody have any solid resources on SDK marketing directly to iOS and Android developers? We've found some innovative ways to address the community (doesn't hurt to have an office packed with engineers to ask where they find solutions) but looking for ideas ranging from the best developer ev…

No affiliation with this (not even a customer), but this might be useful for you: http://www.growamp.com

And...holy shit, they just raised their pricing by 5x. That's kind of insane. I was really on the fence about this at $500 / month, but if I really needed this now, I'd probably try building it myself. If you planned on paying for this for a year, that's $30k. Seems like you could recreate this for $30k, right?

Post reply on HN