The 100 Most Used Clojure Expressions

November 14, 2015
Would you like to optimize your learning of Clojure? Would you like to focus on learning only the most useful parts of the language first? Take this lesson from second language learning: learn the expressions in order of frequency of use.

The Importance of Embodied Metaphors

March 04, 2016
LispCast Introduction to Clojure teaches Clojure with an "interactive bakery simulation". The reason is that metaphors that you can embody are a great way to learn abstract things like programming.

How to avoid "Makes sense if you already understand it."

March 13, 2015
Most technical writing is obtuse unless you already know the topic. Focus on the learner and their skills and it will clarify your writing.

Making True/False Questions Easy

September 21, 2013

When I was training as a teacher, I gave a simple quiz with True/False (T/F) questions. The results were terrible. Worse than chance. On one question, about 20% of the class got it right.

I had asked a simple question involving a logical AND:

True or False?
A parallelogram has parallel opposite sides AND it has five sides.

Eighty percent of the class chose 'True', even though all parallelograms have four sides. The other teachers told me the question was difficult because it was a T/F question. They said they never give T/F questions because they only confuse the kids. They said I should just forget about T/F and try a different type of question. But it was my class and my time to explore teaching and I knew that this question was not that hard. Several connections became clear in my mind: using the right part of their brains, making the problem about people, and using their imaginations effectively. I wanted to give it a shot.

I planned the next class around answering True/False questions. There would be an experiment to confirm my suspicion (that the kids were using the wrong part of their brains), a lesson using an imaginative process, and then a similar quiz to see how it worked.

The next morning in class, I wrote the T/F question on the blackboard and called a student up to answer it. He read it and said 'True' (the wrong answer). I asked him "what about this part?", pointing to the false part. He was clearly confused. The part about five sides was obviously false to him. He then began looking around1 through the question and stopped at the first part (the true part). He pointed at it and said 'True', as if it negated the fact that the other part was false. It's hard to describe, but I was convinced that he was simply looking for something that was true to make the whole question true. And he thought that it was the right answer. My hypothesis was confirmed: he was using a visual strategy when it was not called for.

I then demonstrated an imagination process for solving True/False questions. It went like this:

When solving a True/False question, I first imagine someone standing in front of me. He says the statement from the question to me. If he is lying, the answer is False. If he is telling the truth, the answer is True.

I asked a couple of people to carry out the process while narrating it to me. They seemed to be able to do it (and they got it right). So then I gave the quiz.

The result? Correct answers went from 20% to 80%. I felt like I was finally testing their knowledge of the material and not their understanding of test-taking strategies.

How did it work? By converting the problem from a logic skill to a social skill, the students could totally bypass the need to process difficult symbolic rules. And we could solve it as a social problem by using a structured process of imagination.

True/False questions are difficult because there are so many levels of binary confusion. First, you are looking for the correct (as opposed to the incorrect) answer. Then you must determine the truth value of the whole statement, which is a function of the truth values of the sub-statements. It's just a lot of levels to keep in your head.

The imaginative process cuts through all of that and asks one question: is he lying. You are offloading the processing to the social part of your brain, which can easily do it if framed in the right way.2

You might also like


  1. Looking indicates visual thinking. Use the right part of the brain.

  2. In my last post, I hinted at a better way to teach how to determine whether a function is a pure function. The better way is to imagine a robot in front of you. Can he run that function "in his head"? Or does he need to effect the outside world?

New Orleans Clojure Workshop Retrospective

October 23, 2016
We organized a Clojure workshop. Here's what went right and what we should do next time.

Pre-West Prep: Elena Machkasova

April 03, 2015
Elena Machkasova will talk about teaching Clojure to novice programmers.

Pre-West Interview: Elena Machkasova

April 15, 2015
Elena Machkasova interview by Nola.

Tap Into Your Social Brain

September 11, 2013
We can solve social problems much more easily than logic problems, even when they are equivalent. Convert a logic problem into a social problem to make it easier to solve.

Use Task Analysis to Break a Skill Into Steps

March 07, 2015
Many technical books skip very important skills you need to complete a task. To avoid skipping those skills, use task analysis to break a skill into steps.

Use Your Imagination

September 17, 2013
You can transfer the outline of a skill by guiding someone through a structured use of their imagination.