So far, by all measures, Ruby Mendicant University is on a fast track to success: With the funding drive for initial content creation fulfilled in a 10 day period, and 63 participants already passing the entrance exam with a few days to spare, I'm not worried about the level of interest or the feasibility of getting our first session off the ground. However, we've been making up the philosophy as we go along, and I think it's time to start hammering out some of the details of what role RMU should play in the community at large.
Public Products, Private Sessions
Because I accepted community funding, and because I'm a firm believer in open content in general, RMU is endebted to provide at least some public material throughout the course of its operation. You'll see the first of that in just a few days, when I release the entrance exam writeup. By the time the first session goes live, with the help of a number of participants, you'll also see some open source Rails code for doing online classroom administration tasks. Throughout the sessions, I can see where more and more opportunities to share things with the community will crop up. On top of all of that, as I retire problems and exercises from our program, they will absolutely be released under some sort of open content license.
However, with regards to actual sessions, I had mentioned that I was considering doing some publicly open sessions, and I think I want to step back from that a little. I feel like the manageable number of people that have been accepted into RMU so far makes it much more likely that we'll develop deeper and more meaningful connections together in a semi-closed setting. I want to grow our internal community slowly, and use the sessions as a means to get everyone up to a level playing field so that they can begin focusing on the projects they really want to get involved in.
In this way, RMU participants will actively engage in the community at large. We might have assignments to do code reviews of projects they're interested in. We might work together in groups to help come up with patches to bugs or wanted features in open source code. I will try to occasionally get us set up with guest appearances from notable open source hackers to do Q&A sessions with our students. We could do things like post transcripts of select meetings, and otherwise document our experiences and put them out there for anyone to use and learn from. But at the end of the day, RMU students will have a private and supportive environment to practice their skills in, alongside other likeminded folks.
An Intentional Community
While some folks will certainly do their three week session and move on, others are bound to want to stick around and keep ties with the folks they've met along the way. Currently, I'm actively encouraging students to make use of some general discussion channels to do ad-hoc study groups, set up projects, and otherwise connect with people in similar shoes as their own. I am hoping that our Alumni stick around after completing their sessions, so that they can help make new members feel at home, and share their experiences with others.
As the total number of people who have been through an RMU session grow, I can see us forming an intentional community centered on improving our craft. Only time will tell, but I can see potential that spans far beyond my initial humble goals for this project. So far, the level of enthuiasm among recently accepted students has been through the roof, and we're still months away from our first session. That tells me that we're on to something here.
The Dangers of Wild Success
It is important that we try to ensure that we don't become an exclusive or elitist group in any way. No one in the group has that attitude so far, but I'm afraid that the greater strides we make, the greater the risk we run of losing sight of our initial goals. I will say though that at least as it stands now, the entrance exam is not meant to be a rigorous test of skill. In fact, while I did ask a few people to make revisions, everyone who has submitted so far has passed. By having an entrance exam and selection process, I am only trying to weed out those who wish to lurk only, as RMU is a participants-only program. I also do need to know that all participants have at least a baseline understanding of Ruby, so that I don't spend several weeks flying over half of our participants heads.
Similarly, the final exam for sessions will in no way be a "certification" process. Instead, it'll be meant to recognize those who put in the necessary effort over the course to improve themselves to the point where they be productive, helpful members of the Ruby community. This is going to mean something different to everyone, and is highly subjective. I just want to recognize those that I feel have learned something from the program, as a very small token of appreciation for their hard work.
So, all of this is a long way of saying that if anyone ever shows you bias based on your inclusion / exclusion from the RMU program, you have my permission to punch them in the genitals. RMU is primarily about individual development, and only our students will know how much progress they've made.
Transparency
Despite my decision to keep our sessions closed to the public, I will be keeping my notes on our policies and overall progress public, so that I can benefit from community input, and from the next set of potential students who might wish to join us. I've already set up an #rmu-public channel on irc.freenode.net to interact with those who aren't yet actively participating in the program. Should it seem like a good idea down the line, I'll probably set up a public mailing list as well so that folks can ask whatever questions they want or give us suggestions for things that could be fun to do.
My hope is to make this program bend and shift significantly to meet the needs of our students, while keeping a few core values intact throughout. But like most everything else I do, this is all a giant experiment. Feedback is much needed, and greatly appreciated. If you've got a question or comment, just let me know.