2008-12-27

Lockhart's Lament

Lockhart seems to agree with Dijkstra, that problem solving can be taught. But my mind fixed on something else in the paper. The much criticised geometry proofs mentioned on page 21 looks very much like programming. Why not use Haskell notation? Or even better, Coq? The proofs could be type checked and evaluated automatically. The students would learn to program at the same time they were learning geometry. They are learning to program now as well, they just don't know it, and would probably have difficulties to apply their newly gained knowledge in programming, due to the special notation used.

The programming approach would also allow the students to create theorems of their own to be used in future proofs, building a library of geometry as they go.

Even though I agree with Lockhart that problem solving should be emphasized instead of mechanical application of rules, by not using a formal system, he relies too much on human intuition in the proofs created. The informal proof on page 21-22 is elegant, but relies on the intuitive understanding of rotation and that rectangles have diagonals of equal length alternatively that rectangles have corners with right angles (both can not be the definition of a rectangle).

2008-12-15

Connect to Internet with a Bluetooth 3G Phone

There are many tutorials available that describe how to connect to Internet using a 3G phone with bluetooth, but none of them worked for me. I had to use a combination of several sources. This is what worked.

I want to connect to Internet with my Asus Eee PC 901 using my SonyEricsson W880i. The operator I use is Tele2 in Sweden. I have installed Ubuntu Eee on the netbook.

First I used Blueman to configure the bluetooth connection using this tutorial. This should result in a /etc/bluetooth/rfcomm.conf looking something like this:

rfcomm0 {
bind yes;
device AA:BB:CC:DD:EE:FF;
channel 2;
comment "W880i";
}

The device is the mac address of your phone and the channel is the same as your phone's Dial-up Networking channel. You can find out your channel using Properties in Blueman. The Serial Port channel also worked for me.

Then I wrote the following in /etc/wvdial.conf, found in this tutorial.

[Dialer defaults]
Modem = /dev/rfcomm0

[Dialer tele2]
Modem = /dev/rfcomm0
Baud = 115200
Init2 = AT+CGDCONT=1,"IP","internet.tele2.se"
Phone = *99#
Username = *
Password = *
New PPPD = yes
Auto DNS = 1

I start the network with the following command.

wvdial tele2