Twenty Years

Today is my 20-year anniversary of working at Apple. Where does the time go?

I went back and read the entry I wrote about moving to California and starting work at Apple, and it’s, uh, a little embarrassing. I guess I was… enthusiastic? But also young. Not that 30 – which I had just turned at the time – is all that young, but myself at 30 reads as young to me, 20 years later. Ranting about stupid tech problems, a silly dig at Microsoft (which was still on top of the world at the time, rankling many an Apple fan), a strange surface sense of self-awareness that nonetheless makes me think, “This guy, he has no idea.”

But it basically turned out okay for that guy.

I wrote a short entry on my 10-year anniversary of moving to California, which mostly reflected on the craziness of the move out here. I guess I wasn’t feeling too reflective at the time.

We had a department meeting last week where they had short segments on myself and two others hitting big milestone anniversaries. I found a couple of old photos from my first couple of years that they used, and our director said a lot of kind things. He also devoted a chunk of it to my puns, which I’m sure would amuse my sixth grade teacher. There are a lot of people in our department that I don’t know well but now they know me a little.

Apple is in many ways essentially the same company I joined, only much, much bigger. As John Gruber once said, “[Steve] Jobs’s greatest creation isn’t any Apple product. It is Apple itself.” I think that’s been key in maintaining the continuity and the level of excellence and – frankly – keeping the company a place I want to work, across two CEOs and many huge changes. Apple had, what, less than 10,000 employees when I started? How big is it now?

Of the projects I’ve worked on in the last two decades, I think the one I’m most proud of is the iOS SDK, which shipped in Xcode 3.1 near the end of my first decade. It was a large and interesting project in which I think we got many things right and that work has served us well in doing similar projects in the decade since. I’m hopeful that the groundwork we’ve laid in Xcode’s new build system in the last few years will lead to it eclipsing that in my memory, given time.

Personally, the last ten years have had their ups and downs: Debbi and I bought a house together. We had three cats pass away, but got two more. We bought a vacation home. My mother moved to assisted living and passed away. We got married! We went to Walt Disney World and visited Debbi’s family and friends in the area. Friends and family have come to visit. It’s been a bit of a roller-coaster, which maybe is normal for middle age. I’d say it’s been more good than bad, but maybe that’s because these have been good times for the last three or so years: There were some dark stretches earlier in the decade.

This year so far has been a cool and rainy one in NorCal, which is one of my enduring memories of my first month or so in California. Spring in February is normal to me now, whereas it felt like bonus exotic vacation time when I first got here.

I “celebrated” by doing a Magic draft in the evening at Game Kastle, where I assembled a mediocre Azorius deck with lots of removal (four Lawmage’s Binding! Three Slimebind!) and not enough good creatures. I dispatched a good Simic midrange deck, and then run over by a hyper-aggressive Rakdos deck and a solidly aggressive Orzhov deck, for a 1-2 finish. Not the best, though looking back I think I was in approximately the right place, the cards just weren’t there.

I also tweeted about my Appleversary and acquired about three dozen new followers on Twitter. No doubt they’ll all be disappointed when I rarely tweet about Apple or tech. 🙂

20 years is a long time to stick with anything, but honestly you can never run out of interesting things to work on at Apple. I’ve been working on approximately the same project for most of that time, and there’s always something new to learn or develop. I doubt there are many companies where that’s true, and I consider myself lucky to be there.

Fifty

I turned fifty years old on Wednesday. It hardly seems possible!

I’ve treated my birthdays as very low-key in recent years, and this was mostly not an exception. Wednesday Debbi came into the bedroom before I got up with a pair of giant balloons for the number “50”. Later on I thought they spelled “SO”, as in “I am SO old!” She also put “Happy Birthday” signs around the house, and bought me boxes of See’s Candies.

I took Wednesday off from running, but I did go to work. I’d planned to put aside some of my current projects and instead work on some stuff I wanted to work on for a day. Instead I put them aside to work on putting out a fire. Best laid plans! But hey, I did get the problem solved. And I left early to pick up comics, where the owner of the store told me Debbi had stopped in and given him her credit card number to pay for my haul for the day. So I picked up a few extra things, which I think was her intention. She also cooked dinner. A pretty great birthday!

