Jim Weirich. Teacher. Mentor. Friend.

The other day, I tweeted

2:04 PM – 20 Feb 2014 – @gayleforce: My whole subset of the world is mourning w/me over @jimweirich today. What a wonderful person. Teacher. Mentor. Friend. Miss you already Jim.

I became acutely aware of the suddenness of Jim’s death when I realized:

5:43 PM – 20 Feb 2014 – @gayleforce: The last tweet from @jimweirich was ~24 hrs ago. That’s surreal. What a difference a day makes 😥
(Note: Jim’s last tweet was 5:33 PM – 19 Feb 2014)

Later I tweeted a couple of things I remembered about Jim.

I retweeted myself from 2009, a photo I had taken with Jim.

“7 Aug 2009 @gayleforce: http://twitpic.com/d3q8m – I got my #picwithjim Do you have yours? #erubycon”


And I tweeted a video I had taken of Jim’s laptop at CodeMash, because what he had done was so cool!

“9:34 PM – 20 Feb 2014 – Enjoyed @jimwierich showing me at codemash what he’d done with his macbook #MemoriesOfJim http://twitpic.com/dw5tt5

I was obsessively reading Twitter and Facebook that night. Fervently “favoriting” people’s tweets that I liked, and retweeting a few.

I felt inspired to MAKE something to try to express my feelings. Came up with something very simple, but I still like the creative in the simplicity.

10:13 PM – 20 Feb 2014 – Enjoying #MemoriesOfJim yet having a hard time w/what to do w/my feelings. Result: creative side I’ve not seen awhile http://pic.twitter.com/u29InCRCFO


Last night, I happened by the location in Columbus where my “#picwithjim” was taken. That place closed a few months ago. And the emptiness of that establishment hit me in a different, much harder way, as I felt the emptiness of a world without Jim, too.

Later last night, my friend and co-worker Dean Stautberg emailed me something he had been thinking about posting, but it was too long for twitter. So he hadn’t figured out what to do with that yet. I read what he wrote, and realized I felt exactly the same way. And I realized why I was having so much trouble knowing what to do with my feelings – because I hadn’t ACTUALLY expressed them. I tweeted observations. I tweeted memories. I “re-tweeted” others. On facebook, I “shared” what my husband had written onto my own timeline. Changed my cover photo to something I say is a “weeping angel.” There are multiple reasons for that, which may not all be that obvious. But even after all of those things, I had not really expressed myself.

I realized the first thing I said was on facebook

1:30 PM – 20 Feb 2014 – Miss you already, Jim. There are not words.

I had no words. But, now I’m going to try to use my words. I wish I could just write what Dean wrote. But that’s called plagairism. Here, finally, are MY words.

The software development community lost Jim Weirich last week. His death was sudden, and unexpected. I’ve experienced relatives who died from old age, or from long-running illnesses over the years, and was very sad.  But this is a whole different kind of grief. Not better or worse, just very different to deal with. Harder to process.

I’ve only experienced this kind of grief one other time. I was in Junior High. A boy 2 years younger than me. Our parents, and therefore we, had been friends since before either of us were born. A freak accident took his life a couple hours after we dropped him off at his house after church youth group that evening. The following days were spent listening to other kids share memories of him. And other kids pretending they were good friends with him, when they probably were not. And rumors, nasty rumors, untrue rumors emerged about the circumstances of his death. Junior High kids are not very mature.

My dear husband, James, came into our room the other day as I was getting ready for work and said “I need to tell you something before you read it on Twitter. Jim Weirich died last night.” I cried. After I’d had a few moments to process this a bit, I was worried that I was facing a day full of people trying to prove they all knew Jim, and justifying their heart-brokenness over the news.

It took me several hours before I could bring myself to read Twitter. I wasn’t sure I could handle what I would find. Once I did, I realized Twitter was full of people singing Jim’s praises. There were people who barely knew him saying very profound and true things about him. They did know him, more than they realized. There were people who know him way better than I did pouring out their emotions, too. All the things on Twitter were great. There were no egos. No “I knew him better than you did” stuff. It felt like everyone in the whole world was just grieving. And it was good.

