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?

Saturday, March 14, 2009

Last Day, First Day





I've decided to change employers again, so I'm going to have yet another first day next Monday.

I may be insane for doing this in these unsettled economic times, but fear drove me. My previous employer has been hit hard by the gyrations in the market place. When things appeared to be spiraling down last November I thought I should at least try to be the first one out on the street if the company crated. The one stable alternative that was available took a long time to decide, but an offer finally came through and I gave my notice.

This isn't the first time I've gone through this. I've had two careers: one as a mechanical engineer and another as a software engineer. The first one was pretty stable. I remained with one company for fourteen years before leaping onto a small start-up that wrote client/server accounting software for PCs using C++. That began a series of hops between four small companies, roughly one per year. Each one seemed like a good fit, but they suffered from the common problem of being unable to keep revenue flowing in.

After the fourth one laid me off I found a larger haven that knew how to make payroll twice a month. Unfortunately, it was an older manufacturing firm whose COBOL staff thought relational databases were a new thing. I was a lone Java EE freak in a sea of COBOL and FOCUS. I was allowed to think my own thoughts for three years, developing applications for a client who insisted on using the Internet and XML, but finally I decided that I needed to seek out more of my own kind. I found a nest of Java EE developers at another larger firm that was making money hand over fist. I thought that would be my last stop: they suited me fiscally and technically. There were a lot of wonderful people that I grew very fond of.

Unfortunately, that's the company I left yesterday afternoon.

I've had a lot of first days now. I remember my first day of work at my first job out of college pretty well. I was a December graduate, so I was the lone addition to the staff when I showed up at the small firm that manufactured steam turbines. They weren't ready for me. I was told to sit in a borrowed cube and given several 6" thick design manuals to read. This went on for a couple of days before somebody had mercy and gave me something a bit more meaty to do.

That company managed to survive the Great Depression, but a more modern recession and a savage industry consolidation forced them to reduce staff in several waves. I was young and naive - I worked until 5 PM the November day I was called into the chief engineer's office to be told that I was being let go. My wife and I had spent the fall searching for a house to buy. The plan was to meet the realtor that night to see one that had my wife very excited indeed. I had to go home and tell her that the house purchase would have to be postponed. I was scared to death, because the economy was very bad, but someone referred me to a Navy research lab down the road. Someone had mercy on me that day, because they agreed to hire me.

On my first day, I was escorted from human resources to join the department's pot luck Christmas party. I had neither food nor conversation to contribute; I knew no one in the room; I was excluded from every clique and work discussion. It was one awkward lunch.

I had my very worst first day ever when I stopped being an engineer and joined that company that wrote accounting software. I said "My God, what have I done?" when I returned home that night. It was a difficult situation. I only lasted ten months before I was able to find a less dramatic company closer to home.

All those first days have bookend last days. Yesterday I thought about all the work friendships I've acquired and lost in that time. There are so many people that I've liked and admired at each company I've joined. When I was working there I greatly enjoyed my interactions with them and looked forward to seeing them each day. Every departure brought a measure of sadness and promises to stay in touch that were rarely kept. I still miss some of them terribly.

The group that I left yesterday was especially hard to separate myself from. I've made no secret of my disagreements with some technical directions that management has taken. There are those in that very large organization that I'm glad to leave behind.

But the ones who were closest to me are very hard to walk away from.

Now I'm facing the coming first day with feelings of trepidation. Will they like me? Will I like them? Will the work be good? Will I be able to maintain balance between work and family? Will four years pass by as quickly as the previous four did? Will I be able to stay this time? Will this be my last first day?

Monday morning will tell.

Saturday, March 7, 2009

Living Moore's Law





We're reaching the limit of Moore's Law. I'm living it.

Just in case you don't know, Moore's "Law" is by no means a physical law; it's an observation made in 1965 by Gordon Moore, who was the CEO of Intel at the time. He noticed that the number of transistors being crammed onto a silicon wafer was doubling roughly every two years. He predicted that this would continue, and he was right.

This truth means that we all get more powerful computers for less money every year.

I bought my first personal computer for home in 1994. I taught a graduate mathematics course during summer session as adjunct faculty. The two-thousand dollars I earned by working all summer to come up with notes, homework, exams and grades was earmarked from day one. I chose a Gateway 2000 - how quaint. I'm fuzzy on the details now, but I believe it was on the order of 90MHz CPU, 8MB RAM, and 500MB hard drive. It seemed like a supercomputer compared to the VAX machines I shared with the rest of my department when I started my engineering career. It ran Windows 3.1 for its operating system and a heavy monitor. I had Microsoft Office and the Borland C++ development environment. It was the machine I used when I started taking computer science classes. The memory and disk didn't make development of software very easy. I was used to Unix workstations, so the discrepancy in power made software development at home painful. The hard drive was soon full; I had to buy a 1GB slave to extend the 500 MB master. By the time I was able to replace it in 1998 I couldn't wait to get rid of it.

The successor came from Dell. It ran Windows 95 on a CPU that was 5X faster than the Gateway. The hard drive was a green field. It would be impossible to ever fill up a device that huge. The monitor was still a big tube affair, but the view was more expansive. I was able to do all sorts of things - for a while. As time went on the cruft that accumulated made the wait times interminable. My work machines were still far superior to my kit at home. I took all the usual steps: I upgraded the memory, I added a slave hard drive. The few service calls I had to make to Dell were infuriating. Never again!