Friday night we went to Sundance the Steakhouse for dinner, which is one of my favorite restaurants and one we’ve gone to often for our birthdays. The complementary dessert for my birthday is great too.

Saturday we did some chores, but we also had some cleaners over to do a serious cleaning of the house, especially the bathrooms and kitchens. We haven’t had cleaners in since we moved into this house, and it took the two of them about 4 hours to get through everything. But man, it sure looks better, especially the master shower, but also just much less dust on everything. Jackson followed them around while they were here, which was pretty funny; even the vacuum doesn’t faze him much.

Finally, today we threw a small party with friends and their kids. It’s been a while since I had a birthday party – maybe since 2012? I had a good time, although I think a couple of the kids were a bit bored at times. But I carried my friend Itai’s younger daughter around upside-down a bunch of times, so I think she had a good time. And cake from The Prolific Oven and ice cream from Rick’s is always yummy!


It’s no surprise, I guess, that 50 doesn’t feel much different from 49. I’m not sure whether it feels much different from 40, either. I’ve been pretty lucky that my hair isn’t graying very fast – mostly just at the temples – and my body is in pretty good shape considering I’m someone who’s not in great shape. A few aches and pains, but nothing chronic. I’m still able to run 14 miles a week.

In some ways I don’t feel that much different from when I was 25, but in other ways I do. Little (and big) life experiences and lessons add up over time. It’s a perspective I don’t think I could have had when I was 25. Maybe other people do, but it’s the sort of thing I wish I should share to those who don’t, if I knew how.

It is weird to think that I’m pretty firmly past the halfway point in my life – hardly anyone in my family during my lifetime has lived to 100 (only one person that I know of). That’s a little bit of an illusion since not all of my childhood feels like I really lived it, so maybe I’ll make it to 90, and I have a pretty good chance to get to 80. 30 years is a long time.

But it’s still weird to write something like that.

Anyway. I don’t make many New Year’s resolutions, but this year I decided I would talk less about my age and longevity at work. It’s a little too much like bragging, and I already know that I work with lots of younger people who are as good or better than I am at our jobs. And maybe it feels a little too fatalistic. Hopefully that will be an easier resolution to keep now that this birthday has passed.

But, as they say, age is just a number. And a birthday is just a day. And every year has a whole bunch of them

2018 in Review

Of the many personal looks back at 2018 I’ve read over the last couple of days, I think the most memorable to read was that of Peter Sagal on Twitter. My year wasn’t that great – I doubt many peoples’ was – but it was still pretty great.

I rarely talk about work here, but a lot of the great was due to work. Over a year ago we had some shuffling on my team after which one of my long-tile colleagues jokingly asked me how it felt to be the senior engineer on the project I was on. That question caused me to realize that this was a point where I could continue cruising along the way I had been – plugging away on my assigned tasks – or I could step up to more of a leadership role. I don’t at this point fully recall how my head worked through it all, but as you can guess I decided to do the latter. (“Up my game” was a phrase that went through my head.) I wrote a little bit about this last year, and this year felt like the payoff of what began back then.

Anyway, the past year-plus has involved shepherding the project through some major milestones, helping to plan and organize them, and also helping to onboard two new hires.

It was a year of learning a bunch of new skills, and a number of lessons too, some of which also opened my mind about, well, working with people and just plain interacting with people. It wasn’t all stuff that was right in my wheelhouse, and it was certainly frazzling and exhausting at times, but I can look back and feel like I – and the whole team – accomplished some great stuff.

One thing I’ve been working on embracing through all of this is the value of being positive: Giving people encouragement and speaking up when people do good stuff. I’m a bit of a cynic at heart so this doesn’t always come naturally to me, but there are so many opportunities in software to be negative – many of them part of the normal flow of the job, because software development means bug fixes, revision, refinement, and critique. I’ve been finding that it helps to balance out dealing with the negative parts by also emphasizing the positive. (At least I think it helps! It helps me when other people do it.) This seems obvious in hindsight, but it’s such a wide-ranging principle that it’s something I’m still working on, and I keep thinking of more nuances to it, things I can improve on or should stop doing.

