A brilliant developer, a passionate teacher, and a wonderful person.
Jim authored widely used software through his significant contributions to the open source community and as a consultant working with various companies. He was an active participant in the software meetup community, and provided advice and mentorship to countless developers.
Everyone knew Jim spoke at conferences throughout the world, but perhaps his greatest impact was felt in the moments after he exited the stage. When other developers would approach Jim at conferences with questions, he wouldn't even hesitate. Not only would Jim welcome their questions without the slightest hint of condescension, he would spend hours working with them, explaining concepts that were puzzling them and offering his advice. Through his teaching he inspired many, and his legacy has lived on since his passing in 2014.
Jim was an amazing man, husband and father. That doesn't say nearly enough about the man, friend and teacher he was. He had a true curiosity about everything. He read encyclopedias as a child just to learn. He truly cared about others and would spend as much time with you as you needed. He was filled with joy. Joy was his attitude toward life. You never saw him without a smile on his face and it was genuine. His heart overflowed with love for others and love for his Lord.
So many people attribute their getting into Ruby to the infectious excitement that Jim displayed for this language. Back in 2007, EdgeCase was less than a year old. It was an exciting time as Rails was gaining initial traction in the marketplace. There were finally more than one or two people at Columbus Ruby Brigade who would raise their hands and say they were getting paid to program in Ruby.
We coordinated a single day Ruby Code Camp and Jim came up with many other rubyists from Cincinnati. My co-founder came up to me at some point during the training. Bouncing up and down with a huge smile on his face, he said something like, "How cool would it be if we could work with Jim!"
We didn’t think it would be possible, but we did get the chance to work with Jim and looking back on it now, I am very grateful to have had the opportunity to work with him, attend his training sessions, be trained with him, collaborate with him, and to hear from clients about the impact he had on their teams.
Jim made everyone around him feel comfortable, important, and encouraged. Many of us are inspired to be more like Jim. I know, personally, that my heart will rejoice when I see him again.
Jim Weirich and I were dear friends, and that is the measure of the man. Which, of course, sounds simple, but it isn’t. Far from it. Jim and I only saw each other, at best, every other year, and for less than a day.
But if you ask me, he was a dear friend. Which is entirely due to the man he was — you couldn’t help think of him that way. When you ran into him, you became more at ease, you knew that you were going to learn something new, and fascinating, and joyful. You knew that you were going to feel 9 years old for a little while. You knew that you were going to be asked detailed questions about what was going on in your life, and he was going to actually listen to the answers. You knew that he cared. And even if you only met him once, you would consider him a dear friend.
And if you asked Jim, he would probably say I was a dear friend, too. Which is entirely due to the man he was — his love for people, for sharing, for celebrating, for collaborating, was so enormous that he considered everyone he met a dear friend.
To me, that is the measure of Jim Weirich. He was a great mentor and programmer, a powerful contributor to our professional landscape, a person who helped shape this generation of coders. And those are fantastic accomplishments. But the measure of the man is that you could not help but love him, and that he could not help but love you.
One of my favorite memories of Jim was the last time I got to see him. I had the job of manning our company’s booth at the Codemash conference over two days. Jim spent more than half of his time there so I wouldn’t have to do it by myself. It was a joy to get to sit and talk to him for that long. I told him that one way I described him to others was this - if there were a Mount Rushmore of Ruby, Jim would be on it. He laughed at the thought but didn’t dispute the notion either. Over the course of two days, I also got the pleasure of seeing Jim interact with people who came up to the booth. He kept showing them his recent project - a script that emitted Tardis sounds from his laptop while the Apple logo, covered over with a Tardis sticker, was made to pulse in rhythm.
The theme of our booth was pair programming. People could pair at displays arranged tete-a-tete style and mirrored to a large screen monitor that passers-by could see. Toward the end, someone and I started pairing on a particular problem I was having with a tool I was writing. It was pretty tricky and pretty soon, others started swapping in and out. The conference was wrapping up and most booths were torn down, but we had a bunch of people gathered around ours watching this problem being solved. During this time, Jim never swapped in to pair, but he was paying attention and offering advice along the way. When the next Monday rolled around, I got an email from Jim. He had taken his time over the weekend to solve the problem just because it interested him. Pretty much that whole two day experience was Jim in pure form - teaching, interacting with the community, programming, laughing.
Jim made lasting contributions to the software community through his open source work. Below are a few of the projects Jim helped make possible.
Most developers have used Rake, even if they weren't aware of it. It's a build automation tool for Ruby, providing the utility of Make for Ruby developers. Rake has been part of the Ruby standard library since version 1.9.
Jim was one of the developers who contributed to the creation of RubyGems, the Ruby community's gem hosting service.
Another very helpful tool Jim contributed to the community is Builder, which makes it easy to generate XML markup using Ruby.
Designed for people new to Ruby, the Ruby Koans tool has been incredibly helpful to many developers as they begin to program in Ruby, and demonstrates Jim's commitment to software education.
Another learning tool built by Jim is Git Immersion, a series of challenges and lessons to help developers become more proficient at using Git.
To say Jim excelled as a presenter is an understatement. He had an uncommon ability to explain complex topics in a way that made them approachable. It was this gift that made him such an influential person, especially in the Ruby community. If you regularly attended technical conferences, you saw Jim.
Ruby Conf 2012
Big Ruby 2013
MountainWest RubyConf 2009
Acts As Conference 2009
Ruby Conf 2009
Jim spoke at dozens of other conferences and meetups. You can find many of those talks on the Jim Weirich Confreaks page.