Programming Leftovers
-
Facundo Olano ☛ Software Design is Knowledge Building
This is the story of system SVC from company ORG. It’s a true story, but I’ve smoothed out the details: by making it generic, I hope that it will be more familiar.
-
Undeadly ☛ Game of Trees 0.107 released
Version 0.107 of Game of Trees has been released (and the port updated): [...]
-
Tim Bray ☛ QRS: Dot-matching Redux
Recently I posted Matching “.” in UTF-8, in which I claimed that you could match the regular-expression “.” in a UTF-8 stream with either four or five states in a byte-driven finite automaton, depending how you define the problem. That statement was arguably wrong, and you might need three more states, for a total of eight. But you can make a case that really, only four should be needed, and another case calling for quite a few more. Because that phrase “depending how you define the problem” is doing a lot of work.
-
Daniel Lemire ☛ Efficient In-Place UTF-16 Unicode Correction with ARM NEON
The replace_invalid_utf16 function scans through a buffer of char16_t characters, ensuring that any high surrogate is followed by a low surrogate to form a valid pair; if not, or if a low surrogate appears without a preceding high surrogate, it replaces the invalid character with the Unicode replacement character (U+FFFD), effectively correcting the UTF-16 encoding in place. The function should be reasonable efficient.
-
Ruben Schade ☛ 25 years on from Y2K
First, you had IT professionals warning that the issue had to be taken seriously. The public—and most critically, the bean counters—weren’t going to care that years were stored as two integers to save processing, memory, and storage capacity. People had to be made aware of the potential for issues so fixes and testing could be prioritised and performed. And even then, the potential for undefined behavior when millions of disparate systems flipped over and interacted meant we couldn’t be sure we were out of the woods until the clocks rolled over.
-
Stefano Marinelli ☛ I Almost Died for a Full Sentry Database
This went on for a week. Then two. Then three. The dev, at this point, sent an email “boasting” about how his idea of moving to the cloud had been successful for service continuity. After a month, the bill arrived. No one had realized what was happening. They never told me the amount, but I know a good portion of the remaining budget for the project’s development and promotion went up in smoke. And when an investor found out what had happened and how all that money had been burned, they pulled out. I can only imagine: if in the early days they filled 2 TB in just a few hours, with traffic increasing daily over a month…
In the end, the project failed, and this event, while not the sole cause, significantly undermined the credibility of how the money was managed.
Basically, I almost died for nothing. :-D