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
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
You sometimes feel the need to make all of your integers positive, without losing any information. That is, you want to map all of your integers from ‘signed’ integers...Daniel Lemire From Daniel Lemire's Blog | November 25, 2022 at 12:26 PM
Java allows you to create an array just big enough to contain 4 bytes, like so: byte[] array = new byte[4]; How much memory does this array take? If you have answered...Daniel Lemire From Daniel Lemire's Blog | November 22, 2022 at 05:02 PM
A recent C++ standard (C++17) introduced new functions to parse floating-point numbers std::from_chars, from strings (e.g., ASCII text) to binary numbers. How should...Daniel Lemire From Daniel Lemire's Blog | November 17, 2022 at 11:08 AM
For speed, we use finite-precision number types in software. When doing floating-point computations in software, the results are usually not exact. For example,...Daniel Lemire From Daniel Lemire's Blog | November 16, 2022 at 04:21 PM
In C++, we might implement dynamic lists using the vector template. The int-valued constructor of the vector template allocates at least enough memory to storeContinue...Daniel Lemire From Daniel Lemire's Blog | November 10, 2022 at 10:17 AM
When you start a program, it creates a ‘process’ which own its memory. Memory is allocated to a software process in blocks called ‘pages’. These pages might span...Daniel Lemire From Daniel Lemire's Blog | November 8, 2022 at 04:30 PM
I have spent the last few years programming often in C++. The C++ langage is probably one of the hardest to master. I still learn something new every week. Furthermore...Daniel Lemire From Daniel Lemire's Blog | October 26, 2022 at 02:40 PM
Doctors in Israel are toying with polygenic screening: it is a way to make it more likely that your baby will grow up to be healthy. In 2021, 337 million prescriptions...Daniel Lemire From Daniel Lemire's Blog | October 16, 2022 at 02:05 PM
Given an array of N numbers of type double, the standard way to sort it in C is to invoke the qsort function qsort(array, N, sizeof(double), compare); where compare...Daniel Lemire From Daniel Lemire's Blog | October 11, 2022 at 05:04 PM
Computer programming starts with the organization of the data into data structures. In almost all cases, we work with strings or numbers. It is critical to understand...Daniel Lemire From Daniel Lemire's Blog | September 30, 2022 at 05:50 PM
When programming, it can be wasteful to store the same constant data again and again. You use more memory, you access more data. Thankfully, your optimizing compiler...Daniel Lemire From Daniel Lemire's Blog | September 23, 2022 at 06:35 PM
Attractive female students get better grades. They lose this benefit when courses move online. A research paper is much more likely to be highly ranked if the author...Daniel Lemire From Daniel Lemire's Blog | September 16, 2022 at 09:42 PM
When programming, we often have to ‘escape’ strings. A standard way to do it is to insert the backslash character (\) before some characters such as the doubleContinue...Daniel Lemire From Daniel Lemire's Blog | September 14, 2022 at 11:51 AM
A standard dataset in artificial-intelligence research has ten percent of its images mislabeled. Yet state-of-the-art algorithms achieve better-than-90% classification...Daniel Lemire From Daniel Lemire's Blog | September 12, 2022 at 01:56 PM
The C and C++ languages offer little protection against programmer errors. Errors do not always show up where you expect. You can silently corrupt the content of...Daniel Lemire From Daniel Lemire's Blog | August 20, 2022 at 07:14 PM