From Schneier on Security
Artificial intelligence (AI) has been billed as the next frontier of humanity: the newly available expanse whose exploration
…
B. Schneier| February 29, 2024
On the Internet, we often use 32-bit addresses which we serialize as strings such as 192.128.0.1. The string corresponds to the Integer address 0xc0800001 (3229614081...Daniel Lemire From Daniel Lemire's Blog | February 1, 2023 at 03:57 PM
You sometimes want to add a string to an existing data structure. For example, the C++17 template ‘std::optional’ may be used to represent a possible string value...Daniel Lemire From Daniel Lemire's Blog | January 30, 2023 at 12:37 PM
Originally, the domain part of a web address was all ASCII (so no accents, no emojis, no Chinese characters). This was extended a long time ago thanks to something...Daniel Lemire From Daniel Lemire's Blog | January 23, 2023 at 06:22 PM
The year 2022 is over. As with every year that passes, we have made some scientific progress. I found the following achievements interesting: Diluting the blood...Daniel Lemire From Daniel Lemire's Blog | January 15, 2023 at 12:26 PM
For under $600, one can buy a 20-terabyte disk on Amazon. Unless you work professionally in multimedia, it is more storage than you need. However, having much storage...Daniel Lemire From Daniel Lemire's Blog | January 15, 2023 at 12:17 PM
We often have to represent in software a value that might be missing. Different programming languages have abstraction for this purpose. A recent version of C++...Daniel Lemire From Daniel Lemire's Blog | January 12, 2023 at 05:02 PM
Most systems today rely on Unicode strings. However, we have two popular Unicode formats: UTF-8 and UTF-16. We often need to convert from one format to the other...Daniel Lemire From Daniel Lemire's Blog | January 5, 2023 at 04:53 PM
Most domain names are encoded using ASCII (e.g., yahoo.com). However, you can register domain names with almost any character in them. For example, there is a web...Daniel Lemire From Daniel Lemire's Blog | January 3, 2023 at 09:09 PM
Suppose that I give you a set of reference strings (“ftp”, “file”, “http”, “https”, “ws”, “wss”). Given a new string, you want to quickly tell whether it is part...Daniel Lemire From Daniel Lemire's Blog | December 29, 2022 at 10:19 PM
One of Elon Musk’s ventures, OpenAI, made public a new tool called ChatGPT. It is widely regarding as a practical breakthrough in artificial intelligence. Given...Daniel Lemire From Daniel Lemire's Blog | December 25, 2022 at 05:12 PM
Given binary data, we often need to encode it as ASCII text. Email and much of the web effectively works in this manner. A popular format for this purpose is base64...Daniel Lemire From Daniel Lemire's Blog | December 23, 2022 at 02:41 PM
storing 1 GiB/month on the cloud 0.02$US web site of my twitter profile (@lemire), HTML alone 296 KiB web site of my twitter profile (@lemire), all data 3.9 MiB...Daniel Lemire From Daniel Lemire's Blog | December 21, 2022 at 03:10 PM
Suppose you would like to check that a string is not present in a large document. In C, you might do the following using the standard function strstr: bool is_present...Daniel Lemire From Daniel Lemire's Blog | December 15, 2022 at 05:16 PM
In an earlier blog post, I reported that the memory usage of a small byte array in Java (e.g., an array containing 4 bytes) was about 24 bytes. In other words:Continue...Daniel Lemire From Daniel Lemire's Blog | December 12, 2022 at 09:59 AM
As we focus on some types of unfortunate discrimination (race, gender), we may become blind to other types of discrimination. For example, tend to discrimate against...Daniel Lemire From Daniel Lemire's Blog | December 11, 2022 at 02:23 PM
Let us say that I ask you to find the number I am thinking about between -1000 and 1000, by repeatedly guessing a number. With each guess, I tell you whether your...Daniel Lemire From Daniel Lemire's Blog | December 6, 2022 at 06:58 PM
Modern processors have powerful vector instructions which allow you to load several values at once, and operate (in one instruction) on all these values. Similarly...Daniel Lemire From Daniel Lemire's Blog | December 6, 2022 at 11:05 AM
Amazon has some neat ARM-based systems based on Amazon’s own chips (Graviton). You can access them through Amazon’s web services (AWS). These processors have advanced...Daniel Lemire From Daniel Lemire's Blog | November 29, 2022 at 11:47 AM
I have done a lot of work that involves compressing and uncompressing data. Most often, I work on data that has specific characteristics, e.g., sorted integers....Daniel Lemire From Daniel Lemire's Blog | November 28, 2022 at 12:18 PM
Molière’s famous play, Tartuffe, the main characters is outwardly pious but fundamentally deceitful. Are people who insist on broadcasting their high virtue better...Daniel Lemire From Daniel Lemire's Blog | November 26, 2022 at 04:58 PM