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
Most software runs on top of databases. These databases are organized logically, with a schema, that is a formal description. You have entities (your user), attributes...Daniel Lemire From Daniel Lemire's Blog | January 8, 2020 at 01:59 PM
I like to end every year with my selection of the most significant science and technology events. In 2019, you could buy a computer from Apple with 1.5 terabytes...Daniel Lemire From Daniel Lemire's Blog | December 30, 2019 at 09:36 AM
The number of research papers with more than 1000 authors is increasingly quickly and reaching many fields. Researchers at Facebook use neural networks to solve...Daniel Lemire From Daniel Lemire's Blog | December 21, 2019 at 10:09 AM
In software, you frequently need to check whether some objects is in a set. For example, you might have a list of forbidden Web addresses. As someone enters a new...Daniel Lemire From Daniel Lemire's Blog | December 19, 2019 at 06:50 PM
Back in 2010, I wrote a post Who is going to need a database engine in 2020? Let me revisit some of my 2010 statements. Apple will sell desktops with 1 TB of RAM...Daniel Lemire From Daniel Lemire's Blog | December 16, 2019 at 03:21 PM
The computation capacity needed by artificial intelligence doubles every 3.4 months. In parallel, we are making fast progress in hardware and software: what took...Daniel Lemire From Daniel Lemire's Blog | December 14, 2019 at 12:52 PM
It is common in software system to map objects to unique identifiers. For example, you might map all web pages on the Internet to a unique identifier. Often, these...Daniel Lemire From Daniel Lemire's Blog | December 12, 2019 at 06:03 PM
Most servers on the Internet run on x64 processors, mostly made by Intel. Meanwhile, most smartphones run ARM processors. From a business perspective, these are...Daniel Lemire From Daniel Lemire's Blog | December 11, 2019 at 05:12 PM
Incredibly, there is a new simpler way to solve the quadratic formula. I used to rely on the completion of the square, but this is better! There is a video report...Daniel Lemire From Daniel Lemire's Blog | December 7, 2019 at 12:49 PM
Intel makes some of the very best processors many can buy. For a long time, its main rival (AMD) failed to compete. However, its latest generation of processors...Daniel Lemire From Daniel Lemire's Blog | December 6, 2019 at 03:11 PM
The performance of a processor is determined by several factors. For example, processors with a higher frequency tend to do more work per unit of time. PhysicsContinue...Daniel Lemire From Daniel Lemire's Blog | December 4, 2019 at 10:41 PM
A recent magazine article presents a theoretical result: Harvey and van der Hoeven have shown that you can multiply two n-bit integers using O(n log n) complexity...Daniel Lemire From Daniel Lemire's Blog | November 26, 2019 at 09:47 AM
When thinking about “parallelism”, most programmers think about having multiple processors. However, even a single core in a modern processor has plenty of parallelism...Daniel Lemire From Daniel Lemire's Blog | November 25, 2019 at 01:05 PM
Many businesses today run “in the cloud”. What this often means is that they have abstracted out the hardware entirely. Large corporations like Amazon, Google,Continue...Daniel Lemire From Daniel Lemire's Blog | November 20, 2019 at 03:24 PM
We have new technology to do genetic engineering on human beings (CRISPR). In a small clinical trial, the researchers tested it on live human subjects and found...Daniel Lemire From Daniel Lemire's Blog | November 16, 2019 at 12:23 PM
Modern processors predict branches (e.g., if-then clauses), often many cycles a ahead of time. When predictions are incorrect, the processor has to start again,...Daniel Lemire From Daniel Lemire's Blog | November 12, 2019 at 03:39 PM
Software is full of “branches”. They often take the form of if-then clauses in code. Modern processors try to predict the result of branches often long before evaluating...Daniel Lemire From Daniel Lemire's Blog | November 5, 2019 at 07:07 PM
When programming, we often want to convert strings (e.g., “1.0e2”) into numbers (e.g., 100). In C++, we have many options. In a previous post, I reported that it...Daniel Lemire From Daniel Lemire's Blog | October 31, 2019 at 03:07 PM
People who were the oldest in the classes in school tend to be more confident and to take more risks. At the University of Montreal, about 32% of the students are...Daniel Lemire From Daniel Lemire's Blog | October 26, 2019 at 10:52 AM
In software, we frequently have to parse numbers from strings. Numbers are typically represented in computers as 32-bit or 64-bit words whereas strings are variable...Daniel Lemire From Daniel Lemire's Blog | October 26, 2019 at 09:55 AM