Sunday, April 22, 2012

Parkway Classic - 10 Miles of Wet Fun

Today, Shira and I tackled our longest race to date: The Parkway Classic, a 10 mile haul down the George Washington Parkway. The weather was cold and rainy, but that didn't stop us from getting our butts out of bed at 5:30am to catch a bus to the starting line at 6am.

Fortunately, we ran into our friend, Sue, at the start, so we had another person to chat with as we waited out the rain and prepared to get under way.

The run went as well as could be expected. By the first mile, I shed the wind breaker I brought along, but by mile 7 I had to put it back on. The race leader completed the course in an amazing 51 minutes. That's smok'n fast.

I'm so proud of Shira for tackling this race - it's by far the longest distance she's ever run, and she did it with energy to spare (and a minimum of cussing).

When we arrived home, we found the most wonderful banner created by our little guy and David to celebrate the occasion. We were so impressed!

Friday, April 20, 2012

The Bus Stop Bully That Wasn't

This morning, like nearly all mornings for the last 5 weeks, I walked our little guy to the bus. Right on time, the bus pulled up and all the kids at rushed towards the door forming a relatively neat single file line. I don't want to brag, but consistently our little guy is first in line. And he was today.

Then, all of a sudden, this older kid walks up and inserts himself between our guy and the door.

Oh No He Didn't! I'm thinking. What, you think just because you're bigger than the other kids you can cut in line? Not Cool Man.

Within a few moments the door opened up, and all the kids boarded. As they did, the bigger kid stepped aside. All of a sudden, the green safety sash he was wearing made sense - he was acting a safety office for the bus stop (why he hadn't been doing this the last few weeks, I don't know). Apparently, this was a bullying false alarm.

Our guy got on first, and grabbed the seat right behind the driver like always. The safety office/big kid, got on last.

Yet another reminder that I mostly have no idea what the heck I'm doing in the world of 7 year olds, and that doing more listening/observing than talking at this stage is probably a good thing. Oh, and apparently I need to chill at the bus stop.

Thursday, April 19, 2012

MailChimp - A Better RSS to E-mail Solution

I'm using Twitter to power the Omer Learning Project, which means that people can easily get content deliver to them via SMS, RSS and Twitter. And while that's all well in good, after talking to folks, I learned that we needed to offer an e-mail delivery solution, too. No doubt about it, E-mail is still king when it comes to tapping into content.

No problem, I thought, I'll use Feedburner's E-mail Subscription functionality to automatically convert the RSS to e-mail nightly. I went ahead and did this, but quickly learned that there was some issues with Feedburner: (1) the e-mail deliver wasn't reliable. I'd schedule it for 9pm, and some days it would be sent off, and other days it wouldn't. And (2), the RSS feed that Twitter generates is turned into an ugly e-mail. This isn't really Feedburner's fault - the RSS feed from Twitter puts the Tweet text as both the headline and body. The result is an e-mail mess.

The fact that the e-mail was blah was actually less of an issue than the missed deliveries.

Having had some good experience hacking the MailChimp API, I thought I give them a try to see what their e-mail options were. Turns out, they too offer RSS based e-mail campaigns. And a test showed that when I scheduled delivery for 9pm, sure enough, it went out pretty much at 9pm. The template for the e-mail was fairly trivial, just including the magic tag:

*|RSS:POSTS_HTML|*

Alas, the e-mail was still ugly, but again I chalked that up to the cruddy RSS feed from Twitter.

While poking around, though, I learned that Mail Chimp actually gives you quite a bit of control when working with RSS e-mails. In fact, the default *|RSS:POST_HTML|* is jut that - a default and not your only option. A went ahead and updated my e-mail to say:

*|RSSITEMS:|*

*|RSSITEM:TITLE|*

*|END:RSSITEMS|*

The result is an e-mail with all the Tweet text just spilled out in the e-mail, in nice neat paragraphs. No links, no duplicated headline, no Google+1 button. Just a nice clean e-mail.

On time delivery and clean e-mail? I'm sold. Nice job MailChimp.

Review: Dreams and Schemes: Stories of People and Architecture

I grabbed Dreams and Schemes: Stories of People and Architecture off the of Free, Take Me! shelf outside our library. It was such a thin little volume, I couldn't resist. I'm glad I didn't.

