Rails Excellence mailing list
December 5th, 2009
A while back I asked if we need a maturity model or excellence in Rails. There is a lot to be done in this area I’m sure but the first step for me is opening up a basic discussion forum. All I want is for the conference hallway chats to continue throughout the year and be open to more people. With that I’ve set up a rails.excellence mailing list on Librelist. All you need to do to sign up is send an email to rails.excellence@librelist.com and you’re on. I hate google & yahoo groups and I’m thankful that Zed has put so much work into Lamson & Librelist and made it available. There are archives but it’s still kind of rough. Signing up early is the best way to ensure that you don’t miss out on the good stuff :)
Signing Up
The way Librelist works is you just send an email to the list and you’re on, there’s no explicit subscription process. This means that if you want to join up you’re going to need to send an email! It can be whatever you want of course, but I’d be interested in seeing an intro email that includes how you’re using Rails and what challenges you face.
For reference, here’s the first email I sent to the list. It contains my general idea about the list and a few guidelines:
Hey everyone,
I’ve spent a lot of time recently thinking about how to achieve excellence in my work as a Rails developer. There’s a lot to keep track of. You need to have a thorough understanding of Ruby and Rails to be sure, but excellence goes way beyond that, especially working in a team environment. You need to stay on top of the latest libraries that are constantly being created and updated. You need to follow current trends for practices such as testing and version control. You need to be aware of new technologies that originate outside of the Rails world. Most importantly, you need to figure out how to incorporate all of this into your daily work.
One of my favorite things about being a Rails developer is what a cool, talented community we have. I go to a few conferences each year and always come away incredibly energized and with a million new ideas bouncing around my head. I owe it all to the fact that in a couple days, I’m able to directly interact with hundreds of people and learn what’s working for them, what’s not, and what cool new stuff they see on the horizon. And you’d be amazed at the dysfunction people will admit to once you feed them half a dozen beers :)
I moved away from San Francisco about a year ago. While I’m happy with the move, I sorely miss the ability to bounce questions off of ridiculously smart people who are constantly pushing the boundaries of how they use Rails. The motivation for this list is selfishly simple – I want to re-create that discussion forum online so I can continue to have those interactions and still live near the beach. Of course a mailing list won’t be the same as a bunch of hackers talking shop over beers, but the upside is that those conversations will be opened up to a broader audience. And of course there’s no rule that says you can’t pound a couple beers while talking on the list anyway!
With that, let me talk about some general guidelines I’d like the list to follow. I’m hosting the list on librelist which means you can talk about finger-painting ponies if you really want to. These are just some of my thoughts on how to build and maintain a strong signal-to-noise ratio. I encourage you to respond with your thoughts.
Beginning questions are okay, advancing questions are better
Notice I said “beginning/advancing” rather than “beginner/advanced.” There are plenty of resources to help get you started with a new tool / process / whatever. If you want to know how or why to use MongoDB, the rails.excellence list probably isn’t the place for your question. If you want to know how to migrate your Rails app over to MongoDB, or want to know what parts of your app might be good candidates for moving, then this *is* the right place.
Holistic approaches and multi-disciplinary concerns go here
Related to the above, this isn’t the right place for discussing the subtleties of using a certain tool or technique. Technical details of using Cucumber should go on the Cukes list. This is a bit fuzzy though, because I think that rails.excellence would be a good place to talk about how to incorporate a Customer into the story-writing process, for example. Basically if your question is focused on a single topic, it’s better to take it to a list dedicated to that topic. I want a higher level of discussion here, one where we figure out how to combine the available tools and techniques to use them effectively. http://www.railsmaturitymodels.com/practices has a good list of topics that I think are relevant to this list (and of course it’s not limited to only those).
Rails should be a core technology
This probably goes without saying but I’ll say it anyway. If you’re not using Rails at all, feel free to read but please keep your contributions to a minimum. The whole point of this list is to advance the state of the art with respect to Rails development. Doesn’t matter to me whether you’re a boutique shop, Twitter, or a corporate dude glueing together enterprise apps with Rails. As long as you’re using Rails as a core technology at your work and want to share your ideas and practices and get feedback from others, you’re welcome here. Just make sure the topics tie heavily into Rails.
You should be an influencer
My ultimate goal with this list is one of positive transformation at the personal, organization, and community levels. If you’re a team lead, great! You’re in a position to distill the knowledge gained here, apply it, tweak it and deliver feedback. If not though, don’t fret. Anyone can initiate transformations within a team or organization. I recommend picking up the book “Fearless Change” whether you are in a position of power or not. Subversive influence is more fun anyway. The point is that none of the info here will do you much good if you keep it trapped in your head. Share it with your team. Adapt it to your situation. Share your insights with the community. Be a part of the leading edge of Rails Excellence.
Conduct
I have a hard time believing that a list with “excellence” in the title, and is seeded with some of my best friends in the Ruby/Rails world (spam invites coming shortly :), could devolve into flame wars and mud-slinging. At any rate, this guideline is perhaps more for your benefit than the list’s. If you come into a forum of smart, creative, giving people and act like a dick, you’re going to alienate yourself from an awesome community and queue yourself a bunch of bad karma.
That’s it for now. Thanks for checking it out. I hope that this list will become a good resource for budding & experienced Software Craftsmen. In the words of Bill & Ted…
“Be excellent to each other, and party on dudes!”
Pat