Tuesday, November 30, 2010

Suprising Unix Feature: Bash Macros

Even on my Windows boxes, I spend a good part of my day at a bash prompt. And I do so, most of the time, taking it totally for granted. It's this awesome user interface which is so good it's essentially invisible. So invisible in fact, that even after years and years I learn new tricks it can pull off.

Today's trick: emacs style macros:

bash has support for recording and executing macros. You can start recording a macro with the keybinding C-x ( and stop it with C-x ). You can then execute the recorded macro with C-x e

And sure enough, on both my Windows and Linux environments, the above tip works perfectly.

You can even use the same repeat mechanism that emacs offers. Type: ESC <some number> C-x e and the macro will be repeated some number times.

I'm not exactly sure what I'm going to use this behavior for yet - but I know I like it.

Monday, November 29, 2010

Google Font API - Rewriting the rules about web fonts?

Did Google just rewrite the rules about web fonts?

The above text isn't an image - it's an example of the Google Webfonts in use. The code looks like so:

  <title>Google Font Test</title>
  <link href='http://fonts.googleapis.com/css?family=Reenie+Beanie&subset=latin' rel='stylesheet' type='text/css'>
    h1 { font-family: 'Reenie Beanie', arial, serif; font-size: 68px; }
  <h1>Yes they did</h1>

Notice how I import a CSS file which defines the font Reenie Beanie and then I use it in the CSS rule for h1. What a remarkably clean interface they've managed to put together.

I'm sure many a web designer will be absolutely elated to have a wider font palette to choose from beyond the usual choices. And as a programmer, I'll be glad to implement the designs using Google's Font API. Sounds like a win-win for all.

Arlington Library Tip: Accessing Consumer Reports Online for Free

Shira gave me another reason to love the Arlington Library today: their eCollection's Premium Sites.

By using your library card, you can access ConsumerReports.org and 78 other paid websites for free.

I love that the library keeps surprising me with what a wonderful resource it is.

Sunday, November 28, 2010

Upgrading to Grill 2.0 - The Weber Spirit E-310

With a new deck and especially easy access to our kitchen from it, it made sense to finally upgrade our 12 year old grill. With my Brother David's help, we decided that the Weber Spirit E-310 would be the model for us.

The E-310 seems to be rated consistently really highly as a good basic grill. It lacks side burners and other gimmicks that David suggested look good, but don't ever get used, which I like. We put the grill together today, and it's built like a Sherman Tank. I also really like the size of grill - it's big enough to be taken seriously, but not so large that it eats up half our deck.

The assembly process seemed to take at least an hour and was about what you'd expect. Taken from a birds-eye-view, the instructions looked like absolute chaos. But, going step by step, it was possible to follow them. We only took a few minor missteps. Sure would make life easier if all the bolts weren't the same color (black), but, we pushed through.

Here's the before and after photo:

And yes, I had the requisite extra part:

We test drove the grill for dinner tonight, oddly enough, with a basic Salmon dish. The grilled performed flawlessly and the fish tasted good. Though, my guess is that it would be hard recipe to screw up.

So, we've got the deck and grill - now all we need is the weather, and it's party time!

Almost as good as that New TV Feeling

So, yeah, I have to admit it - I like our new TV. But, you know what was almost as good a feeling as turning on that slim and bright wonder? Dropping off our old TV at Goodwill.

I love Goodwill. Their mission of job training for the disadvantaged is such a noble and important cause. And knowing that my TV will most likely end up getting used by someone, rather than being tossed in a landfill is just a nice bonus.

Here's a parting shot of our TV - it served us well for 12 years, and was one of the first major purchases Shira and I made as newlyweds.

Seriously, this feels good.

One of these days I'm going to setup a weekly trip to Goodwill - surely I have enough extra stuff around my house that 52 trips a year could be justified.

Friday, November 26, 2010

Phone Friday: Retro Camera, The cure for Retro-camera-itis

