Category Archives: about me

Marathon Part I: The Freak Out

My family and I flew into Athens on Thursday November 8th. Miraculously the flight was without incident or calamity. Our departure, not so much. Our main sewer line was blocked, blocking all of our drainage. Thankfully it occurred just as we were leaving. All that meant was that we couldn’t take a shower on our return trip. This will become important in the last part of the Marathon. 

On November 15th we went to the Zappeion Megaro

IMG 2810

Here’s me and Nick standing in front of the building:

IMG 2805

The folks managing the Athens Classic Marathon (known by the cool kids in Greece as “To Klassiko”) did an excellent job managing the thousands of runners. There were 26000 registrants across the marathon, 10k and 5k and approximately 18000 folks who actually finished all races and at no point did you think that this was  country that couldn’t manage it’s finances.

IMG 2806

So we get there, within 10 minutes of our arrival collect our bib and information packet. The cool Klassiko marathon jersey was at the end of an Expo we had to schlep through. 

After picking everything up, we found a nice cafe right next to the Zappeion Megaro. There I opened the packet and saw the route for the first time.

Let me observe that I have spent many many years in Athens. Let me also observe that I had run at that point 20 miles in my training runs. So I wasn’t expecting to be surprised by anything.

But for the first time I realized the enormity of the challenge in front of me. 

As a pre-teen my grandfather Charalambos (my mom’s dad) would take me to Rafina to go swimming. Rafina in my mind was far far away. It was, in my mind, at the other end of the universe. And then I noticed that Marathon, the starting line was 15km away from Rafina. 

20121119 194845

Here’s my genuine reaction when I figured that out:

Run

It was at that moment that the enormity of the task  dawned on me. 

Baby’s First Cubicle

http://www.littletikes.com/toys/young-explorer.aspx

In this age of technology we think it is essential that children learn about computers as early as possible. This technology can enhance critical and cognitive thinking skills, problem-solving abilities and analytical thinking. Having child-appropriate computers and software in your facility shows parents that you understand the important role technology plays in providing an enriched learning environment for their child’s growth. It’s a hallmark way to set you apart from other childcare facilities.

  • Furniture features:
    • Flat desk area
    • Left and Right built-in mouse pads
    • Bench seat that fits two children and offers storage inside for supplies
    • Two locking cabinet doors
    • Computer wiring stores safely inside ventilated cabinet.
    • Locking castors keep unit from rolling during use.

So poor Nick. Life in the cubicle begins very soon after sentience. What ever happened to schools showing off their playing fields and talking about their sports clubs? Whatever happened to debate teams? In this day and age we prep them young to go from

Young Explorer™

To

Greeks leaving Greece, again

http://www.tovima.gr/default.asp?pid=2&ct=1&artid=351032&dt=29/08/2010

Το πιο εντυπωσιακό συμπέρασμα της έρευνας της Κάπα Research είναι ότι η μεγάλη πλειονότητα των νέων με πτυχίο στην Ελλάδα δηλώνει πρόθυμη να εγκαταλείψει τη χώρα για να βρει μια σταθερή και καλά αμειβόμενη εργασία. Από το σύνολο των ερωτηθέντων, το 73,6% δηλώνει ότι θα έφευγε από την Ελλάδα, ενώ το 42% δηλώνει ότι έχει ήδη προβεί σε συγκεκριμένες κινήσεις για να το επιτύχει, αναζητώντας εργασία στο εξωτερικό, κατοικία ή κάποιο ειδικό εκπαιδευτικό πρόγραμμα πρόσθετης επιμόρφωσης. Από εκείνους οι οποίοι δηλώνουν πρόθυμοι να εργαστούν στο εξωτερικό, το 66,4% δηλώνει ότι το κάνει για να έχει καλύτερη ποιότητα ζωής συνολικά, το 44,7% για να βρει μια καλή δουλειά και το 32,6% για να διασφαλίσει περισσότερη αξιοκρατία στην εξέλιξή του. Μάλιστα, το 60,7% δηλώνει ότι θα προτιμούσε μια θέση εργασίας με προοπτική καριέρας στο εξωτερικό παρά μια μόνιμη θέση εργασίας στον ιδιωτικό ή στον δημόσιο τομέα στην Ελλάδα. Ταυτοχρόνως, η συντριπτική πλειονότητα εκείνων που δηλώνουν πρόθυμοι να μεταναστεύσουν θέτει ως επιδιωκόμενο μισθό ένα ποσό της τάξεως των 1.500 ως 5.000 ευρώ. Ακόμη τονίζουν ότι «οι Ελληνες της ξενιτιάς είναι δύο φορές Ελληνες», προσθέτοντας ότι «μπορεί να γίνει πατρίδα και η χώρα που μπορεί να εργαστεί και να ζήσει κάποιος αξιοπρεπώς».
Διαβάστε περισσότερα: http://www.tovima.gr/default.asp?pid=2&ct=1&artid=351032&dt=29%2F08%2F2010#ixzz0y11LUstZ

