humancode.us

Do not overwork yourself

September 9, 2023

Workers: do not overwork yourself to avoid getting laid off.

  • You’re damaging your life and health.
  • Your employer doesn’t actually notice (no, really, they don’t).
  • Your behavior enables future mismanagement of resources.
  • When layoffs come, you’re going to get laid off anyway.

Remember that a company’s job is to extract maximum work from you for minimum pay, so your job is to extract maximum pay for minimum work. Somewhere in the middle, both parties find an equilibrium that they agree on. Do not voluntarily modify your side of the bargain to your detriment.

More thoughts on remote work

August 28, 2023

What a great illustration of the perversion of capitalism: someone who owns two restaurants in downtown Minneapolis is asking Target to force thousands of employees to spend literal pieces of their lifespan every day (and polluting and adding to traffic and wearing down/depreciating their cars in the process) to return to office so that their restaurant business model continues to be profitable.

The remote work revolution is likely unstoppable: thanks to three years of lockdowns, workers now know that rote commuting is a waste of time. Flexible and remote work allows more work-life balance and costs everyone less to produce the same output.

The forces against remote work are almost entirely reactionary: a desire to return to the Old Ways, to Manage By Walking Around, to go back to the Old Business Models, to save Commercial Real Estate; in other words, to save old capital.

Read more…

Exposing Swift implementations to Objective-C

August 9, 2023

In this post I describe a recipe for exposing symbols implemented in Swift to Objective-C through a header file. The symbols supported are:

  • Functions
  • Classes
  • Categories
  • Protocols
  • Enumerations

If you want to go straight to code you can use, check out my github project.

Read more…

How to never miss a shift when driving a manual car

July 14, 2023

Car Nerd Time!

If you drive a manual transmission car you owe it to yourself to learn the “open palm” technique to eliminate missed shifts, especially during high-performance track driving.

The secret to never missing a shift is to not grip the shifter. If you do, bumps and jostles will easily shift the lever into the wrong position. Keep your palm open and relaxed, and be sure to apply forces only in the directions that result in a proper shift.

The open palm technique involves positioning your hand in various orientations and contacting the shifter only in certain locations that always result in the correct gear selection. After some practice, this will become so natural and subtle that you’d be able to do it without a thought.

Here’s what I mean. For these examples, I assume you’re driving a left-hand-drive car (e.g. US) so you’re using your right hand to shift. I also assume a standard H pattern, not a dogleg.

Read more…

Believe in magic while you’re learning

July 9, 2023

I find that a small amount of willful belief in magic goes a long way when learning something new.

As an experienced coder, I fall into the trap of prematurely analyzing how something works and constantly peeking under the hood while learning a new library, language, or abstraction. While the desire to disassemble toys to find out how they work is great, it often gets in the way of education.

I often have to force myself to accept magical behavior in order to keep progressing in my studies. Don’t look behind the curtain. Don’t worry too much about how that animation works, or how that sound is generated, or how that data got communicated. That level of curiosity is for later. For now, just accept things at face value—as simply magical—and continue your learning journey.

Remember that your goal is to be a knowledgeable novice at the end of the learning process. Don’t try to be an expert right away.

Don’t let experience get in the way of wonder.