Music · Songs

Point West (instrumental demo)

I had been playing around for a while with this bit on my acoustic guitar. It came to me naturally while I was strumming. I liked the way the chords and the timing felt.

The song reminded me of the ocean, so I started calling it “Beyond the Sea”. Then after a stay at Pointe West Resort on Galveston Island, I renamed it to “Pointe West” because the vibe matched. The guitar was probably inspired by Gordon Calcotte’s version of Galveston in the first place.

Erin and I practiced this on drums (Erin) and guitar (me) for a few hours at her house, although I can’t find a recording that session here.

I ended up recording a very Gordon Calcotte, beachy take on the song using GarageBand on my iPad. It’s just the first verse and chorus, and no vocals. But it’s basically how I wanted the song to sound and proof that I could make it happen.

Software Dev

Using Type Erasure to Build a Dependency Injecting Routing Framework in Swift

This post is just as weird and abstract as it sounds. 🀯 On first pass, I don’t get it. But I’m saving it here because I always like anything that promises easier dependency injection.

We’ll take an exciting look at how the treatment of methods/closures as properties can be used in this context to bypass one of the Swift Compiler’s most annoying compilation errors.

πŸ‘‰ Using Type Erasure to Build a Dependency Injecting Routing Framework in Swift

Type Erasure is the process of abstracting constrained, generic types inside an unconstrained non-generic type that can be passed around freely

Via iOS Dev Weekly.

Software Dev

Clean Code is Not the Goal πŸ€·πŸ»β€β™‚️

I want to thank this article for having the guts to say that basic working code is okay.

πŸ‘‰ Goodbye, Clean Code

As software developers, we all aim to write amazing, beautiful code. It’s part of what motivates us. But remember, the real goal is to ship something that people can use. And writing beautiful code isn’t necessarily what makes that happen (example).

Don’t be a clean code zealot. Clean code is not a goal.

This hit home for me after years working with an incredibly tedious and impractical code review process at a previous company. The reviews went way beyond sussing out bugs and tech debt and into opinions about the “right” approach for days on end. The team was unproductive and unhappy, and we still shipped plenty of bugs.

Sure, aim for great code. But there is a practical point where you need to let go and ship something that works.

Let clean code guide you. Then let it go.

As an engineer, yes, be elegant. But more than that, be practical. Voltaire put it elegantly πŸ˜† way back in the day.

Perfect is the enemy of good.

Voltaire

Via iOS Dev Weekly.