Dreams and Schemes is effectively what you would get if you sat down David Dibner, a seemingly accomplished architect in his field, and said 'tell me some stories!' There's a nice mix of funny and cautionary tales, most with a clear moral. Rather than focusing on anything technical, Dibner chose to focus on the people an architect comes into contact with, be it customers, builders or other architects. And man, does he run into some interesting personalities.

He opens with a couple of stories about the balance an architect has to strike between his own ideas and the customers who have hired him. For example, the customer asks for relatively large kids bedrooms, whereas the architect is convinced that children's rooms should be small and for sleeping only. Should the architect build what years of training and experience have lead him to believe is right? Or should he compromise his beliefs, and deliver what the customer is asking for? This is something I encounter regularly in my day job, and is actually one of the more interesting challenges I face. These stories alone were worth reading the book for.

A Google search didn't turn up much on Dibner. I did find his obituary, and learned that he actually lived in a town over from me. I'll admit it, Dreams and Schemes wasn't the most remarkable or exciting book I've read, but it was a pleasure to read none the less. It served as a wonderful reminder of what we all aspire to have in our careers: the respect of our peers, the opportunity to tackle big challenges and the chance to have lots of adventures, the interaction with interesting people. I also give him lots of credit for changing how I view what architects do.

All in all, a pleasant read.

Wednesday, April 18, 2012

An Eagle Board Of Review From The Other Side

I can't say that I can recall any details from my Eagle Board of Review. Heck, I can't recall any details from any of my Scout Boards of Reviews. That is, except for one question: what was the last good turn you did? And yeah, I got stumped on that question every time.

Last night, however, I got to experience an Eagle Board of review from the questioner's side. I participated in the eldest of the 4 Boys board of review. It was a quite surreal - here was a kid I've known since he was like 6 years old and now he's sitting in front of me as a man in the running for this prestigious award. It was hard to be anything but proud of him.

It was definitely a good feeling being back among guys in Scout uniforms. Ahhh, the good old days of being an irresponsible kid allowed to play with knives and fire. Good times, good times.

Tuesday, April 17, 2012

Spotting Discovery - The Shuttle Visits DC

Space Shuttle Discovery made its way around DC today and David and I were there to watch it. What a thrill it was to see it fly by, carried piggy back on a 747.

We chose to stand on the Memorial Bridge, which turned out to be a great location. Unfortunately, due to a unexpected gust of wind, my helmet was tossed overboard into the Potomac. Still, as prices of admissions go, that was a minor one to see such a remarkable sight.

Of the 342 photos, here's 14. Enjoy!

Monday, April 16, 2012

Most Badass Library. Ever.

As long as we're talking about making a difference in the community, here's another story on that topic. Apparently, artist Raul Lemesoff re-worked a tank into a mobile library.

See:

And below is a video of the setup (in French. Le' D'oh!)

Gooooo books!

Via: RecycleArt.org

Cain's Arcade - Watch the video, Feel Good

The Cain's Arcade documentary is showing up everywhere. And the thing is, it's a wonderfully watchable little movie.

Sure, you could probably read too much into the movie. But the fact of the matter is, everyone in this movie plays their role perfectly. The kid with a huge imagination who doesn't quit. The father who matter-of-factly stands by and supports his kid. The community who shows up and cares. It's a story worth emulating in your life, day after day. Even if you probably won't get $130,000 scholarship out of the deal.

Here, give it a watch:

Sunday, April 15, 2012

Exploring Daingerfield Island

I had about an hour and a half to kill with the little guy after we dropped Shira off at National Airport, so I thought I'd check out Daingerfield Island. It's one of those sites along the GW Parkway I've always passed but never had the time to stop.

First off, Daingerfield Island is no longer an island. And, if I was expecting big things, I would have been disappointed. But, I had a curious 7 year old with me, so we actually had quite a fun adventure.

The island (really a park) contains a marina which made for some fun boat spotting. It's also positioned across from the National Airport, so you get an excellent view of the planes taking off (though not quite as nice as Gravely Point - nothing beats that). While most of the docks are off limits, we did find some in the back area which had no gate or sign up telling us we couldn't be there, so we did some poking around there too.

The most unexpected find, though, was a trail entrance in the back of the overflow parking lot here. There was a sign up at the trail entry point that mentioned the Lyndon Johnson Memorial Grove (which is a few miles away). Not sure how to explain that.

