Top all-time · #1580
Timac
Personal blog · blog.timac.orgprogrammingsecurity
Timac is a personal blog at blog.timac.org about programming and security. Since 2008, 45 different Hacker News readers have linked it 81 times, most often “Analysis of the Facebook app for iOS”. It is still writing: the last post was on 2024-12-08, and you can follow it by feed.
Rarely recommended · 3 of 35 sampled comments recommend it?
Why HN links it
HN readers link Timac's long-running analyses of iOS and macOS binaries: Swift and Objective-C usage across OS releases, and the size and code bloat of the Facebook iOS app.
- Recommended for · 3 comments
- Enjoyed as an annual Apple usage series; 'actual content' on app size; 'great analysis' of the Facebook app.
Summarised by Claude from a sample of 35 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
Timac
Most-linked posts?
- Analysis of the Facebook app for iOS8 people · 8 mentions · first linked 2017-04-10
- /2017/0410-analysis-of-the-facebook-app-for-ios-v-87-0/6 people · 6 mentions · first linked 2018-06-28
- Apple’s use of Swift and SwiftUI in iOS 165 people · 8 mentions · first linked 2022-10-06
- Apple’s use of Swift in iOS 124 people · 4 mentions · first linked 2018-09-24
- Apple's Use of AppKit, Catalyst, Swift and SwiftUI in macOS Sonoma3 people · 4 mentions · first linked 2023-11-29
- Apple's use of Swift and SwiftUI in iOS 183 people · 3 mentions · first linked 2024-12-09
- Comparing iPhone OS 1.0 with iOS 14 using tree maps3 people · 3 mentions · first linked 2020-11-22
- Apple’s Use of AppKit, Mac Catalyst and SwiftUI in macOS3 people · 3 mentions · first linked 2022-08-19
- Apple's use of Swift and SwiftUI in iOS 173 people · 3 mentions · first linked 2023-10-19
- Apple’s use of Swift in iOS 11.1 and macOS 10.13.13 people · 3 mentions · first linked 2017-11-16
What Hacker News says?
This isn't exactly the first time Facebook has been called out for poor engineering practices: https://www.darkcoding.net/software/facebooks-code-quality-p... https://blog.timac.org/2017/0410-analysis-of-the-facebook-ap...
Comment linking /2017/0410-analysis-of-the-facebook-app-for-ios-v-87-0/
on “Facebook iOS SDK Remotely Crashing Spotify, TikTok, Pinterest, Winno and More”Submitted Apple’s use of Swift and SwiftUI in iOS 15 as a story · 248 points
HN discussionThis is turning into a silly argument… but anyway there's a blogger who has been tracking the number of binaries written in the various languages (and appkit vs catalyst vs swiftui etc.) for years. Sonoma is 13% Swift (up from 11% in Ventura), 53% Obj-C (down from 55% in Ventura). The priority actually appears to be eating away from the C/C++ parts of the codebase (currently 33%, down from 42% just two releases ago)…
Comment linking /2023/1128-state-of-appkit-catalyst-swift-swiftui-mac/
on “9 years of Apple text editor solo dev”Submitted Comparing iPhone OS 1.0 with iOS 14 using tree maps as a story · 207 points
HN discussionI think this is likely the biggest culprit. Another user pointed out an analysis of the Facebook app: http://blog.timac.org/?p=1707 Most of it is actual code - not assets. For some types of apps (see: games) assets do take up a significant portion of total size, but for most everyday apps bloat by code over-inclusion is likely a bigger problem than asset-bloat. I wonder if it's possible to get major open-source libs…
Comment linking /?p=1707
on “App sizes are out of control”Submitted Apple’s use of Swift and SwiftUI in iOS 14 as a story · 186 points
HN discussionThere were a few articles with actual content on this topic covered on Daring Fireball in recent months. Not sure what this blog blurb is adding to the conversation. 1. https://sensortower.com/blog/ios-app-size-growth 2. http://blog.timac.org/?p=1707 3. https://blog.halide.cam/one-weird-trick-to-lose-size-c0a4013...
Comment linking /?p=1707
on “App sizes are out of control”Submitted Apple’s use of Swift in iOS 12 as a story · 184 points
HN discussionRemember when reached the limit for __TEXT and had to put code in sections that weren’t really meant for it: https://blog.timac.org/2016/1018-analysis-of-the-facebook-ap... ? Remember when they were taking to long to start up that they pulled stuff into a separate framework just so they could meet launch deadlines: https://blog.timac.org/2017/0410-analysis-of-the-facebook-ap... ? Remember when the app had 18,000 Obj…
Comment linking /2017/0410-analysis-of-the-facebook-app-for-ios-v-87-0/
on “Rebuilding our tech stack for the new facebook.com”Submitted Apple’s Use of Swift in iOS 13 as a story · 174 points
HN discussionThere is a lot of C++ at Apple. It's of course possible to work there and never touch it, but it's also possible to work there and do almost all your work in C++. Many significant parts of iOS and macOS are written in C++, for example WebKit, the implementations of ObjC and Swift, clang/llvm, dyld, CoreAudio, CoreAnimation, WindowServer, Dock, Finder, etc. I enjoy this[1] annual series of blog posts on Apple's usage…
Comment linking /2021/1219-state-of-swift-and-swiftui-ios15/
on “Cppfront, Herb Sutter's proposal for a new C++ syntax”Submitted Apple’s Use of AppKit, Mac Catalyst and SwiftUI in macOS as a story · 161 points
HN discussionReally? I read otherwise: https://blog.timac.org/2019/0926-state-of-swift-ios13/ It'd be hard to know unless you worked there. It's just a wild theory, I might be wrong :)
Comment linking /2019/0926-state-of-swift-ios13/
on “Why iOS 13 and Catalina Are So Buggy”Submitted MacOS VPN architecture from System Preferences down to nesessionmanager as a story · 128 points
HN discussion> there's every indication that all new Apple frameworks are being written in Swift There's no such indication. "The number of binaries using Objective-C is still growing with each iOS release." https://blog.timac.org/2020/1019-evolution-of-the-programmin...
Comment linking /2020/1019-evolution-of-the-programming-languages-from-iphone-os-to-ios-14/
on “Swift for TensorFlow Shuts Down”Submitted Analysis of the Facebook app for iOS as a story · 125 points
HN discussionSeems like Apple needs to disincentivize the use of Electron and other user hostile technologies somehow before anything will change. They also need to crackdown on the Facebook app. http://blog.timac.org/?p=1707
Comment linking /?p=1707
on “TypeScript at Slack”Submitted Apple’s use of Swift and SwiftUI in iOS 16 as a story · 59 points
HN discussionMy Facebook iPhone app weighs in at 241 MB. It has massive redundancy and you can say that again. http://blog.timac.org/?p=1707 Still, I have to say that there is indeed an opportunity for a few low level people there.
Comment linking /?p=1707
on “Low-Level Programming University – A roadmap to becoming a low-level programmer”Submitted Analysis of the Facebook.app for iOS [v. 87.0] as a story · 26 points
HN discussionGiven that the person who created LLVM also created Swift, the ability to be used as a systems programming language was always there. Chris Lattner, the creator of both LLVM and Swift, has referred to Swift as “syntactic sugar for LLVM.” They are deeply tied together. The amount of Swift code in Apple's operating systems has increased every year. https://blog.timac.org/2023/1019-state-of-swift-and-swiftui-... Lattne…
Comment linking /2023/1019-state-of-swift-and-swiftui-ios17/
on “Eliminating Memory Safety Vulnerabilities at the Source”Submitted Apple's use of Swift and SwiftUI in iOS 18 as a story · 17 points
HN discussionApple is still adding large amounts of new Objective-C code in each new macOS version [0]. I haven't found any language usage numbers for recent versions of Windows, but Microsoft is using Rust for both new development and rewriting old features [1] [2]. [0] Refer to section "Evolution of the programming languages" https://blog.timac.org/2023/1128-state-of-appkit-catalyst-sw... [1] https://www.theregister.com/2023/0…
Comment linking /2023/1128-state-of-appkit-catalyst-swift-swiftui-mac/
on “Eliminating Memory Safety Vulnerabilities at the Source”Submitted Breakpoint conditions with GDB as a story · 5 points
HN discussionWhats really surprising is if you look at the results, the only pure swift binary (that isn't under libswift*) is a protocol buffers library, rather then adapting the existing c++ one maintained by google. /System/Library/PrivateFrameworks/CloudKitCodeProtobuf.framework/CloudKitCodeProtobuf |Swift https://blog.timac.org/2021/1219-state-of-swift-and-swiftui-...
Comment linking /2021/1219-state-of-swift-and-swiftui-ios15/iOS15.txt
on “Apple’s use of Swift and SwiftUI in iOS 15”Submitted Apple's use of Swift and SwiftUI in iOS 18 as a story · 4 points
HN discussionFacebook is the world's largest PHP shop. Does that mean that everyone should use PHP? As it turns out, moving fast and breaking things isn't all that conducive to quality engineering[1][2]. Facebook has a massive legacy code base maintained by an enormous team that is under pressure to iterate quickly while supporting what is arguably the world's largest user base. They are dealing with extremely specialized constr…
Comment linking /?p=1707
on “Hype Driven Development”Submitted Apple’s Use of AppKit, Mac Catalyst and SwiftUI in macOS as a story · 4 points
HN discussionThe below links provide great analysis of facebook app. They have ridiculous long class and method names. I have seen many classes which are too long. Most of the app space took by these strings and third party libraries etc. Some thing like this can be seen in whole code base: `NTNativeTemplateHackyWorkaroundBecauseNSMapTableIsBuggyContainer` https://blog.timac.org/2016/1018-analysis-of-the-facebook-ap... https://b…
Comment linking /2017/0410-analysis-of-the-facebook-app-for-ios-v-87-0/
on “Ask HN: How is Facebook's iOS app 491MB?”Submitted Apple's Use of AppKit, Catalyst, Swift and SwiftUI in macOS Sonoma as a story · 3 points
HN discussion