Daniel Lemire's blog

If you are serious about climate change… stop attending conferences?

, 2 min read

We know that spending energy tends to release carbon in the atmosphere. In turn this warms up the Earth in the long run. This change might be detrimental. Being an academic, I am surrounded by people who are seriously concerned by climate change. These same academics are often insistent that we…

Are regular folks doomed?

, 3 min read

I have been telling all my colleagues about Cowen’s latest book: The average is over. I really enjoyed the book. Cowen goes on in his new book to explain that regular folks are doomed. The economy will only need the top 10% of us. The argument is essentially technological. Computers and robots…

Not all citations are equal: identifying key citations automatically

, 3 min read

Suppose that you are researching a given issue. Maybe you have a medical condition or you are looking for the best algorithm to solve your current problem. A good heuristic is to enter reasonable keywords in Google Scholar. This will return a list of related research papers. If you are lucky, you…

Life is short: pick good ideas!

, 1 min read

Some of us work hard to generate new ideas. All of us train on how to implement ideas. But our days look like this: I have 100 ideas. I write down 50 of them. The rest are forgotten. I think seriously 10 ideas. I test informally 5 ideas. I share 3 ideas. I fully implement and test 1 idea. We tend…

Who plays nice? Who plays rough?

, 2 min read

I have a confession to make. I am one of these people who can’t watch a TV show like Game of thrones because there is too much evil. In fact, I generally cringe when reading novels or watching movies where there is too much lying or backstabbing. I simply cannot stand it. In academia, there are…

Infinite storage: we are almost there…

, 3 min read

Seven years ago, I wrote a blog post called What is infinite storage? The blog post was a response to a Physics professor and colleague of mine who objected to my claim that we are soon reaching “infinite storage”. To be precise, my claim is that as far as computers are concerned, we will soon…

People who make you feel stupid…

, 3 min read

In his latest book, David and Goliath, Gladwell points out not everything is as it appears with respect to prestige and strength. For example, when you look at the productivity of economics PhD, the average new doctor from Harvard will be less productive than the best graduate from a much lesser…

We need more than spam filters: we need bona fide assistants!

, 3 min read

I don’t know how other professionals behave, but if you email a researcher at 11pm or even 2am, there is a good chance he will get back to you within two minutes. Many of them are workaholic, at least as far as email goes. According to my Google activity report, not counting spam, I receive 5000…

Toward Star Trek economics

, 2 min read

Characters in the Star Trek universe often claim that their future Earth has abolished money. Everyone gets what he needs and nobody works for money. Unfortunately, they never explain how it may work. Clearly, not everyone can afford to own a starship. A more reasonable scenario is that everyone is…

What are the genuinely useful ideas in programming?

, 1 min read

The software industry is probably the most dynamic and innovation of all industries. However, many people also try to convince us to adapt new ideas despite their dubious practical value. So what are the ideas that stick… ideas that are genuinely good and important? Here is my current…

The written word took over the world

, 5 min read

Whereas most human beings learn to speak in the first two years of their life, written languages are more of an acquired ability. We learn to speak before we learn to write. It is not uncommon for adults to be illiterate, even in rich countries. In this sense, the written language is a high-level…

Why can´t you find a job with a Stanford computer science PhD?

, 3 min read

To many of my older colleagues, the idea that you possibly couldn’t find a job with a good degree, let alone a PhD, is unthinkable. And what about a promising young graduate in Computer Science from Stanford University? What if he has a PhD? He may not be able to secure an academic job, but…

What do computer scientists know about performance?

, 4 min read

Scientists make predictions and are judged on these predictions. If you study global warming, then your job is to predict the climate for the next few decades. But what do computer scientists predict with respect to performance? A lot of classical computer science is focused on performance. That…

To solve hard problems, you need to use bricolage

, 2 min read

People who think that they can design efficient solutions in the abstract, effectively believe in Oracles. That is, they somehow believe that from their desk, and using only their mind, they can anticipate all the implementation issues that will come up after hours of programming. They somehow…

Are 8-bit or 16-bit counters faster than 32-bit counters?

, 1 min read

Programmers often want to count things. They typically use 32-bit counters (e.g., the int type in Java). But what if you are counting small numbers? Maybe a 16-bit counter could be enough (e.g., the short type in Java). Obviously, using fewer bits saves memory. Saving memory often makes programs…

To succeed, adopt the post-industrial view

, 2 min read

From time to time, students ask me wether such degree or certificate in computer science will help them get a good job. There is no shortage of studies showing that degrees lead to good jobs. That might be true, but there are also many young (and not-so-young) people who are depressed by their…

Funding science: When bureaucrats get out of control

, 4 min read

Throughout most of the world, scientists are almost entirely dependent on one source of funding: their government. So every few years (or more often), professors and researchers apply for research grants. This gives disproportionate power to government bureaucrats and politicians. Should they ask…

Picking N distinct numbers at random: how to do it fast?

, 3 min read

To test my algorithms, I like to generate synthetic data. To do so, I often need to generate distinct randomly chosen numbers from a range of values. For example, maybe I want to pick 2 distinct integers in the interval [0,10]. For my purposes, I need these numbers to appear in order, but we can…

Privacy and the Internet: Is Facebook evil?

, 4 min read

For several of my classes, I open Facebook groups so that my students can exchange online. In some instances, it has worked great. Facebook tends to do a better job than school-provided posting boards. A small minority of students have taken offense to my practice for privacy reasons. It is fine: I…

Honey bees are not going extinct

, 4 min read

There is much argument about what science is. To some people, it appears to be mostly the belief that information should be derived reputed sources. That is, if your belief regarding the age of the Earth comes from your local minister, you are an idiot, but if it comes from a science textbook, you…