Thursday, March 31, 2011

Setting up a Short Domain Name and a GoDaddy Surprise

I love the name of our business - it's simple and direct, just like we strive to be as a company. But, if there's one thing I don't like about it, it's giving out my e-mail over the phone. The long domain name is just a drag. The fix I decided to implement was to buy some shorter domain names, specifically ones I thought I could give out over the phone a bit easier.

I ended up going with:

To make these domains actually useful, I wanted to setup both e-mail and web redirects.

Forwarding the Web

There are a handful of ways to forward a web domain name. Heck, GoDaddy allows you to do this right from the domain manager they provide. I couldn't resist using a RewriteRule hack I've fallen back on many times. I through the following in my webserver's httpd.conf:

<VirtualHost *:80>
    DocumentRoot /var/www/vhosts/
    RewriteEngine on
    RewriteRule /(.*)$1 [R=301]

This configuration sets up a dummy virtual host which responds to a whole slew of domain names that I want redirected, and then issues a basic RewriteRule command to send everything to my real domain:

Forwarding E-mail

Setting up e-mail is in my eyes always more daunting. I take one look at the docs for postfix and my eyes glaze over. Luckily, exactly what I wanted to do was outlined here. The first step was to point the MX record in GoDaddy's DNS to my Linux box. With that out of the way, I added the following to my /etc/postfix/

virtual_alias_domains =,
virtual_alias_maps = hash:/etc/postfix/virtual      

Inside of /etc/postfix/virtual I added lines like:

I then ran sudo postmap /etc/postfix/virtual, restarted postfix, and to my amazement, mail was properly forwarded.

A GoDaddy Surpise

When setting the above up, I ran into a strange problem: the domain wasn't being found by dig. Surely GoDaddy must have an obscure provisioning problem, I thought. So, I got GoDaddy on the line and explained to them the situation. After some back and forth I realized it was me, not GoDaddy who had the fault. I had purchased instead of D'oh! To my amazement, Shawn, the tech on the other end of the phone, gladly offered to refund the domain I purchased and get me the one I intended. Withing a few minutes, he had switched everything around for me.

I never really thought about what the return policy on something like this would be - but I was delighted that GoDaddy could just undo the oops that I created.

So now I've got my new domains - I'm almost looking forward to giving it out over the phone to see how it works.

Wednesday, March 30, 2011

Appreciating the Bic Lighter

I've always carried a Bic Lighter while backpacking, but it wasn't till I saw this post that I really appreciated that tiny device:

As my pal Thad put it a few years ago: “The humble Bic lighter is in fact the pinnacle of human technical achievement and fairly close to a techno–religious talisman. In a completely integrated package, every significant detail of human evolution (the opposable thumb, mastery of fire, and control of various materials) is embodied. Plus it fits nicely in the pocket and comes in a rainbow of pretty colors.”

Wow, good points.

I like the insight about using a Bic Lighter as a gift or trade item. Heck, maybe they would make cool company schwag - what with the power one of these guys contains.

It really is easy to ignore the wonders around us - be they man made or natural.

Oh, and these days when I do carry a lighter, I usually carry a Scripto Tiny Lite rather than a Bic Mini because it's a little smaller.

What-I-Carry-Wednesday: Emergency Toddler Entertainment Kit

I try to be good about bringing along the appropriate load of books and technology whenever we take our 19 month old somewhere he'll need to be entertained. But sometimes, I'm caught off guard and we end up in a holding pattern. Not to fear, in our little guy's diaper bag is his Emergency Toddler Entertainment Kit.

Here's what it looks like:

The contents:

  • A Balloon - a sort of instant ball, not to mention fun interactive toy
  • Crayons - for use with my notepad or on the furniture/walls, depending on who's making us wait ;-)
  • Red Car - what toddler doesn't love cars?
  • Stickers - I don't get it, our little one is absolutely smitten with stickers. He doesn't actually do anything with them, except, eventually put them in his mouth. But he's just fascinated to handle them and treats getting one as a treasure. It's one of easiest ways we can distract him to stop him from a tantrum. I like these ones in particular because they are small so they present a minimal choking hazard. And the different color choices means we can practice our colors when I give him one ("Do you want the red one or blue?" kind of thing)
  • A key - mostly clean
  • A colorful loyalty card - he's a little old for this hack, but it's small, so why not carry it?
  • A travel toothbrush cap thingy - our little guys loves to open this up, cram things in here, and then close it. And repeat. It works especially well with restaurants and little bits of bread. I'm not sure why he loves it, but he does.

A few notes worth mentioning: (1) all of the above stuff is small, and therefore a choking hazard. So, when I take these toys out, we play with them together. (2) these items keep his attention now, but I know that's only temporary. I've replaced items as he's gotten less interested in them, and I expect I'll continue to do so.

My only regret is that I couldn't cram all this stuff into an Altoids Tin - then I could really have been cool.

Tuesday, March 29, 2011

Gotcha of the Day: Google Customer Search Indexes https Content

Tonight, one of my client's discovered an odd issue with his Google Custom Search setup - it was indexing and directing folks to https versions of his page. He doesn't really a need for https, so while the server is listening on port 443 (probably for plesk, right?) sending users over there isn't a good idea.

While Google Custom Search gives you a fair amount of control of which sites get indexed and which don't, I couldn't find an obvious way to tell Google to exclude the https version of the site.

In the end, I used two tips I found floating around the web:

Problem solved, and I learned a multitude of lessons: the inurl: operator rocks, rewrite rules are nearly always the solution and Google Custom Search can magically append a search parameter for you if you ask nicely.