And as you might imagine it’s only a short hop from thinking about this at work to thinking about it in my personal life, social interactions, and on the Internet.

So anyway, I’ve grown a lot the last year (I think), but there’s always more to learn and new ways to improve. Plenty to keep working on in 2019!


My personal life didn’t have quite the same feeling of accomplishment, but I had a good year there, too. I didn’t take a lot of vacation last year, but we did have a nice two-week trip back east to visit our families and stay at our beach house over the summer. And I went to the World Science Fiction Convention.

I also had a grand old time all summer following my Boston Red Sox, who jumped out to a big lead early in the season and never let it go. I felt like this team’s offense wasn’t close to the level of the 2013 team’s wrecking crew, and beyond Chris Sale I was pretty concerned that the pitching staff wouldn’t carry them deep in the playoffs.

And boy was I wrong.

David Price reinvented himself as a control pitcher, the bullpen went from question mark to exclamation point, and the offense kept coming up with big hits at the best times, especially hometown hero and mid-season acquisition Steve Pearce, who must have found the whole thing an unbelievable experience.

And then there was Andrew Benintendi, who I think provided more sheer fun and enthusiasm than just about every other player in the postseason put together:

Benintendi saves ALCS game 4
Great leaping catch in World Series game 2

All of which added up to a surprising and very satisfying World Series championship, the franchise’s fourth this century, and a lot of great October entertainment for me!


We’ve wrapped up the year in a low-key manner. Unfortunately Debbi came down with a bad cold on Christmas Day and it’s lingered through New Year’s. We did manage a trip up to San Francisco, and also out to Half Moon Bay and Pacifica, as well as having people over for games and to hang out on New Year’s Eve afternoon, but otherwise we’ve been hanging out at home trying to get her well.

Hopefully she’s turning the corner and that 2019 will start looking up shortly.

Lazy Labor Days

It’s been a nice holiday weekend around these parts – not least because it’s we’ve had seasonable temperatures getting up to the early 80s, as opposed to last year when it somehow got up to 112° according to our little weather station. That was so hot the A/C couldn’t keep up. Much more pleasant this year, with the windows open and a fan going occasionally.

The weekend started with me going down to a friend’s house to play some poker. With 10¢ blinds, we played five-handed for about 4 hours, and I ran my $20 buy-in up to $44. Not bad. I think I made a few good plays, and I tried some stuff that didn’t work. Plus I got fairly lucky. So all in all a nice mix. Plus I got to see my friends’ two young cats who are now all grown up – they were small kittens last time I saw them.

Saturday we made our way over to Half Moon Bay and had breakfast at the Main Street Grill. It seems the old owner, who had run the place for as long as I’ve been going (and longer), sold it in the past year, but other than a little of the memorabilia having been taken down, it’s the same place – which is great since I love it. Especially the best coffee in the region. We went for a walk along the coast, and then came back into town to go to Ink Spell Books where I found a copy of Spider Robinson’s Callahan’s Crosstime Saloon, which no dealer had in stock at Worldcon two weeks ago. We came home for a quiet afternoon on the couch before heading down to San Jose to dinner at Maggiano’s.

Sunday we had planned a small BBQ with friends, but it turned out that some folks were out of town, some were busy, and some got sick at the last minute, so it ended up being a very small BBQ with just our friends Itai and Jessica and their two daughters.  Nonetheless we had a good time, with the girls blowing bubbles and kicking balls around the yard. Their older daughter was bewitched by the cats (the cats did not feel the same, though Jackson and Sadie were their usual people-friendly selves, and Roulette hid under the bed). The younger one was scared of them at first, but by the end of the day was meowing at us. We spent another quiet afternoon and just picked up pizza and a sub for dinner.