In this article by Vima, an Athenian newspaper, 73.6% of Greeks between the ages of 22-35 want to leave Greece, and more depressingly 42% of them are in the process of making plans to leave.

Reasons are opportunities, and depressingly 32.6% say that because they don’t feel that Greece has opportunities for advanced based on merit. In my own life that was part of the reason I wanted to leave. The fact that you had this impression that who you knew was more important than how good you are…

What’s really depressing, is that in the mid-80’s to late 90’s a similar study would have revealed the same data. In the 90’s, with the economic boom, things changed. Greeks in that demographic wanted to stay in Greece.

But now we are back to where we started. And what’s depressing is that the best educated segment of the country will leave, again.

Drunken sailors and web ui design.

So it’s really cool that we can use dynamic web technologies to have user interfaces that allow for maximum configurability…

BUT THAT’S NOT GOOD UI DESIGN.

Just because you mr. web designer decided that I need to be able to click and remove every UI element (so that I find myself trying to figure out how I lost the all important panel) doesn’t mean you should.

Building UI elements and forcing me, the VERY BAD UI DESIGNER to figure this out is an abrogation of your responsibility.

Yech. I feel better.

I am not Lance

So after watching Lance go up and down the mountains, I decided to hop up on my bike and go up Old La Honda.

So here’s a picture of the beginning of the ride up:

And here’s a picture of me at the end:

And it took me about 40 minutes to go up 3.29 mile climb that had an elevation gain of 1000 feet. 

And after that climb I was looking to the nearest place to stop and breathe.

Couple of fun facts about the ride. So I was like the fattest guy going up Old La Honda. When I finally hit the corner of Foothill and Page Mill I noticed a whole bunch of folks who were bigger than me.

So I felt a little bit better when all those freaky skinny guys blew past me, saying the always friendly: On your left…

Fun with Nokia SportsTracker

So I’ve been using Nokia SportsTracker to map my workouts. I’ve been trying to lose weight and improve my overall fitness.

So here’s what’s fun, about 1 year ago I was running 3.79 miles at an 11 min 30 second pace:

Lap time Total time Lap distance Avg.pace

Whereas on Wednesday I ran 4 miles at a 10 minute and change pace:

Lap time Total time Lap distance Avg.pace

What was really cool was the 9 min 11 sec pace I ran the fourth lap!

Basically I went from running at about a 5 mile an hour pace to 6 mile an hour pace over a slightly longer distance!

Yes, I am bragging.

Math, Engineering and the field known as Computer Science

When I started my career many moons ago at SGI, I discovered that there was a set of really smart folks who viewed software development not as an engineering discipline  but more akin to developing mathematics, or writing poetry.

There is a certain intellectual appeal to such a notion. If software, is indeed poetry, or beautiful, then that means that computer scientists are not merely engineers building devices using well defined rules, but we are artists creating something that has enduring value.

More to the point, it means that the software itself has intrinsic value beyond that of the particular product that it ships with.

So as software craftsmen, our job is not to merely satisfy the immediate customer requirements but to develop the perfect set of software that had enduring value that also happens to  meet the customer requirements.

For some reason, this never really worked for me. At some point, software is good enough, not perfect, and we need to move on to the next problem.

What appeals to me about software development is the part where the end product is used by someone to solve a real problem. I want to engineer, which means to make tradeoffs, a solution that people want to buy.

I am not interested in understanding what can be developed within the constraints of computability.

And in many ways, I am beginning to think that the software as mathematics crowd tends to have a dim view of software as engineering, because they are not engineers and don’t see beauty in engineering.

Which puts me in a different camp from the software is beautiful camp. I am in the camp that views the pursuit of software beauty as an end unto itself, a waste of time.

Now lets be clear, it’s not that I think software can not be perfect or beautiful, I do. Nor does it mean that I think that there is no distinction between beautiful software and butt ugly software, I do. And thanks to the discipline that those great engineers instilled in me at SGI, I think I was actually able to approach beautiful code.  It’s just unclear to me how the pursuit of this perfection got me any closer to my revenue goals.

I find beauty in products that exceed customer expectations, that are cheaper to develop than was expected and are easy to evolve at a low cost. I view the underlying software as a means to that end, but not the end in and of itself. And yes, I do  understand that sometimes it’s elegant beautiful software that makes that possible.

I think the art of engineering  is to understand where to invest your time and energy to get meaningful product differentiation and where to just live with problems. And I think it’s an art, because you never really know if you pulled it off until someone, somewhere opens their wallet and forks some money over to you because they want your product: not your software, your product.

Which brings me to the title of my blog. I think that there is a tension in computer science between engineering and mathematics. And I think that there is a a class of computer scientists who think of themselves as mathematicians building fundamental abstractions. And I also think that there is another class of computer scientists who think of themselves as engineers who try and deliver differentiated products that exceed customer demands with imperfect software.

And I think that between the two camps there can be no reconciliation.

The quest for software perfection.

When I started my career as a software engineer at SGI in 1996, I had the privilege of working with a great engineer.

This engineer and I had very different perspectives on software. I viewed software as a means to an end. As a vehicle to deliver the features that the were asked of me. That the perfection of the software was immaterial, what was material was how fast you could deliver those features. In fact, sloppy, disorganized, poorly structured code was okay as long as it worked. What was material was the function not the form.

He, on the other hand, felt that software was like poetry. That it had its own intrinsic beauty and that its beauty was an end in and of itself.

That’s not to say that he did not care about the outcome and the product. He was always passionate about delivering value to customers. He just felt that the elegant, solution was always better than the quick solution.

Being young, and he being great, I was convinced that elegance was worth the price in time and effort.

I’m not sure I still agree with him.

My career is littered with software systems that are no longer in production. SGI’s kernel was EOL’ed last year. NetCache was sold off to Bluecoat. Most of the code I wrote for DFM has been re-written as more and different requirements came into existence.

And he would say that is natural and normal and a reflection of the natural process of things.

And I wonder.

Was it really worthwhile to strive to create the perfect solution given the market pressures? Would I have been better off to just get the job done in the most expedient way possible?

Ultimately, I think the answer boils down to an engineering tradeoff. The perfect solution makes sense if you understand the requirements and the requirements are stable. But if the requirements change, then your attempt to create perfection has to be balanced against expediency and need.

Although I can appreciate a beautiful piece of code, I somehow am more inspired by a system that is easily adapted. A systems whose core abstractions although imprecise are in the right general area and allow for substantial independent directions of innovation.

Let me try this differently.

I think it’s far more valuable to know what the core set of abstractions should be and their general properties than to specify them completely. Instead of trying to perfect them in isolation, one should expose them to the real world and then learn. And if the abstractions were correct, over time they will get precisely defined and perhaps at some point become perfect, as they no longer evolve.

But I suspect that I will have long since moved onto the next set of imperfect abstractions.

And in retrospect, that engineer always remarked that it’s much easier to replace an elegant easily understood solution than a complex, baroque, over or under-engineered hack that was expedient.

I’m moving to Texas

Last night, after the sessions at LISA ended, I decided to go out and eat some meat. After all I am in Texas.

It turns out the place I went to is within walking distance of my hotel, The Hyatt Regency, on 702 Ross street off of Market and is called Y. O.  Ranch.

And yes the meat was fantastic.

But the reason I wanted to move to Texas is because there were 5 or 6 steak houses right next to each other! Literally one right next to another. Not fancy fluffy California fusion with mixed greens and arugula, but honest to God steakhouses! Places where the beef was beef and the meat was meat and the men were men.

This is a place, where buffalo meat is considered exotic!

When I told the waiter that I live in California, he smirked at me and asked if they actually serve meat in the state. I told him yes, but the steaks you buy are about 1/18th the size, and most of the time the waiter is explaining how the cow was a happy cow that lived a full and productive life when he’s not looking at you like a baby killer. I then told him about my challenges in trying to find a spit-rod for my roasted Lamb, and he had this perplexed expression on his face: why is finding a spit-rod so difficult to find? How do you roast pig?

So I am moving to Texas.

My wife pointed out that if I do move to Texas, i have to support Bush. But I pointed out that Texas was also the home of such fine upstanding politicians like Lyndon Johnson and Ann Richards. And after all I live in a state with a Governator!