Monday, March 28, 2011

Artists of the day: Bluetech and Kilowatts

Exploriment pointed me to this song by Bluetech & Kilowatts - two artists I'd never heard of. I'm not exactly sure what to make of the music, but I know I like it.

And here's another one:

Just think, with life before the Internet I probably would never have heard of these songs, or even down tempo music. And now, with a few clicks of the mouse I can be enjoying it. Amazing.

Advice for Getting Through Life's Rough Spots

Some very helpful advice from Unicorns For Socialism on how to deal with life's ups and downs:

Now, a life lived ferociously is bound to include more than a few awkward birth canals. Grotesque break-ups. Nasty business splits. Clients that go A.W.O.L. “Brilliant” choices that bomb. Bad hair. Despair. And every degree of misery in between.

My approach? When life sucks, don’t pretend that it doesn’t — but make sure the suckiness has a limited shelf life. And while you’re crawling towards the shiny neon light at the end of the disco tunnel, LIVE a little, for heaven’s sake. ‘Cause it’s universally impossible for everything to suck. Somewhere, somehow, someone is grinning. So there.

Here's 33 ways to take on life's cruddy moments head on. What a wonderful list.

Here's to misery's very, very, very short shelf life.

JSL - Painless JavaScript Optimization

I've been experimenting with JSL, the JavaScript Loader and really been liking it. It allows to turn:

<script type='text/javascript' src='foo.js'></script>
<script type='text/javascript' src='bar.js'></script>
<script type='text/javascript' src='baz.js'></script>
<script type='text/javascript' src='zoop.js'></script>



and now your JavaScript loads in parallel instead of in sequence. Watching the scripts load simultaneously in Firebug is just too cool.

On one hand, I like how simple the API of JSL is - there's just two method calls (load and add). But, I find it a little quirky: add, as the name suggests, adds a script to the queue of JavaScript files to load. Unless you happen to pass in a priority of -1, then add is equivalent to load. And load load executes the queue, unless you supply a path to a file, then it loads and adds just this one file, leaving the queue unprocessed.

Still, the loader seems to work well and is a breeze to use.

I also looked at headjs - but in the end, I liked the simplicity of JSL.

Do you have a favorite JavaScript loader? If so, please share.

Friday, March 25, 2011

Badass of the Week: Hideaki Akaiwa

Not sure where I came across this article describing the feats of one Hideaki Akaiwa and his response to the disaster in Japan - but it's a remarkable read.

Here's a little snippit:

How the f*** Hideaki Akaiwa got a hold of a wetsuit and a set of SCUBA gear is one of the great mysteries of the world. I'm roughly twenty hours into Fallout 3 and I'm lucky to come across a f***ing vacuum cleaner in that godforsaken post-apocalyptic wasteland, yet this guy is in the middle of a real-life earth-shaking mecha-disaster and he's coming up with oxygen tanks, waterproof suits, and rebreather systems seemingly out of thin air. I guess when you're a truly unstoppable badass, you, by definition, don't let anything stand in your way. You make s*** happen, all the time, no matter what.

Regardless of how he came across this equipment (borrowing, stealing, buying, beating up a Yakuza SCUBA diving demolitions expert, etc.) Hideaki threw on his underwater survival gear, rushed into the goddamned tsunami, and dove beneath the rushing waves, determined to rescue his wife or die trying. I'm not exactly sure whether or not the dude even knew how to operate SCUBA equipment, but according to one version of his story he met his wife while he was surfing (which is awesome, by the way), so it doesn't seem like that much of a stretch to say that he already had a little experience SCUBA diving under a more controlled situation. Of course, even if this dude didn't know how to work the gear I'm certain that wouldn't have stopped him either – Hideaki wasn't going to let a pair of soul-crushing natural disasters deter him from doing awesome s*** and saving his family. He dove down into the water, completely submerged in the freezing cold, pitch black rushing current on all sides, and started swimming through the underwater ruins of his former hometown.

As you can see, it's a story filled with some colorful language. But wow, what a story.


Thursday, March 24, 2011

Tool of the Day: AutoHotKey

I'm back to using a Google Spreadsheet to track my time instead of a cloud based app (more on this later, perhaps). I've setup a really simple spreadsheet do this, and it's refreshing compared to the more complicated UI I've been dealing with over the last year.

But, there is one little annoyance that the fancier time tracking solution had to offer: a built in timer. With my Google Spreadsheet, I enter the start and end timestamp, and then calculate the difference to get my task time. Entering the start and end time isn't awful, but it takes a few moments to look over at the clock on my screen and to retype what's there into a spreadsheet cell.

C'mon, this is a computer, I shouldn't have to retype anything. Ever.

I was tempted to rig up a script inside a spreadsheet, but that seemed like overkill. Then it hit me: I bet an old style windows macro would do the trick. You know, the kind where Windows replays you entering in a sequence of keys.

Googling around landed me on AutoHotKey, which looked tempting. I'm always a bit nervous about downloading windows apps that sound too good to be true, so I checked out LifeHacker. Turns out, they recommend AutoHotKey over and over again.

So, I installed it. Got a little overwhelmed by the options/help file, and after a minute or two wrote up this little guy:

;; Insert the current timestamp into an app
FormatTime, TimeString, , M/d/yyyy hh:mm tt
Send %TimeString%

Now, when I press Windows-z, a Google Spreadsheet compliant timestamp is automatically inserted in the current cell.

Not only is that little problem solved, but my eyes have definitely been opened as to what a power tool this guy can be.