Today we slept in, but I got up and went running anyway. I also made ice cream, and Debbi cooked dinner. We got to watch the Red Sox – who have been uneven lately – thump the Braves on national television. We considered going out to buy a new mattress, but we didn’t. We need to check whether our box spring needs to be replaced anyway – it would be nice not to have to replace it this time around. But I did some work up in the study and then we had a quiet evening watching Harry Potter movies.

Somehow it’s already back to work tomorrow, but for a short week.

Open House 2018

Saturday we held our eighth annual open house – eighth even though we skipped the seventh, as we didn’t get our act together last summer with everything we had going on. Last week in additional to prepping we were watching the weather hoping it would cool off by Saturday from the highs in the mid-80s, and it did cool down some, with highs in the low 80s. Still, better than our 2013 open house when it was well up in the 90s, which made us close the doors and turn on the A/C! (And a good thing we didn’t hold it in late June like we usually do, since our home weather station claims it got up over 100° around then!)

So we closed the cats in the guest bedroom, bought and made food and drinks, scattered balls and bubble wands around the porch and back yard, and opened the doors around 2 pm.

In the last two years I’ve acquired several new cow-orkers, and Debbi got a new job this spring at EPRI, so we had a lot of new people to invite – and lots of them showed up! A few of our regulars weren’t able to make it – lots of people are busy in mid-August with weddings, vacations and family events – so it was a different mix of people, but with all the new people it might have been our largest party since the first one. We both gave a bunch of tours of the house to people who hadn’t been over before (we’re more than a little proud of our house, I’ll admit), and tried to spend at least a few minutes with everyone who came in.

I was glad to see that the kids had a good time playing in the yard, as we had a different mix of kids than usual, including a lot of first-timers. I think the only mishap (that I heard of, anyway) was that I went to clean bubble fluid off the face and hair of one girl, but that’s not so bad.

We learned that our friend Emma – who I met through Madison fandom in the 90s and who had moved to California before I did – had worked at EPRI as her first job out here, and knew a couple of Debbi’s cow-orkers who came to the party. Maybe I’d known that at some point, but she’d moved to another job by the time I came out here, so maybe not.

I was happy to have my previous admin, Cyndie – who retired last year – and my current admin, Debra, came to the party.  And that my cow-orker Anders and his teenaged daughter came, as they have a very busy schedule and this year’s party happened to fall on a day they had some time available. Also, my cow-orker Jake, who started earlier this year, came with his wife, and gave us a (I think) pen-and-watercolor drawing she’d done of our house, which looks awesome!

Things wrapped up around 8 pm, and our friends Lisa and Michel and their kids hung out for a little longer and helped us clean up a bit (such as taking down the canopy they loaned us).  Once they left we vegged out for a bit, and called it a night.

Sunday we alternated between cleaning up and lying on the couch, but mainly being really happy with how the party turned out. I hope everyone who came had as much fun as we did!

Beach Vacation

We’re back from a 2-week vacation to Massachusetts – which I think is the longest vacation I’ve taken since our Hawaii trip in 2011. We had originally planned this trip as part of Debbi’s sabbatical, but then she changed jobs so it became its own thing. Moreover, I haven’t taken much vacation time in the past year because of a big push at work, so I was due. (The last time I went a year taking so little vacation was 2005, but both times were for good causes. This coming year I’ll take more time off, if only otherwise I’d hit our vacation cap!)

Anyway, this trip was our annual visit to see our families – well partly, but I’ll get to that shortly. We took the red-eye flight from San Jose, landing in Boston the morning of Saturday June 24, picking up our rental car and driving to my Dad’s house. Red-eye flights are getting harder to weather so I don’t know how much longer we’ll keep doing them; at least I’ve learned to sleep on planes a bit, but Debbi hasn’t.

We had breakfast with Dad, took a late-morning nap, and then had lunch. Otherwise we just hung out for part of the day before driving down to Debbi’s family’s place where we had dinner and hung out some more. All three of the teenaged niephews [sic] hung out too, which shocked all (well some) of the adults. Sunday, we… well, again I’ll get to that in a moment. And then we drove back to my Dad’s and had dinner at the Regal Beagle. We got caught in a rainstorm on the way home and spent some quality time hanging out in the Arcade Building, checking out some of its corners that we’d never had reason to visit. (It’s not that interesting, but the century-old decor is unusual today.)

