Sunday, September 27, 2009

Synthetic Biology





I read a terrific article written by Michael Specter, published in New Yorker Magazine, entitled "A Life Of Its Own." It asks the question "Where will synthetic biology lead us?"

I'm fascinated by the question. It marries science and ethics in equal measure. I can sympathize with the enthusiastic scientists who envision great benefits - everything from improved health to a way out of our deadly embrace of fossil fuels.

I can't claim to be that kind of scientist. Engineers concern themselves with applying the knowledge that the practitioners of fundamental sciences - physicists, chemists, and mathematicians - unearth for us. We fashion these intellectual raw materials into useful things, and even contribute back what we learn about the fundamentals during process development, but I've been reminded many times that a mechanical engineer is not a physicist. There was a time when I immersed myself into reading biographies of the great physicists of the 20th century. Feynman became a hero of mine after reading his autobiographical short stories in "Surely You're Joking, Mr. Feynman!" and James Gleick's wonderful biography "Genius". I devoured his famous red books, fancying myself a budding physicist.

Then I got my hands on Veltman's "Diagrammatica", and the dream died. It was beyond me. I had neither the physical intuition nor the mathematical chops to see my way through it.

I'm in a worse position with biology. The last biology course that I took came in high school. They taught us the rudiments of DNA, RNA, and the Krebs cycle, but it was well before the polymerase chain reaction came along. Chemistry is not my strong suit either, so the changes that are coming will leave me behind.

Neither of my parents went to college. I was alone when I went off to study mechanical engineering, because neither of them had experienced what I went through.

My youngest daughter is studying biology as an undergraduate now. In spite of all my education, I find myself in a position relative to my daughter similar to what my father had with me. I can relate my experiences as an undergraduate to hers, and tell her what graduate school was like for me. I know enough about fundamentals like thermodynamics, physics, etc. to keep the ball rolling when we talk. But she's already well beyond my capabilities in her chosen field. She's blazing that path alone. She's Lewis and Clark sending letters back to me, Thomas Jefferson, describing the wonders she's experiencing.

I found the New Yorker article particularly interesting, because a number of the phrases evoked things I'd read when the software industry was abandoning older procedural languages like FORTRAN and COBOL and embracing the newer idea of object oriented programming. The problem was complexity: it's impossible to manage all the details that go into developing software when the number of lines of code explode into the hundreds of thousands or millions. Problem solving in general, and computer science in particular, depends on being able to decompose large, intractable problems into smaller, more manageable pieces.

Object oriented programming helps us to manage complexity by mapping software components onto real-world objects and encapsulating the details inside. If done correctly, users of a component need only concern themselves with what they need to provide and what they get back; all the messiness of how it's done is hidden inside.

Brad Cox and others used to talk about "software integrated circuits": each component would have its own well-defined inputs and outputs, much like the pins on a hardware integrated circuit. There would be a marketplace of these software ICs, where you could search for a component that met your needs, plug it in, and off you'd go.

This phrase on page 5 of the article brought that vision back for me: "The BioBricks registry is a physical repository, but it is also an online catalogue. If you want to construct an organism, or engineer it in new ways, you can go to the site as you would one that sells lumber or industrial pipes."

It made me stop and think, because to a great degree the promise of software ICs has not been realized. Writing complex software systems is still a difficult, large scale problem. Object models claiming to model the industry I work in today have not lived up to their promise. The ideal presented by the hardware side of the problem has not translated over to software.

There's still something fundamentally different about software. It's not all science. The irony is that software was distinguished from hardware at the dawning of the computer age because it was believed to be more malleable stuff than the circuits it ran on. You could change it relatively quickly, far more easily than the machine that executed it.

But that's often precisely the problem. It's very easy to change, but the coupling and complexity make it difficult to predict what the effect of the change will be. Brittle software suffers from this problem. The effect of changes in one part of the code often ripple out, resulting in surprising, disappointing, sometimes catastrophic behavior.

Reading about the enthusiasm of biologists made me wonder about the brittleness, coupling, and unintended consequences that face them. Will they have better success than software engineers have to date? And if they do, what lessons can we learn to improve the lot of software development?



Sunday, September 20, 2009

Back From The Dead






"There are two kinds of hard drives: those that have failed, and those that will."

A week ago I fired up my home desktop machine, waited, and got nothing but a blank, black screen staring back at me. I didn't have another monitor on hand to test it, and no way to diagnose the problem. I assumed the worst: it was a failed hard drive. I unplugged all the peripherals, loaded the box into my car, and took it to a local computer shop to be triaged.

