The last three weeks have flown by as fundraiser engineering starts to heat up.  Aside from the usual bug fixes and cool new features, we added a new member to the team, made some modifications to our development process and began tackling one of our biggest challenges this year: integrating with a new payment service provider.

Highlights

  • Jeremy Postlethwaite joined the engineering team and is quickly getting up to speed.
  • We had our first ‘tech showcase’, where we demoed all of the functionality we’ve developed to date*. The showcase provides an opportunity for project stakeholders to see progress in near real time, which allows for better decision making as well as more effective change/risk management. This will be a regular part of our sprint wrap-ups.
  • First production-level test of the RapidHtml system, which is very light-weight solution that allows for quick html-based credit card form development and provides template tokens for dynamic form elements. This was tested during last week’s weekly fundraising test, when we tested the efficacy of collecting the donor’s billing information from the landing page rather than on the credit card form.
  • The Mingle engineering team over at ThoughtWorks Studios invited us to visit and see what the their development cycle is like. Seeing what their processes are like proved valuable. It hammered home that ‘agile development‘ is more about the mindset and values found in the Agile Manifesto than about any specific development practices. We will continue to collaborate with their engineering team to share information/ideas and hope to have the opportunity to do so with other engineering teams in the future.

Sprints 5 & 6 wrap up

  • Increased logging of changes that happen in CentralNotice, including interfaces and filters to search and review those changes.
  • Added an API to ContributionTracking which allows us to bypass the interstitial page that a donor gets sent to prior to donating when they choose to donate via PayPal
  • Began abstracting and refactoring DonationInterface (links to current development branch) in preparation for adding an additional payment provider.
  • Bug fixes to the RapidHtml form delivery system in the DonationInterface extension
  • Bug fixes to our contribution auditing framework (which ensures our contribution records in CiviCRM align with accounting, etc.).
  • Ongoing operations work improving resiliency and reliability of the fundraising architecture.

You can view sprint 5 and sprint 6 in Mingle*, and view our notes from the retrospectives.

Sprint 7 kick-off

For Sprint 7, we are going all-in on integrating with Global Collect, a new payment processor which will allow us to take donations in more currencies and with more region-specific payment methods. Work will continue abstracting/refactoring the DonationInterface extension, as well as building a payment notification listener compatible with Global Collect’s ‘Payment Status Communicator’.

Get involved

If you are interested in getting involved, help smash our open bugs and/or visit us on IRC in #wikimedia-fundraising.

* For access to Mingle, log in with username/password of guest/guest.

Arthur Richards
Fundraiser tech lead