21 September 2022

44 links · Wednesday

Should you Soft Delete?

Should you delete records from your database or instead use a soft delete? I was recently asked my view on this question by a follower on Twitter. So

The Only Client Experience

The only client experience you can offer clients is the one you have today.  Yesterday’s experience is a memory, and tomorrow is a promise. Delivering iteratively, baby step improvements to your cl…

Spellcheckers exfiltrating PII… not so fast :: Aaron Gustafson

A recent post from the Otto JS research team highlighted how spellcheck services can inadvertently exfiltrate sensitive user data, including passwords, from your site. To be honest, I found the post a tad alarmist and lacking when it came to recommending solid…

The Wage Gap 2

A recent post on Hacker News prompted me to revisit What Does a Wage Gap Look Like? What has changed in the past 5 years? Unfortunately not much. The point today is the same as it was 5 years ago. …

DuckDB: Query SQLite and PostgreSQL Data

DuckDB can query data stored in SQLite and PostgreSQL using SQLiteScanner and PostgresScanner respectively. DuckDB claims reads via DuckDB client will be faster than reads via their respective datastore client. Let’s test it out.

Alfred, or "How to super-charge your Mac and automate routine tasks"

I’ve been reading The Productive Programmer for a book club and it’s put me on a productivity binge. It’s an older book and many of its recommendations no longer apply, so I got excited when, while researching modern alternatives for some of the tools the auth…

Renaming Our Company Revealed a Critical Bug

TL;DR: Our game had a bug that would erase all save files, whenever the file path of the local storage directory contained the character "S". If your Windows username contained an "S", your data would be gone. Luckily renaming our company to on…

Introducing Whisper

We’ve trained and are open-sourcing a neural net called Whisper that approaches human level robustness and accuracy on English speech recognition. Read Paper View Code View Model Card Whisper examples: Reveal Transcript …

Memory is complicated

This is a small story about how memory operates in your .NET application. Well not only .NET but how memory does or does not get allocated. We will see how a 1 Gigabyte big array is only a few megabytes big to some extend. Furthermore I will discuss working se…

Effects of Grill Patterns on Fan Performance/Noise

Fan grills are a component in a computer that is often underestimated in terms of their contribution to both system noise and airflow. Most often, grills are chosen based on aesthetics with only a small thought towards performance. In this article, we will be …

A Note on Various Forking Lemmas

First introduced by Pointcheval and Stern, the forking lemma is commonly used in proofs of security to demonstrate a reduction to breaking some known-to-be-hard mathematical problem. While the original forking lemma is straightforward, keeping up with the numb…

Functions | Cosmopolitan C Library

Cosmopolitan Libc wraps system calls to provide high-level access to binary kernel interfaces. Linux is the gold standard for our suppport. However, if your program works on Linux, then it might not work on other platforms depending on which functions you use.…

Monsters Weekly 259 - Faster Azure DevOps Pipelines

Speed up your Azure DevOps Pipelines! By combining Shallow Fetch and turning off the Sync Tags option you can dramatically decrease the amount of time it takes to fetch your git repo. Documentation:ht

TODO: Post an Article

Yesterday, I briefly mentioned the "TODO" comment as part of the WTF. Anyone who develops software for long enough is going to develop some pet peeves. Lord knows, my feelings on Hungarian Notation are well established. Or ternaries, though honestly, for terna…

Game Essence in Role-Playing Games

What defines an RPG? There are countless different elements that make up role-playing games. In this episode, I'll be taking a look at the risk and reward pr...

Trombone Vocals - I Get By FC

Intro SongArtist - AnthraxSong - Caught in a MoshI've always wanted to make this video, and now that I finally can run Zach's Dazzle on my new computer, that...

DRUIDS by Datadog

DRUIDS is the design system for Datadog. It stands for “Datadog Reusable User Interface Design System.” Is “reusable design system” redundant? Probably. Was “DRUIDS” too good of a name to pass up? Definitely. 😎