July 2004 Archives
I'm probably the millionth person to figure this out, but if you want to know how long a particular compounded rate of return will take to double your original investment, divide 75 by the percentage.
Example: 16% annual return, compounded annually.
Thus: 75 / 16 = 4.6875.
Proof: 1.16 ^ 4.6875 ~= 2.01.
We Linux users have a zillion screensavers to choose from, but many of my coworkers have winnowed their configurations down to the really cool ones. Sometimes my favorite, Helios, is running on a couple monitors side-by-side, and the effect is neat.
This got me thinking: the random number generator in Helios should simply be Unix time div 60. Then on LANs where most computers are synced with NTP, they'd all show the same view. You'd actually want to make the Helios parameters all derived from the same seed, so that all the screens would be showing the exact same picture no matter when they kicked in. This would give the appearance that all the computers were communicating with each other to keep the screensaver in sync.
I think this would look cool. Or maybe it wouldn't, I don't know.
The Segway p Series at Amazon is now $3,000 (a price drop of $1,000).
Someone please buy me this.
For a single 700MB CD, you can fit the following number of minutes of video encoded at a particular bitrate, assuming 224 Kbps audio.
- 42 min or less: 2,376Kbps, the maximum under the SVCD spec
- 43 min: 2,329Kbps (2,553Kbps with audio)
- 50 min: 1,971Kbps (2,195Kbps with audio)
- 55 min: 1,772Kbps (1,996Kbps with audio)
- 60 min: 1,605Kbps (1,829Kbps with audio)
- 63 min: 1,518Kbps (1,742Kbps with audio)
- 64 min or more: don't bother; below 1,500Kbps looks awful
In general you can calculate this yourself by multiplying the number of megabytes on the CD by 156.8, and then dividing by the number of minutes you'd like to record on one CD. For example, for a 700MB CD and a 45-minute movie, (700 x 156.8 / 45) = 2,439.111. Subtract 224Kbps for audio and you have 2,215.111Kbps left for video.
(The derivation of this formula comes from MB/CD x 1024 bytes/KB x 1024 KB/MB x 1/2048 sector/data byte x 2352 video bytes/sector x 8 bits/byte, and then solving the equation for a particular set of constants.)
Note that CDs have a little more space than advertised. So these numbers are fairly conservative.
I've been messing around with SVCDs for the past few nights. An SVCD is to a DVD what an MP3 is to a CD: you scrunch a giant movie file down to a small movie file, and that makes it convenient to do more things with it, such as store it on your PC, put it on a CD that many standalone DVD players can play, etc.
The technology is interesting to me because it lets me encode our kid DVDs onto CD-R and put the originals in safekeeping. When Emily destroys them, no problem -- just burn another copy!
Important data points:
- Only about 40-45 minutes will fit on a 700MB CD-R. That means most movies take up 3 CDs. I suspect this is a fatal flaw for movie archiving, but it's perfect for kids videos, which are typically made for TV. Because an hour of TV is usually no more than 44 minutes of programming, they'll fit just fine on a single disc.
- DivX (which I understand is a deviant version of MPEG-4) can fit a whole movie on one CD-R, but very few standalone players can play it.
- DVDx is a very nice all-in-one ripper/encoder, but it couldn't produce working files for me when I tried to encode an NTSC 23.976 fps movie.
- CladDVD .NET is a nice ripper. That site also has a trial version of TMPGEnc, which is a good encoder with copy protection that is so inconvenient (it periodically rechecks the server to make sure your license key is still valid, presumably to discourage you from publishing your key) that I may choose not to buy it on principle.
- Encoding movies is slow, and error-prone. It wasn't until just this morning that I successfully produced a watchable SVCD -- the first 40 minutes of Starship Troopers. This was maybe my sixth or seventh try. The previous attempts failed because of dropped frames, poorly synced audio, dropped audio, low-quality encoding, or bad aspect ratio.
To convert an Emacs buffer from DOS line endings to Unix, type C-x [ENTER] f unix [ENTER].
Useful article: Compiling and Debugging C in Emacs
if you are coming up against real syntax errors in the code, such as missing semicolons and whatnot, compile-mode lets you jump to them quickly. Rather than using goto-line and typing the line number of a suspected error, just type C-x ` in the code window. (that's a back-tick, or back-quote, which is either in the upper left of your keyboard, or to the right of the single quote.) C-x ` jumps to the next compiler error, so you can keep typing C-x ` until you get to an error you know how to fix.
After much research and rationalizing, I ended up going with the least geeky solution to connectivity at my new address: plain old SBC phone service, no long distance, flat rate, for $11/month. The phone line comes to about $18/month with taxes (a whopping 63.6% tax rate). Then it looks like I'll be going with Sonic.net for DSL: 1.5/384, 8 static IP addresses for an introductory price of $45 later going to $70 a month. Total monthly: $63.
Other options were SBC all the way: $18 + $75 for "Pro-S" DSL = $93/month, or Speakeasy dry-pair DSL and Vonage: $66 + $15 = $81/month.
As much as I'd like to try VoIP, the numbers don't work out. My wife and I don't have a big phone bill to begin with, so there isn't much economic incentive to try it.
My Thinkpad T41p is a fine laptop, but for some really weird reason IBM forgot to put on the Windows key and the Application (a.k.a. Context) key. Add this to your registry to convert the two useless buttons next to the arrow keys (I think they were page-back and page-forward) to the Windows and Context keys:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,03,00,00,\
00,5b,e0,6a,e0,5d,e0,69,e0,00,00,00,00
Then restart your computer and it should work.
"A C program is like a fast dance on a newly waxed dance floor by people carrying razors." - Waldi Ravens
Speakeasy's new OneLink service (Thanks, Erik, for the link.)
