So here is the first one, review of an extension! I have selected this one because we recently used it in a project and expect to use if many times in the future. Each review subject can score a maximum of 5 stars (brilliant) and a minimum of 1 star (not very nice). We thought a review should be easy to read and concise, so we decided we limit ourselves to max 3-5 sentences per subject.
Recurring Offline Payment
More information on the extension is here : http://civicrm.org/extensions/offline-recurring-payment. The module has been developed by Rajesh and the code has been updated for the extensions framework by AndyW at Circle Interactive to support Drupal 7 and other CMSes. I have reviewed version 1.4 of the extension.
My score is 3 stars. Good documentation in the blog post about the extension. Information about licensing is not clear, refers to CiviCRM page. No installation information. Could do with a little more attenion in my opinion.
My score is 4 stars. From a Dutch perspective closer to requirements of NGO's than CiviCRM core Pledges. I will always introduce this extension to Dutch customers dealing with recurring payments. It does only cover the bare basics (so not 5 stars), but it does that well in my opinion.
Code QA ****
My score is 4 stars. I find it hard to give my opinion about someone else's code....but as it is for a good cause, fair enough. Looks like sound and sensible CiviCRM code. Could do with a little more documentation in the code perhaps, some documentation was left behind when copying code from other parts of CiviCRM.
Ease of use ***
My score is 3 stars. Basically it simply works. From ease of use I think it could do with a report that lists what has been generated in the scheduled job. I do get an error when I add a recurring contribution because a field name does not agree with the schema (next_sched_contribution is actually next_sched_contribution_date in the table). That is fixed quickly enough as a developer, but is pretty bad when you are not.
Really useful extension that could be used as a basis if you need richer functionality.