David Chisnall (*Now with 50% more sarcasm!*)

@david_chisnall@infosec.exchange
2.6K Followers
83 Following
6.6K Posts

I am Director of System Architecture at SCI Semiconductor and a Visiting Researcher at the University of Cambridge Computer Laboratory. I remain actively involved in the #CHERI project, where I led the early language / compiler strand of the research, and am the maintainer of the #CHERIoT Platform.

I was on the FreeBSD Core Team for two terms, have been an LLVM developer since 2008, am the author of the GNUstep Objective-C runtime (libobjc2 and associated clang support), and am responsible for libcxxrt and the BSD-licensed device tree compiler.

Opinions expressed by me are not necessarily opinions. In all probability they are random ramblings and should be ignored. Failure to ignore may result in severe boredom and / or confusion. Shake well before opening. Keep refrigerated.

Warning: May contain greater than the recommended daily allowance of sarcasm.

No license, implied or explicit, is granted to use any of my posts for training AI models.

I can't believe we're still having to say this in 2025, but would people *please* scroll back to the top of a website when they're finished reading, so it's ready for the next person. We've even got buttons at the bottom to do it all in one go, it's not 1994 any more.

I always hated being told to show my working as a child, but it took me until recently to understand why it annoyed me so much.

Some thing in a sequence of reasoning steps are obvious. A small number of them are obvious to everyone. Some are obvious to me. A (probably overlapping) set are obvious to you but, typically, they are not the same set.

Over the last few years, I've had a lot of conversations with really smart people where they got stuck on something I consider to be so obvious it doesn't need explaining, and then they skip over the next three reasoning steps that I thought needed very careful explanation because they consider those to be obvious.

A huge part of effective communication (especially in teams with diverse expertise) revolves around understanding which steps in your working you need to show. Showing all of them will just bore your reader. Showing the ones that you think need to be shown will work only if your reader has the same background as you.

If you're wondering why you are separating the lids from yoghurt cups to recycle them properly, while in a parallel universe nearly 100 private jets arrive for the Bezos wedding, here's why:

Because you are better person than each and every one of these massive cunts.

Go home, Clang, you are drunk!

#LLVM #Clang #cplusplus

Hats off to IBM for their sterling efforts to convince people that the solution to European digital sovereignty is to buy from IBM instead of Microsoft.
Exciting, the FreeBSD platform extensions to the OCI spec PR was approved! Looking forward to seeing FreeBSD an officially supported platform for OCI containers!
Add FreeBSD as a platform by dfr · Pull Request #1286 · opencontainers/runtime-spec

This uses FreeBSD jails to implement container isolation.

GitHub

# Statement on Online Safety fees and penalties

I have not get read Ofcom's latest #OnlineSafetyAct document in full, but, for people running small online services, there's some good news:

> Subject to the Secretary of State’s approval, for fees-related duties, we have decided to exempt providers of regulated services whose UK referable revenue is less than £10 million.

No notification nor payment.

https://www.ofcom.org.uk/siteassets/resources/documents/consultations/category-1-10-weeks/consultation-online-safety---fees-and-penalties/main-documents/statement-on-online-safety-fees-and-penalties.pdf?v=399290

WG21 SGs are basically nerdsniping as a service.

@david_chisnall @bill88t

https://www.divergent-desktop.org/blog/2020/10/29/improving-x/ I had a 'less neighbourly' one queued up and PoCed ever since, as there is another middle ground to be had. In the spirit of choosing both armies and battles wisely - it's not the fight to fight. "Nie mój cyrk, nie moje małpy"

A Neighbourly Solution to the 'X is Deprecated?!' Conundrum

A Neighbourly Solution to the 'X is Deprecated?!' Conundrum 29 Oct 2020 ...

Hard to find the original, but I love this
#BladeRunner #Gopher #AltaVista
×
It turned out that the computer's START button had a strand of wire that shorted one of its contacts. As a result, it would keep re-starting as long as you held the button, blowing through the HALT or single-step until it crashed. The contacts bounced a bit, causing the random gaps we saw.

With the switch fixed, everything worked. At least until next time...

I worked on this with @CuriousMarc, @tubetime, Wren, Shmuel, and others.

I'll leave you with this documentation of the relevant circuitry with inscrutable IBM symbols.
end/N

@kenshirriff @CuriousMarc @tubetime

A classic case of turn it on, and then turn it on again.

@kenshirriff That wasn't a START button, that was a START MISBEHAVING button. In those days, dedicated hardware was needed to make the computer misbehave as software developers were too highly trained to do it purely in software.

These days we have that in software, especially if it's shipped from Redmond, Washington with the help of a large language model. ;-)

@kenshirriff Ah, I was guessing a failed capacitor in the debouncing circuit.
@TimWardCam It turns out that the debouncing is more complicated than that. The switch is double-pole double-throw, with one contact turning it on and the other turning it off. So you're guaranteed not to bounce. Except if one contact is shorted.
@kenshirriff This sounds similar to a bouncing switch, did those systems back then not have an RC circuit to prevent physical switches from sending multiple signal whent actuated ?
Ken Shirriff (@kenshirriff@oldbytes.space)

@TimWardCam@c.im It turns out that the debouncing is more complicated than that. The switch is double-pole double-throw, with one contact turning it on and the other turning it off. So you're guaranteed not to bounce. Except if one contact is shorted.

OldBytes Space - Mastodon