And what is Retro-camera-itis? It's when you look at a site like Photojojo's Tumblr and love the retro looking images, and then make your way to Photojo's store and start wording if it's time to buy a film camera again. (Your rational mind knows this is a terrible idea, but it's hard to resist.)

My friend Nick passed on the perfect fix: Retro Camera, an Android app that simulates old film cameras. It even comes with a Polaroid mode, a format I have a special affinity for as it was my Granpda's camera of choice. He must have had an SX-70 - a marvelous camera that not spat out amazing, instant prints, but also performed feats of contortionism as it went from folded flat, to it's expanded form, back to flat again.

Anyway, I've now got 5 simulated retro camers with me at all time. Time to go out and shoot some funky photos.

Thanks Nick!

Wednesday, November 24, 2010

Dragged into the Modern World of TV

A few months back I had a brilliant idea: I noticed that we really don't watch much TV and when we do, we often just do so on hulu via a laptop. So, why not drop our basic cable subscription, save some cash, and pretty much retire our TV. Sure, we'd leave the one in our family room in the basement for watching movies. But, we should be able to ditch the one in our bedroom, which is where we do most of our TV watching. We could even take some of the money we saved on cable and invest it in a netflix account or some other services that we might get more value from.

I pitched my idea to Shira. I have to to admit, I was convincing. Very convincing. Just not in the way I'd hoped.

Since that proposal, we've dropped basic cable, and picked up Fios. So instead of having say 75 channels to choose from, I now seem to have hundreds. And we've temporarily retired our TiVo series 1 (until we can put it back to use!) in favor of a brand new Fios DVR. And last night the upgrade was completed, as we retired our old fashion clunker of a TV in exchange for a 42" LG LCD TV.

Yep, ever since I suggested we reduce our TV setup, we've gone and gotten all modern.

Seriously, look at this before an after photo:

I was doing a pretty good job of being skeptical about the whole new setup. And then, as I was flipping through the manual, I saw it contained an Open Source Software Notice. Holy smokes, I realized, my TV is running Linux 2.6. Heck, it's got a Lua interpreter built in.

Then it gets better. I notice an Ethernet jack on the back. At which point, I have a one sided conversation with Shira:

(Thought: Hmmmm, wonder what happens if I plug in a network cable...)
Honey, honey! Check this out - it wants me to setup a network!
Seriously honey, you've got to see this - our TV is acquiring an IP address.
Babe, I'm telling you - an IP address!
(Thought: Hmmm, what's this NetCast button do...)
Angel, check this out - you can watch YouTube on this sucker!
Sweetums, I don't think you are hearing me - YouTube. And who knows what else.
This TV rocks!

Yes, I was won over by an Ethernet port and YouTube. How sad.

And this morning, I blasted the Star Wars film score while the little one and I prepared to go to day care. Colossal waste of resources? Yes. But hey, just because it's a TV doesn't mean I need to treat it like one.

All I know is that I better not mention my idea of selling our cars and getting a Zip car subscription to Shira. I'm libel to end up driving around in a Porsche or some such nonsense.

Gotcha of the Day: Configuring a PayPal Sandbox Account for DoDirectPayment API Access

A new project I'm working on for a client calls for me to implement PayPal's Website Payment's Pro. Doing so is fairly straightforward as the API calls are little more than query string parameters passed over HTTP.

With some skeleton code in place, I started running some tests. I pointed the app to the production server and using the client's PayPal account tried to invoke DoDirectPayments. The result was error 10501:

This transaction cannot be processed due to an invalid merchant configuration

The account I was using was not still in the process of being approved by PayPal, so it seemed reasonable to get this error.

Giving the Sandbox a Try

Next up, I decided I'd setup a sandbox account for the client and utilize that. I have mixed feelings about the PayPal sandbox approach: on one hand, it's quite impressive that they offer such a complete testing environment to use, with the ability to create your own little universe of buyers and sellers. On the other hand, it's an absolute pain to use - the nested series of logins required to use it always trip myself and clients up.

In any case, I figured using the sandbox server would made perfect sense as not only was I in test mode, but also didn't want to have to wait for PayPal to complete the approval process.

I dutifully setup a new seller account, and made sure to select the website payments pro option when doing so. When it was all said and done, I ran the same transaction above and again got the same error message: This transaction cannot be processed due to an invalid merchant configuration. What the heck?

Debugging the Sandbox Setup

I poked around the sandbox area, struggling to see if there was a step I missed. I couldn't find one. Googling the error message brought up these odd exchanges between developers and moderators:

DPayPal says:
   API Username: suresh_1249631663_biz_api1.speridian.com
   Please enable my billing agreement.

   PP_MTS_Justin says:
   The Direct Payment API has now been enabled for your account.
   Thanks !

The above message is from 2007 - surely I don't need to post on a message board to activate my account, do I?

This morning, I gave my good friends at PayPal a call. After talking to 5 reps or so, I finally got to someone who broke the news to me: the sandbox site is buggy. In order to get an active user who can make calls to DoDirectPayment I'd need to work with PayPal directly. Not only that, but the user I created who was specifically set up to be a Website Payments Pro client is so broken that I needed to create a fresh user and have him modify that one.

I'm just shocked. Here's a company that's had the same critical bug since 2007 and they have yet to fix it? Or maybe it just re-appeared.

Regardless, if you want to use the PayPal Pro API and the sandbox, give PayPal call at: 800-852-1973 (or, 866-837-1851, or 888-221-1161 -- all phone numbers I was told to call) to just fix the problem directly.

So. Strange.

Tuesday, November 23, 2010

Annoyance at the TSA Outrage

These stories of people taking on TSA and their backscatter/pat down procedures really get me in a tizy. Don't get me wrong, I'm not in love with all of TSAs policies - but the tone of these stories just irks me.

First, you've got the whole backscatter machines are unsafe theme:

But now, as I looked past the 25 people waiting to get into their own country, I saw it: the dreaded Backscatter imaging machine.
I explain that I’m worried that the Backscatter has unproven health risks.

This topic has been covered before and is a myth TSA has been trying to bust. As they explain:

A person receives more radiation naturally each hour than from one screening with a backscatter unit. In fact a traveler is exposed to less radiation from one AIT scan than from 2 minutes of an airline flight.

Next, you've got the whole, you don't have a right to treat me this way theme:

I said, “I am aware that it is policy, but I disagree with the policy, and I think that it is unconstitutional. As a U.S. citizen, I have the right to move freely within my country as long as I can demonstrate proof of citizenship and have demonstrated no reasonable cause to be detained.”

Did you miss the sign that said by entering the security area you're agreeing to the procedures?

But the part that really gets me unhinged is the old: but surely, I shouldn't have to go through this procedure theme:

Now, I’ve read a fair amount about the controversy surrounding the new TSA policies. I certainly don’t enjoy being treated like a terrorist in my own country, but I’m also not a die-hard constitutional rights advocate.

And there you have it - why should I be treated like a terrorist in my own country? Or, as I read it, why should I have any inconvenience - only people who are, or at the very least, look, like a terrorist should have to go through these procedures. Me, I'm special.

We'll ask our troops to fight for us and be outraged when TSA has anything but a perfect record in thwarting attacks - but we'll be damned if we're going to have be inconvenienced.

Monday, November 22, 2010

Gotcha of the Day: WordPress Auto-Embedding Stops Working

Auto-Embedding in WordPress is one of those cool features That Just Work. By simply checking the auto-embeds checkbox in the media section, a bare URL will automatically get turned into embedded content.

That is, until it stopped working on one my client's sites.

I poked and prodded and just couldn't explain why the feature was working in the customer's dev area, but not in production.

After more time than I'd like to admit, I finally got around to applying the debugging strategy that one should always try first with any WordPress problem: disable plugins. Rather than turning them all off, I looked for the most suspicious one - and sure enough there was a good candidate.

I turned off the Raw HTML plugin, and sure enough, the autoembed feature is back to working.

Apparently the Raw HTML plugin gets a bit overzealous and doesn't allow the auto embed filter functionality to execute properly.

The Raw HTML plugin breaks auto embedding, and one should always start off a debugging session by turning off plugins. Lessons learned.

Jumping on the Netbook Bandwagon

How can you resist not being at least a little attracted to the cute little netbooks that are everywhere these days? They are like the puppy-in-the-window of computers.

Only problem is, I've never really had a good excuse for buying one. And besides, like any computer purchase, it's so easy to decide to get just a little fancier model, and before you know it you're paying $500 for the $200 netbook you were planning on buying.

Well, I've managed to solve both problems.

First, the reason for "needing one." Frequently, when I travel, I find myself having an internal dialog about whether or not I should bring a laptop along with me. For family oriented trips, I probably won't have time to even crack it open. And it's a pain to schlep through security. And what if it gets lost or broken, what a hassle that would be. But, on the other hand, in my business, issues can pop up any time. And having a laptop means being able to fix them in a hurry. Also, being a blogger, I really like the simplicity of being able to post photos and content through a laptop, rather than depending on my phone for all my posts.

I figured a netbook would provide a smaller footprint for traveling, yet still leave me prepared to handle emergencies. And, I should be able to use it as a simple blogging tool. OK, that was enough of a manufactured excuse. Now onto the price part.

The problem with finding a good deal on a netbook isn't find one - it's figuring out which are the ones that are actually worth my time. Between local stores, eBay, Amazon and dozens of other options, it became clear that picking a model and finding a good deal was going to be a pain. And then it hit me - with netbooks being so cute, and also being so underpowered, certainly there must be people in my local area who bought one and aren't happy with the result. Where would they sell theirs? Why, craigslist, or course.

A quick search for netbooks in DC turned up all sorts of options. I set myself a max price of $200 and waited. Within a few days, I came across this short ad for a Samsung Netbook N150. The small screen, 1Gig of memory and relatively large hard drive (250Gig) all seemed like a perfect fit.

I contacted the seller, and 6 hours later, met him a Starbucks to pick up my brand new netbook.

Samsung N150 First Impressions

I've now spent a single day working on the netbook, including: setting it up, debugging a couple of websites for work, talking with Mom on Skype, listening to Pandora, watching a daily show episode, editing Google Docs and writing this blog entry. Surprisingly, for all these activities, the laptop totally works. However, it only works because I've taken fairly ruthless approach to the device: don't expect it to multitask (so yes, Pandora works well - but only if that's all you're using the laptop for), install the minimal amount of software, and expect it to be slow. With my expectations low (heck, this thing cost $200 - dirt cheap for a laptop even these days), it all works.

A few features I like about the Samsung:

  • One of the USB ports can charge your device even when the computer isn't running - this should be handy for traveling. You need to configure this in the BIOS.
  • Using the VGA port and a USB ports I was able to plugin my desktop setup including a large monitor as well as keyboard and mouse. The netbook doesn't support extending the desktop (only showing the same screen on the netbook and external display), and the resolution is way high for my large monitor - but again, it does all work. External monitor support could be useful for hooking up to a projector.
  • The keyboard has taken some getting used to, but after a day of use, it seems totally adequate. And good gosh this screen is tiny. But again, surprisingly usable.

The list of software I installed is is below. Again, I tried to whittle it down to just the absolute essentials. I've been quite pleased with how my dev tools act on the netbook. Cygwin, emacs, subversion, etc. all play quite well in this constrained environment.

Live the Disaster Plan

One of the best strategies I've put in place in my business is that I have two laptops on hand at all time, and every week I switch which one I use as my primary one. This means that if one is lost or breaks, there's another one primed an ready to go. Backups are great, but having a cloned system is even better.

Going through the exercise of setting up and using a netbook to get work done has been another example of active disaster planning. Rather than waiting for a crisis to strike, today, I proved that without either of my existing laptops, I can pull everything I need in from the cloud to be effective.

This exercise alone is worth the $200 I spent on the netbook.

I'm thinking I'll fold the netbook into my multi-laptop strategy by using it as my primary computer on the weekend. That way, I'll continue to demonstrate that I'm prepared for some kind of massive outage.

Bottom Line

So far, I'm pleased with the netbook. It's definitely an underpowered machine and requires a totally different mindset than my usual systems. But, with that mindset in place, it just may be worth it. I'll really know after my next travel adventure, so stay tuned for more feedback.

Friday, November 19, 2010

Finding and Embracing The Hard Part

Today, I got more wisdom from Seth Godin - this time on the topic of businesses and their Hard Parts. As Seth explains in his usual pithy manner: a business has easy parts (arranging an office) and hard parts (hiring a top notch sales person). The goal is to find the hard parts and tackle them with zeal.

Every project (product, play, event, company, venture, non profit) has a million tasks that need to be done, thousands of decisions, predictions, bits of effort, conversations and plans.

But what's the hard part?
Don't tell me you want to launch a line of spices but don't want to make sales calls to supermarket buyers. That's the hard part.

I talk to folks about their ideas all the time, and one of the most important things I listen for is this Hard Part. What about their idea is almost, but not quite impossible to do. Having a Hard Part is key. It'll keep away your competitors and it'll make your product something people will love to use, even if it's not perfect.

The other cool thing about these Hard Parts is that often what's required to solve them is brain power and creativity, not cash. So there's no excuses for an individual not to take on these tricky problems.

Thursday, November 18, 2010

Review: Tyrannosaur Canyon

Having just come off a stint of reading and listening to a whole bunch of non-fiction, and I really wanted a fun adventure story I could listen to in the car. More or less randomly, I checked out Douglas Preston's Tyrannosaur Canyon from the library. It turned out to be a perfect choice.

For 7 of the 10 CDs, the book followed a typical plot line. You knew who the bad guy was, the good guy, the damsel in distress and how it was going to all turn out. Still, it was a good listen. Then at disk 7, the book took a pretty major left turn. Whatever story arch I predicted went out the window, and an unexpected story unfolded from almost nowhere.

This made for tons of fun.

The audio version also contained an interview with the author. Sometimes these are a disaster - and sometimes they totally work. In this case, it works. The author's explanation of how he approaches writing and how he allows the story to take its won shape made me appreciate the book even more. I also learned through the interview that I had read the preceding book in the series about 4 years ago. And I liked Preston as an author then, too.

If you're looking for an action story with a nice foundation in science, this is the way to go.

Painful Product Placements, Courtesy of Days of Our Lives

This one is for my Mother-in-Law and Sister-in-Law who are die hard Days of our Lives fans. AdRants highlighted a story they kindly titled: 'Days of Our Lives' Riddled With Horrific Product Placement, which links to these examples.

AdRants pulled no punches:

Seriously? The brand and the writers couldn't have worked together to come up with a more subtle and effective placement? These placements literally transform the daily drama into a full on commercial. And a really bad one at that.

Granted, the writing on soaps sucks so perhaps expecting a well crafted product placement is asking too much but an illiterate imbecile could have come up with a better solution than the writers of these disasters did.

Some of the worst advertising we've ever seen.

They are pretty painful to watch, see what I mean:

One commentor did point out that the name "Soap" in Soap Opera came from companies like P&G who didn't just sponsor the shows, but produced them. So, maybe all this product placement is just part of Day's roots?

Wednesday, November 17, 2010

5 Places Your App Can Store Data That Aren't MySQL

Yesterday I was working some code for a client that had me storing data outside of the usual MySQL setup. That got me thinking, what other data storage options might I be overlooking? Here's some brainstorming of places that are easy to stash data (and all have web friendly APIs).

  1. SimpleDB - SimpleDB gives you the ability to store massive amounts of data on a platform with high-availability built in. Related: Cloudant.
  2. Twitter - Twitter provides the ability to store a stream of data in a way that users can view it from a variety of platforms, all without you developing special interfaces. You even get SMS notification and RSS built in for free. Related: WordPress and Blogger.
  3. Google Spreadsheets - Why store data in a database and then write code to extract it into a Spreadsheet, when you can have your app talk directly to the spreadsheet? Skip the middle man. The Zend API allows you to do this in just a few lines of code.
  4. Pastebin - Pastebin allows you to inject a chunk of text into their system and get back a URL to it. The data provided can be rendered with code highlighting, have an expiration date and be public or private. An interesting set of options which are provided by using a super simple API.
  5. QR Codes - why not stash your data in an image? Each QR code can store up to 256 characters. Push the resulting images to Picasa or Flickr. Or better yet, print them out and have your data literally in the palm of your hand.

Tuesday, November 16, 2010

Gotcha of the Day: Getting sitecopy to behave with ssh

Earlier today, I spent a bunch of time configuring sitecopy to deploy files over ssh on Windows using cygwin.

My key takeaways were:

  • One would think protocol sftp would work - but alas, this always seems to hang on my cygwin environment. I added some printf's to the source code and confirmed that sitecopy is hanging on a read. I'm thinking this might be related to some kind of limitation with Cygwin, but what it is exactly is beyond me. protocol ssh works well.
  • Sitecopy will inherit the ssh-agent in shell you run it from. This means you don't have to bother entering your password with every deployment.
  • The Big Gotcha for me was that files failed to copy, and reported just a vague error. The problem was that I had:
        remote /public_html
    which in an FTP or WebDAV context is interpreted as a relative path off of the home directory you log into. In ssh mode, files were attempting to get written to: /public_html/php - no wonder they were failing. I changed this to:
        remote /home/webuser/public_html
    and I was back in business.
  • Open Source rocks. Rocks I say. Because I had the source code for sitecopy I could crack it open, add debugging code, and really see what the heck was going on. If this was a closed source app, I would have had to guess and depend on the vendor alone.

Figuring the ssh protocol out is key, as now sites that have ssh/sftp access only can be deployed to just as easily as those with traditional FTP.

Astonishing Astronomy - One Day At A Time

I stumbled across this photo and from there found the Astronomy Picture of the Day Archive.

The contents are simply amazing. From remarkable sights found here on Earth to clever visualizations (try hovering your mouse over the last link's photo) - who knew astronomy could be so riveting?

Get a bird's-eye-view of the photos here.

Monday, November 15, 2010

Taking the Dead out of Digital Dead Drops

The other day I blogged about Digital Dead Drops, a scheme where USB drives are stashed around a city for folks to use. While the concept has been rolling around in my head for the last few days, what's really been bugging me is all the negativity in the comments on the announcement page.

Sure, the idea has flaws - but it never ceases to amaze me how people can show up and criticize an idea with such vitriol.

In the spirit of being more positive, I offer here solutions to three key problems I see with the idea. First, the potential for physical damage to one's laptop, second, the concern about virii and other malware and third, the concern about drives being wiped.

The first concern is that, by say a wedged in place staple hidden in the USB port, one might accidentally damage their laptop by using a Dead Drop. On the surface, it seems the hardest to fix. Though, in reality it's almost trivial. Just use a $3.00 USB cable extender and you're all set. Yes, the extender cable could get damaged - but it's easily replaced for just a few bucks. An extender cable would also make using the drives easier, as you wouldn't need to position your laptop at just the right angle as shown in the original video.

The second concern - viruses and malware also seems relatively easily solved. The solution: PGP (or, more likely GPG). A public dead drop seems the perfect application for public key cryptography. Not only could you use the encryption to get all cloak and dagger like, but just as importantly, you could use digital signatures to confirm a file really is written by who it claims to be written by. By using Public Key Encryption, you could effectively use an insecure medium like a dead drop to pass files around securely. Just, like, say, a VPN.

To get really fancy, someone could write an application to browse dead drops. It would have functionality like turning off auto run behavior and showing which files are signed and which aren't. In other words, making the power of PGP available to novices.

The third problem, that of people deleting drives and files, is trickier to solve. About the best I've come up with is that the browsing application mentioned above could be enhanced to take disk images of the drive and archive them. An individual could visit drops the frequent, and make archived copies of the drive, or restore them. This would work much like the Wikipedia restoring process works now.

So there you have it - three problems and three solutions.

And why do we need dead drops in the first place? I'm not exactly sure yet. But I know, that sometimes the best inventions come out of a product that doesn't appear useful.

Bedazzling Bites in Boston

While most of our latest trip to Boston was spent playing with Kiddies, Shira and I did manage to take in some tasty eats. So tasty, I thought they deserved mention here.

Grasshopper Restaurant - for years, Shira and I have driven past this restaurant advertising "Asian Vegan" in bold white letters. We finally managed to have dinner there last Thursday night. Turns out, it was worth the wait.

We ordered Wanton Soup, their Sweet and Sour Specialty and "Beef" with Mushrooms.

The Soup and Sweet and Sour dish definitely met expectations. Really, how can you miss if you slather tofu in sweet sauce and deep fry it? The bigger surprise was just how tasty the Beef and Mushroom dish was. Besides being absolutely delicious, it definitely managed to nail the meat texture and flavor.

The main entrees were both ginormous - and when we go back we'll probably split one.

For vegans and non-vegans alike, this is worth a try.

Chill - while out on a walk, we decided we wanted to catch a little snack. With the little one in his stroller, we randomly dropped into Chill. Turns out, their claim to fame is natural frozen yogurt which as the clerk explained, "tastes like frozen breakfast yogurt." He also insisted we try a sample as the description didn't do the dish justice. I was sold, Shira not so much. Shira got some ultra double extra chocolate thing and I got the tart yogurt.

For a $1.49, I could have unlimited toppings. There's just something powerful about unlimited. Fruit, sprinkles, whip cream, cookies all got piled on. Of course, choosing more toppings mean less of each one gets used - so it's a zero sum game. But still, I liked the power of choice.

They also got serious bonus points, because the clerk gave us a small cup of mangos and raspberries for our little one to nosh on (he's allergic to milk - so yogurt or ice cream was out of the question). We offered to pay, but have gave them to us on the house.

For a chilly desert, I walked away with a very warm feeling.

Sunday, November 14, 2010

Visiting the Twins, while they're only-children

We just got back from a wonderful weekend visiting the twins. They are 19 months old, and just adorable (as always). They are going to have a little sister pretty soon, so this was our last visit to spoil just them.

Our little guy came to join the fun, and it was remarkable watching them all play together. Just a few short months ago, they played indedpendently, but this trip they were really playing off each other. One would start banging on a chair, and another would bang louder. It was a loud and fun weekend. A few pictures to capture our time are shown here:

Friday, November 12, 2010

A Content First Approach

I was out hunting for web site mockup tools when I came across this lead from an article listing 7 options:

I am working on a number of website projects right now. My mission is to banish ‘lorem ipsum’ by working text into page designs before development starts. (To find out why, read my article: Want a good website, on time? Prioritise content)

As I pondered this statement, it occured to me that the author is absolutely right: the standard way to develop a site is to come up with the shape first, then implement, and finally, drop in the text. Banish "lorem ipsum" - that's pratically heresy.

But, would happen if you did just this? What if the copy came before the website design was solidified?

Seems to me, the design and flow of the website would be structured around what you actually want to say rather than what a generic design would call for. Rather than trying to fit 10 selling points into a single Why Buy Page, you could structure the site to walk folks through 10 points in an easy manner.

Seems obvious - I'll have to give it a try.

Thursday, November 11, 2010

Digital Dead Drops

While I'm not sure how practical the project is, I just find something appealing about the USB Dead Drop project.

Essentially, the idea consists of nothing more than physically embedding a USB drive in a wall or object and telling people to get creative with copying files to and from it. Spackle + a USB Drive - how cool is that?

Predictably, the comments from folks on the Internet range from praising the project and comparing it to a form of Geocaching, to describing it as: "pretty much like leaving dirty needles around for people to use."

Even with all the security concerns, I'm still in the Clever Idea camp. What can I say, I'm a sucker for using simple, cheap and readily available technology to potentially accomplish big things.

Learn more about the project from the video below. What's your take on it?

Dead Drops 'How to' - NYC from aram bartholl on Vimeo.

Wednesday, November 10, 2010

Tips From The Grill Master

Now that I've got a deck, it's time to really start paying attention to our grill. I asked my Brother, the grill expert of the family, for any advice he could offer. Here's what he came up with:

Step 1: Prepare. Without proper preparation, you're off finding stuff and you're food is burning. And what will you want to have on hand before you start?

  • Spatula and other tools
  • Grill scraper
  • Any sauces that will get used
  • Glass of water for grease fires that may pop up
  • Pam
  • Meat (yeah, this could be handy)
  • Thermometer
  • Lighting if you're grilling after dark

Step 2: Warm the grill up for 5-7 minutes. Then give it a good scraping to clean it. If you want to Pam the grill once it's warmed up, you can do so. The Pam may cause a bit of a flare up, but you'll be fine.

Step 3: Start cooking, and go wash the plate you brought the meat out on. Yeah, poisoning your guests tends to be a bit of a downer for the meal.

Step 4: Cook until the thermometer says it's done. I've used my brother's Thermapen before, and it really is an absolutely essential grilling tool. It's like X-ray vision for cooking. Yes, it is pricey, but for a novice like me it's worth every penny.

Tonight's burgers got a thumbs up by Shira. Of course, how can you mess up burgers? I'm sure I'll find a way.

A deck and a grill - if this isn't living the American dream, I don't know what is.

Review: Flip & Tumble 24-7 Bag

No doubt about it, I'm a fan of all things bags and backpacks. And I have to say, I'm quite happy with my latest purchase, a Flip & Tumble 24-7 bag.

The Flip & Tumble is essentially a reusable shopping bag, though instead of using handles, it has a messenger (or purse, *gulp*) style strap. I think this makes it a lot more usable than the typical shopping bag.

For me, it's my latest attempt to find a bag that's easily packed along and then deployed when needed. Of course, there are lots of bags that do this - but they tend to be flawed. They might be too large when bundled up, so carrying them becomes a pain. Or, they may be too fragile and prone to ripping.

So far, the Flip & Tumble seems to have all the bases covered:

  • It stows down quiet compactly - small enough to be fit into a jacket pocket, or even crammed into a back pocket
  • It's designed a shopping bag, and claims to hold up to 25lbs, which is plenty
  • There are no zippers to break or flimsy straps
  • The main strap has just a tiny bit of extra padding on it for gripping - not sure if it does anything beyond being psychologically useful
  • It comes in plenty of colors, so I was able to black and gray - the manliest option I could find.
  • It's relatively cheap at $10.99. (and available for Amazon Prime shipping)

My only concern was the size: even unfolded it doesn't look all that big. So, I tested it out on a walk with our little one. Here's what I brought along (and accumulated):

  • Hummus and Pita picked up along the way
  • Diaper pad, with diapers, wipes, zip lock bags and wet-ones inside
  • Extra change of clothes, Just In Case
  • A little light reading
  • Soy milk in an insulated container - Mmmmmm....so delicious
  • a Pocket Kite in case the wind and time cooperated
  • Salsa - kidding. It's actually graham crackers for light snacking.
  • The Flip & Tumble bag (OK, before I blow your mind - this wasn't in the bag. This was the bag.)
  • A fancy shamncy juice drink we picked up with the Pita

And what do you know - it all fit:

I suppose the only other gotcha with the bag is that as unisex as it is, it's still more purse than messenger bag. This means that while I'll be glad to pull out the bag when I have an actual purpose for using it, I don't expect to carry it everywhere expanded. The world is not ready for Ben Simon to carry a murse.

Tuesday, November 09, 2010

The Deck Lives!

There are a few last tweaks to do here and there - but for the most part, the deck is done.

It was finished just in time for Day Light Saving time to bring darkness a 4:00pm.

Still, we couldn't be happier with how it turned out. Our builder really did an excellent job.

Monday, November 08, 2010

A Lawn Service I'd Buy Into

I came across this proposal on an Urban Farming blog I follow. The idea is deliciously simple: what if instead of paying a lawn service to trim my grass, I paid them to maintain a vegetable garden (and trim the grass)?

The proposal goes on to spell out the benefits in fairly formal terms:

In this scheme, the vast acreage of American lawns becomes an inexhaustible reservoir of arable land. Through an ongoing conversation with each individual homeowner, the farmers adapt farming techniques and planting strategies to the fragmented and platted landscapes of our cities and suburbs. Utilizing their professional expertise, specialized tools, and organic farming techniques, these farmers provide agricultural services at low cost and with maximum convenience for homeowners, bringing the industrial efficiency and higher yields of farming to the realm of home gardening.

The homeowners receive the bulk of the harvest delivered from their personal gardens onto their front doorsteps, with the farmers marketing a smaller portion of the produce to local restaurants and markets. A single garden of 800 sq. ft. can provide 400 pounds of fresh produce for each household, with an additional 240 pounds to be distributed locally amongst other consumers. Such an operation would, in farming numerous residential yards, rival the productivity and income generation of a typical CSA (community supported agriculture) farm out in the countryside.

This seems like a wonderful project for a gardening entrepreneur to take on. Using techniques like square foot gardening, a single person could maintain dozens of clients.

As a home owner, I'd get fresh produce and the sense that I was putting my lawn to more use than just eye candy.

Surely, businesses must already offer this as a service, right? If so, I'd love to hear about them.

Constraints vs. Problems in the Business World

Seth Godin has a wonderful piece on Constraints vs Problems in the business world. The very summarized version is:

Constraints (like, say, not having $1,000,000 in the bank) are something you live with. Problems (like, say, helping people find the perfect movie to rent) are something you solve.

Knowing the difference is key.

The only thing I would add is that one way to be a successful entrepreneur is to recognize when a constraint has turned into a problem.

For example, Amazon Web Services make the constraint of not having access to massive amounts of computing hardware a problem solved with a little cash. Or, put another way, in the past you couldn't create a site on the scale of YouTube. Now you can.

Make sure you read Seth's original article. How he can say so much in a 140 words is beyond me.

Friday, November 05, 2010

Review: Little House on a Small Planet

On a whim, I checked out Little House on a Small Planet: Simple Homes, Cozy Retreats, and Energy Efficient Possibilities from the library. It was on the new arrivals shelf and I thought it would be a book of mostly photos to leaf through.

Turns out, my gut feel was wrong. It's way more than just a picture book. It's a book that provides chapter after chapter of evidence for why living in a smaller (and therefore simpler) house is better. It covers financial, spiritual, environmental, family, business and other topics. By the time I was done reading it, I felt like I was the one missing out, what with my 3000 sq. ft. mansion I live in.

Some of the benefits seem to be a bit of reach to me. Also, this was definitely arm chair adventure reading - I'm not downsizing (or upsizing for that matter) anytime soon. Heck, the book could even get a bit preachy - like that friend of yours who's on some sort of environmental kick, and just won't let you forget it. But, given that there's so much of our society dedicated to suggesting you need more and bigger - I guess I can't be annoyed that there's at least one source that's loudly shouting the opposite.

This book is an obvious read for a person or family shopping around for a new house. And even someone like myself who has a descent size living space can learn some important lessons about how to be utilize their space better.

For me, however, the main takeaway is just how powerful choice and perception are for people. To one person, a 300 sq ft area is the perfect sized bathroom, to another, it's the perfect sized house. There's no rule that says that small is good or bad. Or even what small is defined as.

And why is this useful? It means that the house you have right now, big or small, could be the perfect living space. You just need the right view of it.

Phone Friday: The G2 isn't Waterproof. Or, How to Surving a Dunking

Let's say you're giving your 14 month old a bath and the nearly unthinkable happens: you manage to drop your handset into his little bathtub thingy. What should you do?

Well, I'm sorry to say I now have some very hard won insight into this quandary.

In my case, I thought I was pretty smart: I immediately yanked the phone out of the tub, dried it, removed the battery and let the whole unit sit out. I thought I got to it fast enough that my biggest issue was the white disk under the battery had turned pink, meaning any sort of warranty I had on the phone was toast.

Oh, but did I underestimate my problems. After hours of drying, I popped the battery in and turned on the phone. Nothing. That's right, nothing at all happened. In fact, here's more or less what happened over the next few days:

  • Day 1: Phone doesn't turn on or given any indication it works
  • Day 2: Phone seems to turn on, but the screen is dead
  • Day 3: Phone turns on, and some image can be seen on the screen, but it's still mostly dead
  • Day 4: Phone turns on, screen appears (whoo!), but the touch screen is totally reversed. Touching the left part of the screen triggers events on the right side.
  • Day 5: Phone turns on, screen appears, touch pad works! The main problem: there's serious discoloration in part of the screen

Since day 5, the screen has basically cleared up and the phone is almost back to the way it was before it took a swim.

The moral of the story: if you get your handset wet, have some serious patience. Keep the battery out of the device and the back off and just let it dry for days and days.

This is actually a lesson Shira and I learned years ago when we dropped a Motorola into a swimming pool. We went back to AT&T and begged our way into a new phone at a reduced rate. Then a few days later, the Motorola started working again. We ended up selling one of the phones on eBay and all lived happily ever after.

Like I said, if this happens, you've got have patience. Lots of patience.

Update: Here's my Dad's advice:

Rice - you needed to put the phone in a big bag of rice.

Thanks Dad!

Thursday, November 04, 2010

Rally to Restore Clever Signage

I was out of town during the Rall to Restore Sanity, and while I haven't had a chance to listen any of the video of the event, I've been loving the photos.

The set on RallyToRestoreSanity.com is absolutely hilarious. Here's a gallery pulled from Flickr that contains even more photos from the event.

I guess I can't quite put my finger on it - I see all these people acting goofy, and I think to myself, our country is going to be OK.

Wednesday, November 03, 2010

Caption Me - Closeup Edition

Who doesn't love a little macro photography? Here's a few shots from our most recent trip. Have a caption idea? Drop 'er in the comments.

Tuesday, November 02, 2010

Travling with Baby Hack: Dealing with a missing bottle cap

Yesterday, as we packed up to make our cross country trip back home, we realized that we were missing the plastic dome-style cap to one of our baby bottles.

None of the obvious options seemed like good ones: the day of traveling was long enough that we needed all the bottles we brought; and while skipping the cap wouldn't leave the bottle gushing milk, it would definitely make for a mess.

And then Shira had a brilliant idea: fill the bottle with milk, cover the top of the bottle with Saran wrap, then screw the nipple assembly over the whole plastic wrap.

The result: the plastic wrap keeps the milk from leaking, the nipple assembly protects the plastic wrap from getting punctured.

It worked like a charm.

Here's what I mean in photos:

Monday, November 01, 2010

Watching the Bolts Pull Out the Victory

The San Diego Chargers game we caught today turned out to be an excellent one. It was a fight right up until the last 30 seconds, where the Chargers pulled out the victory.

Compared to say watching Tennis or Baseball live, I was struck by just how quickly the game moves and how much activity is happening in parallel at any one moment. Get distracted by a player on the sideline (or, say, a cheerleader dressed up as a skimpily dressed Police Officer costume), and poof, you could miss a key play or penalty. Heck, even when I was watching the play unfold, I'd still often wonder what the heck just happened. But it wouldn't really matter, because the game zipped right along and there was more action to see.

Makes me appreciate the commentary and instant replay at home, which spoon feeds you just what you need to know. Still, nothing beats being there - surrounded by 59,000 other fans all cheering at the top of their lungs.

A few photos below. Man, it's hard to photograph football - there's just so many places the ball can end up, and I always seem to guess the wrong place to point the camera.