Inside the Brookline Arcade Building
The interior of the Brookline Arcade Building

Monday we drove up north to visit Nancy, a high school friend of Debbi’s, and her husband Dan (and their cat, who I followed around until I convinced her to let me pet her). I didn’t really know Nancy in high school, but I knew who she was – which frankly was about how well I knew Debbi in high school! Afterwards Debbi drove back to her family and I spent a few days with Dad.

Dad and I made some of the usual rounds, including visiting my Mom’s grave at Mount Auburn Cemetery, and going out to Waban where I grew up, having lunch at Barry’s Deli, which is very nearly the last thing left from my childhood town that hasn’t changed much. I’ve written before about Mom’s house being replaced with a much larger home, and now the large house on the corner – on a huge lot, and which I understand had been built around 1890 – has been torn down and replaced with two large houses. What will the neighborhood look like in another 40 years, I wonder?

I wanted to wander in to the Waban Library Center, but they weren’t yet open. However, walking up I remembered that one of the attorneys who had probated her estate had bought a memorial brick there, so I found it and took a picture. There are actually two bricks, and I don’t remember who bought the other one. (I might have a note of it somewhere, or it may remain a mystery.)

Memorial bricks at the Waban Library Center

The other place we went was That’s Entertainment, which is a huge comics, game and hobby store in Worcester. I remember why I only go every few years, because it takes over an hour to drive there! This trip was well worth it, though, because I managed to find all but 4 issues of two different runs of comics I’d been looking for. As with most series I’m currently collecting, they’re both not valuable and not in demand, so hardly anyone stocks them. I also managed to stump several employees with a question, which went down the line of four employees before someone knew the answer. (The answer, alas, was that they didn’t have any old issues of Dragon magazine in stock.)

We had originally planned to go to the Museum of Science on Thursday, but the weather dissuaded us. Instead Debbi drove up and had lunch with us, and she and I took the train into the city to have lunch at Faneuil Hall and look around. It was a little soggy, but not too bad. I bet parking and crowds at the museum would have been bad, though.


For the second half of our vacation: Well, a couple of years ago we bought a beach house on the south shore on Humarock. It was a keep-it-in-the-family purchase, and it’s mostly my in-laws who use it, but we arranged this trip so we could spend a chunk of time there, including the July 4 holiday.

The house had sustained some damage from the strong winter storms earlier this year. It sounds like these storms were the strongest in a generation, if not more, and we saw pictures of many houses hit much harder than ours. We ended up with some roof leaks, and some damaged furniture, but not much more than that. In particular it sounds like we avoided any serious mold issues. We hired a great contractor who put on a new roof, aired out the attic, repaired some damaged walls and ceilings, and discovered that the bedrooms have hardwood floors under their ancient 70s-era carpets. Even better, almost all of the work was done by the time we arrived.

So the first Sunday we went with the in-laws to check things out, and move some of the furniture back into place, as well as figure out what projects we wanted to do while there. We met with the contractor to go over some things, and also bought a new grill as the old one was getting pretty rusty. Then on Wednesday Debbi and Shawn (the brother-in-law) picked up some furniture at IKEA.

Friday we arrived to find a worker replacing one of the windows, so we left him to do his work and went out to get lunch and pick up stuff at Target.  Many of the furnishings were still jammed into the undamaged bedrooms, and we weren’t sure whether some things – like curtains – survived or had been kept, so we bought more than we needed to.  When we got back, we moved the bed back to the master bedroom and moved around some other things, and found that several items did in fact survive, so we were able to return some stuff later! Then in the evening I drove into Boston to meet my old friend Bruce, whom I haven’t seen in about three years.  We had dinner at Maggiano’s, and caught up with the latest developments.

Saturday the in-laws arrived with the IKEA furniture and Shawn, Debbi and I spent most of the afternoon putting it together in fairly hot and humid weather (alas, the house does not have A/C), with the World Cup games on in the background.  The in-laws are big soccer fans and were following them closely.  I’m not much of a soccer fan, but it’s an interesting break from baseball.  While people didn’t stay overnight with us, we did grill dinner together, and then they headed home and came back the next day for a much lazier day.

