humancode.us

Enabling Dagger in IntelliJ

December 1, 2022

I had a hard time getting Dagger to work in IntelliJ, so I’m writing down the steps so you will have an easier time at it.

Create a Java project using the usual settings.

IntelliJ default project creation dialog

Read more…

Section Your Day and Contain Your Failures

November 11, 2022

Split up each day into sections: morning/afternoon/evening; breakfast/lunch/dinner; whatever divisions make the most sense to you and can repeat daily.

Begin each section with a plan of action. Then execute your plan. Stop and review at the at the end of each section. Take a break. Replan when starting the next.

Most importantly, contain failure to a single section. So you failed your morning section; that’s ok, you learned from that. Now, let’s focus on the afternoon section.

Get the hell out of twitter

November 3, 2022

Stylized face of Elon Musk surrounded by distorted Twitter blue birds

Generated image1

If you have a twitter account with a significant amount of data in it, run—don’t walk—away from that platform.

Elon appears to be rapidly turning twitter into an unmitigated disaster, from its social media and technical aspects to its fundamental business model.

Barely a week in, Elon has caused immense internal chaos by immediately firing twitter’s leadership without a transition plan; telling workers to drop everything they’re doing to do an aborted ink-and-paper code review; telling engineers to launch a pointless blue-checkmark subscription service within a week or lose their jobs; telling remote workers to show up in an office or get fired; and threatening to fire half the crew anyway.

  1. Image generated by DiffusionBee. Prompt: “Elon musk destroying the twitter logo magazine illustration” 

Read more…

So long, Apple

October 24, 2022

Dave’s Apple badge held in hand

I suppose all good things must come to an end. This is my last week at Apple. I’m looking forward to working on a new set of challenges in the near future.

My tenure at Apple has lasted 13 years and 8 months—by far the longest I’ve stayed at any one company. During those years I worked on countless iPhones and iPads, created Mobile Device Management and Photo Stream/Shared Photos for iCloud, worked on a ton of plumbing for iOS in UIKit, Mac Catalyst, and the ability to run iOS apps natively on M1 Macs.

I’m thankful for the life-long friendships I’ve made along the way. I’m grateful for the chance to work with brilliant, opinionated, hardworking people, even those with whom I commiserate occasionally on the state of the industry.

I hope I leave with no hard feelings on either side—I certainly leave with gratitude and humility. Life is different after two years of the pandemic, and I think it’s the right time for us to go our separate ways.

I sincerely wish everyone at Apple the best of luck in the days ahead. It’s been fun. Stay in touch.

A License Plate Sent Me Down a Coffee-Flavored Rabbit Hole

September 18, 2022

A few days ago, I came across this license plate. I had no idea what it meant, so I took a snapshot and posted it to a license plate group. In that group, someone suggested that it meant “Cup of Joe”, as in coffee.

A car with the license plate CUPPEPE

But what does Pepe have to do with Joe? After a bit of reading, I discovered that Pepe is a nickname for Josep (José) in Spanish, and Josep is the Spanish version of Joseph, which in turn gives us Joe, the nickname for coffee.

Okay, but how is Pepe a nickname for Josep? Those names don’t sound anything alike! Turns out, in Catholic literature, the name of Saint Joseph, Mary’s husband, was customarily followed by the letters P.P., an abbreviation of the Latin pater putativus, i.e. the “putative father” of Jesus. If you read the letters P.P. out loud in Spanish, it sounds like “pe pe”, and that’s how Pepe became a nickname for Josep.

Read more…