Last night, Buena taught me how to rejuvenate old soba noodles!
We were sitting around in the backyard, chatting, and considering whether to go our for dinner, when Buena said she had leftover soba noodles. Maybe we should have that? As it happens, I love soba, so I said that sounded good. We went inside, opened the wine (priorities), and I took the soba out of the refrigerator. Weeelll…the soba had dried out! It looked like some crazy, futuristic sculpture. For that matter, I’ll bet you that there are crazy, futuristic sculptors out there who really do work exclusively in the medium of soba (to paraphrase the Simpsons).
I said to Buena, “Maybe we should go out after all!” Indeed, Buena is always ready to go out, so we started talking about our options, when Buena finally asked why I had changed my mind about the soba. “Soba?,” I said. “What soba?” You mean this crazy, futuristic sculpture over here?
Buena said it was no problem, we’d just “rejuvenate” the noodles. “Great,” I said, “why don’t we just rejuvenate my thighs while we’re at it?” Buena told me that, no, one really can rejuvenate noodles, even if thighs are a lost cause. You just: (i) boil water; (ii) stick in the noodles for 1-2 minutes; (iii) eat and enjoy! We did it, and the noodles came out perfectly–just as they had been when first purchased from the restaurant!
Posted by admin as Uncategorized at 4:03 PM BST
No Comments »
I’ve been avoiding the subject of Tiger’s amazing victory because I don’t want to admit that he is superhuman and I am an ant. But I’m out sick today! So I guess it is time to admit that I am an ant, at least.
Today, I feel like I’m never going to get better. My head hurts, I can’t breathe, I feel exhausted but I can’t sleep. And I’m actually sitting here trying to decide whether I should try to go out for a walk around the block, but I can decide whether I can make it.
Did you hear me? I can’t decide whether I’m going to make it…around the block. Tiger Woods would probably get up out of bed, strip his house down to the rafters and completely remodel his home so that he’d be waiting for wifey when she got home. Oh, that’s right, Tiger isn’t married…
Posted by admin as Uncategorized at 4:03 PM BST
No Comments »
Man, oh man, that was fun to watch.
See, sometimes you just get beat, and there’s nothing you can do about it. Sometimes you are outclassed, you don’t belong on the court, because your team is comprised of washed-up fortysomethings, and there’s nothing you can do about that either. But sometimes…every once and a while, if you are the Lakers, you open up your trenchcoat and reveal the cold blackness of your empty soul for all to see.
This game was over from the time the Celtics took the lead. The Lakers supposedly have the best player on the planet on their side, and are led by the greatest coach. But they just went out there and gave up. They let the Celtics lay reverse alley-oops on ‘em! They let the Celtics break all kinds of Finals records. And Ray Allen, OMG, Ray Allen…how open do you have to be to hit 7-of-9 from three point land? Good Lord, seven three-pointers? What a gas.
Posted by admin as Uncategorized at 3:43 PM BST
No Comments »
Let’s just get it over with. I went to see the Earthquakes with my friend Buena, and they bombed. They just looked horrible, and Buena was pretty upset. Sooo…I guess I’ll let her write about that and I’ll cover David Beckham instead.
First, I’m no soccer expert, but to my eye it looks like Beckham really does know how to bend the ball. And he has an impressive foot. Watching him kick the ball is like watching those 13-year-old snowboarders in the Olympics: I just know I’ll never do that.
So, in the first quarter, I thought I’d really enjoy watching Beckham play. He set up an early goal for Edson Buddle and seemed to have the air of a military general: hanging back, setting things up, watching the play. In the other three quarters, he looked like an old man! Standing around, far from the action, barely bothering to run. Was this because his team was ahead? Or does he just look slow because everybody else out there was so fast? Does he play like this in every game?
Anyway, in the last three quarters, watching David Beckham was a snooze. Does he have any defenders out there? I did a quick blog search and learned that Victoria Beckham is a terrible kisser–but didn’t find any opinions on her husband’s soccer skills!
Posted by admin as Uncategorized at 7:19 AM BST
No Comments »
Buena is home most of the day and I, as an academic, have a certain amount of flexibility during the day. I get the impression that Buena uses most of her flexibility to chat over the fence with my husband when he is around or with me when I am. I don’t know what they talk about (hopefully not about me!), but Buena and I usually talk about food or sports. A good deal of the time we end up running out for ice cream.
We are very fortunate to have an ice cream parlor within walking distance of the house…but not too close, if you get my drift. If I know my human nature, then I’d bet dollars to doughnuts that the calories we expend getting to and from the ice cream store are precisely equal to those we consume in the form of ice cream. Perhaps we need to begin walking further, maybe all the way to the gourmet ghetto, and consuming a proportionately larger number of calories!
Posted by admin as Uncategorized at 4:19 PM BST
No Comments »
You can probably figure out what you need to do on the laptop side by thinking about what we’ve done on the server side. We have the server checking for a signal (a new file deposited) by ftp and preparing to set up an ssh tunnel in response to the signal. On the laptop side, all we have to do is: (i) send the signal; (ii) wait for the tunnel to be established; (iii) set up the other side of the tunnel; and (iv) use our new tunnel.
So, here’s a script we can use to send the signal, wait for a reply indicating tunnel set up, and then establish our side of the tunnel:
#!/bin/sh
echo "Sending signal..."
touch sig
ftp -u ftp://USER:PASS@ftp.INTERMEDIARY.COM/public_ftp/ sig
echo "Waiting for reply..."
#loop here with sleep command to check for response q 4 seconds; he will check q 3 minutes
COUNTER=0
while [ $COUNTER -lt 90 ] && [ -z "`ftp -v ftp://USER:PASS@ftp.INTERMEDIARY.COM/public_ftp/reply|grep 226`" ]; do
let COUNTER=COUNTER+1
sleep 4
done
if [ $COUNTER -lt 90 ]; then
tunnelToInt.expect &
#loop here with sleep command to check for tunnel up
COUNTER=0
while [ $COUNTER -lt 40 ]; do
if [ -e 'tunnelToInt.pid' ] && [ ! -z "`ps -ax|grep -f tunnelToInt.pid`" ]; then
break
fi
let COUNTER=COUNTER+1
sleep 1
done
if [ ! $COUNTER -lt 40 ]; then
echo "Couldn't bring up tunnel!"
exit
fi
echo "Your tunnel is ready."
else
echo "No reply received!"
exit
fi
And this one also uses an expect script:
#!/usr/bin/expect -f
set timeout 20
set pid [spawn ssh -N -L2389:localhost:10000 USER@INTERMEDIARY.COM]
expect {
"assword:" { send "PASS\r" }
"(yes/no)? " { send "yes\r"; continue } }
exec echo $pid >tunnelToInt.pid
set timeout -1
expect eof
That’s it. Now you have a tunnel from your local port 2389 to port 10000 on your intermediary and from port 10000 on your intermediary to port 22 on your work machine. Therefore, you can reach your work machine using secure shell, like so:
ssh -p2389 USER@localhost
Note that ssh thinks you are telnetting to port 2389 of the localhost, so you don’t need the “real” IP address of your work machine.
Posted by admin as Uncategorized at 4:19 PM BST
No Comments »
Bet you thought I was a dipstick, didn’t you? I know, I write like one. In truth, I swear, I’m not. I’m actually a scientist and a pretty smart cookie who knows a bit of programming.
Today I’m going to tell you how to tunnel out from your computer at work, so that you can see it from your computer at home. To do this, you need an intermediary computer with shell access. A free hosting account with ftp access won’t help you.
The basic idea is to have your work computer dial out to an intermediary that is visible to the whole world, using a shell script like this one:
#!/bin/sh
# q 3 minutes by cron:
# if (sig and no pid) bring up link and send reply
# elsif (sig and pid) exit
# elsif (no sig and pid) kill
# else exit
if [ ! -z "`ftp -v ftp://USER:PASS@ftp.INTERMEDIARY.COM/public_ftp/sig|grep 226`" ]; then
if [ -e 'tunnelFromInt.pid' ]; then
if [ -z "`ps -ax|grep -f tunnelFromInt.pid`" ]; then tunnelFromInt.expect &
else exit
fi
else
tunnelFromInt.expect &
#loop here with sleep command to check for tunnel up
COUNTER=0
while [ $COUNTER -lt 40 ]; do
if [ -e 'tunnelFromInt.pid' ] && [ ! -z "`ps -ax|grep -f tunnelFromInt.pid`" ]; then
break
fi
let COUNTER=COUNTER+1
sleep 1
done
if [ ! $COUNTER -lt 40 ]; then
echo "Couldn't bring up tunnel!"
exit
fi
touch reply
ftp -u ftp://USER:PASS@ftp.INTERMEDIARY.COM/public_ftp/ reply;
fi
else
if [ -e 'tunnelFromInt.pid' ]; then
rmReply.expect
if [ ! -z "`ps -ax|grep -f tunnelFromInt.pid`" ]; then kill `cat tunnelFromInt.pid`
fi
rm tunnelFromInt.pid
fi
fi
You will need a couple of expect scripts to go with this, like so:
#!/usr/bin/expect -f
set timeout 20
set pid [spawn ssh -N -R10000:localhost:22 USER@INTERMEDIARY.COM]
expect {
"assword:" { send "PASS\r" }
"(yes/no)? " { send "yes\r"; continue } }
#Note you really should be checking to see if remote port forwarding fails,
#and then try different ports, then save the correct
#port in the reply file
exec echo $pid >tunnelFromInt.pid
set timeout -1
expect eof
#!/usr/bin/expect -f
set timeout 20
spawn ftp USER@INTERMEDIARY.COM
expect "assword:"
send "PASS\r"
expect "ftp> "
send "cd public_ftp\r"
expect "ftp> "
send "delete reply\r"
expect "ftp> "
send "quit\r"
As mentioned in the comments above, run this program frequently via cron. I have it set to run every three minutes, so my wait for a connection averages only 1.5 minutes.
I’ll save the laptop side for another post.
Posted by admin as Uncategorized at 8:31 AM BST
No Comments »
Phillip told me this joke this morning while we were lying in bed:
A man calls the Animal Control in his town, because there is a crazed gorilla on his roof, and he can’t figure out how to get it down safely. Soon, a van pulls up, and an old man gets out, carrying a small dog, a baseball bat, and a gun. He hands the man the gun.
“Okay, here’s what we do. I’m going to go up onto your roof, and threaten the gorilla with this baseball bat until he falls down. When he falls down, this little dog will bite him in the balls until he’s incapacitated.”
“Great,” says the man. “But what’s the gun for?”
“In case I fall down instead of the gorilla — shoot the dog.”
What I want to know is: where does he get this stuff? Phillip goes to work and comes back–for the most part, that’s pretty much it. He doesn’t spend a lot of time in his local pub, and his economics colleagues don’t seem likely to forward this type of thing around. Is he spending most of his time surfing the web, looking for so-so jokes with which to amuse little old me?
Posted by admin as Uncategorized at 4:04 PM BST
No Comments »
OK, so Buena has a big garden, and I don’t. So I don’t necessarily know what I’m talking about. But, what can I say, I’m a scientist! So I believe in my ideas. Here’s one.
Buena is growing corn and lettuce in raised beds to keep the snails away. Most of those raised beds are made of wood–but recently Buena ran out of space and decided to plant lettuce in a box made of corrugated cardboard, surrounded by plastic tape. Yes, folks, it does indeed look pretty awful. Well, as it happens some of the lettuce seeds fell into the holes at the edge of the corrugation…and they sprouted.
My idea is to used this as a simple way to start seeds. One could pack the cardboard with, for example, tree seeds, then plant the edge of the cardboard in the ground.
No, wait…for tree seeds, perhaps it would be interesting to watch the roots grow. What if one could find plastic-backed corrugated cardboard, for starting the seeds while watching the roots expand within the cardboard. Alternatively, maybe a long piece of cardboard could serve as a sort of wick, to allow the tree access to water at levels far below its own root system?
For garden seeds, this might represent an easy way to plant mixes in ordered groups. We could sell a stretch of cardboard containing various kinds of seeds in attractive groups. The cardboard could just be planted directly to create a nice planter box.
Posted by admin as Uncategorized at 3:55 PM BST
No Comments »
This one is cool, and simple. Are the horizontal lines in this image parallel?

Isn’t it amazing? I actually think it is easy to tell that the lines are in fact parallel, especially on a computer screen, where the pixels seem to line up. But without thinking just glancing at the image, the lines seem to curve dramatically!
This reminds me of the way that love changes our perception of physical beauty. Looked at in detail, many folks aren’t beautiful. But when those same folks are loved by another person, they become intensely, dramatically beautiful.
Posted by admin as Uncategorized at 3:43 PM BST
No Comments »