Sorry About Computer

They were supposed to make things easier

CONDUCTOR: we’re stopping the train so we can reboot the engine computer

— bletchley punk (@alicegoldfuss) December 14, 2018

If you told me that setting a sprite’s color in Unity couldn’t happen off the main thread, I would already be angry at you, but nevertheless I was not emotionally prepared to find out the reason why

— Christine Love (@christinelove) January 22, 2019

Valid C, invalid C++:
for (int i = 0; ;) {
int i = 1;
return i;

Valid C and C++:
for (int i = 0; ;) {{
int i = 1;
return i;

— Stephen Checkoway (@stevecheckoway) January 27, 2019


to increment some counter on the page,

  node.innerText += 1

doesn't work (0 → 01 → 011 → ⋯), but

  node.innerText -= -1

works fine (0 → 1 → 2 → ⋯)

— Lynn (@chordbug) February 5, 2019

"Ⱥ" and "Ⱦ" are Unicode characters, which increase in length (from 2 to 3 bytes) when lowercased. Nasty.

Found them from the "Big List of Naughty Strings" - list of strings which have a high probability of causing issues when used as user-input data.

— Mikko Hypponen (@mikko) November 5, 2018

This is hell

— BooDoo (@BooDooPerson) November 5, 2018

them: is 10 the highest CVE score you can have?
me: ?
them: a website has unauthenticated, remote access via a single get request
me: seems like a 10.
them: which returns select * on a quarter million unencrypted credit card #'s.
me: okay, maybe 11.

— Kenn White (@kennwhite) September 25, 2018

Stories from Antivirus land: clamav uses libmspack, libmspack had vuln in 2012, libmspack fixed it+adds regression test, clamav detects regression test as malware, libmspack can't be distributed any more because webhost of libmspack uses clamv...

— hanno (@hanno) August 9, 2018

Be careful when reversing #unicode strings. You may be surprised…

>>> s = "Welcome in 🇬🇧”
>>> s[::-1]
'🇧🇬 ni emocleW'

(thanks @piskvor for the inspiration!)

— Daily Python Tip (@python_tip) August 6, 2018

ask me how my day is going

— the computational metaphor (@ztellman) August 11, 2018

I thought this was a joke.

It wasn't a joke.

— Hector Martin (@marcan42) June 19, 2018

how and why would you even build a system that behaved like this

— Jeff Facebook (@vogon) June 19, 2018

Javascript and the blockchain: The gift that keeps on giving

You keep using the word 'fsync', I do not think it means what you think it means... If you manage data on Linux, you don't want to miss this popcorn worthy debugging on the #Postgres hackers list:

— xzilla (@robtreat2) April 2, 2018

Do I even want to know why Debian has a security update for beep(1) today?

— Andreⓐ (@puellavulnerata) April 3, 2018

Load-bearing optimization, n.

A performance-related change (for example adding a cache) that accidentally becomes required for correctness

— David Smith (@Catfish_Man) May 24, 2016

Tonight I was using my iPhone to airplay a March Madness game to our Apple TV. When I misplaced my phone, I used my Apple Watch to ping it. The ping noise played through the Apple TV… Thanks a lot 🙄

"Hey Alex why are you so hard on American railways?"

— Alex Forrest 🚉 (@380kmh) March 21, 2018

*Halved* render time with @appleseedhq on a particular scene using OSL (Windows, VS 2015, exception handling enabled) by replacing `float4() {}` by C++11's `float4() = default` in OIIO. The former disabled __forceinline, among other things. Details:

— François Beaune (@franzbeaune) March 16, 2018

The long tail of fixing Meltdown and Spectre

It's just a cube, how hard could it be
A texture mapped cube, except the textures are all wrong