Monday Debbi and I drove into downtown Scituate for lunch and to walk around the harbor area.  We also drove over to Old Scituate Light, which is in a surprisingly built-up area, but is worth the visit nonetheless, for the view if nothing else.  Supposedly the battle which resulted in the line “Don’t give up the ship!” occurred near there as well.  We also made another run to Target, where I embarked on a small project to replace many light bulbs in the house with LED bulbs, since the heat from the incandescent bulbs was pretty nasty in hot weather.

Old Scituate Light
Old Scituate Light

In our driving around we also worked our way through the first (and so far only) season of a conspiracy-fiction podcast called Rabbits, which we both enjoyed quite a bit.  I’ve been listening to a lot of podcasts lately and need to do an entry or three about them soon.

And indeed Tuesday was probably the worst day for heat and humidity that we had, and we spent most of the day lying around the house like slugs.  We did make a run to the grocery store, where the A/C tempted us to wander the aisles for longer than we would have otherwise.  Thankfully, it cooled off late in the afternoon when the fam arrived, and we were able to hang out on the beach after sunset and watch the fireworks.

But wait! you say, Tuesday was July 3!  Yep, Humarock has a long-standing tradition of fireworks on July 3 rather than July 4.  Up and down the beach – several miles of visibility in each direction – people were shooting off fireworks, probably thousands if not tens of thousands of dollars worth.  All perfectly illegal, I’m sure.  But it sure was a great display.  There were also a couple of people launching fire lanterns which would drive over the ocean and into the clouds.

Wednesday July 4 was another great day weather-wise, and we spent much of the day on the beach. Around the time the fam was heading home, Nancy and Dan showed up for a few hours, to hang out and grill dinner.  They headed out a little before sunset, and I spent an hour meeting one of my last goals, walking up to the end of the sandbar peninsula on which our house sits. I had to book it back before it got pitch black, but despite the rush it was a nice hike with some great views.

Fourth Cliff just after sunsetThe ocean side of Fourth Cliff just after sunset
(click for larger image)

We’d planned on Thursday to hang out around the house until late in the afternoon and then head back to Dad’s, but it turned out to be another humid stinker, so we actually called it a trip around noon, had lunch on the way out, and then drove around for a bit before heading back.  It was sad to go – other than the weather – but we had a good time, and a good mix of Getting Stuff Done and Enjoying Ourselves.  Unfortunately at Dad’s we went back to the Beagle for dinner, but their A/C was out so it was kind of a downer of a meal.  (Not as much of a downer as it was for the wait staff, I’m sure.)

Finally, Friday it was a rainy day and we mostly hung around at Dad’s until it was time to drive to the airport and catch our plane.  It didn’t rain enough to delay our flight, so we got home more-or-less on time, said hi to the cats, and collapsed into bed.  Then we had the weekend to recover and get ready for a new work-week.I think this was the longest vacation I’d taken

All-in-all a great trip, though as usual we were ready to come home to our own bed and our cats by the end of it.  But we’ll be back.  Because ocean.

My Trouble with Names

I’m bad with names.

No, not that way. I’m fine with remembering peoples’ names. Well, above average. Probably.

I’m bad at coming up with names. At naming things.

The earliest instance of this I remember was when I was about 10 and was playing Dungeons & Dragons with my friends. We’d come up with characters, and a few of them would persist for a while. The one I kept the longest had the deeply evocative name of… Seggerillon.

(He was a wizard.)

I probably haven’t written that name since I was 13 and geez, it looks even dumber than I remembered. Just a bunch of syllables stuck together, and it doesn’t even scan well. Okay, in my defense I was 10. But still.

This has extended into other parts of my life. For example, my two journals, both with names I’ve never been very happy with (“Gazing into the Abyss” and “Fascination Place”). I’ve never been able to articulate what I wanted my journals to represent, and I’ve shied away from titles that seemed snarky or dismissive. It’s been over ten years since I started this one and I haven’t yet come up with a name I like better. (Not that it’s been a high priority.)

