Monday, October 15, 2012

RIP, Michael O'Connor-Clarke

A good friend of mine died on Saturday. For those who didn’t have the opportunity to meet this man, I feel compelled to tell you a bit about him.

I first met Michael O’Connor-Clarke at the Hilton New York in 1999 when we were in marketing for competing software companies. He at Hummingbird, the industry-leading document management software company, and I at iManage, the upstart nipping at Humminbird’s heels. I remember thinking it must have annoyed him that I was invited to share the stage with him; his company, after all, had more than 70% of the market, and iManage had been none too subtle in painting their product as yesterday’s technology.

But he wasn’t annoyed. No sooner had our panel wrapped up that he invited me to lunch. We hit it off, though we lost touch as our careers went in different directions. I stumbled across his blog several years later, and got reintroduced to what a cool guy he was.

And our paths crossed once again in New York, at another conference, this time in 2005. I was with FeedBurner, and Michael was at a tech company that was complementary to what we were doing. We reconnected over another lunch, and resolved that this time we'd stay in touch. We did.

We never went more than a few months over the last seven years without some e-mail exchange, and though we didn’t see each other too often, our lunch at SXSW a couple years ago was a highlight of that conference for me. By then I was at Google and he’d returned to agency life after some time with a tech firm, and we spent a good 90 minutes comparing notes about our families, our careers, and life in general.

Michael loved his job, and loved PR. He reveled in finding the story worth telling, and anyone who spends more than a few minutes browsing some of his blog posts will see a man who even loved those who practiced bad PR. (“Loved” might not quite be the right word: adored, maybe? Enjoyed? He took a perverse delight in their ineptitude, because even in their poorly targeted e-mail blasts, their terrible turn of phrase, their poor choice in tactics, there was a story there, too. Here’s but one example of countless exchanges he and I had over the years documenting this.)

This past July 4, I was driving my family north for a long vacation weekend. Early in the drive I got a call from one of my best friends, who was calling to tell me his wife had cancer. It hit me hard, and I spent much of that six hour drive predictably thinking about what’s important. Family. Friends. Legacy. As we neared our destination, it was dinner time. Rather than try to cook in the house we’d rented after a long drive, we found a local pizza joint that was open on the holiday. While I waited for our pizza to be finished, I checked my e-mail.

I didn’t recognize the name of the sender of the latest e-mail received, but I recognized the name in the subject line: Michael O’Connor-Clarke. The sender was Michael’s boss, sending to contacts in his address book, letting his extended network know that Michael was battling esophageal cancer.

Michael died Saturday, 48 years old, leaving behind a wife and three children, and an online and offline community of thousands whose lives he touched.

Last fall he and I were e-mailing about a YouTube problem a client of his was having. I asked how his family was doing, and his reply spoke volumes about who he was:
Things here are utterly wonderful, thanks. Actually in love with my job ... Great team, fantastic clients, and we're kicking 31 flavours of arse every single day. Family growing like weeds and eating us out of house and home, but all happy, healthy and (even more important) the kids all still like each other. La vita e bella.
It seems simplistic to reflect on a friend’s passing and say that we should cherish every moment, treasure the time we get with those we love. But the story of Michael’s life is, in the end, actually rather simple: love your family, find your passion, apply that passion to making others’ lives better while you can, and know that joy isn’t hard to find if you know where to look. I liked Michael the day I met him, and over the years grew to admire that here was a man who had his priorities firmly set.

Another of Michael’s friends recounted that Eamonn Clarke posted this on Michael’s Facebook page earlier today:

Enjoy life.
Hug your loved ones tight.
Be happy that he lived.
and raise a glass to him tonight
I’m raising a glass right now. Here’s to Michael, a man whose story I’ll remember for many years to come.

Monday, October 8, 2012

A family photo server

Earlier this year I asked for suggestions on Google+ about dealing with increasingly large image collections. In our house, we have two DSLRs, four phones that take pictures, and two point and shoot cameras. The images from these are scattered across several hard drives and online backup accounts; over the past several years they've been inconsistently backed up. We have a network attached storage device that houses all images, but due to poor backup processes in the past, we have several cases of duplicate images.

Adding to the complexity, we paid Scandigital to scan years of print photos – everything from our honeymoon to our first cross-country drive to our first house. This added several thousand images to our archive – a good thing, to be sure, as we now had electronic copies of pictures we hadn't looked at in years. But the challenge of managing those images – now numbering close to 50,000 – was getting insurmountable.

I hadn't gotten around to actually implementing a solution – we had a busy summer and I wasn't convinced I really wanted to tackle this. Then my son had a school assignment last week requiring him to find a dozen pictures to share with classmates from his childhood... and actually finding pictures for him was a nightmare. After more than an hour of poking through our archive, we hadn't found more than 5 he was happy with. I was frustrated, he was annoyed, and it became clear this wasn't sustainable. It was time to dive in.

The solution I more or less settled on was what I documented this summer: dedicate one desktop computer to organizing the image catalog. This past weekend, I picked up a computer at Best Buy, and I'm already happy with the progress (though I expect it'll be months before I will feel like I'm done). Here's what I did:

The computer

