acm-header
Sign In

Communications of the ACM

Blogroll


bg-corner

Basic email skills
From Daniel Lemire's Blog

Basic email skills

If there is one skill that is needed in a modern office is email. By email, I do not refer to the specific Internet protocol. I refer to the general process of...

To be creative, work alone
From Daniel Lemire's Blog

To be creative, work alone

In his excellent book How to Fly a Horse, Ashton makes a case for working alone. He quotes Apple’s co-founder and technical genius Steven Wozniak: Work alone. You...

Was life better in the 1970s?
From Daniel Lemire's Blog

Was life better in the 1970s?

People from my generation often complain that their parents were better off. They are often quick to dismiss the Internet and smart phones as irrelevant to their...

Evil abbreviations in programming languages
From Daniel Lemire's Blog

Evil abbreviations in programming languages

Programming language designers often abbreviate common function names. The benefits are sometimes dubious in an era where most programmers commonly use meaningful...

Accelerating intersections with SIMD instructions
From Daniel Lemire's Blog

Accelerating intersections with SIMD instructions

Most people have a mental model of computation based on the Turing machine. The computer does one operation at a time. For example, maybe it adds two numbers and...

Good ideas are overrated
From Daniel Lemire's Blog

Good ideas are overrated

As a college student, I was convinced that the most important part of science and engineering was to have good and original ideas. If you contemplate Einstein,...

Other useless school trivia: the quadratic formula
From Daniel Lemire's Blog

Other useless school trivia: the quadratic formula

I have two young boys and I have decided to pay attention to what they are learning in school. Beside basic writing and reading skills, mathematics feels like the...

On rote memorization and antiquated skills
From Daniel Lemire's Blog

On rote memorization and antiquated skills

When I write that we should focus on teaching useful skills, and avoid rote memorization… I get far more opposition than I expect. To my surprise, there is an abundant...

The mathematics we teach our kids…
From Daniel Lemire's Blog

The mathematics we teach our kids…

Math education has made progress compared to my school days in specific areas. For example, I am really happy that statistics and probabilities are fully integrated...

The hopeless ones become college professors.
From Daniel Lemire's Blog

The hopeless ones become college professors.

Many people justify their choice of pursuing graduate school by a desire to explore new ideas and satisfy their intellectual curiosity, an euphemism for goofing...

Large well-funded laboratories…
From Daniel Lemire's Blog

Large well-funded laboratories…

Your intuition is probably that large well-funded research laboratories produce more research… One part of this intuition is flat out wrong. Small teams are consistently...

Lectures are the lazy person’s approach to education
From Daniel Lemire's Blog

Lectures are the lazy person’s approach to education

Roger Schank is a famous computer science professor. His take on lectures is just brilliant: We still have lectures for one main reason. They are the lazy person...

Your brain and its software patches
From Daniel Lemire's Blog

Your brain and its software patches

Scott Alexander wrote a series of great posts on genetic determinism. He recounts how he believes he learned English without any effort but could not learn Calculus...

How do you become an expert?
From Daniel Lemire's Blog

How do you become an expert?

I was asked by one of my students how to become an expert programmer. Peter Norvig has already given an excellent answer: work hard for ten years. Let me revisit...

Knauff and Nejasmic recommend banning  LaTeX
From Daniel Lemire's Blog

Knauff and Nejasmic recommend banning LaTeX

Two German psychology professors, Knauff and Nejasmic, recently published a paper on the benefits of Microsoft Word over LaTeX. The paper was reported in Nature...

Fast unary decoding
From Daniel Lemire's Blog

Fast unary decoding

Computers store numbers in binary form using a fixed number of bits. For example, Java will store integers using 32 bits (when using the int type). This can be...

Theory lags practice
From Daniel Lemire's Blog

Theory lags practice

Schools teach us theory so that we can be more productive workers. You learn grammar so that you can be a better writer. You learn about computer science, so that...

How to learn efficiently
From Daniel Lemire's Blog

How to learn efficiently

I am convinced that much of the gap between the best college students and the worst is explained by study habits. Frankly, most students study poorly. To make matters...

MOOCs are closed platforms… and probably doomed
From Daniel Lemire's Blog

MOOCs are closed platforms… and probably doomed

Colleges and universities, left and right, are launching Massive open online courses (MOOC). Colleges failing to follow are “behind the times”. Do not be fooled...

Optimizing polymorphic code in Java
From Daniel Lemire's Blog

Optimizing polymorphic code in Java

Oracle’s Java is a fast language… sometimes just as fast as C++. In Java, we commonly use polymorphism through interfaces, inheritance or wrapper classes to make...
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account