I also hit this at work, where naming classes and objects is a routine part of the job. Fortunately, most of this involve fairly rote and descriptive names. But coming up with good names for more advanced classes is sometimes a challenge. I sometimes joke that one of the big problems in programming is that many things you create are abstract with only a tenuous connection to anything in the real world, and there are only a relative handful of words for abstract concepts in English compared to the number of words for concrete things. So we always end up with some class which is a BuilderOperationDelegateProviderManagerContext or some subset thereof.

On another note, something I rarely mention here is that I write a little fiction. A very little. So little that I wouldn’t call myself a writer. One of my problems is that I have trouble coming up with names for characters, especially since what I really want to write is far-future science fiction, where the names might arguably have a tenuous connection with names in today’s world. I like to think I’ve advanced a little beyond Seggerillon, though. I have a couple of names in my quiver that I’ve carried through a couple of story concepts looking for the right one. (And waiting for me to actually start writing one of them.)

Anyway, as they say, there are only two hard things in computer science: cache invalidation and naming things. At least I’m good at invalidating all the caches.

Middle Age

The last couple of years I’ve been feeling more keenly that I’m middle-aged.

I guess it started a decade or so ago when a cow-orker of mine observed that he remembered watching Babylon 5 when he was in junior high school, whereas I was halfway through graduate school when it premiered.

