Software Dev

The Big Facebook Crash and Third-Party SDK Vulnerabilities

App users may not be aware — and app developers often forget — that favorite app of yours might be running native code from a third party such as Facebook. Besides making your app potentially way bigger to download, it can also cause instability. When Facebook screws up, suddenly you can’t run TikTok, Spotify, and countless others apps.

This actually happened recently. 💥

👉 The big Facebook crash of 2020 and the problem of third-party SDK creep

It was as if Facebook had an “app kill switch” that they activated, and it brought down many of people’s favorite iOS apps.

For this and other reasons such as added integration complexity, when I’m making my next app, I am going to try to minimize third-party libraries.

It seems like software architecture often focuses on theoretical concepts and cool ideas, but we should look at things like this that can impact millions of real users. IMHO we developers need to consider third-party libraries as a liability to be weighed against the vulnerabilities they open up. 💥

Via iOS Dev Weekly.

Also, a shout out to the “App-ocalypse” video from this article. 😆

Travel

DAR Library

This looks like a great place to visit for some quiet time and to soak tip some pre-industrial America while in DC. Or maybe enjoy some genealogical and historical manuscripts, if that’s your thang. Or just looked around with mouth wide open. 😲🤩

(DAR = Daughters of the American Revolution)

Software Dev

Twitter Network Layer (TNL)

The iOS network layer developed by Twitter.

The Twitter Network Layer (TNL) is a framework for interfacing with the Apple provided NSURLSession stack that provides additional levels of control and insight over networking requests, provides simple configurability and minimizes the cognitive load necessary to maintain a robust and wide-reaching networking system.

Software Dev

Bolts

This claims to be a collection of libraries, but AFAICT the main thing it offers is Tasks, which is like a promise kit for async requests.  Looks nice, though.

Bolts is a collection of low-level libraries designed to make developing mobile apps easier.

Bolts Tasks is a complete implementation of futures/promises for iOS/OS X/watchOS/tvOS and any platform that supports Swift. A task represents the result of an asynchronous operation, which typically would be returned from a function