On Dying

No one is finally dead until the ripples they cause in the world die away, until the clock wound up winds down, until the wine she made has finished its ferment, until the crop they planted is harvested. The span of someone’s life is only the core of their actual existence.

― Terry Pratchett, Reaper Man


Why does Brian McCullough say “Nothing for you today, talk to you tomorrow” at the end of the podcast Techmeme ride home?

I’m a fairly recent listener of the Techmeme Ride Home podcast and I always wondered why some times the episodes would end with “Nothing for you today, talk to you tomorrow” and today’s episode finally explained it.

I often have something to say outside the regular confines of the regular show, and when I don’t I say “Nothing for you today, talk to you tomorrow”



The Uninvited Guest #8: Clockwise 542

Clockwise #542

The Uninvited Guest is my way of participating on the Clockwise podcast.

Previous one can be found here.

And here are my answers to Clockwise


Dan’s question

A HomePod With a Screen, How Would You Used It?

My brother has a nest hub at his place and has his family pictures rotating throughout the day. I would love to have this.

I really hope that Apple makes this a mode that iPads can go into instead of a fixed screen that has only one use, the idea of having out seldom used iPads docked in the kitchen but still be able to take them around the house would be a nicer value for me. Specially given how single use iPadOS is, if this is going to be a unmovable screen then the multiuser support needs to improve.


Rosemary‘s question

Apple’s new Sports App

I don’t follow that many sports so this app wasn’t for me. To be better informed I downloaded it as I wrote this answer and the first screen asks you to choose your favourite leagues and teams, and that’s the extent of my interactions.

Wake me up when it supports Formula 1.


James’s question

VisionPro: How do You Feel About It?

It’s still not available in Canada so I haven’t been able to try it. I’ll probably go to do a demo at an App Store but I don’t think I will buy one even if it blows my mind.


Mathew‘s Question

What are We Using our IPhone Action Button?

See my answer above, we are not an upgrade every year household. I’m not due for an update for a couple of years.

Hearing the answers I would probably set up a shortcut. The rumor of a separate capture button to launch the camera does sound great and I hope it’s true.


Bonus Question

What Kind of Tree Would You Plant?

This year I will be planting multiple trees on our new backyard! The current plan is:

  1. 2x Swedish columnar aspen
  2. 1 Cherry tree (it could also be a Mountain Ash but I like the idea of fresh cherries)
  3. 1 Maple

2023 Six Colors Apple report card

sixcolors.com

It’s time for our annual look back on Apple’s performance during the past year, as seen through the eyes of writers, editors, developers, podcasters, and other people who spend an awful lot of time thinking about Apple.

Interesting numbers but nothing too surprising, it’s a long read but very well worth your click.

The most salient categories for me are the iPad, wearables, and HomeKit.

iPad

If the rumours are true, iPad will have a response to the stagnation on the hardware side soon. Although the feeling that the hardware is ahead of the software is still very strong, iPadOS is still the problem)

Wearables

On the wearables side, the consensus seems to be that aside form AirPods Max the line is strong, and the watches are a bit stable but nothing too exciting after the Apple Watch Ultra.

HomeKit

The criticisms of Apple home is also well deserved. We’ve had month long periods where only I could access all the smart devices in the home app, and when they finally came back old Belkin wemo plugs didn’t really work reliably anymore. We switched to Eve energy plugs with Matter and they have been rock solid, which makes me wonder if the Matter unreliability is more vendor specific.

We also have had a lot of trouble with paired HomePod minis going out of sync and becoming completely unresponsive, to the point that I’ve given up on making them work as a stereo pair.


The SwiftUI Field Guide

swiftuifieldguide.com

We built this website to visually explain how the SwiftUI layout system works, and we hope you find it useful.

This looks really great, instantly bookmarked as I plan to get back into app development.


The Uninvited Guest #7: Clockwise 541

Clockwise #541

The Uninvited Guest is my way of participating on the Clockwise podcast.

Previous one can be found here.

And here are my answers to Clockwise 541.


Dan’s question

How Many Peripheral are Connected to Your Computer?

I have 2 computers on my desk (work and personal) so my computers are not officially connected to a lot of peripherals, only a KVM switch that allows me to quickly switch between the two. The KVM is connected to 2 monitors and one of my monitors has a XLR interface for my microphone and webcam.

So more than quantity of peripherals I had length!


Lex‘s question

What is Your Tech Setup for Watching TV or Movies? and What do You do While Watching?

In the before times, we would sit in our couch and watch on our LC 83" TV. After baby was born we just use our phones.

I tend not to look at my phone while watching but if the show or movie is not capturing my attention I will definitely drift into social media.


Mikah 's question

Which do You Prefer, Voice Dictation or Hand Typing Messages?

I don’t do voice dictation at all. I do use swiping instead very often when one of my hands is full.


Kathy‘s Question

Apple Vision Pro in the Wild? Have You Been or Seen Someone Using It in Public?

No. Canada still doesn’t have it crying emoji


Bonus Question

Do You Have any Valentines Traditions?

Not really, we don’t usually celebrate it. From time to time one of us will do a gesture. Like this year, my newborn baby somehow developed the skills for crafting and gave me a card with photos and a beautiful message.


The Uninvited Guest #6: Clockwise 540

Clockwise #540

The Uninvited Guest is my way of participating on the Clockwise podcast.

Previous one can be found here

And here are my answers to Clockwise 540


Mikah’s question

Favourite Mac/PC App

I’ve been using Obsidian a lot lately. Most of the articles I write for this site start there. Obsidian is super powerful and I’m barely scratching the surface but it’s delightful to use.


Aleen‘s question

Favourite Apps for Taking, Editing, and Sharing Photos on Mobile

I don’t use any alternative camera app, I edit everything in iOS photos, and for sharing it’s a mix of personal social media apps: Telegram and messages.


Dan’s question

Vision Pro Personas: Are They Ever Going to be Acceptable?

People get used to things very quickly, special when there’s no alternative (I’m guessing that’s why Apple didn’t make Memoji available as avatars).

Apple is going to improve them and people will get used to it. These trends will meet in the middle somewhere.


Ant‘s Question

Bluesky: Does It Even Have a Chance?

Not with the current implementation. The new move to decentralized social media is their only hope, if they can move to join the fediverse maybe they can continue on.

They used the private beta model to make it desirable, but Threads launch just took all that attention away.


Bonus Question

Favourite Board Game or Card Game?

We have been enjoying Azul and Calico a lot lately.



Code Reviews Are Not Made of Rubber

As a software engineering manager I believe that my main goal is to ship code. Shipped code falls into 2 categories: features and improvements.

When talking to The Business™ it’s easy to believe that they only care about the first type. And in a sense it is the most important type, how else will they be able to attract more leads, close those sales.

The faster you get to shipping, the better.

Often this pressure is not active, nor apparent. More like a cloud hanging on top of your development team’s operations, gently nudging you to finish what was started quickly before it develops into a storm[1].

You’ll be tempted and encouraged to cut some corners. One of those corners being code reviews.

Code reviews at their core, are the process of letting a peer look at the changes you made to the code. Usually with the intention of making sure that it does what it’s supposed to do. Under that light, the review aims to be a sort of quality assurance work.

So why not let the QA team just test the feature instead?

First of all it’s of course more than just a test of the work from the functional point of view. In a code review the reviewer will make sure the the implementation is sane but it also enables so much more: builds shared knowledge and ownership of the codebase, it establishes trust within the team, and reinforces habits that produce high quality code.

Shared knowledge

When a feature requires implementing new technologies or techniques, it’s often impossible to get the entire teams to be part of building the solution. Code review is a way to ensure other team members are aware of these changes, this avoids knowledge silos.

Another type of knowledge that’s transferred in an code review is when a senior developer reviews a junior’s work. In this case the junior developer can learn how to write better code and often will be made seated of edge cases and scenarios they didn’t think of.

This builds your team into a more resilient group that can afford to have members take vacations without completely grinding to a halt.

Establishes Trust Within the Team

Code reviews sound like nitpicking your team mate’s work, but by having well established rules on politeness and disagreement resolution heuristics the team will begin to better know each other’s strengths and weaknesses. Refocusing the reviews as a way to build on the strengths and reinforcing the weaknesses the team starts to develop an internal trust that’s really important.

Reinforces Habits That Produce High Quality Code

Nobody likes to be nagged. When a team starts doing code reviews it is highly likely that each team member will start getting the same comments about their code on each review. That’s because their weaknesses are being pointed out, but that repetition with time helps the developer to make the necessary adjustments to stop getting those types of comments.

In the real world, where legacy code and tech debt exist, code quality can feel a bit like polishing a turd. But the alternative of a complete rewrite is often impossible. So slow and methodical progress towards a shinier future is the best compromise.

Establishing the values that define high quality code within the team is the first step, focus on readability, architecture/structure, logic, performance, and security. Using code reviews to reinforce these values will slowly but surely make the software easier to understand and maintain, which means development will become more efficient and will reduce rework.


So if you are to adopt code reviews, don’t do it halfheartedly.

Establish a process that’s easy to follow, focus the team on the values that you care about the most. Avoid any focusing on persnickety things like l tabs vs spaces, letter casing, preferred syntax style, etc. Offload those to automated tools.

Adopting code reviews but treating them like a rubber stamp is the worst option. You assume the delays and distractions that come from context switching without any of the benefits.

Hopefully your The Business™ understands why it’s important.[2]

Here’s a funny image of code being rubber stamped because why not?


  1. Not the best metaphor I know. In my mind I have this hike we did once, 15 km (8.5mile) total with 525m (1,722 ft) elevation gain, not too bad on paper until you find out that the first 4km are mostly flat so you do that elevation in 3.5km and your thighs are burning. All that to be rewarded with one of the ugliest lakes ever. And then on the way back a storm forms and you worry of lightning while hiking down on a very steep, scree-filled, muddy downhill path… But I digress…

  2. Yes, this is that cloud I spoke of. This is where the task of convincing the business that the code quality improvements, and more resilient team are valuable investments that compound over time, just like technical debt that is allowed in by not adopting code review them would. Maybe I’ll write about this another time.