So, tell me, what's your favorite automation hack with AutoHotKey?

Wednesday, March 23, 2011

What-I-Carry-Wednesday: Minimalist Camera Setup

I like to travel and blog - which means that being ready to take quality photos anywhere, anytime, is pretty key for me. It's tempting to think of my Android G2 as my minimalist camera setup - but the lack of zoom, and relatively poor quality, means that I still can't rely 100% on it. Though, I can imagine one day I'll take the majority of photos with my cell phone, I'm just not there yet.

So, here it is, my bare minimum photo kit:

  • Lumix DMC-TZ50 - it fits my requirements well: small enough to fit in a pants pocket, yet, has a 10x zoom and a bunch of manual controls for me to fiddle with. Yes, I'd like a bigger zoom, a smaller size and more manual options - but at the time, the Lumix was the best combination of all three. I do have a case for the camera, but I only use it for storage. When I'm traveling or in a photo happy mood, the camera needs to be in a quickly accessible pocket, ready to go.
  • 3 replacement batteries - nothing is worse than going to take a bunch of photos only to find out you've got a dead battery on your hands. And I've been surprised how cheap the batteries are, too. Inside of each battery case is a small bit of paper with Y on one side, and N on the other. If it's charged, the Y is up, if it's used up, the N shows. This means I can get a quick idea of what my battery situation is like.
  • Battery charger - notice a theme here? When possible, I like to have my charger available, so if I do manage to get into a tight spot with battery usage, and I can try to recover. (Learned this one the hard way at a wedding. I ended up borrowing another guest's charger, and vowed to myself that it would come along with me on future photo ops.)
  • Gorillapod - For its size, it's hard to beat the versatility of the Gorillapod. From balancing on a table to capture a photo of the whole fam, to wrapping it around tree limbs, it's got a million uses.
  • Lens Pen - Right below running out of battery juice, on the list of camera annoyances, has to be having your photos ruined because of a smudge on the lens. The Lens Pen lets mean easily clean these up. A must around kids, or dusty/dirty environments.

You'll notice there's no extra memory card in the kit. That's because I always have one on me.

So, what's the setup missing? Any advice for what my next camera should be?

Tuesday, March 22, 2011

See my only complaint about my Dell Vostro

So far, I'm really liking my Dell Vostro 3300. The feel of the hardware is impressive, and it still surprises me at how fast some actions on it are (like opening up The Gimp).

Here's my only complaint so far. See:

What you're looking at is the backlit keyboard in action. I used it officially for the first time last night, and it worked great.

The problem? Next to the power button is a line of buttons used to control the volume and perform other media operations. You can't see them in the above photo because they aren't backlit. And that's the problem.

If you're going to go through the trouble of backlighting a keyboard, shouldn't you make the volume keys light up too? Especially, because they are already backlit - when you press them, they light up. Can they stay lit?

Still, if that's my only complaint, I'd call the Vostro a success. Well done Dell.

4 Lessons from latest home improvement project

The project: replace the guts (yeah, that's a technical term) of our bedroom bathroom's toilet. The project went surprisingly well (read: I didn't have to call a plumber). Here a few things that helped:

  • Bringing a cell phone, equipped with photos and video, to the hardware store. I was able to show the guy exactly part was leaking. A video really makes this clear.
  • Have extra microfiber clothes on hand. Step one of the process was to complete drain the toilet's tank. This turned out be trickier said than done, because there was still half an inch of standing water in there when the flapper was removed. Using a microfiber cloth, I was able to sponge up all the water in just a couple of trips. And there was enough grime in the toilet tank, that I was glad I could just toss the cloth when I was done with it.
  • Nitrile Gloves rock. Perhaps a man's man doesn't mind getting his hands dirty. If that's the case, I'll continue to be a girly man, thank you very much.
  • Have patience, patience and more patience. There was 15 steps to changing out the float thingy, and I slowly followed each one, understanding the lingo as I went along. It was tempting to just charge ahead and wing it. Instead, taking it step by step was the only sane way to go.

Now, providing the toilet doesn't leak over the next few hours, I think I can safely call this little adventure a success.

Monday, March 21, 2011

Gotcha of the Day: Using Mailinator to test AWeber and failing

I love the mailinator service. Need a disposable e-mail address? Just pick one, like, say, and it's yours. In fact, you can pick any address you want to use.

The catch, of course, is that the e-mail address has zero privacy to it. You, and anyone else who chooses that name share the inbox. For certain types of e-mail this limitation is just fine. The classic use case is for registering for a website. I also use it quite a bit for testing software, where I might need a whole bunch of unique e-mails (, and so on).

This was all well and good until I tried using a bunch of addresses with the AWeber mail service. I was creating a custom form, and for the life of me, I couldn't get AWeber to accept my submissions.

And then it hit me: they've probably black listed addresses.

With that hunch in mind, I visited and checked out the section to the right labeled Alternate Domains. I hit the refresh button a few times and got the following options:

As you may have guessed, any of the above domains will work as a substitute for

I fed AWeber and sure enough, it was glad to accept it.

I can then check that inbox anytime I want by visiting:

So, yeah, nice try AWeber. But, for testing, Mailinator will still work for your service.

The Suprising Hero of Purim: The Baking Mat

OK, Hero may be a bit strong, but still, this baking mat we picked up from Bed Bath and Beyond made Hamantaschen creation a lot less painful this year.

Rolling out Hamantaschen dough means either fighting a losing battle with wax paper, or covering every surface with flour and mess. The Baking Mat promised to be the stationary surface that wax paper (plus tape and whatever else I come up with) never is.

We actually were going to buy two of these guys - but we couldn't justify spending $60.00 on kitchen gadgets which may be useless. Fortunately, they are useful and I'll probably pick up another one from Amazon (where the price seems less steep).

Thanks to our friend Lauren for coming over and helping bake up a storm!

Man, I'm so hungry after writing this post. You'll have to excuse me while I duck downstairs to steal another handful of yummy hamantaschenness.

Friday, March 18, 2011

Friday Funny: Baby vs Nose Blowing and Chemistry Humor

It's Friday - definitely time to laugh. Here are two bits from around the internet that made me smile.

Check out this baby watching mom blow her nose. The baby is both terrified and elated. I can relate.

And check out this chemistry joke:

I know my father-in-law, may his memory be for a blessing, would have enjoyed that one.

Thanks to BuzzFeed for providing the entertainment.

Thursday, March 17, 2011

Got a broken car radio? No problem, I've got a radio guy.

Couple days ago, I go to eject my latest book on CD from my car and instead of the radio producing disks it produced a grinding sound. Not what you want to hear.

Googling around there were basically two options given for fixing this: (1) hit the radio to jiggle it back to life. And (2) cram more CD's in the slot hoping to jiggle it back to life.

Yeah, neither of those approaches worked.

So, we called our Acura dealer and our usual service rep told me she had a guy she could recommend. Her guy: Ramon of Auto Audio Service, Inc.. His phone number: 703-801-2022.

Ramon, like us, is a small business. He removed our radio, brought it back to his shop, got the CD's out for me and repaired it. I didn't have to pay anything until the radio was back and installed. Heck, when I asked him about the CD that he was playing to test-drive the radio with, he told me to just keep it.

Best of all, he makes house calls.

I'd prefer if my radio stayed working, but at least I've got someone call when it breaks.

Using Technology to Flip the Classroom

The radio is out in my car, so I've been listening to TED Talks on day care runs. I'm in the middle of listening to Salman Khan: Let's use video to reinvent education - a title that I'll admit I didn't have high hopes for.

The point of the talk, so far, is how Salman Khan created a bunch of educational videos to help out family members and they were so effective that they started getting used in all sorts of contexts. No surprise there. The mind bending part came when he mentions this:

The other thing that happened -- and even at this point, I said, "Okay, maybe it's a good supplement. It's good for motivated students. It's good for maybe home schoolers." But I didn't think it would be something that would somehow penetrate the classroom.

But then I started getting letters from teachers. And the teachers would write, saying, "We use your videos to flip the classroom. You've given the lectures, so now what we do ... " and this could happen in every classroom in America tomorrow, " ... what I do is I assign the lectures for homework. And what used to be homework, I now have the students doing in the classroom."

And I want to pause here for -- (Laughter) I want to pause here for a second, because there's a couple of interesting things. One, when those teachers are doing that, there's the obvious benefit -- the benefit that now their students can enjoy the videos in the way that my cousins did. They can pause, repeat at their own pace, at their own time. But the more interesting thing is -- and this is the unintuitive thing when you talk about technology in the classroom -- by removing the one size fits all lecture from the classroom and letting students have a self-paced lecture at home, and then when you go to the classroom, letting them do work, having the teacher walk around, having the peers actually be able to interact with each other, these teachers have used technology to humanize the classroom

When I was growing up, be it middle school, high school or college, there was always this sense that what we needed was more computers in the classroom. I think there were good intentions behind this desire, but I'm not sure I ever really saw the point. If I'm in a college lecture and I'm trying to concentrate, how exactly, is a laptop going to help with this? On the other hand, technology and innovation is a good thing and something we should embrace.

And Khan's comments above tie this together: use technology to make the out of classroom time effective, and then use the in class time to leverage the value of teachers and students.

It's simple, it's brilliant and it's totally unintuitive. I love it.

Wednesday, March 16, 2011

What-I-Carry-Wednesday: Pocket Dump

In the tradition of EDC forums, and Flickr: What's in my bag, I give you What-I-Carry Wednesday. I've actually learned quite a bit from others with respect to what gear works and doesn't work from sites like these, so I thought it would make sense to contribute a little back.

The plan is simple: when I have a chance (in theory, on a Wednesday), I'll post some collection of stuff. Like say my camera bag, or portable office. I've done this in the past with my backpacking gear.

So, let's get started.

Seems like the right place to begin is with a pocket dump. Those are always fun.

Here's what's typically in pockets:

  • Plain old white handkerchief. I've carried once since I was 12. It's got a million uses, how does one live without one?
  • Spiral notepad. Probably has the best cost to uses ratio. I find myself scribbling down all sorts of notes, lists and drawings on it all the time. If all else fails, it's a good item to hand to a kid for a few minutes to draw a picture. I like 60 sheet notepads so I can finish them and get that brand-new-notebook feeling often (this one is just about due to be replaced).
  • A wallet which Shira kindly fills with cash.
  • My beloved Swiss Army Knife. I've carried one since I was a kid and can't imagine life without it.
  • A Pilot G2 Pen. It even scores well under stress testing.
  • A Alpha Innovations Stylus Kubotan. I figured I should carry *something* for self defense, and a Kuboton is a simple option. It doesn't give me magic ninja skills, but learning a few simple techniques does give me a slight advantage if someone were to invade my personal space.
  • About 6 feet of paracord. One of these 1000+ use items.
  • A small pill container with a Benadryl for my alergies and a headache relief pill for Shira's migraines. Being able to get rid of a nasty migraine makes this pill basically life saving medication.
  • An REI compass. I've used this way more frequently in an urban context than an outdoor one. The classic case being when I emerge from a subway in an unknown city, I can quickly get oriented. I've found it more reliable than my cell phone's compass.
  • A Photo X-light - super small, super bright, has cool features such as dimming capabilities - it' by far my favorite light. When I go backpacking, it's all I bring with me.
  • An elago mobile USB reader - this thing is super tiny. Inside of it, I have a micro SD card which contains (encrypted) important documents and various useful software apps. I can use the card in my cell phone or camera if needed, and use the reader as a way of grabbing photos from my camera or cell phone if I don't have a cable. This tiny device is amazingly useful.
  • A Fox 40 micro whistle. In cases of emergency, having a way to get people's attention is just too invaluable.
  • A safety pin - ever since I lost a pants button while traveling and was saved by a co-worker who had a safety pin in her purse, I've been sold on the utility of these guys.
  • Not shown: Android G2 phone - thanks to installed apps it's my office, entrainment center, tool kit and information dashboard.

So there you have it.

I'd wonder what my pocket contents say about me - but I think already know: once a Boy Scout, always a Boy Scout.

Tuesday, March 15, 2011

Review: The Shack

A friend of mine nudged me into reading The Shack by William Young. I'm glad she did.

The Shack is a sort of Christian version of Why Bad Things Happen To Good People - it attempts to explain how something as awful as a child being murdered could fit into a Christian theological context.

Although I was a little skeptical at first, I did find the book clever, filled with novel imagery and good at explaining Christian concepts (like, say, the Trinity).

I did, however, read the book with a sort of mission: I was curious how the Christian depiction of G-d would match up with my Jewish experiences. Discarding the obvious differences (like the presence of Jesus), at first there seemed to be a fair bit of alignment. Both the Christian and Jewish perspective talk about our limited vision as people to understand events. But, as the book delved deeper, I could definitely detect a major split in philosophy.

I'd really need to read the book a couple more times to fully grasp what the author was driving at, but it seems like his key message was that we should strive to embrace a sort of active passivity with G-d. That is, the goal is to have a relationship with G-d and you can only achieve this by giving up worldly pursuits. Taking action, even embracing organized religion or laws, only serves to put up barriers between you and G-d.

Jews, on the other hand, are all about action. Instead of looking at ritual as something that harms your relationship with G-d, we look at it as something which enhances it. We eat certain foods, celebrate certain holidays, give money to the poor, etc. because we think this puts on the right track to living the correct life.

But, the idea of action goes just beyond traditional religious life. In a number of places, the book laughs off the foolish idea of "people playing G-d" - what could be sillier, right? Which of course, brings me to one of my all time favorite Rabbincal answers:

Regarding the question of whether man has the right to play G-d, as in many instances of genetic engineering, some claim that it is wrong to play G-d. The Jewish perspective, however, is that since man was created in the image of G-d regarding intelligence, morality and free will, he is intended to be G-d’s partner in creation. To that end, G-d intentionally left the world incomplete in order to involve man in its betterment and refinement. Therefore sickness, poverty and other suffering need not be accepted passively. On the contrary, it is G-d’s will that man intervene to improve the world.

From the Jewish perspective then, not only is it not wrong to play G-d, but we are actually supposed to play G-d to the extent that doing so will benefit and improve the world and humanity.

So, while the Christian response to a tragedy might be to redouble one's faith in G-d, a Jew would do this and look for ways to help improve this world. In the case of a child murder, John Walsh is an excellent role model.

All, in all, though, it was a good read. If you're a Christian, I could definitely see how this could help connect you with your faith. And if, like me, you're just curious - you'll have an interesting read ahead of you.

Monday, March 14, 2011

A Fort Marcy Hike

Yesterday, we attempted to hit Theordore Roosevelt Island for a little light hiking. Unfortunately, we weren't the only ones with this idea and the place was absolutely packed. Rather than waiting for a parking spot, we continued up George Washington Memorial Parkway a couple miles to Fort Marcy. There's not a whole heck of a lot to see there - a couple of canons and a few signs explaining the locations role in the Civil War.

But, we were able to do a perfect little loop hike around the area, and then jumped on the Heritage Trail for another few miles of perfect woods trampling.

The day was absolutely perfect, and there was barely a soul in sight.

We came to an especially tricky stream crossing - probably the trickiest I've ever considered doing before - and after much debate, decided we'd give it a shot. We all made it across in one piece, me including my 30lb payload of 19 month old.

These trails are really gorgeous - if you live in the DC area and haven't been along the Heritage Trail, you're really missing out.

We even saw a couple of deer on the way back to our car. They were among the tamest dear of I've ever seen. While we tried to stay absolutely silent, our little one was explained to us in his usual loud voice that we had a couple of woof-woofs here. He was very excited. The deer just stared at us, and could obviously sense that we were quite unarmed.

We made it all the way to the Chain Bridge, which cross over a remarkably turbulent Potomac River. The river was definitely angry that day, though I'm not quite sure at what or who.

Saturday, March 12, 2011

The First (and Probably Last) Cheerleading Video On Ben's Blog

I don't know whether to laugh, be appalled, or quickly forward this video to my father and brothers (who all have either a PhD or MD) for their review. Yeah, that's it, this video needs peer review.

Either way, I can't resist posting it here.

Goooooooooooooooo Science!

(Watch the video here)

Hmmmm, wonder if this post will get by the censor Shira?

Thursday, March 10, 2011

An Acela Experience and The Best Dang Vegetarian Food Ever

I love meeting face to face with clients - it's just a spectacular way to get a whole lot of work done in a short amount of time. Problem is, I'm usually limited to local clients for this. A new client was interested in a face-to-face meeting and to make matters a little on the tricky side, he was located in Philadelphia, about 3 hours drive from DC.

I could spend most of the day driving, or, I could zip there in half the time on the Acela service by Amtrak. With all that Acela provided, how could I pass up trying it?

Well, I've got to say, it has delivered in nearly every way. The seats have tons of leg room, the cars are clean, the passengers courteous, the views interesting and the electric outlets plentiful. With my tray table down and headphones in, I had an ideal little workspace. (One where I'm tapping out this blog entry, actually.)

The only thing I wasn't impressed with was the free WiFi. It was painfully, unbearably slow. I switched over to my T-mobile stick thingy, and had high speed internet nearly the whole way.

I remarked to one of the passengers I was waiting in line with how I wish the fairs just weren't so expensive. To which she replied, why should they be cheaper? In other words, Acela isn't supposed to be your second choice to flying - it should a premium option that stands on its own. And for a business trip to Philly, it totally does this. No TSA lines, and no need to get to the station an hour ahead of time - this really does kick the pants off flying for short trips.

Perhaps this strategy of offering Acela as a premium transportation option is the right way to go. After all, rail will always lose on price to the bus and car. And for long distances, it can't compete in terms of speed with flying. Maybe it's best shot is to go after the convenience and comfort market.

Now for the promise of a fantastic vegetarian restaurant. My client took me to Govindas, located at 1408 South Street. I got a "pepper steak" sandwich, and good gosh, it was tasty. Seriously, it may be the most delicious veggie sandwich I've ever gotten at a restaurant. They also offer many vegan options. If you're in Philly, look the place up. We did the takeout/fast-food side (which wasn't very fast), but there's also sit down service, too.

All in all, I've really got a refreshed view of train travel from this trip. I'd seriously consider a longer trip (though, not with a 18 month - I'm not that crazy). There's just something magical about watching the world whiz by, and having the conductor come by and punch your ticket. We used to take the train as a kid, and apparently this brought all sorts of warm memories back.

Here are some photos of the 30th street station. I had a few minutes to kill, and I couldn't resist taking a few snapshots.

Wednesday, March 09, 2011

Hike 2,655 miles in 20 seconds

This guy takes 1 photo of his face every day for the 5 months he hikes the Pacific Crest Trail. It's awesome. Enjoy.

Review: Predictably Irrational

You simply have to go out and read Predictably Irrational by Dan Ariely. Why? Allow me to explain.

You frequently make bad choices. And so do I. In fact, us humans, as Ariely explains, all do. Or, to put it in terms the book might use: given a situation, if we were totally rational we'd choose A - instead, we choose B. Two unexpected things about B: (1) it's not the best choice (A, the rational one is) and (2) humans consistently choose B.

Let's talk a specific example. Suppose you see a book on sale for a $1.00. Tempting to pick it up, right? Now, say it's free. As the Ariely explains, our brains are effectively hard wired to find this free offer vastly more appealing than even a $1.00 or a $0.01 book. At a $1.00, we might consider, am I really every going to read this book? At free, we just grab it and go.

Seems reasonable, right? But think about it - if the two choices were $2.00 and $1.00, you wouldn't find the $1.00 optionally particularly exciting. Yet, between $1.00 and free, our logic goes out the door.

And, like most examples of irrationality in this book, this poor decision making can be used against us. You may be looking at two different car options, only one has free oil changes for life. Wow, you think, how sweet is that. Never mind that in the scheme of things, the cost of the oil changes are negligible. They are free, and our brains can't help but see the offer as valuable.

Of course, this is just one example of about a dozen common irrational the book talks about. You need to read this book because you should at the very least be conscious of the kind of whacky decisions you'll make. Naturally, if you're in the business of manipulating people (all you marketers out there, I'm glancing at you), this is probably a must read, too.

So, you make bad choices and this book will warn you about them. But, it does go one step further. It also challenges the reader to consider that these irrational choices may be used to help as much as they hurt.

Want to convince people to get mammograms and colonoscopies? You guessed it, make them free. Of course, that doesn't guarantee that people will get these tests done, but it does use people's own quirky behavior to their advantage instead of their harm.

In fact, this last point about using our own behavior for good, does get one into some pretty awkward territory quickly. Take the new health care law. There are those who are up in arms about its demand that everyone get health care. Surely, it should be the individual's choice, right? How dare the government force people to do this. Ariely, though, would probably argue that this is exactly the kind of choice most people get wrong. That is rather than taking the rational point of view (Yes, I'm 22 years old - but it's still quite possible that I'll get sick or in a major accident), they take the irrational one (I'm 22 and invincible - getting cancer is for everyone but me!). A health care mandate is one of those times when you're potentially taking a decision that people can so readily flub up, out of their hands.

Should the government be in the business of doing this frequently? Of course not. But, for something as major as health care, I'm inclined to say yes*. And after reading this book, I'm further inclined to say there's scientific data to back that up.

At the end of the day, this book is all about embracing our unique humanity. Quirks and all.

*Remember, the government is only saying that you need health insurance. It does not not say which doctor you get it from, or which private insurance plan you need to subscribe to. I think those are important distinctions.

Tuesday, March 08, 2011

MP3Waxx - Master Spammers - I have no choice but to be impressed

For months now, I've been getting mail with the headers like:

From:      MP3Waxx / Ciara / The Dream 
Date    Mon, Mar 7, 2011 at 1:11 PM
Subject:   Ciara ft. The Dream | Lover's Thing | MP3Waxx - Submit your music & visit our website

And body text like:

:Silver Package:
Includes 1 Email Blast sending your music and music video out to 843,000 contacts & 65,000 DJs

Even the unsubscribe page is sketchy: it asks me to enter in my e-mail address (which of course, they should already know) along with "any additional email addresses you would like unsubscribed" (read: please, please, please tell us other e-mails we can SPAM).

And dutifully for the last few months, every time I get one I mark it as SPAM in Gmail. And yet, they continue to come in.

Part of me is a bit ticked off: how can Google not see this as SPAM? Heck, I'm telling it over and over again that this ridiculous offer that isn't even addressed to me is junk. Yet, I'm ignored.

But really, I feel like I have no other choice but to be impressed. The team behind MP3Waxx are true masters of SPAM delivery. I develop a web app, and have problems getting the e-mail confirmation message pass the spam filter and these guys can regularly deliver total crap to me.

Wow. If I ever need to get a message out over e-mail, I'm looking these guys up.

Update: Just got e-mail from the MP3Waxx telling me that that had been unsubscribed, and offering to unsubscribe me from other e-mails. That was nice of them.

Firefox Plugin of the Day: FireFTP

I needed an FTP client that would do FTPS - which, as I learned, is totally different than SFTP. One apparently runs over SSH and one over TLS. Getting all this? Anyway, that's what I needed, and a client pointed me to FireFTP.

I really couldn't imagine needing yet another FTP program. I do most of my FTP'ing with good old ncFTP, which I've always found reliable. And when I do want a graphic FTP (or SFTP) implementation, there's always WinSCP.

But, I have to say, I'm impressed with FireFTP. It runs as a Firefox add-on, which means that if you have Firefox, you don't need to install yet another app. It's got a simple click and drag interface, which is pretty standard these days.

Next time a client asks me for a simple FTP option, I'm going to try sending them to FireFTP. I think it's about as simple as it gets, and does the whole secure thing absolutely painlessly.

Monday, March 07, 2011

Easiest Laptop Setup. Ever.

I've been amazed at how easily I've been able to get up to speed on using my new Dell Vostro laptop.

There are a few factors for this. First off, the majority of content I use daily is stored in The Cloud. Be it: subversion for code, Google Docs for documents, a Wiki for TODO items and so on. So, getting access to it from the new laptop required little more than a few cygwin utilities and a web browser.

Next, there's the fact that I compiled a cheat sheet of software I need to install. This means that I can do a single cygwin install, rather than having to keep returning to the setup process to get yet another utility.

But the real winner for this experience has been Carbonite. I had been using Carbonite as my backup solution on my old Dell.

I simply logged in to my Carbonite account on my new laptop, and hit the big o'l Transfer button. It asked me a handful of questions, and then it went to work restoring my files from the latest backup. After a few days, all 266,842 files had been copied over and my new laptop was completely up to speed. Amazing.

Had this been a disaster recovery scenario, I suppose I would have been a bit bummed out about waiting a few days for all the files to transfer. But, getting everything over is just remarkable in and of itself. I've never had that easy a time transferring files to my new setup.

As for the laptop itself - I'm liking it. It Just Works. In fact, it feels like I don't even have a new laptop, which is the best feeling I could ask for.

Friday, March 04, 2011

Phone Friday: The Next Killer App, Kid Goodies and General Mayhem

The Next Killer App

My friend Nick pointed me to: Overdrive an audio book app. And the killer app part of this? It seamlessly integrate with the Arlington Library. By just knowing my library card (the only ID card I've memorized - a fact I'm quite proud of), I was able to link this app up to the library. I was then able to check out books to my phone.

Think about that: high quality audio book content, for free, downloaded to your phone (so you can listen while out of range of a network). That's awesome. Thanks Nick!

Kid Friendly Apps

As our 18 month old starts to get more excited to interact with my phone rather than eat it, I've started using more apps. Including:

  • Baby Flash Cards - using flash cards to teach your toddler stuff is evil (OK, maybe not evil - just over the top). So I refuse to do that with our little one. But, he loves to look at the pictures and practice his vocab. And the sounds the app make are helpful.
  • Big Bang of Bubbles - this game is too advanced for our little one to play. But he likes to watch the little bubbles bounced around on screen. He can get his bubble fix, anywhere, anytime. And I'm sure he'll be making top scores in just a few months.
  • KidsTube - kids tube is little more than a pre-selected index of links to YouTube videos. But, it's still handy. It's especially useful for discovering new kid friendly content (if I see Baa Baa Black Sheep one more time, my head may explode).
  • Google Image Search - While not a real Android app, Google Image search has impressive integration with the device. I find that it's perfect for pulling up dozens of pictures on a given topic that our little one wants to see. Like when he pleads: more helicopter, please (OK, he doesn't say please every time - but he's learning).

General Mayhem

Not sure what the original post was, but something encouraged me to check out the infamous Ancharists Cookbook. There are PDF's of it all all over the web.

To my shock and amazement, downloading of the PDFs popped open the book in Aldiko instantly, and it looked great. There are some issues with zooming PDFs on Aldiko, but it was still workable. I'm amazed at how smoothly it rendered it.

If you do you check out the cookbook, make sure you start off by reading the author's latest comments on it. And be warned, it's value is historical and perhaps comical, but not much more.

Thursday, March 03, 2011

Gotcha of the Day: MySQL indexing gotchas

So I'm debugging some MySQL queries that shouldn't have been that slow. But were. They had a shape kinda like the following:

  FROM users u
  WHERE                        AND
    find_in_set('trial', u.props)
  ORDER BY u.created

One of things that I like about SimpleDB is that it simply won't allow you to put data into it that it can't cleanly index. Same goes for the database behind the Google App engine. MySQL, of course, isn't so picky.

After much poking around, I realized that the above query has at least 3 potential pitfalls:

  • - assuming that active is an INT field and that a value of 1 means that the record is active, this clause makes complete logical sense. However, MySQL will refuse to use it as an index. Instead, you need to say: = 1
    I could guess why this is, and I could complain that = 1 should be the exact same thing as alone. But, I won't bother.
  • find_in_set('trial', u.props) - assuming that u.props is a SET data type, MySQL won't use this value as an index. SETs are actually a slick little feature in MySQL - they are perfect for tracking little bits of information in a single column. But, because of the way they are implemented, there's no way to use them as an index. Instead, you'd need to create a dedicated field named u.is_trial and specifically set and query against that.

    The SimpleDB philosophy would say that MySQL shouldn't offer SET as a data type because you can't efficiently query by it. And the MySQL philosophy would say, hey, use it or not, it's up to the programmer. As I work on systems that have been around for a while, I'm starting to see the wisdom of the SimpleDB approach. Sooner or later, that SET column is going to be something you want to query. And then it's time to go into refactoring mode. Seems like skipping SETs from the start may be the way to go.

    This is actually the approach I've taken with views. I love MySQL views. They are to SQL what functions are to PHP - a great mechanism for building abstractions. And yet, they completely fail to use indexes, which means that eventually your data will get so large that your views will be essentially worthless. Better to skip them from the start. How sad.
  • ORDER BY u.created - if you're going to sort on a column, you better have an index backing it up so the sort can happen efficiently. I often times find myself forgetting to check this column for an index.

Should MySQL be so permissive about letting you use constructs that can't be efficiently queried (or indexed)? What do you think? As you can see, I'm on the fence and leaning towards no.

The Power of Simple Questions

I caught this essay on the radio the other day on the power of simple questions. Take a listen:

The quick version goes as follows. Our essayist and hero gets himself into a tight spot at a new high school:

Part way through the lunch period, a tall, muscular, black student, whom I’ll call Jake, walked over and stood across from me. He put his hands on the table and leaned forward. With his face close to mine, he firmly said, “Aren’t you sitting with the wrong kind of people?”
Immediately, my fight-or-flight response kicked into high gear. What should I do? Should I defend myself? Should I let him intimidate me and undermine my self-respect? The other students suddenly became quiet, waiting for my response. Jake had laid down the gauntlet....

And his solution? Ask the simple question: “What do you mean, the wrong kind of people?”

The question turns out to be a totally disarming one, that defuses the situation quite cleanly.

At first, I didn't think much about this essay. But, as I ponder it more and more, I realized just how right the author is. I realized, for example, that as a manager one of the most valuable exercises I would conduct was to ask myself of a team member: What do I want? I mean, really, truly, want from this person? I found that my initial answer was often vague and not something that could be measured (say, "Be a better programmer" - but better than what?). I would then re-ask the question to myself, and try to come up with a better and better answer.

Often times, I'd find, that what I wanted from the team member wasn't even something they could give me. Or, maybe it was a frustration that was really my responsibility (say, I realize that they can't give me clean code because I keep changing the spec on them).

Yeah, this essayist is really onto to something. Simple questions do have power. Especially when you accept that they frequently don't have simple answers.

Wednesday, March 02, 2011

The Legend of the Mall Ninja in Movie Form

Hang out on the web long enough, and you'll hear the phrase Mall Ninja - it refers to someone who's acting especially tough when they are anything but (especially with respect to firearms).

I assumed that the phrase just popped up because of the image it conjures up. But, actually, there's a whole back story to the term that I found laugh-out-loud-funny to read. Sure, I didn't get all the gun jokes, but I could still follow along.

But, in this day and age, who has the time to read? Really, you just want to skip right to the movie version. Which someone created using As a side note, xtranormal seems like a remarkable platform for movie creation. Sure, the results may be a bit unusual, but as a platform for spreading creativity - wow.

So, sit back and enjoy: Mall security job advice. (Note, the video has some R rated language in it, so this one isn't for the kiddies). And don't forget to read the original text, too.

And if guns aren't your thing, here's another creation related to acting (I'm sure my cousin Rachel would appreciate this one!):

Tuesday, March 01, 2011

Geiser: Kicking Racket Programming Up A Few Notches

The other day I mentioned I was dabbling with some elisp to make Racket (formerly: PLT-Scheme) and Emacs play nice. One of the comments I received was that I should check out Geiser - an emacs package which provides exactly the integration I was playing around with.

Tonight I played around with Geiser, using it to script a PHP web app I'm working on. I must say, I'm blow away by nearly every part of the system. From the super easy install, to the well written manual, to the impressive set of features it offers, to well, everything.

I've always loved Racket as an implementation language. And while I think DrRacket is cool, and a wonderful beginners tool, I've never quite found it as effective as programming in emacs. And now, I can get the best of both worlds.

As a bonus, Geiser introduced me to a bunch of add on modules for Emacss that are useful outside of Racket, too.

If you're an emacs geek, you've simply got to give this a try.

Romantic or Irresponsible? Guess it depends on who you ask

I thought this was the ultimate in romance. Shira thought it was irresponsible, and most likely illegal. Watch the video and you tell me what you think.

Cute, right? Shira's wrong this time, right? (Silence...)

Via: BuzzFeed