A magazine about programmers, code, and society. Written by humans since 2018.

At Least

About ten years ago there seemed to be a slew of thirty-year-olds explaining what it was to be old.

“Now that I am thirty,” they would say, “I understand …”

I am not sure what it was they understood.

I had stopped listening and faded off into my own head, thinking, “uh oh, what if they find out I am fifty. They will never hire me.”

I shaved my beard because that is where all the gray was. I even reasoned that it was ok to stay overweight and not eat as healthy as I should because somehow that extra fat smoothed out the wrinkles and made me look younger.

When I was in my early twenties – for reference, just after C++ and Objective C were created – I wanted to be a high school math teacher.

I wanted to change the world.

I was going to change how math was taught based on all of my experience.

A friend took me aside and said, “you are right.”

“About what?” I asked.

“About pretty much everything,” he said.

“But…” I prompted.

“But, you are young. They are not going to listen to you.”

And they did not.

“When you are older,” he said, “they will. Not because you know more but because you are older.”

Now that I am older – much older – I think it is also because I know more. I think it is because I am less angry. I am not in a rush.

But mostly, I think the same things I used to think.

I spent an hour this morning on code that did not work.

I say that in the passive voice as if it were not code that I had written that did not work.

It took me an hour to put in a breakpoint at the right position to discover that this line of code was never called. Should I have known that this line of code that had always been called in the past would never be called?


It was a beautiful line of code that did exactly the right thing. But it was never called. So it never did anything.

It was me in my twenties.

I did not give one of those “now that I am thirty” speeches.

I loved my thirties.

I was surrounded by smart people who could not learn fast enough.

No one was bored – we just did not have enough time to learn all that there was to learn.

I was becoming a mathematician and teaching at the college level.

In summers I taught in the Upward Bound program. It was a program designed to encourage and prepare students for success in college. These were low income or the first generation in their family to go to college.

I was the math teacher and the academic head of the program told me he thought it was more important that students write as much as they could, and that I should not assign any math homework.

I argued that math was important and convinced him to let me assign math homework.

I was wrong.

When I ran my own program years later I understood the importance of writing.

I began each day with the students writing for a half hour.

When they began college they could write fluidly. The thoughts in their head organized themselves and presented themselves on the page.

There is that passive voice again.

I mean that the students could write with ease and confidence. They could write with clarity and purpose.

Writing was more important than math.

What is it you do?

Whatever it is, you write for a living.

Memos, proposals, emails, commit messages, performance reviews, user stories, code – you write for a living.

The better you write anything – the better you write everything.

You write an email and then you decide that it is better not to send it. So you delete it.

You find the code that is never called and you eliminate it. It is just noise.

What about that code that is called all the time?

I hope it is good.

I hope it has been tested and profiled. This is where working your magic can really pay off.

My friend Adrian gave a talk about turning forty. How old he was. How wise.

He was wise. But I would bet he was wise at twenty.

My friend Graham challenges and educates me every time I talk to him.

They have given the community a gift with this publication.

They are both so wise and they are both so young.

I recently went through hundreds of pictures of my dad for his memorial service.

There was one of him at sixty.

He did not look so very old.

It is a month before my sixtieth birthday. I think I look younger.

I am still clean shaven. Now it is out of habit and not to hide my age.

I tell everyone how old I am.

I think it is important that you know. I think it is important that you know you work with people your parents’ age and that we are still learning new things while we have the experience and context to put these new things in the right box.

Sure you can make us managers, but let us write code now and then.

I love being invited to give keynotes, but I also revel in the workshops and technical talks I am asked to present.

I was recently at a conference where one the well known speakers in our field was the closing keynote. He brought up the wrong slide deck and rambled in a way that I had once found charming.

The audience grew restless and heckled him.

He mistook it for them being engaged.

I leaned over and made the person sitting next to me promise that they would tell me if I turn into that.

That speaker and me – we are so lucky. We are that code that gets called all the time.

When I am asked to talk, my talk is tested and profiled. I have put in at least an hour for every minute of my presentation. If you are recording the talk, this will likely be the only time I give it.

Do I really spend a week to prepare for a talk I will only give once? At least.

I prefer to give a talk more than once. I learn something every time I present it. But times have changed.

When I was twenty I had so much to say.

It was raw and unfiltered.

What takes me that week to write the two hundred slides in a thirty minute talk is not thinking of what to say.

It is thinking of how to say it. It is leaving out that story I really want to tell because it will confuse you about what the point of the presentation is.

I was in Scotland earlier this year having coffee with a friend.

He asked me my plan – you know – now that I am sixty.

“I do not know,” I said, “I would like to work another ten years. I love what I do.”

“Then why stop in ten years?” he asked.

I paused. I thought a moment. Then, I smiled.

“At least,” I agreed raising my glass.

“At least,” he nodded.

Cover photo by Florian Klauer on Unsplash.

Continue reading Enough Agile or go back to Issue 012: Being A Senior Developer. Did you like this article? Consider subscribing to our newsletter or contributing to the sustainability of this magazine. Thanks!
Back to top