The Artsy app was built in 2013. In 2016, we started slowly migrating it into React Native. Over time, the project accumulated Objective-C classes that were no longer being referenced, but were still around.

This increases compile time (locally and on CI) and app download size (the classes are still compiled into the executable).

It was *so* satisfying to delete this code.

Show thread

I kind of realized that I’m the only one left who knows their way around some of this code. Like, either I delete it because I know it’s not important, or some poor soul has to figure it out from scratch.

I’ve also been the tech lead on this team for five months without putting out much “let’s make things better, cuz that’s a per se good thing to do” energy. Gotta set an example 💪

Show thread

Most of Artsy’s code is open source, and iOS is no exception. You can check the pull request out here if you’re keeeeeeen

Show thread

@ashfurrow hmm is there a good way to detect orphaned code? Is there a good term to look for to google for it?

@xorowl Objective-C? Not really :/ The runtime is so dynamic that static analysis can’t guarantee something isn’t referenced. Other languages probably have better tooling, or foundations for better tooling.

Sign in to participate in the conversation
Mastodon for Tech Folks

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!