Etudes for Programmers
I have just created a new community for
Etudes
at Orkut.
Etudes is probably the best introduction to programming ever. Written by Charles C. Wetherell while at Livermore Labs, it attracted just the right kind of hacker personalities. People who were initiated and inspired by Etudes tend to be exceptionally good programmers.I hope to inspire lively discussion. C. Wetherell, the author is still considering a second edition. Currently Etudes sells for above $90 for a run down copy. The last auction at Ebay toped out at $270 for a mint edition.
C. Wetherell implemented Kriegspiel in FORTRAN 66 while at Lawrence Livermore Lab. There's an interview with him and Tom Buckholtz at nersc.gov.
CW: This is probably the appropriate time to define the essential features of the game Kriegspiel.
TJB: You are right. We have discussed some aspects so far. You, Charles, did a wonderful job on this when you wrote the papers. That explanation is doubtless more concise that what I say here.
A Kriegspiel game features two people playing chess against each other. All the rules of chess (with the exception of conventions about forced draws) apply, but each player has his own board and cannot see the opponent's position on the other board.
Indeed, a player can place chessmen of the opponent's color, coins, or other objects on the board to indicate the player's guesses about the opponent's position. Such memory aids are not part of the official game.
With our Kriegspiel monitor, a player was allowed to put any number of opponent's pieces of any type on his own board, subject to two limitations. One could not put an opponent's man on a square occupied by one's own chessman. One could not put more than one opponent's piece on any one square. Also, I should note that we did not provide an analog of "coins."
As I had seen the game played, only two boards were used, with the White pieces being official on one board and the Black pieces on the other. Usually, the players sat facing each other with their boards between them and an adequately tall, wide, and opaque "divider" standing between the two boards [37]. The referee positioned himself at one end of the divider and mentally superimposed the official positions of the two players. (I recall rumors that some referees used third boards, maintaining the actual chess positions thereon as aids to themselves.)
I was proficient at refereeing two games simultaneously. This required four chess boards and one long divider. I stood at one end of the divider. The two players nearest me faced and played against each other. The other two players faced and played against each other. My main challenge was to maintain a normal degree of referee-generated "banter" and convey the required information without slowing down either the "near board" or "far board" game. Accuracy in refereeing did not prove a challenge.
Because all the rules of chess (except conventions about forced draws) apply, the two opponents know each others starting positions. Such "complete knowledge" usually dissipates starting with the first or second pair of moves.