Since then time has marched inexorably onwards. Most of my cow-orkers are between the ages of 30 and 40, which puts them in average half a generation younger than me. It’s enough that our cultural touchstones are just a little askew: I saw Star Wars in the theatre when it came out, while they mostly watched it on cable growing up. They grew up playing Nintendo and Sega game consoles, while I had left game consoles behind by then and was playing Apple ][ and Mac games. One of them was visibly surprised that I was born in the 60s. And, my career at Apple is almost 19 years old, which means there’s a real chance that I’ll soon have a cow-orker – an intern, perhaps – who was born after I started working there.

(This is not at all to disparage my younger cow-orkers, who I learn things from all the time!)

As I’ve been feeling these differences in age, though, I’ve started making quips about our relative ages from time to time. Some of the jokes are rooted in these different touchstones, and others are more generally about my age (“Pipe down sonny or I’ll whack you with my cane” types of jokes). It’s not that I feel old – in a lot of ways I feel better than I did 20 years ago – but it’s like I have a new perspective that I haven’t had before, and which feels weird.

I’ve been feeling a little – something, guilty? Unjustified? – in making these jokes. I don’t necessarily believe that talking this way is a self-fulfilling prophecy, but it’s been making me a little uneasy. So my plan – my resolution, if you will – is not to make jokes like those this year. There’s a gray area, since I don’t think it’s feasible for me to just ignore or never mention these differences, but to the extent that not talking about them leads to me not thinking about or feeling being middle-aged, I think that’s a good thing.

I’m sure age will announce itself to me in due time, without any help from me.

2017 in Review

I’ve seen several people on social media say something along the lines of, “2017 was a pretty terrible year for the country/world, but a pretty good year for me personally.” That pretty well sums up how I feel. The Trump administration and Congressional Republicans have been a garbage fire, working tirelessly to destroy the country and stymied in large part by their breathtaking, historic incompetence. But I’ve had a pretty good year.

A few years ago I was going through a rough stretch at work for a variety of reasons (among them my Mom’s declining health and eventual passing), but I feel like this year things really came together. I’ve spent the last two years working on a fun project (Xcode’s new build system, unveiled at WWDC in June), written in a new language (Swift) which I have been thoroughly enjoying, and I’ve been broadening my skill set in a variety of ways. In addition, I’ve been moving into a larger leadership role, which has been surprisingly rewarding. The surprise is because what I’ve always found most enjoyable about my job is building things and seeing them work, but the coordination and organizational parts of my job have been more fulfilling than I’d expected. While I’m still happy when I can carve out a day to work through a problem and code it up, the rest of it has been pretty cool too.

(By the way, if you’re a programmer who’s like me in that you primarily enjoy building things and seeing them work, I highly recommend embracing an automated testing development workflow, because it gives you great feedback and a sense of accomplishment to write tests and see them work. Even working on test infrastructure is fun and rewarding!)

At home we had an unorthodox set of vacations. In February our niece R and nephew J (on Debbi’s side) came to visit for a week, their first plane trip without their parents. I think they enjoyed their stay more than they’d expected; we mixed up seeing the sights with time hanging around at home, and also getting together with some of our friends with kids (albeit younger kids, which didn’t seem to make a difference). R is a couple of years away from college so we drove through UC Santa Cruz, and we had a big day going to Alcatraz and Ghirardelli. In June we went back to visit our families, and spend a few days at the family beach house (which is great unless it’s ridiculously humid). And in September my dad came out to visit for the first time in over five years, which was also fun. It had been long enough that we went to see a few things a second time, for instance the Monterey Bay Aquarium. I sure hope I’m able to make cross-country plane trips when I’m in my 80s!

Somehow I’m now 2-1/2 years into running regularly. I peaked at running 3 miles about 5 times a week (2 out of every 3 days), and decided that I needed slightly more off days, so I switched to running 4 days a week and worked my way up to 4 miles earlier this month, which works out to slightly more distance overall. My legs seem to appreciate the extra day off each week, and it gives me a little more flexibility when we have things going on during the weekend. Frankly it’s the podcasts I listen to which keep me motivated (thanks especially to Limited Resources and Magic the Amateuring) – if I fall behind on my running then I fall way behind on my podcasts, so in a sense I use my OCD to keep me going (though I honestly enjoy the podcasts too).

Our household has been stable, but with a pleasant development: I wrote a few years ago about how Roulette was traumatized by her three brothers passing away, but over the last year and a half she seems to have gotten over her grief and started enjoying life again. She doesn’t put up with Jackson’s crap and stands up to him on a regular basis. She and Sadie sometimes chase each other around (which is hilarious because each is easily the smartest cat the other has ever played with). And she’s started sitting on our laps and even sleeping with us at night. Rou is now 14 years old and is acting younger and happier than she has in years – it’s been a joy to see.

So now we’re having a quiet New Year’s Eve watching television, having eaten Chinese take-out for dinner, our cats snoozing around us. We’ve had fun times with friends and family this past year, and we’re looking forward to 2018 with the hope that it will be better for everyone.

Happy new year to all!

Twenty Years!

How appropriate given my relative quiet here that I missed my 20th anniversary of starting my web journal (which was yesterday). Since I still haven’t gotten around to importing my old entries into WordPress on this site, you can still read it from the beginning in all its hand-rolled 1997 glory starting here. (shudder)

Or you can read my entry on “Ten Years!” Or my long winded reminiscences on the early days of my blog.

The big difference between 10 years ago and today is the advent of social media platforms. Twitter was only a year and a half old a decade ago, and Facebook was a little older, but neither one had anywhere near the penetration they have today. I didn’t join Facebook until 2009, and Twitter maybe slightly later, so in 2007 I was still doing almost all of my online writing here.

Today, it’s much easier to make pithy comments (and a few pissy ones) on those two sites where the opportunity for dialogue and interaction is much greater. (Twitter is a pretty lousy platform for saying anything with any nuance, to be sure, but it has its uses.) Heck, I post links to my entries here on those sites since that’s where most people follow me.

I keep wanting to spend a little more time writing here – an entry a week – but it’s hard. Always so many other things I want to do, around the things that I need to do. It’s a different tension than in the old days; back then if I was busy doing stuff I didn’t have time to write, and if I had time to write I hadn’t been doing stuff to write about. Now I do stuff, take pictures of it, and post it on Facebook for my personal friends.

Anyway, cheers to 20 years of blogging. Or web journalling. 20 years ago I was still living in Madison and was over a year away from moving to California. 20 years from now I’ll be… geez, who knows? But hopefully still writing at least the occasional piece in whatever blog I have when August 2037 rolls around.