Bought a Gateway desktop with a dual core Intel processor and a 1TB hard drive. Total cost? $350. (Twenty years-ago me will stare at that line for a long, long time. It's OK, me-from-the-past; computers are commodities but gas is now $5/gallon.) It features an HDMI port, so I parked the computer behind the television in our family room and plugged it into one of the TV's available HDMI connections; when I want to display photo albums easily, I can just pull them up on the TV. (Note: when I first connected the computer to the TV, the computer's display extended beyond the boundaries of the screen. This blog post helped me figure out the problem: I had to adjust the TV's settings to stop zooming in; once I did that, I was all set.)

I added a Logitech wireless keyboard to the computer so I could operate the computer from the couch; it includes an integrated trackpad, and so far I'm pretty happy with it.

The images

Copied over all of the images from the NAS drive to the PC. Installed Picasa, and let it find all of the pictures. All told, there are slightly over 50,000 images taking up 200 gigs of disk space (I think there might be more, actually, but I haven't finished confirming that everything made it over yet). Thanks to the fast processor, indexing these images took Picasa just a few minutes; last time I tried this with a laptop it took hours and didn't complete. Hardware matters!

The faces

This is where it started getting magical: after just a couple hours, Picasa had found thousands of faces across our images, and grouped them very accurately. All of a sudden, I could see photos of my six year-old daughter, from her birth to this past summer vacation. There's my twelve year-old son – at his third birthday party, on his first day of kindergarten, leaving for his first overnight Scout camp – in one place. And my ten year-old son – the day he was born, his first airplane ride, the day he learned to ride a two-wheeler. It wasn't just the kids: my wife and I are there too, as are the grandparents (including my grandparents, both of whom have died), extended family, and friends.

What's next

Like I said, I'm nowhere near done. This is a solid foundation, but I have a long way to go. Here's what I think I need to do to get this under control:

  • De-dupe the catalog. Picasa has a nice "show duplicates" feature, but since it shows both copies of the picture that's duplicated, removing the dupes while leaving one copy is a time-consuming affair. This article from Digital Inspiration looks like it'll help; according to Picasa I have more than 4,000 duplicates.
  • Confirm I have all the pictures. I haven't done a full audit of where all of the family's pictures are hiding; in my Picasa account, in my wife's, on the kids' SD cards, etc.
  • Simplify synchronization from those sources. Once I have all of the images, the next step is to ensure that going forward the new images will get included in the master Picasa collection. Crashplan on the Mac will likely satisfy this for both my wife and I; I'm looking into solutions for Android (Dropbox with its instant-upload option may be a good go-between here, though I haven't started looking at how best to do this across several devices).
  • Install VNC on the photo server. While I'm able to operate the computer from the couch, that's not the most useful way to do actual work. It's great for lean-back viewing of the pictures, but doing lots of manipulation can get tedious. I'm going to install VNC so that I can access the computer from my laptop when I'm at home, which should make it easier to do the heavy lifting when needed.
  • Turn on cloud sync. I've got a lot of unused disk space on my Google Drive account, so once I have the local catalog in a good place, I'm going to enable Picasa's cloud synchronization, which will not only give me reliable backup of all images, it'll also give me an easy way to share all of these images. For the most part that means sharing with my wife, but I'll probably also share with family who may like the ability to browse through all of our images.
PS: The assignment

Even without all of that yet-to-be-done work completed, when it came time to find pictures for my son's assignment, it took all of about 10 minutes. The combination of a fast computer, large display, reliable face-tagging, and simple interface meant that we were able to very quickly find a handful of pictures from nearly 10 years in a matter of minutes. I'm encouraged, and feel like I've got a pretty good path forward.

Wednesday, September 12, 2012

Expecting better from our candidates

Those of you who follow me on various social networks know of my involvement in a Congressional race in my new Congressional district. In what the National Journal has called one of the most interesting races in the country, 40 year incumbent Pete Stark is being challenged by 31 year-old Dublin city councilman Eric Swalwell. I've been fortunate to get to know Eric over the last 9 months, and have found him to be one of the hardest working, most committed candidates I've met. (And I've worked with a few!)

While interesting, the race has also been disappointing. Congressman Stark, running for his 21st term in Congress, has lobbed unsubstantiated bribery accusations at Eric, has threatened the livelihood of a former supporter who now supports Eric, wrongly accused a reporter of contributing to Eric's campaign (he later blamed his 16 year-old son for the mistake), and refuses to debate Eric again because the press asks "stupid questions". Now that we're in the final 60 days of the campaign, Rep. Stark has taken to blatant misrepresentations of his own background in the hopes that he can eke out a final victory before retiring. We deserve better.

Last night, Rep. Stark's campaign posted this picture to Facebook:

It's the caption that strains credulity:
I was pleased to have the opportunity to address members of the Alameda County Democratic Lawyers Club and to express my long-standing opposition to Citizens United and big money in politics.
There are two claims in that paragraph: 1) he's been a long-standing opponent to Citizens United, and 2) that he's long opposed "big money" in politics.

In the same debate in which he accused Eric of accepting "hundreds of thousands of dollars" in bribe money (a claim he later had to rescind and apologize for), Rep. Stark was asked point blank whether he supported Citizens United or not. His answer:
"Corporations are treated as people, and they should... be... under the Constitution. The answer there is that if a corporation does something that a person could be prosecuted for, like Mr. Swalwell, if a corporation takes a bribe, the head of the corporation should be responsible criminally for that act, just as a person would be, so that every corporation must have an individual who is responsible and has to answer to the law for any crimes committed." (You can watch the debate here; this particular question comes up at 39:32 in the video.)
Setting aside the personal attack that he later admitted was without merit, let's look at Rep. Stark's answer. His answer affirms that corporations are people, which was a part of what Citizens United was actually about. (You can read Wikipedia's summary here; the entire Supreme Court opinion is here.) Citizens United addressed the question of whether corporations had the same First Amendment right to free speech that people do. In an article this spring, Slate explained the practical effect of Citizens United:
After Citizens United, the courts (most importantly in v. FEC) and the FEC provided a green light for super PACs to collect unlimited sums from individuals, labor unions, and corporations for unlimited independent spending.
When someone asks a candidate whether they support Citizens United, they're asking whether the candidate believes that it's OK for "super PACs to collect unlimited sums... for unlimited independent spending." What Pete Stark said was, yes, corporations are people, which suggests that he's comfortable with the Supreme Court's reasoning. Hard to see any opposition to Citizens United whatsoever.

Which brings me to the second thing he said last night, where he spoke of his "long-standing opposition ... to big money in politics." I pulled the campaign contribution data from for Rep. Stark, and the data tell a very different story than his Facebook post does. Going back to 1998, here are the amounts Rep. Stark took from PACs, broken down by campaign cycle:
2012: $330,141
2010: $436,700
2008: $615,035
2006: $315,689
2004: $285,470
2002: $307,127
2000: $297,923
1998: $203,967
Over that time, he took a total of nearly $2.8 million from PACs. Over the last 23 years (OpenSecrets does not contain finance data prior to 1989), Rep. Stark has taken just under $3.7 million, which represents more than 4x the money he took from individuals in the same time (contributions from individuals accounted for just 15% of all money received). Here's a graphical break-down of the money he's taken (again, taken from
I'll let you decide whether Rep. Stark's claim of "long-standing opposition" to "big money in politics" holds up. For me, Rep. Stark lost my vote long ago. This latest charade just reinforces my commitment to Eric Swalwell's campaign.

Full disclosure: I consider Eric Swalwell a friend, have donated money to his campaign, have knocked on doors for him, and periodically advise his campaign staff on various things related to technology. I wrote this post on my own without any input or assistance from the campaign.

Friday, July 27, 2012

ImportHTML and Google Spreadsheets

We're getting ready to go on a family vacation to Alaska, and one of the big questions in the months leading up to the trip has been what the weather will be. Last week my wife and I were reviewing our trip todos and I stumbled on a great feature in Google Spreadsheets that I'd never used before: ImportHTML.

Before each trip, my wife and I work from a shared spreadsheet. We list out the packing details, transportation, itinerary, etc., and then divvy up the tasks. (I should point out that my wife almost always shoulders the vast majority of these tasks.) As of a week ago, the long-range forecast at was showing rain for the entire time we'd be in Alaska. Not awesome, but at least we'd be prepared.

But as I looked at the spreadsheet with our itinerary, I was annoyed that I had what we'd be doing listed out, but not the weather (which could dramatically affect what we'd pack, and what we'd need for various days). That's when I found ImportHTML and fell in love.

The premise behind the function is simple: in a cell, type =ImportHTML("[URL]","[query]","[index]"), where "query" is the element within the HTML that you want to import, and "index" is which element within the page you want to import. Here's how it works:

I found this page at that lists out the month's extended forecast for Anchorage, Alaska. Conveniently, it's laid out as an HTML <table>.

A quick look at the HTML source from that page confirmed that the table containing the weather data is the first table in the page, so in Google Spreadsheets I entered this:


That parses the HTML data into individual cells in the spreadsheet; and from there it was a trivial matter to associate an individual day's weather (high/low/forecast) with its entry in the itinerary, giving us one screen that shows where we're staying, what we're doing, what the weather will be on each day, and what we'll need to pack. Here's a snippet of the spreadsheet:

Best news of all? Now that we're just a week away from our arrival, the forecast is getting increasingly positive: a week ago all of these cells showed rain for the entirety of the trip; today when I opened the spreadsheet, just two days show rain and several days look to be pretty warm and sunny!

Wednesday, July 18, 2012

Kill Decision by Daniel Suarez

One of the first "grown-up" books I read was Andromeda Strain by Michael Crichton. He wrote it in 1969, while he was a medical student at Harvard Medical School. I remember not just loving the book, but admiring his attention to detail. My Dad worked at Millipore at the time, and I was surprised when I saw Millipore referenced in the book. It was obvious Crichton knew what he was talking about; though Andromeda Strain was a fantastic work of fiction, it was rooted in reality in a way that few books are.

I had a similar reaction to early Tom Clancy, and later Scott Turow. There's something about an author who can both write a great story and who's intimately familiar with the intricacies of the space they're writing about. And it's exactly why I adored Daemon the first time I read it; here was a book that came from someone who knew technology. More importantly, it was clear that the author had given serious thought to the implications of technological developments. At its core, it was a book that wanted you to think about where these things were headed, and what that might mean for society.

That author is Daniel Suarez, and it's been a privilege to get to know Dan over the last several years. (More on that here.) I'm hardly an objective observer at this point: I consider Dan and his wife Michelle to be good friends, and those who've known me for a while are likely tired of my enthusiastic recommendations of Dan's books.

Couldn't be more excited for Dan that his newest book comes out tomorrow. It's Kill Decision, and if like me you love a good story that's rooted in an intimate understanding of its subject matter, you will adore it. Many others have written great summaries of the plot, so I'll let you read those rather than try to retell it.

I read Kill Decision a few months ago, and what's stayed with me ever since was a deep unease at how present the book is. Where Daemon and Freedom™ were both far-fetched enough in plot that you could safely admire the technical accuracy while discounting the likelihood of seeing something like it play out in real life, I've had no such ability to do so since reading Kill Decision.

Great authors give you a good story while leaving you with something to chew on. That's what made Kill Decision such a joy for me: Dan's written about something deeply unsettling: as the tools of war become less expensive and more anonymous, the very nature of warfare has changed (and continues to change). And as technology drives cheaper, smarter, and smaller devices, the potential to deploy those devices as instruments of war – particularly when they're autonomous and anonymous – is intellectually intriguing and simultaneously terrifying.

Here are a few of the articles over the last several months that make the technology discussed in Kill Decision very, very present:

With this, it won't surprise anyone that I highly recommend Kill Decision if you're looking for a thrilling, thoughtful read. Pretty sure that Dan will be a household name in a month or so as Kill Decision cracks the summer bestseller lists. It's that good, and most importantly I'm eager to see the conversation that develops as more people get exposed to the issues Dan raises.

Tuesday, July 17, 2012

Building Character with the Boy Scouts

"The Boy Scouts of America provides a program for young people that builds character, trains them in the responsibilities of participating citizenship, and develops personal fitness."
That's how the Boy Scouts describe themselves at I support that mission wholeheartedly; it's why I've encouraged both of my sons to participate in Scouts for years. Both boys joined Cub Scouts as Tiger Cubs, my oldest is just a few requirements shy of advancing to a Second Class scout as a Boy Scout. My younger son earned his Webelos badge earlier this year, and plans to bridge to Boy Scouts this winter to join his brother in his troop.

Today, the Boy Scouts completed a two year program reviewing their exclusion of homosexuals, and affirmed it. Deron Smith, the Boy Scouts national spokesperson, said that the committee that reviewed the policy "came to the conclusion that this policy is absolutely the best policy for the Boy Scouts."

They're wrong. Excluding committed, engaged individuals who want to help my sons grow is the antithesis of building my sons' character. What this decision tells me is that the Boy Scouts of America are more interested in pursuing their own exclusionary morality ahead of my sons' personal growth. Last month, the Boy Scouts clarified their policy in a post on their blog:
The BSA policy is: “While the BSA does not proactively inquire about the sexual orientation of employees, volunteers, or members, we do not grant membership to individuals who are open or avowed homosexuals or who engage in behavior that would become a distraction to the mission of the BSA.”
Scouting believes same-sex attraction should be introduced and discussed outside of its program with parents, caregivers, or spiritual advisers, at the appropriate time and in the right setting. The vast majority of parents we serve value this right and do not sign their children up for Scouting for it to introduce or discuss, in any way, these topics.
The BSA is a voluntary, private organization that sets policies that are best for the organization. The BSA welcomes all who share its beliefs but does not criticize or condemn those who wish to follow a different path.
I'm a parent whom the BSA is supposed to be serving. My opinion was never sought, nor am I aware of any effort to solicit input from any of the parents in the packs/troops we've been involved in.

That said, whether we continue with the Boy Scouts is a decision for my sons to make, not a unilateral conclusion to be handed to them. A hallmark of strong character is choosing the company you keep. My wife and I will be sharing this information with both of them, and giving them an opportunity to decide what to do about it. Because they are already strong, moral children, they know that we don't exclude others simply because they're different than we are. It's possible that they'll decide that they want to work within the organization to change it. If so, they will have my support. If they can't support the decision and wish to leave Scouting, I'll support that too.

But what I won't do is let this decision go unnoticed, or let my sons ignore the implications of what it means for the organization they (currently) belong to. That is how you build character.

Tuesday, July 10, 2012

My war on phone distraction

At the risk of turning into a blog-stalker that only talks about his boss, I wanted to write up something I did in June as a direct result of watching a speech Joe gave on our "culture of distraction". Joe's entire speech is worth listening to, as it touches on a number of issues that I've been thinking a lot about lately:

Joe identifies that much of the reason we're so distracted of late is the increasingly powerful devices we carry in our pockets — our phones:

  1. all of us have a device in our pockets that is a very potent, addictive distractor
  2. the more we train our brain to pay attention to this distractor, the more distracted we become.
Immediately after watching this, I radically changed how I use my phone: I turned off all notifications for everything except my calendar and Google Voice (for SMS messages). That means my phone no longer proactively checks my e-mail, it no longer checks for Facebook activity, it no longer checks for G+ updates, no longer alerts me when I have new @replies on Twitter. This doesn't mean I don't read e-mail, post to Facebook, or catch up on G+ or Twitter. When I want to do those things, I can manually update the apps — it takes just a few seconds to do. But what it does mean is that my phone is no longer constantly interrupting me to tell me I have new mail, new comments, new posts to read.

The result? I decide when to pay attention to the phone. I pull my phone out of my pocket when I want to engage, not when the phone demands my attention. I have more time to think, I spend less time being interrupted by my phone, and I am much less likely to get distracted. I pay more attention in meetings, I'm never tempted to open my phone up while driving, and as a bonus, the battery on my phone lasts much longer now that it's not checking for new data every few seconds.

I shared this idea with Brian Fitzpatrick a few weeks ago, and he pinged me this morning to tell me that not only is he far happier with his phone, he's also stayed at inbox zero for longer than he's ever done before. That's been my experience too: turns out when you decide when to focus on your inbox, you control it instead of the other way around!

Friday, June 22, 2012

Failure is data

A popular debate in the tech world is whether failure is good or bad. Eric Schmidt reminded people that at Google, "we celebrate our failures." Taking a contrary position was Jason Fried from 37Signals, who wrote back in 2007 that "I’ve never understood Silicon Valley’s obsession with failure."

NPR's Melissa Block recently visited Silicon Valley to talk about failure, interviewing (among others) Joe Kraus. Joe is who hired me to run Blogger several years ago, and is who brought me to Google Ventures last fall. The whole piece is worth a listen, but I found Joe's comments worth highlighting:
In my mind, the ones who have no fear of failure are merely the dreamers, and the dreamers don't build great companies. The people that thread the line between vision and being able to execute and having this healthy fear of failing that drives them — not paralyzes them, but drives them — to be more persistent, to work harder than the next person, that's a magic formula.
This is the important distinction. When I say I celebrate failure, it's because I see failure as data. Data itself is neither good nor bad: it's just data. But what you do with that data – how you learn from it, how you apply it to future decisions – that's why you "celebrate" failure. Failure in this sense is just a way to help inform future success, not an outcome to be celebrated.

You don't start something assuming you'll fail. And you don't pursue an idea without some awareness that it could fail. But fear of failure shouldn't stop you – as Joe notes, it should motivate you.

I was fortunate to address the 2009 graduating class at my alma mater, Richmond Law. In that address, I said this about failure:
When you think differently, accidents happen. Failures are unavoidable. But accidents aren't always failures, nor are failures always without value. When it's OK to fail, success becomes possible, and, through experimentation, the next step in the path presents itself.

Monday, June 18, 2012

Remembering John Carroll

In March, John Carroll died unexpectedly while jogging around the lake on campus at the University of Richmond. John and I were classmates together over 15 years ago, and reconnected when he returned to the law school as a professor leading the IP law clinic. John contributed an article to the first issue of the Richmond Journal of Law & Technology (a law journal I founded) in 1995, and was an advisor to many JOLT staff over the last several years. When the JOLT editors asked me to write a remembrance of John, I was honored to do so. (It is also published on JOLT's site.)

John and I in the Richmond Times-Dispatch
on the occasion of JOLT's inaugural issue
As much as I came to admire John Carroll in the 15 years that we knew each other, it was at his funeral in March that the full measure of the man became clear and the scope of our loss sank in. John was many things to us at Richmond Law — friend, scholar, mentor — yet he was so much more.

John was a man of deep faith, a man who worked each day to improve the lives of those around him. John showed a respect for others that guided his every interaction, and he took great delight in being surrounded by such passionate and gifted students and colleagues.

JOLT was fortunate to have benefitted from John’s passion in many ways — from his contribution to JOLT’s first issue in 1995 to his mentorship of many JOLT staff in the years that he taught at Richmond Law. As valuable as that support was, all of us who’ve worked on JOLT over the years grieve for a far more fundamental reason: losing John means that an entire generation of Richmond Law students won’t get to know him, learn from him, or benefit from his investment in their success.

I had a history teacher in high school — Winslow Smith — who claimed that he started teaching because it was the only way he knew how to become immortal. His theory was that he’d live on in the memory of his students, and I suppose by recalling his comment from 25 years ago that I’m proving him right.

I don’t want to dwell on the tragedy of John’s untimely death, I want to celebrate the gift that John was to those of us who knew him. Richmond Law continues to be a special place, one that emphasizes community and camaraderie for students and staff. It comes as no surprise that John excelled as both a student and a professor: his commitment to others and his delight in their accomplishments embodied the heart and soul of what makes Richmond Law such a unique institution.

I mourn my friend’s passing. But I cannot help but be grateful for the chance to have met him so many years ago, and for the opportunity to share with you the memory of a great man so that he may live on.

Thursday, June 7, 2012

Success and luck

For years, my favorite Michael Lewis piece has been his New Yorker magazine article about Shane Battier, The No-Stats All-Star. (I wrote about why that piece spoke to me here.) As of last weekend, I may have a new favorite: his recent baccalaureate address at Princeton. The entire address is worth watching, but here's the quote that has stuck with me:
If you use better data, you can find better values; there are always market inefficiencies to exploit, and so on. But it has a broader and less practical message: don't be deceived by life's outcomes. Life's outcomes, while not entirely random, have a huge amount of luck baked into them. Above all, recognize that if you have had success, you have also had luck — and with luck comes obligation. You owe a debt, and not just to your Gods. You owe a debt to the unlucky.
 Watch the address:

Whenever I've been asked for career advice, I have a few common recommendations. The first is that whenever I've had a career choice to make, I always optimize for learning. Even when I'm not entirely sure how that learning will benefit me, I've figured out that the act of learning itself is often what I find most energizing about my work. If you're learning, you will never be bored and you will acquire skills that can help you down the road.

Second, I've tried to follow the example that I encountered in my first "real" work experience, when I was a law clerk at the EFF after my first year of law school. I worked for Shari Steele (who's now the executive director), and had several opportunities to interact with an amazing collection of smart people like Mike Godwin, Jonah Seiger, and Jerry Berman. I was extremely fortunate to find myself in that office that summer, and in many ways, I owe a lot to those early interactions. I learned that getting an answer often just requires asking the question. I discovered that many people — even famous people who you'd think would be too busy to chat with you — are more than happy to help. (And those that aren't? Just ignore them. Life's too short.) These days, I try to answer the questions I'm asked. I remember what an impact that had on me nearly 20 years ago, and what a difference it can make for the person who gets the answer they didn't expect. Read this post about a crazy phone call I made to GE's headquarters during that summer at EFF. Bottom line? Early in your career, ask the question. As you advance in your career, remember what got you there and answer the questions when you're asked.

The more I've thought about Lewis's comments, I've now got another recommendation that I'll share with those who ask me for career advice: allow for luck. I have been extraordinarily lucky in my career. Sure, I've also applied what I knew, worked my ass off, and been pretty resilient through some rough patches along the way. But the minute you stop believing that luck plays a part in where you are, you stop being the person who can benefit from luck. As Lewis notes, you start believing you deserve everything you've got:
In time you will find it easy to assume that you deserve [it]. For all I know, you may. But you'll be happier, and the world will be better off, if you at least pretend that you don't.

Thursday, May 10, 2012

Livestreaming Google+ Hangouts

One of my responsibilities at Google Ventures is to plan the growing number of workshops that we offer to our portfolio companies. In the last several months, we’ve offered workshops on a variety of topics, including SEO, AdWords, latency, technical recruiting and candidate sourcing, A/B testing, and business development. With each new workshop announcement earlier this year, I received several replies from portfolio company employees outside the Bay Area: “What about us?!” It was a fair complaint: as we ramped up the pace of Startup Lab workshops in Mountain View, the unfortunate reality was that they required you to physically be in the Startup Lab to participate.

Starting in March, we began using Google+ Hangouts to extend the audience beyond the Startup Lab, but quickly ran into our next hurdle: Hangouts support a maximum of 10 participants, and demand for our broadcasts almost immediately exceeded that number.

This week the Google+ team announced that Hangouts on Air allow for unlimited viewers, and are now available to everyone. However, Hangouts on Air require the broadcasts to be public, which ends up not supporting our use case at Google Ventures: our broadcasts are available to anyone at our portfolio companies, but generally not to the public. As a result, we had to look at a way to leverage the early success of using Hangouts to enable interaction between remote attendees and presenters, while also retaining control over who could see the live broadcast.

When I started digging in on the best way to extend live broadcasts of our Hangouts, I was surprised to find few sites documenting the best ways to accomplish what we wanted. Since many people expressed interest in what I ended up doing (not to mention the many Startup Lab occupants who put up with me testing things out at the Startup Lab in the last few weeks!), I figured it was worth a summary of what we’re now using in the current Startup Lab.

Hangouts remain our platform for presenters to speak to the remote attendees, present slides, and screenshare their browser when showing specific sites, tools, etc. Remote attendees are invited into the private Hangout a few minutes ahead of the workshop, and can ask questions at any point throughout. In the Startup Lab, we run the Hangout from a Mac Mini, which has a Logitech C910 HD webcam pointed at the presenter. We use a Blue Snowball USB mic to capture audio in the room, and have a set of powered speakers plugged into the Mac Mini’s headphone jack.

For the livestream, we’re using Ustream. I liked Ustream’s featureset – we have the ability to embed the stream on our site, remove our channel from Ustream’s site altogether, brand the video stream with our logo, password protect the stream so only authorized viewers can watch, and remove ads (we pay for some of these features). Running the Ustream production is a dedicated iMac – I went with a 27” 3.4 GHz quad core iMac so that I’d have the fastest machine possible handling the CPU load associated with live streaming.

Remote attendees had pointed out that they had trouble following along with workshops when questions were asked in person in the Startup Lab – so we added a second camera (the upgraded Logitech C920 HD webcam) mounted on a tripod that’s pointed at the audience. When someone in the audience starts talking, we can switch to that camera so remote viewers can see the person who’s speaking and hear their question (which also avoids us having to have the presenter repeat the question).

Controlling the livestream is Ustream Producer Pro, an app that lets you manage multiple “shots” in a livestream and select which is the active shot seen by the livestream viewers. (Note: Producer is a free app, but I paid for the ‘Pro’ version to get the ability to stream in HD.) In addition to the audience webcam, we need the Hangout to be one of our shots; to get that, I’m routing the Mac Mini’s audio and video out via the Mac Mini’s HDMI port into a Blackmagic Intensity Extreme Thunderbolt video capture box. That plugs into the iMac via Thunderbolt, where Producer Pro sees it as one of its video signals.

Running the actual livestream is pretty straightforward: log into Ustream via Producer Pro on the iMac, select the active shot (the Mac Mini) and sit back. When questions are asked in the audience, switch to the audience camera in Producer Pro so livestream viewers can see/hear them, then switch back to the presenter shot when the question’s done.

In the planning stages, I drew out a diagram that actually comes close to representing the final setup:

Couple final notes on the setup:

  • In the Startup Lab I wanted to hear audio from the Hangout directly from the Mac Mini instead of through the livestream. There’s a couple second delay from live to the livestream, and the interaction on the Hangout would start to feel very awkward if the presenter took several seconds of waiting before they heard the question asked in the Hangout. When I plugged the speakers into the Mac Mini, the Mac routed audio to the speakers (and not the HDMI signal). To get audio to both the speakers and the HDMI signal (so that the Hangout audio would be included in the livestream), I created an “aggregate device” in the Mac Mini’s Audio Devices (Utilities | Audio MIDI Setup | + | Create Aggregate Device), and in the Hangout set the audio output to the aggregate device.
  • It’s much simpler if presenters use the Mac Mini for the Hangout, but there are times when what they’re presenting is only available on their laptop. For those cases, I got an HDMI switcher and a display port to HDMI cable. When needed, I can plug them into the HDMI switcher, and the signal on the iMac via the Blackmagic Intensity capture device will be their laptop instead of the Mac Mini.
  • Facilitating questions from the livestream remains a work in progress. We’ll be incorporating Google Moderator to collect questions and let the audience vote on which questions they’re most interested in. We will likely be embedding the Moderator questions directly on the livestream page on our site, but are still evaluating the easiest way to do this that’s also visible to folks in the Hangout so we avoid forking conversations.
  • This setup does result in two video feeds: the Hangout and the Ustream broadcast of the Hangout. I’m going to keep an eye on things to figure out whether this becomes too confusing; if so, we may shift to having all attendees watch the livestream, and have presenters in the Hangout.

In the course of building this setup, I reached out to a number of folks for guidance. Big thanks to the TWiT crew (Leo Laporte, Denise Howell, Alex Lindsay) and the Ustream guys (Brad Hunstable, Alden Fertig, Andy Francis) for answering every question I threw at them, and of course the Hangouts team for building such a great product.

Sunday, March 11, 2012

Adding Bluetooth to my car stereo

A few months ago, I flirted with buying a new car. I've driven a Subaru B9 Tribeca for nearly 6 years, and I was attracted to a sedan that would get better mileage. The Tribeca's a fine vehicle, and since my commute has mostly involved driving to transportation (train in Illinois, the Google shuttle in California) instead of driving to work, it has very few miles on it (fewer than 50,000 miles). But I took a few cars for a test drive, and came close to pulling the trigger.

In the end, I didn't. A paid-for car is a beautiful thing, even if it doesn't get fantastic gas mileage. In deciding to keep the Tribeca though, one frustration stuck with me: the stereo was frustratingly limited. There was no line-in option and no Bluetooth connectivity - so I had no way to listen to anything other than broadcast radio or CDs, and taking calls in the car meant using a headset. (I never liked Bluetooth headsets, and the wired headsets were always clumsy to put in when a call came in.)

Last year I tried to solve this by adding a line-in port to the stereo, but ultimately failed. I ended up getting an FM transmitter (plugged into the headphone jack of my phone, and broadcast to one of a handful of FM frequencies to the car stereo), but the interference meant that even on relatively brief drives I'd have to change frequencies two or three times. I stopped using it after just a few months.

I was at Best Buy a few weekends ago, and wandered to the car stereo section. I asked one of the salesmen whether there was a solution that'd let me add Bluetooth to the vehicle. Sure enough, there was: he told me about the Parrot kits that do exactly that - but I'd need to obtain the wiring harness for my vehicle independently, get it to them, and then they'd sell me the Parrot kit and do the install. (Trivia: this is the same Parrot that makes the AR drones!) Total cost would be around $500 (more if I wanted them to mount the phone on the dashboard). That was more than I wanted to spend, but sounded like a pretty ideal solution.

The issue I'd run into last year was the inability to get the right wires into the existing harness, so even though I could hear the audio from the phone, it was very faint and a loud hum was constantly present (I suspect the line-in connection needed to be amplified and grounded). A wiring harness that would ensure everything connected properly would get around last year's obstacle.

Online I went, and here's how I added Bluetooth to my 6 year-old car stereo for just over $300:
  • Parrot MKi9200 ($180). This kit includes a microphone, a small dash-mounted LCD display to show call and audio information, a set of line-in cables (headphone, iPhone, USB), a remote (make/end calls, play/pause, next/previous, volume), and the junction box that routes the audio through the car's existing stereo.
  • Quickconnect QCSub-1 MK ($50). This is what makes the installation a pretty straightforward affair. You can ditch the spaghetti mess that ships with the Parrot kit - this harness is configured to plug directly into the Subaru's stereo and into the Parrot, making it a plug-and-play setup.
  • ProClip Vehicle Mount and Device Holder ($75). I'd tried suction-cup holders for my phone in the past, but inevitably would find them on the floor of the car as the suction would give way to gravity. (The last one I tried lasted just one afternoon.) Much like the Quickconnect site, you provide your year, make and model and they have a mounting bracket custom-sized for your vehicle, then you pick your device and you get a holder that is specifically tailored for your device.
Once everything arrived, installation took about 90 minutes. (I ran into one snag, but found this photo walk-through from a Tribeca owner who'd done the exact same install last year.) This is not a particularly difficult thing to do, but you do have to be comfortable removing the trim from your dashboard and disconnecting your stereo to get everything hooked up. With the wiring harness from Quickconnect, the only thing that was at all tricky was figuring out where/how to hide the wires for the microphone and the line-in cables - that'll vary by car but I was able to completely hide everything behind the car trim so that no wires are visible at all.

The end result is exactly what I was looking for. My Galaxy Nexus is firmly mounted to my dash, making it much easier to see and access (particularly for navigation). Sound quality is outstanding - I've listened to podcasts and music (via Rhapsody, Pandora and Google Music) and found the fidelity to be excellent. Sound quality for phone calls is similarly terrific - the caller comes through on all eight speakers in the vehicle so I hear them very clearly, and the mic is close enough to my face that they hear me well. (Callers have reported some road noise, but nothing that's interfered with hearing/understanding me.) I expect I'll have the car for another few years, and eliminating this annoyance from the vehicle has been a huge win.

One final note: a shout-out to Howard from Quickconnect, who provided the best customer support of any online purchase I've ever made. Within 20 minutes of me e-mailing when I ran into the installation snag, he replied (this was after business hours, mind you). No fewer than four more e-mails over the next two hours - including asking me to take pictures of the stereo and harnesses to isolate the issue I was having - and I was able to quickly figure out what I was doing wrong. In reading reviews online about Quickconnect, I see my experience is hardly unique - can't recommend them highly enough!

Note: links to Amazon use the Amazon Associates service - Amazon pays a small commission if anyone reads this and then buys the products linked here. The commissions end up either buying a few Kindle books or a gadget once in a while; mostly I just enjoy seeing data about whether anyone clicks through and buys the items I write about periodically!

Tuesday, January 17, 2012

Taking passwords seriously

I used to use the same password everywhere. In 1993, I crashed a Clinton inauguration party at a restaurant in DC, and for years my password was a derivative of that restaurant's name. I'd read somewhere that it was a good idea to include numbers in your passwords, so I picked a number and my "standard" password became "restaurant#name". Sometime a few years later, I read that symbols were good too - so the stand-by became "restaurant[number]name[symbol]". Every time I set that as my password, the password strength meters measured off the charts: it used a number and a symbol, wasn't in the dictionary, and I was probably the only person in the world with that particular password.

But things began to get messy. Some sites didn't allow symbols. Others had a max character limit. As sites got more serious about security, some required mixed cases (some capitals, some lower case). Inevitably, my "standard" password became more like a template, with a half dozen derivatives. And it became increasingly hard to remember which site had which derivative.

Several years ago, I realized that one password to rule them all was probably a bad idea. After all - if someone got ahold of my password, they'd probably be able to log into Amazon, Gmail, PayPal and any number of other sites. I resolved to use a pattern that was site-specific. That was marginally better, but anyone who got ahold of my password at one site could probably figure out my password on other sites.

Then in December of 2010, Gawker was compromised, and the hackers didn't just publicize that they'd breached Gawker's servers, they published a file of all usernames and passwords. I had an account at Gawker, and as a result my password - and the simple pattern used to construct it - was available for the world to see. I'd read about password managers at the time, but thought that since I'd been able to survive for 15 years without one, I'd be OK just hardening my "standard" password. My new pattern incorporated the year, but now I had an even worse mess on my hands: I had dozens of accounts, and depending on when I'd last accessed them, a password that followed one of three possible patterns (with any number of derivatives). My method was falling apart. When 2012 arrived, it was clear I was toast. I couldn't have a year-dependent password pattern - did I open that account in 2011? 2012? Did I update it in 2010?

This weekend, Zappos's 24 million customer accounts were compromised (I was one of them). Though we don't yet know how broad the breach was, or whether the attackers will publish an account list like the Gawker attackers did, I didn't need another reminder. It was time to get serious about my passwords.

I asked people on Google+ and Twitter what they used to manage their passwords, and people overwhelmingly recommended two services - LastPass and 1Password. LastPass had a few more recommendations overall, so I started there.

First off, a quick summary of what LastPass is: you create a username and password with LastPass, and as you log into websites it asks whether you'd like to store those in your LastPass "vault". Once stored, each username and password is available to you wherever you can access LastPass - whether on your computer, on a guest computer, on your mobile device, etc. If you're creating a new account, LastPass can generate a very secure password - it won't be memorable, it isn't guessable, and it'll be unique to that site and your username. (I just asked LastPass to generate a new password, here's what it came up with: "kkVUI8nZ".)

With that in mind, here's what I did to get serious about my passwords. I'll warn you: this took a fair amount of time - easily 6+ hours in total over a couple days, and I'm not actually done (I keep thinking of more accounts to upgrade). That said, I am much happier with my overall security than I was going into the weekend, and as an added benefit I have a master list of every account I use on the Internet.

1. Set up a LastPass account. This username will be your master login for LastPass, and the password should be very secure, but one you can remember - if you lose it, you'll regret it. (It's not necessarily an "abandon all hope"moment, but it's close.)

2. Download LastPass Chrome extension. I use Chrome exclusively as my browser, and often jump from my MacBook Air to my Chromebook. LastPass has a Chrome extension that makes LastPass completely integrated with the browser, which made the next several steps much easier. (LastPass has integrations with IE, Firefox, Safari and Opera, so you should be good to go regardless of which browser you use.)

3. Install the Android app. The core LastPass service is free, but the premium service - for a whopping $1/month - means I can use their Android app to access my password vault directly from the phone. That's handy - especially with a number of mobile apps I use for banking and the like - and well worth the minimal cost.

4. Clear cookies and saved passwords, set Chrome to never remember passwords. This avoids me automatically logging into any site I visit (which is a nice forcing function to upgrade the password as I'm prompted to log in) and avoids Chrome and LastPass fighting over who gets to save the username/password when entered (I want LastPass to do so).

5. Upgrade passwords. I started a Google Spreadsheet to list all the accounts I could think of. I got to 30 pretty quickly, and after a few more minutes added another 15. But I knew there were more. I've used Gmail for all e-mail for the last six years, so I headed over to Gmail to find all the accounts hidden within. Here are some Gmail searches I used to find little-used and long-forgotten accounts, some of which had saved credit cards stored in them and other data that I'd like to protect:
  • to:me "new account"
  • to:me "new login"
  • to:me password reset
  • to:me receipt
  • to:me account confirmation
  • to:me username
There were other searches that were useful; you get the idea (and can probably think of others that'd produce additional logins). As I found a new site that had a login for me, I added it to the Google Spreadsheet. Within an hour, my account list was well over 100 logins.

Once I had the full list, I then opened a new tab and tried to log in to each site, one at a time. (I often couldn't remember which pattern derivative my password was for that particular site; if that was the case, I just clicked 'forgot password' and used that feature to reset my login.) Once in, I then chose the "change password" option, and used LastPass to generate a new, secure password. Upon confirmation of the new password being set, LastPass would ask if I'd like to save the new password in my vault - which of course I did.

6. Rinse, lather, repeat. As diligent as I was, I thought of another dozen accounts (college and law school alumni sites, couple other news sites, etc.) last night that I've added to the Google Spreadsheet and will tackle shortly. Though LastPass is now managing over 100 logins for me, I expect there are another 50-75 I have forgotten about that I will accumulate in the next month or two. (Update: since starting this blog post, I've found another 30. It never ends!)

7.  Turn on Google Authenticator support in LastPass. Last year, I wrote about best practices for keeping your Google Account secure , and spent a bit of time talking about 2-step verification. The premise is simple: with 2-step verification enabled, your username and password alone do not grant you access to your account. You need something else - in this case, a code that is visible only on your mobile phone - to get access. The idea behind this is that your phone is likely to be in your possession - and only yours - so that a bad actor who might have found a way to get your username and password would still be unable to get access to your account. LastPass works with Google Authenticator, which means that you'll only be able to unlock your password vault if you physically have possession of your phone - yet another layer of security that all but guarantees that you will keep prying eyes out of your private info.

As I got to accounts that I hadn't used in years, I thought hard about deleting the account - and in several cases did just that. If I kept the account, obviously it's ideal to upgrade the password to something more secure than my previous password. But removing the account altogether was an even more secure alternative - and I'll remember those services that make removing accounts easy for when I need a service like that again. Services that don't make it easy to delete your account shouldn't expect to see me ever again.

One final LastPass feature that I adore: sharing. Not all passwords that are in my name/e-mail address are mine alone. Our utilities, for instance, all have the ability to log in and review past invoices, pay bills, etc. but they require a single username/password to manage. Rather than make my wife remember one of these LastPass-generated passwords or rely on an insecure, memorable password, LastPass allows me to share a password with her through LastPass. This is no less secure, but far more convenient - and if we ever need to update the password, LastPass will manage the updates and ensure that we both have the current version.

Thanks to the many people who responded on Google+ and Twitter - I'm really happy with the outcome and only annoyed that I didn't do this years ago!

Wednesday, January 4, 2012

New year's resolution: get a job!

Welcome to the new year. If your current job isn't thrilling you and you resolved to find a job you love in 2012, be sure to visit the Google Ventures job board. Our growing portfolio of start-ups are hiring - as of this writing, there are 371 jobs waiting to be filled.

Whether you're looking for a job in California, Colorado, DC, Florida, Illinois, Massachusetts, New Hampshire, New York, Texas, or Washington, there are engineering, HR, bizdev, marketing, sales, design and ops roles that need to be filled. (Not in the US? Our portfolio companies are hiring in Germany, China, Brazil, Switzerland, Spain, and Hong Kong too.)

Rather work at Google? Google's hiring too.

Tuesday, January 3, 2012

Businesses who don't trust customers

Comcastic image from
Last month I contemplated something unthinkable (for me): I thought about breaking up with TiVo. I started my relationship with TiVo 11 years ago, with a Sony DirecTiVo box that I still consider among the best consumer electronics purchases I've ever made. Since then, I've gone through several TiVo boxes, as we moved from DirecTV to Comcast, from standard def to HD.

So why consider leaving? In short, my wife and I (not to mention our kids) are watching less and less broadcast TV, opting instead for what we can get on demand. Netflix Instant is great for tv series and some diamond-in-the-rough films, and Amazon VOD (both the free-to-Prime subscribers as well as the on-demand rentals) has been great. Though both services technically work with our TiVo boxes, the interface for both on our GoogleTV is much better, and has been how we consume both services. As a result, we found we were watching fewer and fewer recorded shows from the TiVo, and we were watching the on-demand services through GoogleTV, bypassing TiVo altogether. By moving to the Comcast boxes, we'd also get access to Comcast's On Demand programming, which we pay for through our monthly subscription but have no way to access (TiVo and Comcast have been claiming On Demand support is coming for years, but even if/when it does come, it'll likely be on TiVo equipment I don't own).

Off I went to Comcast to pick up a couple Comcast HD DVRs. I'd conveniently suppressed my last experience with Comcast equipment (that post is worth a read, btw), came home and hooked the first box up. It should have been simple, plugging the HDMI cable that had previously been connected to the TiVo into the Comcast box. (That HDMI cable is plugged into the GoogleTV box, which sends an HDMI signal to our receiver, which sends an HDMI signal to our TV.) Try as I might, I couldn't get anything to display on the television. The front of the Comcast box seemed to read "dU1", and I could only see a blue screen on the TV.

I called Comcast, which produced nothing actionable - the best they could offer was that I should try a different box. (I already had.)

After some Googling, I figured out what was up. It's called High-bandwidth Digital Content Protection (or HDCP), and it's been in place for years. Turns out, Comcast doesn't trust me! Though I pay Comcast several hundred dollars per month - and was actually contemplating paying another $25/month for the two boxes - if I wanted to plug that HDMI cable into anything other than directly into my television, they consider me a pirate and forbid me from using my equipment at all. (That "dU1" error was actually saying "DVI", but given the limitations of the 1980s-era display on the cable box, that was the best they could come up with. To use the box, I'd need to revert to non-HDMI cabling, separating the video signal from the audio signal.)

I immediately unplugged the Comcast box and returned both. Re-connected the TiVos, and went back to using my equipment exactly how I wanted (which, by the way, is entirely legal).

So here's a 2012 resolution I intend to keep: companies who trust me get more of my money. Companies who don't trust me, or who implement unnecessary technical limitations on equipment I pay for and intend to use legally? Not so much.

BTW, Fred Wilson has a related rant up today titled #screwcable:
I've long believed that piracy is largely a business model problem not a human behavior problem. If you give people a legal way to consume the content they want, they will pay for it.

Interestingly enough, this same attitude - restricting innovation to protect legacy business models - is the very issue at the heart of the SOPA debate going on in Washington, DC as I write this. Though those of us opposing SOPA made progress last month, the fight is by no means over. Please visit Engine Advocacy (today!) and call Congress today to let your representatives know that you do not want to let the US government censor the web and further restrict users' legitimate uses of new technologies.

Sunday, January 1, 2012

Becoming a better photographer

In keeping with my 2012 information diet, I've resolved to both blog more and take more photographs. Late last year I upgraded my camera - from a Nikon D80 to a Nikon D7000. Thought I'd document a bit about the gear I'm using and how I'm committing more to my photography hobby.

My primary lens is a Nikkor 18-200mm f/3.5-5.6 VR II lens; I waffled a bit between this lens and a better zoom (had my eye on the Nikkor 80-200mm f/2.8), but ultimately opted for the greater flexibility of the 18-200, along with the VR capabilities in the lens that should make hand-held shooting better. (For good reviews of the 18-200 that helped me make up my mind, see Thom Hogan and Ken Rockwell.) It also didn't hurt that the 18-200, while not inexpensive, was quite a bit less than the 80-200.

I put a 72mm Hoya UV filter on the lens, and will probably pick up a polarizing filter before our summer trip to Alaska.

Ade Oshineye echoed a recommendation I'd heard from several photographers: keep the camera with me at all times. To make that a bit easier, I picked up the Kata 3n1-33 backpack that will carry my camera and gear, as well as my laptop, power cords and books. I've really liked the bag, which can be a backpack or a sling, and features a nice easy-access compartment that makes getting to the camera really fast. Thanks to Chris White for the recommendation on Google+ - it's been a great bag so far.

After I upgraded the camera body, I asked for some recommendations on books that'd help me improve, and have picked up several of the books that were suggested:
  • Understanding Exposure by Bryan Peterson. This book does a great job explaining the 3 critical parts of a photo: ISO, aperture and shutter speed. Great illustrations and very readable copy make this a very solid explanation of how pictures are composed and how to get the right exposure every time.
  • David Busch's Nikon D7000. I read through the Nikon manual - it does a great job explaining how to do things with the D7000's incredibly sophisticated controls. But what's missing is the why you'd do certain things - why you'd use one auto-focus option over another, why you'd tweak that noise reduction setting, why you'd choose one option over another. Busch's guide is a veritable bible for the camera, and is giving me much more appreciation for what the camera can do (and how I can take control of it).
  • David Busch's Nikon D7000 field guide. This stays in the Kata bag, and is a condensed version of the D7000 bible mentioned above.
BTW, many thanks to some great photographers/friends for their advice on Google+: Erica Joy, Chris Chabot, Bud Gibson, Ade Oshineye, David Hobby, and Thomas Hawk. You should follow them!

Finally, I've switched from Picasa to Adobe Lightroom for managing my photos. While I was generally happy with Picasa, I've found Lightroom to be a more fully-featured app - both for managing photos shot in RAW and for the large volume of photos I'm shooting. I'm still getting the hang of it, but have found Adobe's Lightroom TV a great collection of tutorials to get more out of the app.

Of course, none of this is any good without developing a better eye, and lots of practice. To that end, I'm following a lot of photographers on Google+ and observing what I like (and what I can understand!), and am trying to take a lot more pictures. I've had the camera less than a month and have taken well over 1,000 pictures. We took some family down to Monterey right before Christmas, and I took a couple shots I'm really happy with:

Really looking forward to taking many more thousands of pictures in 2012. Stay tuned!