Monday Links 16

Stuart Langridge: Don’t read off the screen

Nobody knows if you make a mistake. Carry on, and correct it when you can. But keep things simple. Someone drowning in information finds it hard to listen.

Record your practices and watch yourself back. It can be a humbling experience, but you are your own best teacher, if you’re willing to listen.

Some people script their talks, some people don’t. Whether you prefer bullet points or a soliloquy is up to you. Whichever you choose, remember: don’t just read out your notes. Your talk is a performance, not a recital.

Oliver Burkeman: Everyone is (still) winging it

That’s why I don’t much like the term “imposter syndrome” to describe what’s going on here. It makes it sound like an acute and debilitating psychological disorder, and maybe sometimes it is. But far more widespread, I think, is a sort of barely conscious background assumption that other people must have a better idea of what they’re doing than we do. This sort of assumption isn’t debilitating. But it does make life subtly worse. It leads to the belief that you need to go especially hard on yourself, in order to hold your own among your peers; and it makes you hold back from doing things that might add meaning to your life, on the grounds that you’re still waiting for a feeling of full authority to arrive.

How to crash an airplane, a talk by Nickolas Means

Nick Mean’s talks often discuss routine situations going disasterously wrong. He picks out lessons from those sitations and shows how they could apply to software teams and the processes around building and running software.

How to crash an airplane is a classic:

On July 19, 1989, United Airlines Flight 232 was en route to Chicago when a mechanical failure caused the plane to become all but uncontrollable. In this unsurvivable situation, the flight crew saved more than half of those onboard. How did they do it?

Monday Links 15

Empowering your teams to tackle legacy code: Five episodes from LeadDev about ways of thinking about and techniques for tackling legacy code. Spoiler alert: frame it as skill development, start it as building confidence, keep it going by ensuring that the old code works with the cool new tools.

When you choose KRs poorly, but achieve really impressive results (via SWLW)

GitHub Copilot Investigation: Folks are worried that open source projects may be harmed by the likes of Copilot, and that it may actually start to produce bad code. So they are investigating whether a lawsuit around the legality of how the model is created is in order.

The legal­ity of Copi­lot must be tested before the dam­age to open source becomes irrepara­ble. That’s why I’m suit­ing up.

Monday Links 14

In 2013 Mike Hoye wrote a blog post about why most programming languages index arrays starting with 0

I’ve spent far more effort than is sensible this month crawling down a rabbit hole disguised, as they often are, as a straightforward question: why do programmers start counting at zero?

So: the technical reason we started counting arrays at zero is that in the mid-1960’s, you could shave a few cycles off of a program’s compilation time on an IBM 7094. The social reason is that we had to save every cycle we could, because if the job didn’t finish fast it might not finish at all and you never know when you’re getting bumped off the hardware because the President of IBM just called and fuck your thesis, it’s yacht-racing time.

Recently, Hillel Wayne found fault with Hoye’s post, and argued that there might be valid technical reasons as well as the reason Hoye states.

This week Hoye published another post, somewhat rebutting the rebuttal while celebrating contrarianism:

I recognize enough contrarian in myself that I guess I’m obligated to be charitable with anyone pointing their contrarian at me. And charitable can be a job, for sure, but fair’s fair and a job’s a job. But there’s one larger point here, the real point that I wanted to make then and want to make now, that I’m not going to let go:

“Hoye’s core point is it doesn’t matter what the practical benefits are, the historical context is that barely anybody used 0-indexing before BCPL came along and ruined everything. […] I may think that counting 0 as a natural number makes a lot of math more elegant, but clearly I’m just too dumb to rise to the level of wrong.”

My point is not, my point has never been, that “zero indexing is bad”. My point is “believing and repeating uninterrogated stories because they sounded plausible to you” is bad, and I’m saying that because it’s really, really bad.