After seven years I couldn't bear it anymore. I was working for an employer who gave me a bonus, so I earmarked some of that money and bought an HP. It was a dual core 2.2GHz AMD CPU with 4GB of RAM and a 120GB hard drive, running Windows XP. It's the machine that I'm writing this blog on today.

Here's where Moore's Law comes in: Four years later I'm still happy with this machine. The hard drive is augmented by Passport external drives, but it's still doing fine. The memory is the most I can have without upgrading to 64 bits. The specs compare favorably in every way to the machine I use at work, so there's little drop-off when I switch between the two locations.

I could go out and buy a netbook or a laptop for a price that would have made me weep years ago. I'm sure there are blazing machines for gaming and video production that would eclipse my current setup. But the curve has flattened out. I'm not feeling too far behind after four years. I don't hate the machine. I don't have that sense that if I don't upgrade right away that I'll burst.

What happened?

Heat is the great enemy. Increased clock speeds mean more heat generated.

We're arguably running up against physical law. Decreasing the distance between transitors makes it harder to avoid unwanted interactions and is terribly expensive. Last I heard it cost Intel $1B to open a new factory with a new process; I'm sure that figure is higher now.

The marginal utility of faster CPUs is decreasing because the things we use computers for don't tax the processor very much. Most of the time it's doing nothing, waiting for something to operate on. The trend is to have more CPUs and divide the work between them. Software developers will have to become more adept at writing multi-threaded code, otherwise all those extra cores will sit idle.

Even number crunching applications like scientific computing are finding out that memory and the bus to transport data to the CPU is the bottleneck. Something fundamental will have to change.

It's bad news for the computer manufacturers out there. I think my requirements and expectations as a software developer are far beyond those of the general population that uses computers for little more than Internet access, e-mail, and doing their taxes. If my experience is typical, and other people don't have that feeling of "gotta buy or I'll explode", one of the most compelling reasons for buying computers is dead.

Corporate sales must be plummeting. My employer has decided to bypass Vista altogether and wait to see how Windows 7 turns out. Until then, we'll all be running Windows XP on the desktop. No profits, no capital investment.

Progress continues to be made, but the rate of change has declined. Where will it end?

Saturday, February 21, 2009

Still Learning










I read a joke at a site that I frequent which made me laugh:


Q: How do you tell an introverted computer scientist from an extroverted computer scientist?

A: An extroverted computer scientist looks at your shoes when he talks to you.


The laughter was of the smuggest, most patronizing sort you can imagine. I come from an Irish Catholic family, one of six children, where it's hard to get a word in edge-wise. We all read, watch movies, love the arts, form opinions that are dearly held, and generally consider ourselves to be an outgoing, engaging, personable group.

I've always told myself and anyone else who would listen that I am a made engineer, not born. I didn't grow up fixing cars or radios. I went to school to study mechanical engineering with little understanding of what the field was about. I took calculus and physics as a senior in high school; engineering seemed to be a natural next step. I knew lots of guys who had an innate, natural insight into the way things worked. My reality was confined to the computers where I made a living running simulations.

My youth pre-dated the personal computer revolution, so I didn't discover programming by hacking on a beloved Tandy. My segue into software engineering came about because my mechanical engineering work involved working with Unix workstations and code written in Fortran and C. Those led to C++ and Java for networked PCs. The transition was a quiet, gradual one.

Programming wasn't a burning thirst to be slaked. The passions of my adolescence were playing basketball and the guitar.

One of my employers went through a phase of testing all of us. I took the Myers-Briggs test and found out that I was type ENFJ - slightly extroverted, intuitive, borderline judging, and off the scale on feeling. When I got the results for my Hermann brain dominance, they said I was almost a perfect square: equal facility in upper and lower, left and right modes.

I have proof: I'm nobody's stereotypical geek. Hence the smug laughter at the joke.

Imagine my surprise when I went to my most recent performance review. My boss told me that there were no problems with my technical performance. Everyone agreed that I was knowledgeable and competent - no worries there.

But I was sabotaging myself with my body language. Some of the business folks that I came into contact with said I wouldn't make eye contact with them. I looked down at the table and appeared to not be listening. My facial expressions were "dismissive" when other people presented ideas. My body language excluded others: arms folded, one leg crossed over the other.

My self-awareness failed me. I might have had an idea that this was true, but it hadn't been spelled out for me so clearly. The feedback from people outside my normal sphere was telling.

How could this be true? How did this happen to me?

It reminded me again how important perception is.

Technical people love to say how they hate politics, that the focus should be on the problem at hand, that technology is a meritocracy where the best argument wins. But this assumes that science and technology represent Platonic ideals of absolute truth, as objective and detached as a free body diagram.

As long as there are two people in the room there will be politics. Persuasion will always be necessary. I've been reminded that even the best argument can be undone by the other pathways that humans have evolved. Your tone of voice, your expression, your posture, your ability to pick up on the cues telling you when it's your turn to speak, etc. - all communicate a message in parallel with the words and pictures you're emitting at the whiteboard.

Gödel taught us that mathematics cannot achieve that ideal objectivity and completeness. David Wolpert is proving that the same is true of our understanding of the physical universe. How can I be so certain of my views?

I have to be more conscious of social graces. I have to watch to ensure that arrogance isn't creeping in on me. I need to remember the phrase "Have strong opinions, lightly held."

I started practicing yesterday by doing some simple things: make eye contact when others are speaking; keep hands in the lap instead of folding arms; listen attentively when others are talking; take a breath before offering an opinion.

Is it possible to rewire oneself again? I hope so.