Since December 2010, I've been working directly for the Ruby community on a full-time basis. Monthly contributions from community members help make that possible. If you like what I'm doing and want to support it, please find the PayPal subscribe button at the bottom of this post. Currently I have 69 subscribers for a total of $696/mo before PayPal fees. This is not yet nearly enough to live off of, but does help offset my expenses.
RubyGems Work
A couple weeks ago I volunteered to help shore up the RubyGems documentation effort, working on the RubyGems guides in particular. However, it's been slow going because I'm so busy with many other things. I still plan to work on this eventually, hopefully finding time for writing some guides in August. Between now and then I will still review and commit their patches as they come in. The guides site is a simple jekyll static site hosted on github, so it is very easy to contribute to.
Want to help but not sure where to start? Tickets #3 and #4 only need a bit of work before I can merge something, so that's probably as good a place as any to dip your toe in.
MiniTest Helpers
With the exception of mocking frameworks, I typically don't go beyond Ruby's standard library to meet my testing needs. That means that over time I've been building up a test helper file that is gradually growing with things I find to be generally useful. As a fan of citrusbyte/contest on Test::Unit, this does something similar for MiniTest while adding a couple other features as well. To some extent it is a duplication of MiniTest::Spec, but doesn't load in the assertion syntax and has some other important difference I can't remember.
I am thinking of possibly releasing this test helper file as a gem, but not in the traditional sense. Instead, the gem would set up something like a minitest-helper script that could be used to generate a helper file locally rather than requiring these helpers directly from a library. This is the workflow I'd prefer, so that this helper just starts as a base and then gets built up as your project goes on. It will also make it so that you never need to worry about versions since you don't actually depend on my gem. If that idea interests you, please let me know and I'll get a gem out.
PuzzleNode
My main focus for the last several days has been on preparing the next batch of PuzzleNode problems. Rather than sourcing puzzles from our entire student body at Mendicant University, we're taking a more curated approach this time. I came up with the basic idea behind all four problems, and one of our instructors-in-training, Andrea Singh (@madebydna), has been helping me flesh them out. We've tried to create problems that encourage the use of object oriented programming, but they're still very much language and paradigm agnostic.
The puzzles will be released to the public on July 15th for the next Mendicant University entrance exam. My paid supporters as well as the Mendicant alumni network will get access to them some time this week to help test them and shake out any problems before they go live.
Mendicant University
We have reviewed and accepted proposals for twelve student projects to be worked on during our July core skills session. We've got some folks building games, some building developer tools, and some others even building educational programs. It's the usual mix of awesome ideas, so be sure to check out the results at the end of July and see what comes out of this session.
Andrea and I have our curriculum fleshed out for the course, we just need to prepare some writeups. We don't publicly discuss exercises in detail until the sessions are completed, but we are thinking of doing something with FFI for our integration problem, something to do with Train games for the challenge problem, and possibly a parsing problem for the academic problem. The community service project will as usual, feature a range of things that can be done to help out the school, including work on university-web, puzzlenode, and other things.
Software Development for Beginners (Training in New Haven, CT)
Jordan (@Jordan_Byron) and I launched the registration page for our "Software Development for Beginners" course intro session last week, and we'll be running the session with over 10 people tomorrow (6/6) at the SeeClickFix offices downtown New Haven. This should be exciting because it'll be the first time that I try to teach a group of raw beginners about how to write code. Andrea helped us a lot with forming some ideas for cool demonstrations we can do, so I'll be sure to report back next week with how the first session went.
Supporters Network
The Mendicant supporters network is shaping up to be interesting and useful, even if we haven't quite figured out what to do with it yet. Since the last progress report, we've traded a few emails on the mailing list doing a quick code review for one of the supporters. I also want to use it for bouncing ideas off a smaller group of folks who are supportive of my work before making public commitments. Over time, I think that this network will become something of value in of itself for those that have been making monthly contributions to me, but for now most folks there have reassured me that these semi-regular updates on my blog is enough to keep them happy. That means they're really nice people :)
Want to Contribute?
If the things I'm working on sound worthwhile to you and you want to support it, please subscribe! It will help me keep doing good stuff for the community without having to focus too much on making ends meet. I've been doing this since December but only recently started accepting funding, so it will really help me counterbalance several months of burning through my savings.