Inspired by Nick Gotts style putting two puffers at right angles to produce "unlimited novelty", here's putting two breeders at right angles in Conway's Game of Life.
Tuesday, September 30, 2008
Fiscal Conservatism and Transfers
However, it is different for government transfers, i.e., when the government raises money through taxes and gives it to another party. This is a zero-sum redistribution of wealth within the economy, a "mere transfer", and that money is coming back, to be spent by the recipient of the transfer.
The benevolent government carries out such transfers in hopes of effecting a second-order positive effect from the wealth redistribution, and hopes that the positive effect outweighs the distortions in incentives caused by taxation.
Thus, fiscal conservatism and the degree of wealth distribution are distinct ideas, and phrases like "small government" and "lower taxes" conflate them.
With this in mind, I am convinced that the $700 billion dollar bailout is just a transfer. Real estate developers and sellers did well, mortgage lenders and buyers took a loss, and if the bailout passes, then some of that loss will be shouldered by taxpayers. (Maybe the tax rate can be raised on profit from real estate sales, thus completing the circle.) In the grand scale of things, it's simply money flying around from one hand to another. The government is not really spending (or wasting) money on anything.
Don't lose sight of real government spending, for example the Iraq war.
Wednesday, September 24, 2008
Video Hosting
Compete against Youtube, et al, with a standalone application (or browser plugin, extension). Use distributed technology to lessen the hosting bandwidth cost.
The host serves: trackers, a search service, public keys, private key backup, mapping from email addresses to private keys, the "master" database of the initial insertions of all videos and metadata (which is subsequently served out peer to peer), and handles (sadly) all the censorship of explicit content and copyright infringement.
Technologies: Hashcash, Ratings (wisdom of the masses), Plausible Deniability, Onion Routing (10% of the time), Public-key cryptography, cryptographic checksums, "Make available offline", Ogg Theora, trackerless (DHT).
Censorship is unfortunate, but I think there is enough rope that a determined attacker to build a non-censoring version of the service hosted elsewhere. The only thing that needs to be kept secret is the mapping from private keys to email addresses.
Ratings (Wisdom of the masses)
Tuesday, September 23, 2008
.recently-used.xbel
gnome-control-center-2.23.90/libslab/bookmark-agent.c
gnome-main-menu-0.9.11/main-menu/src/main-menu-ui.c
gtk+-2.14.2/gtk/gtkrecentmanager.c
Thursday, September 18, 2008
Abbreviated Calendar
Some calendars with 28 days or 21 days chopped out of each month.
Isn't it interesting that the last days of the month always end up on the same days of the week as the first days of the month?
If you are good at taking numbers modulo 7, these calendars are good enough.
The month of February sometimes entirely disappears.
28-day cuts:
Sun Mon Tue Wed Thu Fri Sat
===========================
|1 2 3 |1 |1
2008 |January |Feb|Mar
|29 30 31 |29 |29
---------------------------
2 3 |1 2 |1 2 3
March |April |May
30 31 |29 30 |29 30 31
---------------------------
1 2 |1 2 3 |1 2
June |July |August
29 30 |29 30 31 |29 30
---------------------------
3 |1 2 |1 2 3 |1
Aug|Septemb|October |Nov
31 |29 30 |29 30 31 |29
---------------------------
2 |1 2 3
Nov|December
30 |29 30 31
Sun Mon Tue Wed Thu Fri Sat
===========================
|1 2 3
2009 |January
|29 30 31
---------------------------
1 2 3 |1 2 |1 2
March |April |May
29 30 31 |29 30 |29 30
---------------------------
3 |1 2 |1 2 3 |1
May|June |July |Aug
31 |29 30 |29 30 31 |29
---------------------------
2 3 |1 2 |1 2 3
August |Septemb|October
30 31 |29 30 |29 30 31
---------------------------
1 2 |1 2 3
Novembe|December
29 30 |29 30 31
21-day cuts:
Sun Mon Tue Wed Thu Fri Sat
===========================
2008 |January
|1 2 3 4 5
---------------------------
January |Februar
6 7 8 9 10 |1 2
---------------------------
February |Mar
3 4 5 6 7 8 |1
---------------------------
March
2 3 4 5 6 7 8
---------------------------
March |April
9 10 |1 2 3 4 5
---------------------------
April |May
6 7 8 9 |1 2 3
---------------------------
May
4 5 6 7 8 9 10
---------------------------
June
1 2 3 4 5 6 7
---------------------------
June |July
8 9 |1 2 3 4 5
---------------------------
July |August
6 7 8 9 10 |1 2
---------------------------
August
3 4 5 6 7 8 9
---------------------------
Aug|September
10 |1 2 3 4 5 6
---------------------------
September |October
7 8 9 |1 2 3 4
---------------------------
October |Nov
5 6 7 8 9 10 |1
---------------------------
November
2 3 4 5 6 7 8
---------------------------
Nov|December
9 |1 2 3 4 5 6
---------------------------
December
7 8 9 10
Sun Mon Tue Wed Thu Fri Sat
===========================
2009 |January
|1 2 3
---------------------------
January
4 5 6 7 8 9 10
---------------------------
February
1 2 3 4 5 6 7
---------------------------
March
1 2 3 4 5 6 7
---------------------------
March |April
8 9 10 |1 2 3 4
---------------------------
April |May
5 6 7 8 9 |1 2
---------------------------
May
3 4 5 6 7 8 9
---------------------------
May|June
10 |1 2 3 4 5 6
---------------------------
June |July
7 8 9 |1 2 3 4
---------------------------
July |Aug
5 6 7 8 9 10 |1
---------------------------
August
2 3 4 5 6 7 8
---------------------------
August |September
9 10 |1 2 3 4 5
---------------------------
September |October
6 7 8 9 |1 2 3
---------------------------
October
4 5 6 7 8 9 10
---------------------------
November
1 2 3 4 5 6 7
---------------------------
Novembe|December
8 9 |1 2 3 4 5
---------------------------
December
6 7 8 9 10
Building Firefox on Ubuntu Hardy
apt-get build-dep firefox aptitude install mercurial libasound2-dev libcurl4-gnutls-dev libjpeg-progs
Wednesday, September 17, 2008
How much space does Windows XP take?
Some notes from reinstalling my thinkpad z60t using built-in rescue and recovery (restore to factory original state).
| GB used | Cumulative GB | |
|---|---|---|
| Initial Install | 6.5 | |
| First Batch of Windows updates | 2.8 | 9.3 |
| XP SP3 | 1.2 | 10.5 |
| Delete swap area | -2.0 | 8.5 |
| Windows Media Player 11 | 0.2 | 8.7 |
| More Windows updates | 0.1 | 8.8 |
| Lenovo System Update | 2.3 | 11.1 |
GB=10243 = 1073741824 bytes.
Absolute minimum space needed is 11.1GB or 11.9*109 bytes. Resized to 15 "GB" in the Debian installer but the installer used GB=109 bytes, so ended up getting only 13.9 GB, leaving 2.8 GB free.
It looks like 2GB could be saved if hibernation is disabled.
Tuesday, September 16, 2008
Scaling up
The program must use 64-bit memory addressing to use any amount of memory, use the hard drive as additional memory, use multiple hard drives efficiently so as to avoid thrashing any single hard drive. The program must scale to shared memory multiple processors or cores (SMP), and to distributed memory message passing, and do the right thing depending on the latency between distributed nodes. Use GPGPU and FPGA. The program must be robust to hard drive failures and to entire distributed nodes going down.
The operating system might take care of some of these issues.
I believe function programming is the solution. A very high level description of a computation is automatically (or human-assisted) compiled for the given architecture.
Saturday, September 13, 2008
Proof Art
Friday, September 12, 2008
Wednesday, September 10, 2008
XMonad wishlist
Quick key for maximize and restore.
Quote key to pass commands through window manager to application, like Emacs's C-q. Or vi-style WM mode and Application mode.
Collapse all windows in all workspaces into a single workspace.
The size of a tile need not define the size of the window but the size of the viewport through which possibly only part of the window is visible. The window may be resized and panned behind the viewport. This feature is intended for applications which put a lot of fluff, e.g., toolbars and menubars, around the actual content.
Compositing. Scale and rotate windows and tiles.
Tuesday, September 09, 2008
Old Del.icio.us bookmarklet
javascript:location.href='http://del.icio.us/post?v=4;url='+encodeURIComponent(location.href)+';title='+encodeURIComponent(document.title)
The new Delicious one does not work with NoScript.
Saturday, September 06, 2008
Why open source
Friday, September 05, 2008
Circle (or Disc)
#! perl -w
die unless ($size=$ARGV[0]);
$center=($size-1)/2;
$radsquared=$size*$size/4;
print "P2\n$size $size\n1\n";
for $i(0..($size-1)) {
$dx=$i-$center;
for $j (0..($size-1)) {
$dy=$j-$center;
if ($dx*$dx+$dy*$dy<=$radsquared) {
print "1"
} else {
print "0"
}
print " ";
}
print "\n";
}

