Eli Perkins

iOS eng @ Particle ☕️🍻👾 (probably in that order) Past: @microsoft.com, @github.com, @shortcutsoftware.bsky.social, @venmo, @robinpowered

1412 followers440 following18 stories

Longform Stories

Conditional Rendering Over Nil Coalescing

<p>Stop using empty strings, empty arrays and zeros as fallbacks for your nullable values.</p>

3d ago·2 min read·359 words

Tools I Love: Secretive

<p>Using the Secure Enclave inside that hunk of metal and glass on your desk to do the mundane, safely.</p>

May 13·3 min read·444 words

Tools I Love: Plannotator

<p>Make working with your clanker feel more like collaborating in Google Docs.</p>

Mar 18·2 min read·371 words

I don't look at the code

<p>It's not the flex you think it is.</p>

Feb 17·2 min read·360 words

Tools I Love: xcrun simctl io booted recordVideo

<p>Record high quality videos of the iOS simulator right from the command line.</p>

Jan 30·2 min read·245 words

One Year with Kagi

<p>Restore your mental health with a quality search engine sans AI slop.</p>

Jan 28·5 min read·988 words

Gardening

<p>It's not only for your veggies and herbs.</p>

Jan 16·2 min read·335 words

Tools I Love: mise (mise-en-place)

<p>Use different versions of different languages and their toolchains with ease.</p>

Jan 15·3 min read·477 words

Stackless Stacked Pull Requests

<p>How I've made my workflow more efficient with <code>git-pile</code> and gotten feedback on my work faster and easier.</p>

Oct 24·7 min read·1216 words

Writing Great Release Notes Doesn't Need to Be Hard

<p>Passing on the opportunity to engage with your customers means giving up on showing your biggest fans that you're putting work into polishing and improving your app.</p>

Aug 23·9 min read·1667 words

What makes a great contribution to a codebase?

<p>Guidelines and principles learned in going from two to seven ICs.</p>

Jun 5·9 min read·1770 words

Migrating from Gatsby to Next.js

<p>Sometimes paying off tech debt comes at the cost of a rewrite</p>

May 24·4 min read·612 words

Validating Relay Queries With This One Weird Trick™

<p>tl;dr: Use <code>relay --validate</code> to catch Relay validation errors in CI.</p>

Mar 22·4 min read·776 words

SE-0117, API Design, and You

<p>Use composition over inheritance. Pass values into functions.</p>

Jul 19·4 min read·726 words

Mocks in Swift via Protocols

<p>How to use protocols to mock types in Swift to test your iOS apps without relying on Objective-C runtime hacks and swizzles.</p>

Oct 1·5 min read·880 words

WWDC 2014 Predictions

<p>Boy, was I wrong... maybe?</p>

May 28·1 min read·193 words

Get Off My Lawn

<p>Respect each other's opinions in the iOS community and let's focus on creating cool things with the tools we like.</p>

Feb 13·3 min read·431 words

How We Learn

<p>Find success by seeking to learn more, shaping one's own personal opinion, and changing one's mind.</p>

Feb 4·4 min read·626 words