Regardless, we ended up spending 45 minutes traipsing around unmarked trails, which I assume are used only by fishermen and hoodlums (which have to be sleeping at 8am on Sunday, right?). We eventually made our way out the Potomac river where we could do a little light shell collecting. Come to think of it, there must have been a geocache or two in the area, I'm sorry I didn't check.

All in all, a very productive outdoor adventure considering we were 5 minutes from home. I wouldn't go out of my way to visit the island, but if you're in the area and need a picnic place or some time to kill, definitely check it out. Come with the right mindset, and it will be an awesome time.

Of course I took photos (about 127 of them...most of which I'll spare you...):

Thursday, April 12, 2012

Kid Activity To Try: Salt Dough

I stumbled on a book at the library about Salt Dough, and it seems like it would be the perfect kid crafting activity. Apparently Salt Dough is a make-at-home modeling clay created from flour (2 cups), salt (1 cup) and water (3/4 cup). I love that no special ingredients are needed. Just mix ingredients, knead, shape and bake.

Next time we're stuck indoors and need a fun activity, I hope to bust this one out.

More details on the recipe and a video demo can be found here.

Artist of the Day: d. sub0

Needed a little chill music to, well, chill to, and I found d. sub0 (aka Dejan Subotić) on SoundCloud and have been loving his work.

Here give a listen to one of his tracks:

And I totally got a kick out of this track, though I would have preferred a slightly less vulgar title:

Definitely a nice find. I'm also enjoying listening to his favorites.

Wednesday, April 11, 2012

The Perfect Way To Kick Back After A Long Day

I'd been hacking code since 5am and our little one was wiped from a full day at First Grade. The best way to kick back and relax? Watch a bunch of buildings implode. Ahhh, the sheer joy of it!

I'd like to think I helped shape a young person's mind today. If he goes into civil engineering, it may all be traced back to today where he learned how explosives can be used in construction. How did we learn anything as kids, that is without being able to be shown a YouTube video of it?

Tuesday, April 10, 2012

Recommending The Humble Whistle

One of my essential pieces of gear, whether it's hiking, traveling or just going for a run through the neighborhood, is a whistle. Specifically, a Fox 40 Micro Whistle.

If I have an emergency out on the trail, I assume it'll be the first bit of gear pressed into service. If I need to get someone's attention while in a strange city or if I'm out for a jog, it's always ready to go. It also serves as security blanket, reminding me that I can take some sort of action in a crisis. Luckily, I've never actually had to use it (well, other than during Purim services one morning, where I didn't have a functioning gragger).

So, you can imagine my sheer delight when I read Legal Nomad's travel advice and found her recommending a whistle as an essential pieces of kit. She links to a story where she outlines a number of times a whistle saved her butt. Like the time she fended off a pack of wild monkeys:

Gasping for breath and watching several of the bolder monkeys creep toward me, teeth bared, my eye caught the bright orange whistle of my safety whistle. Figuring I had nothing to lose, I inhaled deeply and pushed out the air as hard as I could, scaring those monkeys with a sound they’d likely never heard before. They yelped, they scattered. I kept moving as quickly as possible, looking behind me in a bit of a panic. But the monkeys had all disappeared.

You should definitely check out her other travel tips, lots of good advice here. And for gosh sakes, carry a whistle. If it was good enough for the Met, it's good enough for you.

Purim (yes, Purim!), The Perfect Time To Start Blogging

A Purim article in the middle of Pesach?! What, am I meshuganah? Not exactly. The article below is one I wrote for our shul's Chronicle, and just became public a day or two ago. Just consider it early for next year. Read the published version here.

Special thanks for the editing help to Shira and my friend Jen (who also helped make the Couting The Omer project come to life). Without these ladies, the article would have been an absolute mess.


Purim, The Perfect Time To Start Blogging

The story of Purim is made up of a series of remarkable events in which Jews have always seen the fingerprint of G-d. While some of these events are well known, such as Mordecai coincidentally overhearing the plot to kill king Ahasuerus, there is one event mentioned towards the end of the Magillah that I’ve always felt deserved more press (Megillat Esther 9:20):

And Mordecai wrote these things [the story of Purim], and sent letters unto all the Jews that were in all the provinces of the king Ahasuerus … and he sent letters unto all the Jews, to the hundred twenty and seven provinces of the kingdom of Ahasuerus, with words of peace and truth, to confirm these days of Purim in their appointed times, according as Mordecai the Jew and Esther the queen had enjoined them, and as they had ordained for themselves and for their seed, the matters of the fastings and their cry. And the commandment of Esther confirmed these matters of Purim; and it was written in the book.