People were sharing their photos and memories. They were talking about the first time they met Jim. People were expressing regrets. People were sharing thoughts on how we could all honor Jim going forward. People are posting tribute videos that they’ve made. And I began to think my words wouldn’t measure up.

After all, I don’t remember the first time I met Jim. I don’t remember the first words we said to each other. I’ve seen him speak several times, though I don’t think I could specifically name off any. And I’m still worried that any words I say are going to come off as justifying why I am “allowed” to feel so bad about his death, and why it has hit me so much harder than I ever would have imagined. But here’s what I do know.

Jim Weirich and Chris Nelson tech interviewed me for my first Ruby programming job. If I got this job, I would get to work with Jim directly!! OMG!! I should have been so nervous! But the entire time I talked to Jim, I just felt very comfortable. We talked about some specifics of Ruby. And we talked about ideas and thought processes, like how might I design a programmable thermostat? And I got the job. And I worked with Jim for maybe I couple years, I don’t even know the time frame for sure.

A few months later, my friend Dean came to work with us, too. Like Dean and I, Jim had a background in Java programming. And from this common background, he was a big part of our learning Ruby. Jim wanted to teach everyone Ruby! Our time spent working with him reinforced and drastically improved our approach to Test Driven Development, and making that an integral part of our development style. “Jim basically shaped our Ruby careers”, says Dean. I couldn’t have said that better myself.


I don’t remember my first interaction with Jim. But I do remember my last. At Codemash 2014, Neo had a pairing station set up at their booth. You could come and pair program with Jim. Having pair programmed with Jim in the past at work, I didn’t necessarily feel a need to participate. I didn’t wnat to take up his time, when I could allow other people who hadn’t had that experience have that experience. But at some point, when nobody else was there pairing with him when I walked by, he invited me to come over and pair with him. And I said “sure!” And that was my last real interaction with him. I learned some things from him about rspec-given that day. I also was able to see that I had so much more confidence in myself that day than I had when compared to my past self pairing with him years ago, when I questioned something I thought he was making more complicated than it needed to be. And he accepted my feedback with grace and humility, as always. And we discussed it like adults and ultimately came up with a compromise that I thought ended up a more readable, and less mathematically complicated code readable by people that aren’t so mathematically inclined. 🙂 How can someone be SO smart, AND so kind?

I’m glad that I actually paired with Jim that day, and can’t say “I wish I had”. I’m glad that I have photos of me with Jim, and can’t say “I wish I had that.” I’m glad that I can’t say “I wish I would have told Jim ____.” I have no regrets.


I changed my facebook cover photo to this “weeping angel” because the show sci-fi show “Dr. Who” had an episode about concrete statues called “weeping angels,” and Jim and I shared a like for that show. The sadness on the face of the angel in that photo also represents how I feel. The “weeping” represents the tears I shed the past several days. And the Angel is because I know Jim was a Christian, too, and is flying with the angels today. One of my favorite tweets, from someone I have never met:

8:58 AM – 21 Feb 2014 – ‏@pkananen: everyone rightfully says they want to be like @jimweirich. Jim would’ve said he was just trying to be like Jesus.

Another favorite tweet from another dear friend of mine summarizes how we can honor Jim Weirich:

7:18 AM – 20 Feb 2014 @aJimHolmes
Want to honor @jimweirich ?

0) Go learn something new
1) Share it
2) Make someone laugh
3) Be a kind person.

Jim was an inspiration to so many. He was loved by all. Even though no future Ruby developers will get the chance to learn from Jim the way I am so fortunate to have gotten to experience, I’m so happy to know that his legacy will live on forever with how much he contributed to software development. He is missed.

This has hit me so much harder than I expected. That still confuses me. There were so many people who knew him so much better than I did. I am within a couple hour drive of his funeral, but my heart is so raw right now that I don’t think I can bear it. And it’s not productive to go out of some self-imposed feeling of obligation. Instead, I’m going to give myself permission today to grieve in my own way, and in my own time. I’m going to spend time reading and learning more about Ruby today. And I’m going to reconnect with some former co-workers that I haven’t seen in awhile tonight. And I’m going to know that this blog post is enough, and that somehow, some way, he feels and knows the words I have written.

Rest in everlasting peace, Jim!


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: