October 2004 Archives
My sister is never going to write about this (her own invention), so I will.
There's virtual reality, and lately "augmented" reality. For those of us on a budget, there's fabricated reality.
Example of an FR experience: "Oh, yeah, I've been to France; I went just last year!"
Your Child's Predicted Height Results: A (female) child who is 2 feet and 5 inches at 1 years and 3 months of age has a predicted future height of: 154.8 cm, or 5 feet 0.9 inches
Blog comment spam is like death by a thousand cuts. In fact it's worse because it lasts for months. Here was my solution:
mysql> update mt_entry set entry_allow_comments=0;
Amit's Thoughts: The secret to true happiness
Seligman tells of an academic colleague who kept an Amazonian lizard as a pet in his lab. It would eat nothing he could think of to feed it - not lettuce, mango, minced meat, swatted flies. It was starving before his eyes.One day he offered it a ham sandwich. No interest. He began reading the paper, finished the first section and allowed it to drop to the floor on top of the sandwich.
"The lizard took one look at this configuration, crept stealthily across the floor, leapt onto the newspaper, shredded it, and then gobbled up the ham sandwich," Seligman writes. It needed to stalk and shred before it would eat. And we turn out to be a bit like that.
Thanks, Amit!
I last worked on the C version of WINW in April 2004. I'd been working on it for nearly a year and was starting to get frustrated with a lack of focus that expressed itself as an irresistible desire to continue to rewrite perfectly good parts of the code. This is expensive to do in C, and it wasn't making WINW any better. Nor was I coming any closer to the essential feature of the program: file sharing.
So I quit for a while. I have continued to think about WINW, though, and have used it as an excuse to investigate and learn new technologies and methodologies, which is always fun.
I have a name for some of the people who read my blog: they're my "one-way friends." They've bookmarked my site, so know what's going on in my life and they may even know some of my most personal thoughts, but we never talk to each other; in fact, I may never even have met them. Do you have one-way friends? People whose blogs you occasionally check out, and learn that they've moved, or gotten in a fender bender, or seen something funny on TV, or gotten married and had two kids, and now after spending 90 seconds reading their web page you're all caught up with them and there's just no reason left to talk to them in real life.
There are occasional cases of mutual half-duplex one-way friendship, where I read someone's blog, and that person reads mine, but we never actually communicate with each other. The most likely case of MHDOWF is an old friend who I sent the "Hello this is Mike Tsao from _____, remember me?"-type email, and we ended up bookmarking each other's site, but the purest form is where some random person on the web mentions an entry from my blog, I learn about it from my referrer logs, and then I start reading that person's blog, and pow! new one-way friend.
And then where more than two people are involved, there's the unidirectional daisy-chain friendship...
This one is very simple. To replace tabs with spaces, select a region and type:
M-x untabify
I built this using the following tools:
clearsilver-0.9.12.tar.gz
MinGW-3.1.0-1.exe
MSYS-1.0.10.exe
Python 2.3.3 (#51, Dec 18 2003, 20:22:39) [MSC v.1200 32 bit (Intel)] on win32
MD5 sum of neo_cgi.pyd is bdbedfe1a27fbeda7f39ec8a4973b2bf.
download neo_cgi.pyd (79K zipped)
You should unzip this and throw neo_cgi.pyd in c:\Python23\lib\site-packages\.
OK, OK, I'm the last geek on Earth to figure this out, I know. Bear with me.
Google changed the way people find things. The old way was by location. The new, Google way is by content.
Most computer users from the pre-Google era find things by location. They think it's perfectly natural to have to assign a filename to every item of content they create, such as resume.doc. They also must remember that they put that item in My Documents\work\jobs\resume.doc. If they forget that location, it's tedious and difficult to recover the document.
Likewise, they're trained to put every e-mail they keep in whichever folder it belongs. This is a shame. I'd guess I look at each mail I receive an average of 1.001 times; in other words, I very rarely search for old mail. But if I filed every mail I'd incur the time and expense of filing each time, no matter whether I ever actually look for it.
Google, Gmail, and Google Desktop Search make filenames, domain names, URLs, and URIs much less important than before. Now, I can start naming all my Word files using the following scheme: 1.doc, 2.doc, 3.doc, etc., and I'll still be able to find them. If a tower-of-Babel moment occurred and all domain names were garbled, that's OK -- once Google updates its index, I'll still be able to find everything. And I never sorted my email to begin with, so I've simply become more productive since moving to Gmail.
Will the next desktop OS eliminate folders and filenames?
Thanks to Adam for this amazing tip:
"A little-known Windows fact: you can press Ctrl+C in any dialog box generated with MessageBox() (or any of its variants) to copy the message text to the clipboard."
More than once I've added an authorized key to my SSH configuration and logged out without setting the permissions back again. My login passwords are all very long and randomly generated, I generally don't use them, and I certainly haven't memorized them. This makes it quite inconvenient to recover from accidentally disabling public-key logins. So I put this in ~/.bash_logout today:
chmod 400 ~/.ssh/authorized_keys
Seems to work fine. I haven't thought of a reason why this is a bad idea, other than it promotes forgetfulness.
x - delete a character
! - start of line
$ - end of line
dd - delete line
i - go to insert mode
a - go to append mode
esc - go back to command mode
u - undo
:wq - write and quit
:q! - just quit
:e! - undo what you did to the file and start over
:q! emacs - anything more complicated
This was hard to figure out. I've had a little Debian fileserver for about a year, and after discovering Cygwin X, wanted to be able to use X applications on that machine, rather than boring old PuTTY sessions.
I configured an awful lot of X stuff on the machine, but nothing worked. Every time I tried to start xclock, there was no server running, the connection was refused, or various other problems ended up getting in the way. I finally figured out the problem had nothing to do with X. It was ssh: the X11Forwarding option in /etc/ssh/sshd_config was turned off. I turned that on, tried again, and it worked.
Keywords for others having the same problem: audit client rejected connection refused xlib display xauth localhost
If your Tivo starts stuttering, don't run right out to newegg.com and buy a new drive as I did. First, check and see whether your 15-month old toddler shoved the Tivo box back against the wall, covering the air vent.
That's what happened to me. After extensive testing of the drive and finding nothing, I remembered that in the past few weeks, Emily had been quite interested in moving consumer electronics around the house. Tivo moved again; problem solved.
A couple days ago an undocumented feature appeared on Gmail. It's an Atom feed, which is a syndication format (compare RSS), and as implemented in Gmail it gives you a summary of the unread mail in your inbox. Here are my observations; I'd appreciate corrections if I've gotten anything wrong or left anything out. In particular, have you had success or failure with a particular aggregator?
- The link to the feed is https://gmail.google.com/gmail/feed/atom.
- The feed requires SSL. http:// rather than https:// won't work (though it will redirect if your aggregator supports it).
The URL must be exact. Adding a trailing slash won't work.Fixed this 10/21/2004.- For most aggregators, the feed requires HTTP authentication. Your aggregator should prompt you for your Gmail username and password when you first subscribe.
- For most browsers or browser-integrated aggregators, the feed will work with your Gmail web cookie. You don't need to enter your username/password through HTTP authentication, but the feed will work only as long as you're logged in to Gmail, which isn't particularly useful.
- The content of the feed is the unread messages in your inbox. If you don't have any such messages, you won't see any interesting content in the feed!
- Sage: this Firefox extension works through session cookies.
- Feedreader: doesn't work because it doesn't support SSL.
- SharpReader: yes, it works because it supports SSL and HTTP authentication.
- Bloglines: doesn't work because it doesn't support SSL, and even if it did, I'm not willing to give my Gmail password to anyone else.
- FeedDemon: I've heard this works but I haven't tried it.
- NetNewsWire 2.0b3: works (Thanks, Matt!)
- BottomFeeder: works (Thanks, JH!)
- Shrook 2
- NetNewsWire
- NewzCrawler
- NewsGator
A few nights ago I got my Linksys WRT-54G router to do local DNS. This doesn't sound like much, but believe me, after spending an inexcusably long time working with raw IP addresses throughout my house, it's been positively intoxicating. Now I've got it all worked out so a particular MAC address gets a hostname and a fixed DHCP address, forward- and reverse-resolution works like a charm, mapped fileshares actually work, and I can use URLs with real hostnames in them instead of good old http://192.168.0.1/.
