This month’s Communications of the ACM (Association for Computing Machinery) has an interesting article which explains how SQL databases and noSQL databases are duals of each other in the Category Theoretical sense.

# Category Archives: Academics

# Books: “A Mathematician’s Lament” by Paul Lockhart

Anybody who teaches math should read this book!

This book perfectly summarizes my disgust with the state of “education” today. The author’s main thesis is that math is an art that should be taught in a way to cultivate appreciation and understanding. It is not merely a set of formulas and definitions that students should commit to memory. Here is a quote from page 29:

By concentrating on

what, and leaving outwhy, mathematics is reduced to an empty shell. The art is not in the “truth” but in the explanation, the argument. It is the argument itself which gives the truth its context, and determines what is really being said and meant. Mathematics isthe art of explanation. If you deny students the opportunity to engage in this activity— to pose their own problems, make their own conjectures and discoveries, to be wrong, to be creatively frustrated, to have an inspiration, and to cobble together their own explanations and proofs—you deny them mathematics itself. So no, I’m not complaining about the presence of facts and formulas in our mathematics classes, I’m complaining about the lack ofmathematicsin our mathematics classes.

And another choice quote about the evils of High School Geometry from page 67:

…never was a wolf in sheep’s clothing as insidious, nor a false friend as treacherous, as High School Geometry. It is precisely because it is school’s attempt to introduce students to the art of argument that makes it so very dangerous.

Posing as the arena in which students will finally get to engage in true mathematical reasoning, this virus attacks mathematics at its heart, destroying the very essence of creative rational argument, poisoning the students’ enjoyment of this fascinating and beautiful subject, and permanently disabling them from thinking about math in a natural and intuitive way.

The mechanism behind this is subtle and devious. The student-victim is first stunned and paralyzed by an onslaught of pointless definitions, propositions, and notations, and is then slowly and painstakingly weaned away from any natural curiosity or intuition about shapes and their patterns by a systematic indoctrination into the stilted language and artificial format of so-called “formal geometric proof.”

This book is available as a freely downloadable PDF.

# Stephen Chu’s White Roof Proposal and Rush Limbaugh’s Response

I feel that anybody who has completed a high school education in this country should be able to come up with the explanation that I just gave above, but the sad fact is that probably the majority of American’s could not give such an explanation, despite the fact that the overwhelming majority of Americans have completed high school. Science has been the hallmark of the advancement of all civilizations, why is “illiteracy” in science (and innumeracy) so acceptable in our society? Although left wing extremists will jump at the opportunity to make Rush look stupid, the general public won’t care. Although it is possible that Rush was being disingenuous and really did understand the simple ideas behind the proposal, but feigned ignorance for political reasons, I am more inclined to believe that he was being honest when he said he didn’t understand how it works.

We really need to look at how we teach in this country, and start experimenting with radical new approaches because this perfectly illustrates how inadequate current methods are. I realize changes in how science is taught have been made since Mr. Limbaugh attended school, but I am quite certain that most recent graduates would respond similarly.

# Creating Printable PDF Flash Cards Using LaTeX

This post details how to make high quality, printable flash cards like I have available at my web site. I am assuming you are using Ubuntu Linux. I did this on Ubuntu 8.04 (Hardy Heron), but it might work on some previous and later versions as well.

First you want to install LaTeX, plus Andrew Budge’s flashcards package. Open a command terminal and type in the following command to install TeX and LaTeX. The flashcards package resides in the `texlive-latex-extra`

Ubuntu package.

$ sudo apt-get install texlive texlive-latex-extra

I also recommend installing Kile which is a great program for editing TeX/LaTeX documents. You can do this with the following command. Depending on your system configuration, `apt-get`

might require you to install several extra packages. The following is optional:

$ sudo apt-get install kile

At this point, if you try to compile a latex document that uses the flashcards package, you’ll get the following error:

! Package geometry Error: You must set \paperwidth properly.

To fix this, we need to create a small file called `geometry.cfg`

, which tells the geometry packages which type of paper we will be using. Create the file using the following command:

$ sudo gedit /usr/share/texmf-texlive/tex/latex/geometry/geometry.cfg

Now copy and paste the following into gedit, save the file and exit from gedit.

%%

%% This is file `geometry.cfg',

%% generated with the docstrip utility.

%%

%% The original source files were:

%%

%% geometry.dtx (with options: `config')

%%

%% File: geometry.dtx Copyright (C) 1996-2002 Hideo Umeki

%% (hideo.umeki@toshiba.co.jp)

%%

%% This package may be distributed under the terms of the LaTeX

%% Project Public License, as described in lppl.txt in the base

%% LaTeX distribution, either version 1.2 or (at your option)

%% any later version.

%%

```
```%% Uncomment and edit the line below to set default options.

\ExecuteOptions{letterpaper,dvips}

`\endinput`

%%

%% End of file `geometry.cfg'.

Now, you should be able to compile a LaTeX document that uses the flashcards package without errors, but there will be some warnings. To fix the warnings, we need to change one line in `flashcards.cls`

.

$ sudo gedit /usr/share/texmf-texlive/tex/latex/flashcards/flashcards.cls

The following `diff`

command shows the change you need to make:

$ diff -ru flashcards.cls.bak flashcards.cls

--- flashcards.cls.bak 2009-01-26 17:15:27.000000000 -0700

+++ flashcards.cls 2009-01-26 19:43:57.000000000 -0700

@@ -83,7 +83,7 @@

top=\topoffset,

left=\oddoffset,

right=\evenoffset,

- twosideshift=\oddevenshift,

+ twoside=true,

bottom=0.0in,

noheadfoot}

\ifthenelse{\boolean{flashcards@dvips}}{\geometry{dvips}}{}

Now you should be able to compile a LaTeX document without any errors or warnings, excepting for any errors in your own markup of course.

# Iterated Function Systems and Fractals

This code generates fractals based upon an iterated function system (IFS). Several input files and a Makefile are included. The code is written in C++, and distributed as a tarball. I did this for a class at the University of Utah, but it is based upon a homework assignment for a computer graphics class at MIT (6.837).

Below is the famous Barnsley fern which was generated by an IFS with just four transforms!

# New and Improved Sierpinski Triangle C++ Code

I modified my Sierpinski triangle code so that it now allows you to adjust the contraction mapping constant. Normally one uses a contraction mapping constant of 1/2 but if you invert that and instead use an expansion mapping constant of 2, then you get the following pretty picture.

# The New College Try – New York Times

The New York Times has an excellent op-ed piece today on college admissions. Read the article, and you’ll see why test prep centers like Kaplan are doing so well.