In other words, the story of Purim ends with one final miracle: the story was written down and told to Jews everywhere. Without this final act, the story of Purim may have been lost.

With this lesson in mind, I’d like to suggest that now is the perfect time to think about what story you would like to publish and start writing it today. Thankfully, in 2012, publishing has gotten quite a bit easier than back in Esther and Mordecai’s day. We no longer need to draft a letter and send it to 127 different provinces. In fact, thanks to the accessibility of blogging, publishing today couldn’t be easier. It’s free, requires no more knowledge than that of sending an e-mail, and enables you to reach a large, diverse audience. Before we delve into how to publish your own Magillah, it’s useful to consider the why.

What could you possibly have to blog about? Plenty, actually. First off, you can maintain a traditional online diary, the style of which that kicked off the blogging phenomenon. But that’s just the beginning. You can use a blog to publish your fiction, photographs, travelogue or even an entire book. You can use it to advocate for a cause or to turn adversity into adventure by writing about a difficult time with humor and inspiration. You can even use it just as a repository for links, jokes or quotes that inspire. A blog also makes an excellent website for a small startup company. A blog can serve to publicize an event you’re hosting or to start a revolution. As you can see, if you have information you want to share, be it your family vacation or your thoughts on the latest political wrangling, you can’t go wrong by starting a blog.

Now that you’re fired up about getting your creation out to the rest of the world, let’s talk about the nuts and bolts of how you do this. Head over to www.blogger.com, a free blogging service that’s easy to use. During sign-up, you’ll create an account and choose a name for your blog. Most importantly, you’ll pick a web address for your blog.

Suppose I created a new blog, Lessons From Purim, that chronicled all the lessons I’ve learned from the holiday. My web address may be http://lessonsfrompurim.blogspot.com/. That may be quite a mouthful, but it’s all mine. That’s right, once you’ve signed up, you’ll have your own address on the World Wide Web. It is this address that you’ll share with friends.

Once you’ve started your blog, you can create a new blog post (or article) anytime you want, even from your cell phone. Typically, you’ll use the title of the post much like a newspaper uses headlines, to grab attention and pull in readers. As for the content, it can be anything you want - from dense prose to clips from cat videos from YouTube. While some blogs may be updated hourly, others may contain just a couple posts that never change. This should be fun for you, not a chore!

One of the most exciting parts of blogging is its interactive nature. If you wish, you can allow readers to submit comments about what you’ve posted. There’s nothing quite like the thrill of having a complete stranger (or your mom) give you positive feedback on what you’ve created. And since you’re the boss, you can delete any comments you don’t like. So go ahead, and take a lesson from Purim. Don’t let your stories, memories and thoughts be forgotten. Start a blog and share them today!

Monday, April 09, 2012

Two kinds of Hospital Hacking

First the "people" kind: Make has an excellent article up about creating hackable medical devices:

Instead of trying to change the global supply chain for medical devices, we have learned to embrace the existing one for toys. Go to your toy store, and you’ll see the same $2 toy gun that a Nicaraguan nurse spotted and hacked into an alarm for an IV fluid bag, after harvesting the electronics and adding a simple trip mechanism. Lego blocks have very precise tolerances for creating modular microfluidic components. On the way out, toward the bicycle section, pick up a bike foot pump so you can power your nebulizer for $5 instead of paying $75 for the electric compressor sold in medical supply catalogs. Bonus feature: when there’s an asthma emergency in the middle of nowhere, you won’t need electricity to save the patient.

Read the entire article here. Powerful stuff, and an excellent reminder that even in a field like medical hardware entrepreneurial (aka hacker) efforts can succeed.

Second, the "computer" kind: In the comments from the Make article above was a link to this one:

Luckily: An 11 year old girl decided to open a laptop hospital [to fix a common issue with the local laptops]. Unfortunately the boys really missed out here, because in this part of Nigeria “everyone knows” only girls work at hospitals, she eventually recruited girls as young as 5 to help out in the hospital. This group of girls armed with screwdrivers starting taking apart the laptops and reseating the cables. Sometimes they’d change out a screen, or a speaker. They learned about the hardware of their laptops. They got to see what was inside. They got better and better at fixing things by learning as they went.