Thursday, September 04, 2008
Wednesday, September 03, 2008
A decisive Najdorf game
Glaurung 2.1 against itself, 7000000000 nodes per move. Log file.
1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. Be3 e5 7. Nb3 Be7 8. Be2 O-O 9. O-O Be6 10. Qd3 Nc6 11. Rad1 Rc8 12. a3 Na5 13. Nxa5 Qxa5 14. Bg5 Qb6 15. Rb1 h6 16. Be3 Qc6 17. Rfd1 b5 18. Bd2 Bd8 19. Rbc1 Bc4 20. Qf3 Bxe2 21. Qxe2 Ba5 22. f3 Rfe8 23. Nd5 Nxd5 24. Bxa5 Nf4 25. Qd2 Qc4 26. Kh1 Rc6 27. Bb4 Ra8 28. g3 Ne6 29. Bc3 Rac8 30. Kg2 Nc5 31. b3 Qe6 32. Bb4 Qd7 33. Qd5 Qc7 34. Bd2 Nd7 35. Rf1 Qa7 36. Rf2 Qb6 37. h3 Nf8 38. c3 Nd7 39. Qd3 Qa5 40. Ra1 Qc7 41. Re2 Nc5 42. Qd5 Qd7 43. Rb1 Qe7 44. Be1 Ne6 45. Bd2 Qd7 46. Rd1 Nc7 47. Qd3 Qe6 48. Qb1 Ne8 49. Rc1 Nf6 50. Qb2 Nd7 51. Qb1 Nc5 52. c4 bxc4 53. bxc4 Na4 54. Be3 Rxc4 55. Rxc4 Qxc4 56. Rd2 Nc3 57. Qb7 Rc7 58. Qb6 Rc6 59. Qb7 Kh7 60. Bf2 d5 61. exd5 Nxd5 62. Qb1+ Rg6 63. Kh2 Nf4 64. Qd1 Ne6 65. Qc2 Qxc2 66. Rxc2 Ng5 67. Kg2 Rd6 68. h4 Ne6 69. h5 f6 70. a4 Rd3 71. Rc6 Ng5 72. f4 exf4 73. gxf4 Ne4 74. Ba7 Ng3 75. Bb8 Nxh5 76. Rxa6 Kg6 77. Ra5 Ng3 78. Rb5 Ne4 79. a5 Ra3 80. Ba7 Nd6 81. Rc5 Nb7 82. f5+ Kg5 83. Rc7 Nxa5 84. Rxg7+ Kxf5 85. Bc5 Rc3 86. Bb4 Rc2+ 87. Kg3 Nc6 88. Bd6 Rc3+ 89. Kg2 Rd3 90. Bc7 h5 91. Rh7 Kg6 92. Rh8 Ne5 93. Kf2 Rc3 94. Bb6 Kg5 95. Be3+ Kg4 96. Bd4 Ra3 97. Rg8+ Kf4 98. Rh8 Ng4+ 99. Kf1 Rh3 100. Bc5 Kf3 101. Kg1 f5 102. Ra8 Rg3+ 103. Kh1 f4 104. Ra4 h4 105. Bb6 Ne5 106. Bd4 Rh3+ 107. Kg1 Nd3 108. Ra2 Nc1 109. Rf2+ Ke4 110. Rc2 Rg3+ 111. Kf1 Nd3 112. Rc4 h3 113. Bg1+ Kf5 114. Rc8 Ne5 115. Bf2 Rb3 116. Rf8+ Ke4 117. Rh8 Rb1+ 118. Ke2 Rb2+ 119. Kf1 Ng4 120. Ba7 h2 121. Ke1 f3 122. Kd1 Rb1+ 123. Kd2 h1=Q 124. Rxh1 Rxh1 125. Bb6 Ne3 126. Bxe3 Rh2+ 127. Bf2 Rxf2+ 128. Kc3 Rg2 129. Kc4 f2 130. Kc5 f1=Q 131. Kd6 Qc4 132. Ke7 Rg7+ 133. Kd6 Qd5# 0-1




