acm-header
Sign In

Communications of the ACM

Blogroll


bg-corner

Who plays nice? Who plays rough?
From Daniel Lemire's Blog

Who plays nice? Who plays rough?

I have a confession to make. I am one of these people who can’t watch a TV show like Games of throne because there is too much evil. In fact, I generally cringe...

Infinite storage: we are almost there…
From Daniel Lemire's Blog

Infinite storage: we are almost there…

Two 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...

People who make you feel stupid…
From Daniel Lemire's Blog

People who make you feel stupid…

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...

We need more than spam filters: we need bona fide assistants!
From Daniel Lemire's Blog

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

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...

Toward Star Trek economics
From Daniel Lemire's Blog

Toward Star Trek economics

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...

What are the genuinely useful ideas in programming?
From Daniel Lemire's Blog

What are the genuinely useful ideas in programming?

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...

The written word took over the world
From Daniel Lemire's Blog

The written word took over the world

Whereas human beings are geared genetically toward spoken languages, written languages are an acquired ability. In this sense, it is a high-level ability. For centuries...

Why can’t you find a job with a Stanford computer science PhD?
From Daniel Lemire's Blog

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

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...

What do computer scientists know about performance?
From Daniel Lemire's Blog

What do computer scientists know about performance?

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....

To solve hard problems, you need to use bricolage
From Daniel Lemire's Blog

To solve hard problems, you need to use bricolage

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...

Are 8-bit or 16-bit counters faster than 32-bit counters?
From Daniel Lemire's Blog

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

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...

To succeed, adopt the post-industrial view
From Daniel Lemire's Blog

To succeed, adopt the post-industrial view

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...

Funding science: When bureaucrats get out of control
From Daniel Lemire's Blog

Funding science: When bureaucrats get out of control

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...

Picking N distinct numbers at random: how to do it fast?
From Daniel Lemire's Blog

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

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...

Privacy and the Internet: Is Facebook evil?
From Daniel Lemire's Blog

Privacy and the Internet: Is Facebook evil?

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...

Honey bees are not going extinct
From Daniel Lemire's Blog

Honey bees are not going extinct

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...

Big-O notation and real-world performance
From Daniel Lemire's Blog

Big-O notation and real-world performance

Classical Newtonian mechanics is always mathematically consistent. However, Newtonian mechanics assumes that bodies move without friction and that we stay far from...

Should computer scientists run experiments?
From Daniel Lemire's Blog

Should computer scientists run experiments?

Jeffrey Ullman, a famous computer science professor, published an essay pushing back about the need to run experiments in computer science. Apparently, some conference...

Fast integer compression in Java
From Daniel Lemire's Blog

Fast integer compression in Java

Last year, we published a fast C++ library to quickly compress and decompress arrays of integers. Out of habit, I ported it to Java and published it under the name...

Staying sharp requires “intellectual gardening”
From Daniel Lemire's Blog

Staying sharp requires “intellectual gardening”

Gardening requires consistency. A beautiful garden is unstable. Some plants want to expand their reach and kill out the competition. Some plants are simply out...
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account