Again, an awesome example of the power of entrepreneurship. Read the entire post here.

See, there's no industry or topic off limits to the clever hacker.

Gotcha of the Day: Building Handbrake on CentOS

Building Handbrake on CentOS started off painlessly enough. I just followed the instructions here. But then I ran into this compilation error:

set -e; cd ./contrib/libvorbis/aotuv-b6.03_20110424/; rm -fr aclocal.m4 autom4te.cache configure; autoreconf -I m4 -fiv; CC=/usr/bin/gcc CFLAGS="" CXX=/usr/bin/g++ CXXFLAGS="" CPPFLAGS="" LDFLAGS="" PKG_CONFIG_PATH="/home/ben/util/src/HandBrake-0.9.6/build/contrib/lib/pkgconfig" ./configure --prefix=/home/ben/util/src/HandBrake-0.9.6/build/contrib/ --disable-dependency-tracking --disable-shared --enable-static --with-ogg=/home/ben/util/src/HandBrake-0.9.6/build/contrib/ HAVE_PKG_CONFIG="no"
autoreconf: Entering directory `.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal --force 
autoreconf: configure.ac: tracing
autoreconf: running: libtoolize --copy --force
libtoolize: putting auxiliary files in `.'.
libtoolize: copying file `./ltmain.sh'
libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.ac and
libtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree.
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
autoreconf: running: /usr/bin/autoconf --include=m4 --force
configure.ac:215: error: possibly undefined macro: AC_ADD_CFLAGS
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.
autoreconf: /usr/bin/autoconf failed with exit status: 1
make: *** [contrib/libvorbis/.stamp.configure] Error 1

A Google and Forum search turned up no reports of anyone else with this issue. Yet, even the latest version of the source code from SVN turned up the same issue.

The fix turned out to be as follows. I edited the file:

 ./contrib/libvorbis/module.defs

and changed:

 LIBVORBIS.CONFIGURE.bootstrap = rm -fr aclocal.m4 autom4te.cache configure; autoreconf -I m4 -fiv;

to:

LIBVORBIS.CONFIGURE.bootstrap = rm -fr aclocal.m4 autom4te.cache configure; sh autogen.sh;

(and yes, that trailing ';' is necessary)

Not sure why I'm the only one running into this. But, regardless, here's a fix.

Friday, April 06, 2012

What We'll Be Talking About At Our Seder

As you can see, we're in full Seder prep mode:

Some items we may get around to discussing at Tonight's Seder:

How about you? Any topics you've got planned?

Here's to a happy and meaningful Seder and Passover! L'Chaim!

Thursday, April 05, 2012

Playing Carnegie Hall On Your Own Terms

So, Buddy Greene is a harmonica playing legend. And he wants to play Carnegie Hall. What does he do? He does exactly that:

Besides being an impressive feat, it sure does seem like an excellent metaphor for life. Be so good at what you do (whatever it is), that you can do it anywhere on your own terms.

Via:

Wednesday, April 04, 2012

Finding, But Not (Yet) Exploring Dora Kelly Nature Park

Today, Shira and I managed to squeeze in a quick bike ride to Dora Kelly Nature Park, a potential nature gem located in Alexandria. It took us about 45 minutes to get there, and 35 to get home, as the ride seemed all down hill on the way back.

Dora Kelly is supposed to be another example of Next Door Nature. Unfortunately, this trip we didn't see much more than the welcome sign and a nicely shaded paved path.

I'm definitely looking forward to getting back and fully exploring the park.

Proof Passover is Just Around The Corner

That's 7½ *dozen* eggs, and countless apples (and mushrooms, of course).

Luckily, I'm not on the cooking and shopping team - so I don't actually have to worry about turning these ingredients into anything. Nope, I'm on the cleaning and Seder content team. And that's the way I like it.

Tuesday, April 03, 2012

Tweeting the Omer - A chance for some bite size Torah study

A few of us at my shul are spicing up the Counting of the Omer by sending out the daily count over Twitter. What's more, along with the count, we'll be including a twitter'zied version of Perkei Avot. In other words, it's a super easy way to get a little dose of Jewish wisdom/study right to your cell phone (or e-mail or RSS reading - no Twitter account required).

Here's the announcement as it was sent out to our members:

Jewish Wisdom Right to Your Cell Phone (or Inbox)

Ever wondered what Counting of the Omer means? Do you wish we celebrated the Shavuot holiday with a bigger bang? Unbeknown to most, it's a mitzvah to count the 49 days between Passover and Shavuot. This year, doing this mitzvah can't get any easier. Join us in counting the omer with 49 verses of Pirkei Avot in 49 Tweets straight to your cell phones and inboxes, and infuse a little bit of Jewish learning between Passover and Shavuot holidays.

Simply sign up by texting follow omerlearning to the phone number 40404. Other ways to follow (including e-mail) can be found at www.etzhayim.net. What's more? This daily omer learning will culminate in a recap over ice cream on Shavuot. Sweet!

You can learn more here.

I hope you'll follow along. And whether you do, or don't, I wish you a happy, and healthy Passover and Omer Counting season.

Monday, April 02, 2012

15 Minutes of Fun: Making Paper Airplanes

It's Spring Break!!!! (If you're a 7 year old, that is). This means that are somewhat, kinda, almost, tuned morning schedule was turned upside down because camp has replaced heading off to the school bus. The result: we had extra time this morning to kill, but didn't want to start a huge activity.

A good quick activity turned out to be creating paper airplanes from the well named site: 10PaperAirplanes.com. Check out the fleet we created this morning:

The first four planes offered the right level of difficulty to create. Just enough folding (and one even required some trimming with a scissors) to be interesting, but not so much work that it was beyond what I or a 7 year old could follow. The animated GIFs presented to help with the instructions, worked well.

If all goes well, we'll color them, add some stickers and we'll be on our way to an in-house air force.

Friday, March 30, 2012

Watching a 7 Year Old Learn to Ride a Bike

When our little guy joined us a couple weeks ago, Shira made the executive decision: we're going to get this boy a bike and teach him to ride. It seemed like a smart move: bike riding is a fun outdoor activity, a good source of exercise, a confidence booster and a handy life long skill. So while I was still weighing the pros and cons, Shira just made it happen. We got the boy a bike (and from our bike shop down the street no less).

While all this sounded good in theory, we had the tiny detail of actually teaching a 7 year old how to ride a bike. Would this be hard? Would it be something that he got discouraged at and perhaps did more damage than good?

We did some research and decided we didn't want to go the training wheels route. Personally, I liked the REI method, where you take off the pedals and let the kid learn to coast, then go from there. Shira was going to have none of that.

Our first bike riding "lesson" was about 20 minutes of us pushing the little one on the bike, reminding him to pedal (we had our mantra: "ready, focus, peddle, peddle, peddle!!"). Apparently, the first lesson was needed to teach him that riding a bike is an active activity, if you don't peddle, you stop. Man, those training wheels looked good right about now!

Our second riding lesson showed some amazing progress. He got the peddling concept down, but we were still quite attached to him. By the third lesson, we'd gotten a tip from a neighbor: use the tennis or basketball courts as your training ground instead of a quiet street. Good call, as they are flat and car free. During the third lesson, I managed to capture a video of our little guy soloing for about 7 seconds.

By session four, he had mastered balance. He could now cruise down the courts at high speed with Shira running a few feet behind him (and I'm photographing this, of course) but didn't quite have stopping figured out.

And in yesterday's session, he got on, and with a small push from Shira, rode his bike down and carefully stopped. The rest of the session was spent with him cruising around, trying to get used to the idea of steering. See, here's a little proof:

To say Shira and I are impressed and proud is a massive understatement.

Which brings me to the title of this post. Notice I said "Watching ..." vs. "Teaching ... ." Shira and I didn't really "teach" him anything. In fact, our attempts to explain stopping ("You just peddle backwards. Huh?") were of little use. He just needed to get out there and do it. I had to have faith that his brain would figure it all out, and that he just needed the practice (and a safe environment to do it in).

This experience reminded me of when our last little guy was learning to walk. Thank heavens, I used to think, as a parent you're not actually expected to teach them how to do this. We'd totally muck it up. Better to let the brain figure it out for itself.

Who knows how long it will be before we're actually cruising along the WO&D trail. But for now, I consider this a huge accomplishment. It's just amazing what kids can do when we let then just do. (See, they've got no fear of failing.)

Apache Hack: Bypassing Basic Authentication on a File-by-File Basis

So I'm hacking away on a client's site which is protected by Basic Authentication via .htaccess file to keep bots and the general public from checking out this next generation of the site. This setup was working great, until I started planning out today's task: integrating Amazon's CloudFront CDN. The CDN is trivial to setup, but I could already see a gotcha developing: the CDN would contact the origin site, which would respond with an access denied error, which in turn would fail the request.

Option A would be to drop the basic authentication on the site altogether. Not a great option, as this would expose my client's site to eyes he didn't seeing it.

So I'd have to go with Option B: tweak the .htaccess file to require authentication on most, but not all requests. There's also Option C: find out what IPs CloudFront is requesting from, and let those in along with Basic Authentication, as outlined here. But, I wasn't sure how feasible it would be to find these IPs, and besides, I was curious if I could learn yet another bit of Apache configuration magic.

The solution to Option B turns out to be quite clever and is outlined here. Here's a snippet of code from that site:

# password protection allowing directory and file access
AuthType Basic
AuthName "Restricted Area"
AuthUserFile /home/path/.htpasswd
AuthGroupFile /dev/null 
Require valid-user

SetEnvIf Request_URI "(path/to/directory/)$" allow
SetEnvIf Request_URI "(path/to/file\.php)$"  allow

Order allow,deny
Allow from env=allow

Satisfy any

Apparently, you can flag a request with an environment variable (in this case named allow) and then use that variable later on to decide if a request should be authenticated. That's a remarkably flexible tool, especially considering you've got access to quite a number of variables.

And I always forget about that import Satisfy Any - which basically tells Apache to chill, and to trust the use if only a single Allow rule matches.

Once I had a way of allowing some requests but not others in, it was just a matter of putting the right regular expressions in place that represented my CDN content.

One additional gotcha I ran into relates to RewriteRules. Suppose you've got the following rules in place:

  RewriteRule ^(static/*)  ./files/$1 [L]

And your request looks like:

  /static/logo.gif

You need to make sure you have SetEnvIf clauses for both /static/logo.gif and /files/logo.gif. With only static/logo.gif in place, the request which has been re-written to files/logo.gif, no longer matches a SetEnvIf clause and so it requires authentication. You'd need both of these lines:

SetEnvIf Request_URI "^/static/.*" allow
SetEnvIf Request_URI "^/files/.*" allow

Thursday, March 29, 2012

Programmers and Sexism

Buzzfeed has this wonderfully thoughtful article on the topic of sexism among programmers, which I think is a must read for anyone who works on teams in a corporate environment.

Let me tell you, I love coding. Been doing it since before I hit puberty. I did it when I barely had the money to keep a server up. I do it on the weekends and evenings, and I'm teaching my kids how to do it. I've spent thousands of dollars to go to conferences so I can learn more about it. Why would I ever leave the profession where I got paid real money to do what I love?

In short, I got tired of being told to 'lighten up.'

This industry is one of subtle sexism. I almost prefer outright sexism, because at least that you can point out. The subtle barbs are usually dismissed as something I need to not care about. It was a joke! Sheesh. Why are you so sensitive?! All I did was make a joke about you needing to be in the kitchen!

Thinking back over the jobs where I've been on or managed a team, I can't actually recall working with any many female programmers. For the last two jobs I was at, I had a brilliant, talented, reliable and all around awesome QA/Source Code Manager who was a woman. I'm sorry to say, but I bet she had to endure some of this same subtle sexism (1. hopefully not from me, 2. and probably not so subtle, too!). It didn't help that she was probably the most responsible person on the team, so taking a "motherly role" may been too easy a trap to fall into. I've worked with brilliant designers who are women, too. But, as far as I can remember, not only one female coder. That's actually pretty sad when you think about it*

So go, read the article. Check yourself and your environment. We need brilliant programmers in our field, regardless of gender.

Update: D'oh! I totally forgot about Kelly! How could I forget about Kelly?! She was smart, hard working, and even though she was relatively new to programming, she definitely was a coder. OK, so I've worked with one female programmer. Still, that's pretty amazing/sad.

*I wonder how long before I remember working with a female coder? I should probably apologize for forgetting her in advance...

Lawnchair: SQLite for the NoSQL World

Yesterday, I tripped over the Lawnchair project, which I immediately took a liking to. Here's the description:

A Lawnchair is sorta like a couch except smaller and outside. Perfect for HTML5 mobile apps that need a lightweight, adaptive, simple and elegant persistence solution.

Just like SQLite kinda sorta lets you run SQL, but is in fact an embedded database, Lanwchair lets you play with a NoSQL database while being in a simple embedded environment.

Not sure what project I'll use it for, but I'm eager to play with it.

Tuesday, March 27, 2012

Failure vs. Fear of Failure

When you remove the fear of failure, impossible things suddenly become possible.
-Regina Dugan

Here's an excellent Ted Talk on the topic of innovation, and more specifically, what happens when you don't accept that the impossible, is in fact, in possible. It's also ad for DARPA, a government program that actually works (proof: you're reading this on the Internet, they pioneered).

Give it a watch. Be inspired. And go do something impossible.

Monday, March 26, 2012

Next Door Nature - Theodore Roosevelt Island

This afternoon I took our little one to Theodore Roosevelt Island and as always, I was blown away by what a gem it is. In about 10 minutes, we went from our neighborhood to The Great Outdoors.

We oggled the giant statue of Theodore, and practiced our reading skills on the massive quotes (man, those are some tricky words!). We also practiced skipping stones, and I taught him how to recognize trail blazes. The highlight, though, was poking around a "beach" area where we found extra large snails in the mud. For a 45 minute outdoor adventure, it's hard to beat.

Sunday, March 25, 2012

Idea: Photo + Biking Biathlon

A regular biathlon works as a sport because of the natural extremes each activity requires. The cross-country skiing part is all about speed and drives your heart rate up, while the rifle part is all about precision and a need for a steady hand.

On my last bike ride, where I found myself jumping off every once in a while to snap photos, I noticed some of that same tension. The biking side of me wanted to cover the max amount of mileage, while the photography side of me kept seeing new angles and demanded I take my time.

So here's my suggestion: we setup a course that folks are expected to ride for time. Along the way, each rider could snap as many or few photos as they want. At the end of the race, each rider would pick 3 photos to display and be judged. You earn points for both time and the photo quality.

A person with a mediocre time and great photos may win, or it may go the other way, and a super fast rider with OK photos wins the day.

There'd be plenty of room for riders to develop their own unique strategy: do you bring lots of gear, hope for great shots and live with a slower time? Or, do you go with a Go Cam strapped to your helmet and shoot for maximum speed?

I think the results would be interesting to say the least.

The Family that Sunbathes Together...

...stays together. Right?

The above photo was snapped while biking along the Capital Crescent Trail in DC and Maryland. Here's a few more photos from the day - man the weather was perfect!

Friday, March 23, 2012

Friday Fun - Outdoor Gear Edition

A few somewhat related outdoor links I've come across the last 10 days or so...

Sure, lightweight backpacking is cool. And my gear list usually makes for a 11 or 12lb backpack. But that's down right heavy compared to, get this, Super Ultra Light Backpacking gear list. Yes, apparently such a thing exists. The goal is to get your base pack weight down to 5lbs or so. It's both silly and totally intriguing. It's an obsession I don't need, but will probably look for ways to dabble in regardless.

And why would you need a 5lb backpack (besides, of course, bragging rights?). To fastpack, of course. Fastpacking is essentially trail running, but for a full day or overnight. I don't trail run, and I tend to want to take my time on trails (how else can you snap hundreds of pictures per day?). But still, I'm sure there are lessons to learned from fastpacking, and I'm ready give it a try if I can find the excuse.

With the trend to tinier and tinier amounts of gear, I was going to jokingly suggest that my goal was to shoot for Backpackless Backpacking. Sort of a no bag challenge for the great outdoors. Of course, I've already been beaten to the punch on this. Here's a 1-4 day gear list that includes no backpack in the mix. It includes a slick bat-belt, and a multi-purpose wool blanket. I'm totally loving it. I've realized I'm going to have to step up my goal. It's now Pocket Backpacking. The goal is to spend at least one night in the woods with nothing but what's in the pockets of "regular" set of clothes. Who's with me?

Finally, I was initially unimpressed with Pathfinder shelter kit. It didn't strike me as particularly compact or sexy. But, after watching a video demonstration, I've got to say, I've been won over. The individual items have a lot of utility, and the quick shelter construction idea really seems like it would work. In a lot of respects, this kit contains the real essentials you'd need in a survival kit, and combined with a few items in your pockets would probably beat out most itty bitty survival kits. The size is still too large for me to carry on a regular 'ol hike, but I'll definitely keep the kit in mind.