Posted by jason on Mar 1, 2009 in
Uncategorized
By “hot” I of course mean “stolen”. Kinda.
I was hanging out with my friend Jen, watching the latest (excellent) episode of Dollhouse, when I happened to ask her why her cat was named Dip. “Because,” she said, “a friend of mine used to have a cat named Chip. Also, my family has another thing named Chip. It’s a ceramic burro. My cousin has it now but we’re always stealing it back and forth. Holy crap, she’s had it for a long time, and she lives in Raleigh. Do you want to go steal a ceramic burro?”
I gave the only possible answer to such an awesome question posed at 11:15 on a Sunday night: “Totally.”
So, we braved the blizzard and the late hour to drive across the city to where her cousin lives, near Garner. We turned out lights off as we entered the cul-de-sac so as not to alert anyone in the house of our potential evil deeds. (Her sister has a baby and goes to bed early, so we didn’t think we really had anything to worry about, but we were being cautious.)
After parking the car just down the street, we sneaked up to where the burrow was stationed, right next to the porch. We took a few pictures of it, because, you know, who wouldn’t want to have their picture taken with a ceramic burro? At that point, I easily picked up the burro and danced around with it in the yard a bit since it was so light and airy.


I kid. Actually, the burro weighed about 15 and a half tons, considering it’s actually made of steel-reinforced concrete. I barely hefted the thing up into my arms and staggered over to the car. Jen raised the liftgate and I gingerly placed it in the back of the truck. I should also mention at this point that, due to the repeated thefts, the burro has become a bit brittle in its extremities–Jen put a plastic bag over its head to catch any pieces of burro ear that happened to come astray. I’d prefer to think that the bag was there so the burro didn’t know where it was going.

Anyway, after placing the burro in the back of the truck, we closed the liftgate and started to get in the car. It was at this point that I realized that some of Jen’s cousin’s neighbors were in the driveway of the house next door looking right at us, getting ready to get in their car.
Did we look suspicious? I’m sure not at all. I mean, all we did was drive up with our lights off and grab something out of someone’s hard. I’m sure that happens all the time. So, we totally played it cool and casually drove away acting as if nothing had happened.
I kid again. Actually, we kinda freaked that we were going to get busted, so we drove around the block–mostly with the lights still off–and found an “inconspicuous” place to park along the street while we watched to make sure the neighbors drove on past.
Feeling confident that we were in the clear, we drove the half-hour back to Jen’s place, where I heaved Chip into his new home on Jen’s back porch. He looked very sad there, all alone in the cold! I think Jen’s going to bring him inside in a bit so his feelings aren’t hurt.
Plus, he needs to meet “Dip”. After all, that’s how this entire episode came about.

Tags: burro, consortium, hijinks
Posted by jason on Feb 27, 2009 in
Uncategorized
Wait, I can’t put anything *else* in the toilets?

Tags: signs
Posted by jason on Feb 25, 2009 in
Uncategorized
This computer gets as far as the Windows logo (pictured) and then reboots. It’s been doing this for the past hour, ever since class started. Over and over again.
It was doing this during class on Monday as well, so this thing could have been going for 48 hours now. Once I’ve noticed it, I can’t stop staring at it! It’s driving me crazy, but I can’t really get up in the middle of class to turn it off.
Dear. Lord. Somebody make it stop.

Tags: class, windows
Posted by jason on Feb 24, 2009 in
Uncategorized

