Jim was an amazing guy, and I wish I had spent more time talking with him.
There was a time several years ago when the Ruby community was very vibrant and energetic, and in all that energy, just a little hostile to newcomers. There was a lot of hype about the best new testing methods with RSpec and this new thing called Cucumber, 100% paired programming all the time, 100% TDD, and 110% test coverage, fat-model, skinny-controller, decorators and service-based architectures, and on and on. These were all good things on the path to quality software as a community goal, but to a newcomer, it was overwhelming. It was the fanatical attitude and the all-too-common phrase, "you're doing it wrong."
I had already been doing Ruby for a couple years when all of this hype came to a peak. I remember pushing back over dinner table discussions with various speakers at conferences that this attitude was hurting the community. It was erecting a barrier to beginners. We were telling people they couldn't just build something that did something. They had to do it this way, using all these tools and methodologies. Unless you know and fully understand the purpose and constraints and context for what someone is building, how can you tell them they're doing it wrong? Where was the support for learning progressively? What happened to the joy of just building something? After all, this is where Ruby, as a language, shines!
I bring all this up, because I met Jim at one of the first Ruby conferences I had ever gone to around this time. Though I had been doing Ruby for a couple years, I was relatively new to the conference-going community, and so not part of the "in-crowd". I remember the highlight of that conference for me was talking with Jim.
He seemed not to care for the existence of any sort of clique while simultaneously being its unknowing leader. He was very approachable and friendly. But more importantly, he was a great listener and thinker. I remember talking with him about my views on TDD and pair-programming (at the time, the view that "it depends" was controversial), and how the hype was hurting the community. He was one of the few who gave it considerable thought, and after discussing it, even encouraged me to give a talk. As someone new to the conference and public developer community, and outside the speaker in-crowd, this was very encouraging.
I had been asking what happened to the joy of just building something in the community at that time, but I can honestly say, Jim never lost it.
As a matter of fact they do. I'm very close with his family, and when I spoke with them yesterday they were looking forward to reading the many threads and posts about him on this and other websites. I can only hope they'll be strong enough to ignore the cruel remarks made by heartless people like you.
Jim Weirich was a real gem. Friendly, approachable and chatty, he didn't have that aloofness so unfortunately common to some "personalities" in the ruby commmunity. In the last couple of years he had been interested in controlling drones with ruby, regularly posting articles on the Neo blog and speaking about it at conferences. It was my great pleasure to spend an hour or so with him in Singapore last year just chatting about drones, his argus control library, and applications present and future - he was a genuinely interested, interesting, friendly man with a fantastic, giving spirit.
He was one of the founding fathers of what I like to think of as the "real" ruby community and will be sorely missed.
As the author of Capistrano, we leant on Rake a great deal in the new version, Jim was amazing in helping us through some of the weirder parts of the integration, and always happy to discuss the pros and cons of our planned approaches. I hope that the community can select someone to replace him. He's done great work for the community.
Jim was a silent star of the Ruby community. Some newer Rubyists might not see how important his work on Rake was on Rubys road from a toy language to a serious development environment. Also, Rake was (to my knowledge) one of the first libraries that aggressively leaned on Rubys block syntax for writing DSLs.
On top of that, he was well known for his talks and ability to explain things.
A recommended read: an early statement on Ruby on the C2 Wiki (scroll down to "User stories")
Just realised how often when working on some code I will try to contact the original author based on git blame... but in the future, a lot of those people won't be around anymore. I think we usually take for granted that people working on the same project will be here - but in a couple of years "anyone who worked on this module still alive?" may be depressingly more common. Not even from the development perspective, but working on the same thing as someone who's not alive anymore. Apart from long-term or famous construction projects, I can't think of many non-art places where the author is preserved in the history so permanently as in a source version control.
Not to detract from the work that this man (or anyone else) has done, but it's very rare for code to survive for very long without an active maintainer before it succumbs to code rot.
Either someone else steps up to the plate and actively maintains the software, or something else will replace it. Source control makes it easier to revisit the past, but it doesn't ensure that the past will continue to stay current.
I experienced this talk in person and, for me, it was the highlight of the conference. "Highly technical. Extremely Pointless. Worst Ruby Code Ever."...and 100% amazing (though the American Sign Language interpreter, for whom signing this talk appeared to be a Herculean effort, might have a different opinion).
I met Jim at Rocky Mountain Ruby a couple years ago. He was friendly, easily approachable, and had that hacker humor that is so fun. You could just tell he loved everything about Ruby, hacking, and teaching and learning from others.
I met him at BigRuby in Dallas, he was kind, knowledgeable, and incredibly intelligent. He was interested in a very wide range of things, and I really enjoyed discussing metallurgy, blacksmithing, controlling drones, ruby, amongst other things. He was always willing to help, even if the problem was beneath him. Rest In Peace Jim, you will be sorely missed.
I met Jim through a friend, and I've seen him at numerous conferences. He was inspiring to be around. His energy and enthusiasm for programming was contagious. Just hanging around the guy was great. I played my first D&D game at a conference with him, and a great board game called Cosmic Encounters. I always looked forward to seeing him. It is a testament to how great he was, that people could have such little interaction with him and he could have such a big impact on their lives.
A great person and developer who will be dearly missed. He was too young, but sadly is a prime example for the risks factors of heart disease. With overweight like that over a long period of time, he most likely had blood pressure and cholesterol issues, along with not much physical exercise. Of course there are a ton of people in similar condition who get to be much older, but still, risk factors are risk factors.
Jim, rest in peace brother ! you will be cherished forever along with all the greats. You have joined the ranks of the fallen heros of both our craft and otherwise. A life well lived, full of joy, full of love.... we will miss you.
I would say it is appropriate for any of you who have had the pleasure of knowing Jim to add some information to his Wikipedia: http://en.wikipedia.org/wiki/Jim_Weirich for those of us who didn't meet him.