I had to wait a whole week just to hear what the problem was, because I had several machines in the queue ahead of me. I was able to sneak some time on my oldest daughter's Macbook during that dry season, but it was painful. All my development tools (e.g., IntelliJ, databases, Grails, etc.) were on my desktop.

I got my machine back yesterday. I started to think that it wasn't a hard drive problem, and fortunately I was correct. Diagnostics showed that memory and hard drive were both fine. My 5 year old monitor gave up the ghost. So I picked up my machine, turned in the dead monitor, and bought a 22" one for just $149. Not too bad.

I'm not that crazy about the place that repaired the machine. When I called to ask the prognosis, the kid told me that everything was fine, but my anti-virus software found "a bunch of viruses". He said he could run the cleanup for a mere $118. I politely declined, but I almost blew my stack: "Are you kidding me? What are you going to do, stand there and watch Kaspersky do the clean-up? How can you quote me that figure with a straight face?" If you look at what Kapersky is identifying, you see that it points out things like denial of service possibilities for the Java JDK that I'm using. That's not a "virus", and I wouldn't want the software to be removed.

The machine had dust in it when I picked it up. When I complained that the kid should have at least blown it out before servicing it, I was told that cleaning is another for-fee service. What a business.

So I brought the whole thing home, vacuumed it out, and set up the new monitor. I spent some time trying to finally sort out my backup and recovery problem. I've had scheduled Microsoft backups for a long time, but they aren't complete disk images. I bought a 250GB Passport external hard drive to replace the undersized 140GB one I had. Now I could copy my entire hard drive if I wanted. I found an inexpensive disk imaging suite called Acronis and set up a nightly backup. I had my entire hard drive on my Passport this morning, compressed into 15 neat 4GB files. I think I'll buy a license.

Just one last problem: How to you boot a PC without the hard drive when you don't have one of those ancient floppy drives? The answer is a USB key, of course. I started creating a bootable USB key, following the instructions from Greg Schultz at this link. I was almost done when I ran into another roadblock: I needed the Windows XP Professional installation CDs, but HP didn't give me any when I bought this machine five years ago. Where was I going to get a copy of Windows XP Professional, now that they don't sell or support it and we've moved through Vista to Windows 7? E-Bay, of course. I put in a bid last night and won at $70. It should arrive next week, and I'll be able to boot from a USB key next time I have a problem. I'll be able to diagnose any problems that I run into, and I'll be able to restore any failed hard drives from my backup. Brilliant!

I'm happy to spend some time thinking about this issue. I realize now how central the stuff I've got on my machine is to my life. I use a password generator to create passwords now. I can't possibly remember them, so I keep them in an encrypted vault called Keeper from Callpod. If I can't access it, I can't do on-line banking or pay my daughter's fee bill at university.

I have a drawer and albums filled with photos from our film camera days. If my hard drive crashes, I'll lose all those digital snaps I've got. Until I get into the habit of keeping them in the cloud, there's a significant memory loss if that disk drive head touches the spinning disk.

There's just one catch: How do you test this arrangement? I'd like to know that I can recover without any issue, but I don't know how to prove it. I don't want to wait until the next failure to find out if any of this is worthwhile.

We all need to think harder about our recovery plans.

My next thought will be about networked storage. I can buy a terabyte monstrosity to house all my whole family's data, but I'll want it attached to my network so everyone can see it. And I suppose I'll need to buy two, so I can backup the backup. And I should take the backup of the backup to my safety deposit box once a month so it'll be there in case my house burns down. Geez, where does it end? Someone with a more apocalyptic vision would be building a hardened data center to go along with the fully-stocked, armed to the teeth underground bunker in the back yard.

Here's another interesting question: When a new desktop would cost me a mere $500-600, why would I not just toss this relic and buy a new one? It's easy to calculate the cross-over point when this becomes a fool's errand. What did I buy yesterday? New monitor, a larger external hard drive, a USB key devoted to booting, backup and recovery software, and Windows XP Pro CDs. The total is a significant fraction of the cost of a new machine.

Am I an eejit to keep this machine going? I've written about Moore's Law in our lives. This is the third desktop machine I've bought for home use, and it's the first one that wasn't hopelessly outdated by the time it passed its fifth anniversary. It's a dual core machine with 4GB of RAM and a hard drive that's still only half full.

While I'm mulling over my economic trade-offs, I'm glad to have all my data and my familiar development environment back.

Saturday, August 29, 2009

Back To Ireland





My wife and I recently returned from a week's visit to Ireland. It was her second trip and my third. We went to visit a dear old friend that we hadn't seen since 2003.

