What's in a good error message?
As software developers, we’ve all come across those annoying, not-so-useful error messages when using some library or framework: "Couldn’t parse config file", "Lacking permission for this operation", …
As software developers, we’ve all come across those annoying, not-so-useful error messages when using some library or framework: "Couldn’t parse config file", "Lacking permission for this operation", …
Is exFAT as fragile as some say?
Just last week, I was guest lecturing to a class of physical therapy students at the University of Missouri. I asked a simple question, “How many people here think we should never have our knees go…
Many internet companies use A/B testing to evaluate the performance of website changes they want to make. A typical metric in such scenarios is the conversion rate (CVR) of a user, i.e. the probability that a user converts (e.g. makes a purchase) on the website. A typical A/B test setup in such a situation would…
Let's take a look at the pros and cons of Delayed Job and Sidekiq, two major job processing systems for Rails apps.
Removing an XSLT parameter during processing could have lead to an exploitable use-after-free. We have had reports of attacks in the wild abusing this flaw.
In most systems, integers are stored using a fixed binary representation. It is common to store integers using 32-bit or 64-bit words. You sometimes need to convert it to a string. For example, the integer 12345 might need to be converted to the five characters '12345'. In an earlier blog post, I presented the simpler…
Product updates, comparisons, and deep dives on database change management, access control, and compliance from the Bytebase engineering team.
January 16, 2022 Latest Article: The Importance of Price Signals This newsletter issue takes a look at the self-reinforcing cycle that stuffed excess global capital into the US stock market over the past 40 years (and especially the past decade) like a sponge soaking up water, along with an examination of catalysts…
Audio Link With the arrival of summer weather in many parts of the U.S., it’s time to think again about various outdoor activities. Wat...
Hot takes and cold truths on software, startups, and the lies we tell ourselves.
New research within the HYBRIT project shows superior results on the properties and quality of the hydrogen direct reduced sponge iron compared to the fossil-based process.
Why is it so much better to self-host your static assets?
In a paper published in the Proceedings of the National Academy of Sciences, a team led by Virginia Tech researchers presents a new method for recycling the material that also offers economic viability.
An introduction to QUIC and its potential for censorship resistance, as well as a survey of current QUIC blocking in China, India, Russia and Uganda.
Understand Chrome's deprecation of U2F API and its effects, while exploring how to migrate to the WebAuthn API for continued YubiKey support.
In other words, the $k$-th element of the output sequence is the sum of the first $k$ elements of the input sequence.
Tiny startups are not Google-in-miniature-form
Teletypes may have killed a lot of forests by emitting every line to hard copy instead of a screen, but there's something to be said for t...
The basics: where to learn, what lock picks and practice locks to buy, where to get them, and resources, including how to find local regulations.
In this post we take a deeper look into one of the most popular design patterns in Rust web frameworks, the magical handler function.
Despite the fact that it is not a 'real' vulnerability, escaping privileged Docker containers is nevertheless pretty funny. And because there will always be people who will come up with reasons or excuses to run a privileged container (even though you really shouldn't), this could really be handy at some point in the…
A while ago I was working on a Common Lisp library that makes use of the Metaobject Protocol . I ran into a few edge cases around dependencies between classes and it took a while for me to figure out how to solve them, so I wanted to write down what I learned in case anyone else might find it useful. This post is an…
If at first you don’t succeed, goes the old saying, try, try again. Good advice, up to a point. But let me offer a modification: even when you do succeed, try, try again. Tempting as it is to decla…
Everybody knows a DNS response needs to fit into a 512 byte UDP packet, right? But suppose it doesn't fit...
New SBCL versions are usually released at the end of each month: check the Sourceforge File List to see the current version. The new features of all SBCL releases are listed below.
Using CPU % or Energy values in Activity Monitor appears to show that running code on E cores is less efficient than on P cores. Don’t believe a word of it.
How does set theory help to understand type assignability and resolution in TypeScript?
Levy shares how she wrote the five-page document that underpins much of early-stage venture capital today.