Posted by jason on Dec 7, 2007 in
Uncategorized
There are at least five different promos going on for various Mac shareware right now. If you're part of the Mac fold, I'd say you pretty much “gotta” check out the first two; the other three are cool, but less so.
This is part of what, in my opinion, sets the Mac experience apart from that of other platforms: there is a vibrant ecosystem of independent, small-scale development shops producing stunningly-good apps for free, or for low cost. (Although there's clearly lots of independent development going on for other platforms, there seems to be a much greater variability in the quality.) Promotion events like these give good advertising for those smaller development shops, and give Mac users the chance to try and use good software that they might never have even heard of before. I really think it's a win-win.
I've listed them below, ordered by descending perceived awesomeness.
- MacHeist – In its second year, you act as a “spy” and solve mission-related puzzles about once a week. Free apps await after you complete each mission, as well as incremental discounts on a large bundle that will go on sale at the end. This is terrifically fun; I can't recommend it highly enough.
Technorati Tags:
mac, deals, apple
- MacUpdate Bundle – Bundle of 7 applications on sale over the next week or so at roughly 90% off the total retail price. Three additional apps will “unlock” and become part of the bundle if sales are high enough.
- MacSanta – Several apps listed each day from now through Christmas at 20% off. Apps from previous days available at 10% off. Lots of variety here, but the discount isn't as good as the previous two.
- Give Good Food to your Mac – Piece together your own bundle of apps, with a discount percentage that increases based on how many apps you buy. I didn't find any of the apps particularly compelling, but you might disagree. Ends 12/10.
- TheMacPak Santa's Stocking – A bundle of five apps and two games at a pretty steep discount, available through 12/10. The only problem: you don't know what the apps are before you buy them!
Tags: apple
Posted by jason on Aug 21, 2007 in
Uncategorized,
diy,
hacks
I've got a reasonably interesting setup of MisterHouse (a nifty Perl-based home automation program) running on a Linux machine upstairs, that does stuff like turn on lights automatically when it's getting dark or when I enter a room, turn lights off when there hasn't been any activity in a room after a predefined time, and so forth. Maybe I'll post more on that later.
One thing that's missing, though, is a good way for the server to know if I'm home. As I mentioned, there are some lights that come on automatically when it gets dark, but some of that is really kind of a waste of energy if I'm not actually home. (Of course, some lighting would be good so our dogs can get around, but I think they'd be fine with a smidge fewer lumens than we expect.)
One suggestion that I've seen is to install a battery powered motion sensor (like this one somewhere inconspicuous in your car. This broadcasts on the X10 wireless spectrum, and would likely be within range if your car is at home. It broadcasts “motion” and “still” (i.e. “no motion”) signals, as well as “light” and “dark”, so it will send signals even if it doesn't see movement. Then, presumably, you can configure MisterHouse so that, if it notices these wireless signals, it assumes that you are home.
However, this solution has a couple of unpleasant attributes:
- It requires you to stick a motion sensor in your car
- Motion sensors are ugly
- It's not going to transmit continuously enough for your home automation system to know you're “still” there
- There's no way you'd be able to pick up chicks in your ride if they see ugly motion sensors, plus they'd probably think they were cameras and get all creeped out
Another way you could do it (that would be fantastically cool) would be with RFID. If, somehow, you carried an RFID tag around with you most of the time, a long-range RFID reader could tell when you're home and alert MisterHouse appropriately. This would be sweet. One idea (and I don't know if this is my own, or one that I read somewhere) is to put the RFID tag on your keychain, and then embed a reader in a hook where you hang your keys when you come in the door. That would work great, as long as you are diligent about putting your keys there as soon as you walk in the door. Me, that's not how I operate. As soon as I walk in the door, I like to baseball-pitch my keys into a neighboring town and/or state for convenience when I'm about to leave again. Oh, and also, I don't have any RFID stuff yet, so I'd have to buy some and learn it and integrate it. Devil you know and all that.
So, after getting my (awesome) iPhone and pairing it with my wireless network, I realized there was another possibility–if the phone is currently on the network, that's a pretty good indication that I'm home. My phone is always on, and always with me, so it seems there's a fairly low likelihood of false positives and false negatives. My basic plan is to try to ping the phone on some frequent basis, maybe once per minute, and see if it responds. If it does, then tell Misterhouse that I'm home.
One caveat: I use DHCP on my home network, so it's theoretically possible that I could have different IP addresses each time I join the network. Since I hacked my Linksys WRT54G to use DD-WRT, I could configure the router to give my phone a static DHCP assignment. That's too easy, though, so I decided I'd try to learn a bit and ping the phone by its MAC address (which is hardware-specific and never changes) instead of its IP address. Your system maintains a mapping from MAC address to IP address internally. This mapping is done via a protocol called ARP.
First, I looked in my phone settings to determine my MAC address. If you're a lucky iPhone user, too, you can find your MAC address at Settings > General > About > Wi-Fi Address, like so:

From this, I know that my iPhone's MAC address starts with 00:1B:63.
Next, I logged into my Linux machine upstairs (the one running MisterHouse) and sent a “ping” to the network broadcast address, which tells all hosts to respond:
[jason@assmonkey ~]$ ping -b 192.168.1.255
WARNING: pinging broadcast address
PING 192.168.1.255 (192.168.1.255) 56(84) bytes of data.
64 bytes from 192.168.1.101: icmp_seq=1 ttl=64 time=53.5 ms
64 bytes from 192.168.1.158: icmp_seq=1 ttl=64 time=56.9 ms (DUP!)
64 bytes from 192.168.1.101: icmp_seq=2 ttl=64 time=77.4 ms
64 bytes from 192.168.1.158: icmp_seq=2 ttl=64 time=178 ms (DUP!)
64 bytes from 192.168.1.101: icmp_seq=3 ttl=64 time=101 ms
64 bytes from 192.168.1.158: icmp_seq=3 ttl=64 time=201 ms (DUP!)
--- 192.168.1.255 ping statistics ---
3 packets transmitted, 3 received, +3 duplicates, 0% packet loss, time 2000ms
rtt min/avg/max/mdev = 53.509/111.650/201.997/58.103 ms
[jason@assmonkey ~]$
This has the effect of filling in the ARP cache on your system with the MAC addresses of all machines that responded to the ping. Now, I can look in the cache with the following command:
[jason@assmonkey ~]$ /sbin/arp -a
? (192.168.1.158) at 00:1B:63:XX:XX:XX [ether] on eth0
Crap (192.168.1.1) at 00:18:39:XX:XX:XX [ether] on eth0
macbook (192.168.1.101) at 00:17:F2:XX:XX:XX [ether] on eth0
? (192.168.1.131) at 00:0F:1F:XX:XX:XX [ether] on eth0
[jason@assmonkey ~]$
Bingo! Since we know that the MAC address started with 00:1B:63, we can tell that its IP address is 192.168.1.158. Now, a good old-fashioned ping confirms that the phone is on the network:
[jason@assmonkey ~]$ ping 192.168.1.158
PING 192.168.1.158 (192.168.1.158) 56(84) bytes of data.
64 bytes from 192.168.1.158: icmp_seq=1 ttl=64 time=51.3 ms
64 bytes from 192.168.1.158: icmp_seq=2 ttl=64 time=2.61 ms
--- 192.168.1.158 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 2.619/26.964/51.310/24.346 ms
[jason@assmonkey ~]$
But, oh noes! A few minutes later, I retried the ping, and found this:
[jason@assmonkey ~]$ ping 192.168.1.158
PING 192.168.1.158 (192.168.1.158) 56(84) bytes of data.
--- 192.168.1.158 ping statistics ---
10 packets transmitted, 0 received, 100% packet loss, time 8999ms
[jason@assmonkey ~]$
The phone wasn't pingable anymore! I did some digging around, and came to the conclusion that the iPhone disconnects from the wireless network when you're not actively using it. This is probably done to conserve power. Unfortunately, though, this kind of defeats the point of the entire attempt, as I need the phone to be pingable on a continuous basis in order for my presence detection scheme to work.
So, that's why I put “almost” in the title. Anyone know a more clever way to do this?
Tags: apple, diy, hack
Posted by jason on Aug 20, 2007 in
Uncategorized
So, I'm trying to register my blog with Technorati, and apparently to do so I have to create a special post with a special code to prove that I own this blog.
So, here's the post: Technorati Profile
I was also told that the code would entitle me to a FREE CHICKEN BISCUIT at Chick-fil-A. Sweet.
UPDATE: The lady at the counter just looked at me funny. What the heck, man?
Posted by jason on Aug 13, 2007 in
Uncategorized,
journal
One of my flickr photos was published in the Schmap!! travel guide, this time for Vancouver.
Specifically, this photo:

…was published here. Cool!
Tags: photography
Posted by jason on Jul 14, 2007 in
Uncategorized,
journal
Dude, how cool is this? Two pictures I took in Portland were selected from my flickr site and published online as part of the Schmap travel guide for Portland.
The photos in question:
Granted, it's not huge news, but it's not bad for someone who barely knows what they're doing. (And it's even cooler since the trip was on the company dime so I could attend OOPSLA!)
Tags: photography
Posted by jason on Sep 15, 2006 in
Uncategorized,
travel
Another very long day, and not a lot of photos to show for it! OK, perhaps "not a lot" isn't the way most people would describe it, but there are definitely fewer than I have taken on most other longish days of the trip.
Photos: today only (sorry, no captions yet, it is late!), all days
We started the day at the other Disney water park, Typhoon Lagoon. We went around their lazy river, which went all around the circumference of the park just like the one at Blizzard Beach. I think this one might have been shorter, but I'm not sure. We then spent a fair amount of time in the wave pool, which was different from the Blizzardish wave pool we saw yesterday–whereas the one at Blizzard Beach produced medium-sized waves on a continuous basis, the one at Typhoon lagoon produced only about one wave every two minutes, and that wave was positively giant. It was fun, although we almost lost the little dry box I had around my neck which had, among other important things, our room keys in it. That would have been a bad thing. Fortunately some folks behind us found it and were nice enough to return it to us almost immediately. That's all we really did at Typhoon Lagoon; we were there for a couple of hours, then we made our way back to the hotel bus.
[More below]
We went back to the hotel to change, and then headed out to Epcot for a bit, because I wanted to see the remainder of the "Innoventions" areas that we had so far missed. That area is where we got to ride a Segway scooter some days ago, and it's where I remember a robot arm drawing a picture of me when I was there fifteen years ago or so! Sadly, it appears to have gone through a major redesign since then, and the exhibits weren't nearly as interesting to me. We did however ride "Spaceship Earth" again (that's the ride beneath the giant Epcot ball), which is one of our favorites, so it was all worth it. We had dinner reservations at the Contemporary (read: "ugly") Resort at 4:50, so we headed for the monorail at about 4:00.
The monorail proved to be excruciatingly slow. We were held up in monorail traffic for what seemed like monorail hours, both before and after we switched monorails at the transportation and ticket center. (Monorail.) We actually missed our reservation time, and didn't make it to the (ugly) Contemporary Resort until about 5:00. It was all fine, though, they led us right to a table at the Contemporary Steakhouse.
Again, the Disney Dining Plan that we got for free with our tickets paid for itself today, as Anna and I both ordered filet mignon, an appetizer, and a dessert, and didn't have to pay anything. What a deal! A popular topic of discussion is whether or not the dining plan would be worth it, if we had had to pay for it instead. The consensus answer seems to be yes; although one is likely able to eat for a day less expensively than the cost of a day of the Disney Dining Plan, using the plan gives you better-quality food than you might otherwise get, and you don't have to worry about the cost while you're there!
After we finished eating, we were going straight to a special event at the Magic Kingdom, "Mickey's Not-So-Scary Halloween Party." Anna had paid extra for these tickets, and had even bought us costumes for the event–Tinkerbell and Peter Pan! (I was concerned about dressing up as Peter Pan, but Anna did some extra research and made sure the costume didn't have tights!) We changed there in the Contemporary Resort, and were headed for the monorail when Anna discovered that she didn't have her room key. Actually, she realized, someone had come into the bathroom while she was changing in a stall and asked if someone by her name was there. Anna, mystified, chose not to respond, and the person was gone when she was done. An employee in the bathroom said that the person had gone to turn it in at the "front desk," so we walked around the hotel to many desks-front before we finally found the key right at the entrance to the Contemporary Steakhouse where we had just eaten.
The monorail over to the Magic Kingdom was much, much more pleasant than our previous experience–basically non-eventful.
The Halloween Party was great! They had a special parade twice while we where there, with Disney characters dressed up in Halloween costumes! There were lots of Disney villains in the parade, including Captain Hook, the villain from Peter Pan. When he saw us in the first parade he shook his hook at us, and then he walked right over to us and stared us down in the second parade! Before the parade started, the Headless Horseman galloped through the parade route–very cool. Throughout the parade and throughout the park, Disney employees were handing out candy! Anna collected quite a bit of it, despite the fact that neither one of us particularly like candy. Our costumes, and hers in particular, were quite popular–a manager in the Contemporary Resort came over and gave us a coupon for a free dessert because she liked our costumes so much, and we had lots of children asking to have their pictures taken with us. It was fun!
The party ended at midnight, but we left at about 11:30pm, and suffered through a long (but efficiently-managed) line at the bus stop for the trip back to the Pop Century. Tomorrow, we get to go home and see the dogs again! We are both very excited about that!
Tags: disney, travel