We weren't planning any big trips this summer. Our youngest daughter is still in the midst of undergraduate studies. The US dollar is weak compared to the euro. I thought our plans would be no more elaborate than perhaps a week in Ogunquit ME.

But if the American economy isn't doing very well, the Irish situation might be worse. Their housing bubble has popped. They still depend on tourism to bring currency into the economy. One night my wife noticed that air fares on Aer Lingus were ridiculously low. Could we consider a trip, just the two of us? Erin was taking two organic chemistry courses this summer, so she couldn't join us. Meg was in New York City, looking for a job. We could leave the dog at home with Erin and take off without children for the first time since we had them. We called our friend to check his plans and booked the flight.

We flew out of Boston instead of New York. There's a shuttle to Logan Airport on the Mass Pike that's simply brilliant. You leave your car in a fenced lot for a week and don't have to fight the traffic in and out of the city.

The flight couldn't have been smoother. We took off at 6 PM on an Airbus A330 and arrived at 5:45 AM the next morning. There was little or no turbulence at 40,000 feet. The plane had individual screens for each passenger built into the back of the seat in front, with a nice choice of movies. The food was even good! I didn't sleep at all, but then I can never sleep on airplanes. When we arrived in Dublin the car rental counter wasn't even open. We had to wait until someone came at 6 AM. We were given a Ford Fiesta with a manual transmission. It's a small car - we couldn't fit two black bags in the rear, so one had to go into the back seat.

Driving on the left side was no problem; neither was shifting with my left hand. The gas, brake, and clutch pedals are arranged exactly as they are in American cars, so I didn't have to adjust too much. But I could never live in Ireland, because driving there all the time would kill me. The roads are too narrow; there are walls on either side; there are twists, turns, hills, and bushes that prevent you from seeing more than a few feet ahead. Every time a truck came at us I was gripping the steering wheel and holding my breath.

It's about a two hour drive south and west of Dublin to get to our friend's house. Thank God we had precise, detailed directions, because his house is in the middle of a bog between two small towns named Mullingar and Delvin. We arrived without mishap at around 7:45 AM. No one was stirring so we sat in the car, resting and reading. We got extra points for arriving without having to resort to rescue call.

It was wonderful to see our friend. It was a quiet, unscheduled visit that alternated quiet days spent hanging around with excursions out. On the quiet days we'd eat breakfast, read the paper or books, go for walks, sit in front of fires, and talk.

We went into Dublin one day and had a wonderful time. We were all dressed to the nines for a night at the Gate Theater. We had lunch and did some shopping in the afternoon. We had high tea at the Merrion Hotel, which is a five-star establishment that lived up to its reputation. The service, food and atmosphere were impeccable. We saw a revival of Noel Coward's "Present Laughter" that was terrific.

Maureen and I went alone to Kilkenny. The 2.5 hour drive was stressful, but we managed. We had lunch, shopped, and toured Butler Castle. The Kilkenny Arts Festival ended the day before, but we were still able to tour one of the galleries.

Our last day out was to a nearby abbey whose first buildings were erected around 650 AD. Houses in America with plaques indicating that they were built in the 1700s appear old, but that's nothing compared to stone houses in Europe.

Our flight back was even smoother than the one that brought us to Ireland. It was another Airbus A330 (sorry, Boeing). Logan Airport is a first-rate operation. We arrived early, got through customs in 20 minutes, waited not more than five minutes for our bags, and got right onto the shuttle to take us back to our car.

This vacation was a lesson in not putting things off forever. We all assume that we'll go "next year" when we think about opportunities like this one, but you never know if the chance will pass you by. I was so happy to reconnect with my friend. Phone calls and e-mail are nice, but there will never be a substitute for face-to-face contact.

Sunday, June 21, 2009

Waiting For Godot





When my wife asked me what I wanted for Father's Day I didn't hesitate: "I want to go to see 'Waiting For Godot' in New York". It's playing at the Roundabout Theater on West 54th Street through 12-July and stars Nathan Lane, John Goodman, Bill Irwin, and John Glover. It hasn't been performed on Broadway in my lifetime, so I didn't want to miss this opportunity. We bought four tickets for yesterday's matinee performance at 2 PM.

My oldest daughter just left us to move to NYC in search of a start to her career, so we met her in Grand Central Station by The Clock at noon. Thank you, Jackie Onassis, for saving this gem of a station. It would have been knocked down if it weren't for her tireless intercession.

I always underestimate how long it takes to walk in New York. We hoofed it to the theater, pushing through the crowded sidewalks and checking traffic at each and every walkway. Tourists and out-of-towners are oblivious to others around them. It always amazes me to see how large groups can simply stop dead and impede all progress.

The Roundabout Theater is the site of the infamous Studio 54. I was of age when it was in its heyday, but I wouldn't have been famous enough, wealthy enough, or fabulous enough to get in had the idea even occurred to me. When I walked in I couldn't help but wonder what it would have looked like back in the day.

We made it to the box office around 1 PM and picked up the tickets. That gave us time to duck into a Starbucks - not hard to find, since there's one on every corner - and grab a snack. My daughters had wonderful photos of themselves, taken by a friend with a wonderful eye, framed for Father's Day. There's no better gift than that.

We were sitting in our mezzanine seats when the curtain went up at 2:05 PM. I went out and bought a copy of "Waiting for Godot" right after placing our ticket order. I had never read the play, so I thought a little preparation would do me good. I finished reading it last Thursday. I must confess that I was a little worried when the performance began. I told the girls that there it was likely that all four of us would come out of the theater shaking our heads and wondering what the last two hours were all about.

My fears were unfounded. Like music, theater is a performance art that's best appreciated first hand, seeing skilled artists bring a work to life right before your eyes. The stars of this show did that in spades. I enjoyed it far more than I thought I would after reading the book on my own.

I learned something: it's pronounced "GOD-oh". I've been pronouncing it as "gah-DOUGH" all my life. Now I'll say it properly, with the additional wisdom of having seen the play to inform my opinions about it.

We ducked into a lovely Italian restaurant named Cafe Cielo around the corner on 8th Avenue for dinner. They opened the doors that looked out onto the sidewalk. Our table was as close as you can come to outdoor seating. The food and service were both wonderful.

The rain started falling as we paid our bill. I went out into the street, put up my hand, and a cab magically appeared to take us back to Grand Central. We made the 6:07 train back to Cos Cob with five minutes to spare. The drive home was quiet - everyone in the car was lulled to sleep by the rain that poured down. The wipers did double time as I drove up Interstates 95 and 91 back towards Hartford. It was a fine trip and a terrific Fathers Day gift.

Saturday, June 13, 2009

Back In The Saddle Again





I've renewed a habit that lay dormant since 1992: I've taken up commuting to work by bicycle once a week.

When I used to work as an engineer, the group I worked with was a hotbed of cycling enthusiasts. My best friend and I worked out a route where I'd meet him at a rendezvous point half an hour from my house. We'd wind our way to work over the next hour. The route was downhill the whole way. I'd leave the house at six o'clock, so it was relatively cool even in the dog days of summer. The challenge came on the ride home. Legs were tired, temperature and humidity was higher, and terrain was against you. It was great fun and a terrific way to stay in shape. At my best I could manage it at least once per week and sometimes twice.

I checked the electronic diary I've kept since 1994. I can remember the last time I rode to work. I was alone that day. It was August, close to the time when morning light is failing and the end of the season is approaching. I locked my bike in the rack outside my office and went inside, never realizing until later that it would be the last time for longer than I would have guessed. The memory is vivid, but I can't pin down the date. I have no mention of a ride in late August. I have to conclude that either I failed to make a note of it or the memory originated before my diary.

I was taken down by a car sometime around July 1993. Neither my bike nor I were hurt, but the fear and anger took some of the shine off bicycle riding. I was the father of a seven-year-old and a three-year-old girl at the time. I loved riding, but not so much that I was willing to risk being maimed or killed.

There were a few years where my bicycle sat in the garage for an entire summer, never coming out. I changed careers and switched employers frequently. Either excessive distance or lack of companionship on the road always kept me in my car. My pedaling lust lay dormant. I was injured for a while. It looked like my days in the saddle were over.

But last summer my neck healed. I still couldn't run, so I decided to try supplementing my swimming with a little riding. I pumped up the tires on my bike and started looping through the neighborhood. I had a great ride on 5-Jul-2008 that rekindled that old feeling.

I've written about my most recent change of employers. There are several perks that have come along with the change: a fifteen-minute one-way commute instead of fifty minutes; a fitness center across the street from my office that provides an assigned locker; an easy, safe path across the Connecticut River via the Founders Bridge.

One of my first thoughts after accepting the job was trying to hook up with my old cycling buddy. He's gone back to commuting by bicycle with gusto over the last three years. He's set a goal to log two-thousand miles this summer. In order to make it, he'll have to ride to work 2-3 times every week. Was he willing to let me tag along once a week? We got back on the road in April.

It's been great to ride again, mostly to reconnect with my friend. He's a person that I've known for a very long time. I feel like I can say anything to him. We both love politics (left-leaning), technology, books, movies - any topic is fair game.

The route is 22.3 miles each way from my driveway to my desk. It takes about 1:35 in the cool of the morning. The ride home is slower and far more painful. My first time took me 1:50. It's taken a few weeks to manage it, but this past Wed I arrived home in only 1:39. Not bad!

I'm still worried about injury. The other night I was alone after my friend turned off for home. I was pounding along the two-lane road that is the last leg of the journey when a car crossed over the white line onto the shoulder and came within inches of crashing into me at high speed. I never saw it coming from behind, in spite of the mirror on my handlebars. It was on me so quickly that I felt it before I saw it. That shook me, as it always does. My friend recommended an alternate route home that will require a lot more climbing. I'll try it this week and see how it works out.

I've got 258 miles on my odometer so far. Maybe I can crack 1,000 miles for the summer.

Sunday, May 24, 2009

A Universal Dream





I had another moment in a team meeting on Friday. Monday is the Memorial Day holiday here in America, when we take the opportunity to honor and remember war dead. It's also become the unofficial start of the summer season.

Lots of people were off from work today. Some used vacation time to extend a three-day weekend into a mini-vacation of four days. State workers in Connecticut were forced to take an unpaid furlough day because of budget deficits. I take a bus to work in the morning now. There are usually 20-25 people getting on at my stop at 6:13 AM; today the count was in single digits.

Our weekly team meeting is on Friday afternoons at 2:30 PM. I arrived a few minutes late, anticipating verbal abuse from my boss for failing to be punctual. Instead, there were only two of my co-workers sitting at the table. One of them was my age; the other was not yet thirty, with college memories still close at hand.

After smiles and chit-chat subsided, the younger co-worked asked me "Have you ever had this dream?" I was able to give an affirmative answer before he finished his first sentence. It used to be a common dream for me. It goes something like this:

I'm back at college; it's the end of another semester. I'm wandering the campus, usually on the mall in front of the student union in Storrs, trying to find a final exam for a class that I vaguely remember signing up for, never attended, in a unknown room, at an unknown time. I know full well that I'm unprepared. The outcome will be an abysmal, humiliating failure. At its worst, I compound my problems by being naked while everyone around me is fully dressed. I wake up in an agitated frame of mind, without having found the room.

Both of my co-workers have had similar dreams. It usually comes back during times of stress or deadline, like the release of new software.

I haven't had that dream in a long time. It used to be a regular feature of my life, because I went to school for such a long time.

It was interesting to learn again how similar our experiences are.

We waited for fifteen minutes, continuing our conversation, but no one else arrived. Everyone else must have extended the holiday weekend. The three of us slipped back to our isolated cubicles, having learned about another tie that bound us together.

Saturday, April 4, 2009

Blackberries





Yesterday I went to a meeting room and found myself alone - I was the first to arrive. One of my teammates arrived, then another. Both sat down and, without a word, became engrossed in their Blackberries. There were e-mails to check, missed calls to note, games to play.

I'll admit that I didn't engage them, either. When I was younger nerves would sometimes goad me into starting conversations that weren't comfortable. Now I make silence my friend on occasion and let others make the first move. This was one of those times.

The three of us sat in silence for about five minutes until the rest of the meeting attendees arrived.

I found it odd that the people you could be talking to were more enticing than the person who was right there in the room. I've had conversations with people who could not stop checking their e-mail while I spoke. It was all I could to do stop myself from calling them out on it. Perhaps I need to re-think that policy.

I'm a late adopter, but I'm not a Luddite. The electronic devices we've invented are fantastic. I'm very happy with the cell phone that I carry with me, even though it's old and functional, without bells and whistles. I have never wanted a Blackberry, and I hope I'm never forced to carry one. I don't want to be that connected.

I've evolved a new policy: Communicate in the most direct way possible. I don't call if I can talk face-to-face; I don't e-mail if I can call. Evolution has made our brains terrific pattern recognition machines with inputs from sight, sound, smell, touch, and taste. Thankfully I'm not using those last three in a business context much, but those first two are key. So much communication happens via facial expressions, gestures, tone of voice, and cues that we're not always aware of. Electronic communication filters too many of these out.

On the other hand, I had an experience this week that would have been hard to imagine at any other time of my life. I have a younger brother who passed away in 1995. One of his high school friends who moved away to Minnesota after graduation was looking for high school acquaintances on Facebook. She came across one high school mate's page that one of my sisters had posted to. She contacted my sister to ask what my brother was up to. It must have been a shock to hear that this young man has been gone for almost fourteen years, but the sympathetic response she sent back was touching. How would this have been possible without the Internet and Facebook?