Society of Children’s Book Writers and Illustrators (SCBWI)
A society for the creators and artists of the books we read to our children, SCBWI called on Up and Running to help them manage their 22,000 members, enabling every chapter and every member via enhanced functionality and communication options.
For SCBWI, a large non-profit organization established over 40 years ago with over 22,000 members, Up and Running built a new application to serve both as their public-facing informational website and as their membership management and billing tool. The new application provides each of the dozens of chapters of the organization with a chapter homepage and tools to assist the chapter leadership with managing the chapter and their own membership.
- The application is based on the WordPress platform since SCBWI had invested heavily into that framework. It makes extensive use of existing WordPress plugins to provide a large amount of out-of-the-box functionality; however, many of the plugins are extensively modified to align their behavior with the existing business processes of the organization. These modifications include:
- Customizations to an event management plugin, event-manager:
- Adding the ability to restrict registration to specific types of members
- Customizations to an event management plugin, event-manager:
- Adding a feature-rich system for allowing members to sign up for optional event workshops as part of the event registration process
- Adding special business logic for giving automatic discounts to certain types of members
adow
- Customizations to a member management plugin:
- Customizing the account address management features to support custom business logic for required address components and to allow for multiple addresses on an account
- Customizations to a member management plugin:
- Changing account expiration logic to include a grace period and custom business logic for determining the start of an account’s membership period
- Extension of the PODS plugin:
- Modifying the image uploader to permit customizations as part of the process
- Giving users the ability to draw a custom cropping region on the uploaded image for use as a thumbnail
- The application integrates with Authorize.net to provide automatic recurring billing for membership dues. New members are also able to sign up through the website.
- Up and Running constructed a search system to index and allow sub-second searching of a large number of member and member-related records. The search system makes use of MySQL's fulltext index type and uses a message queue system for indexing to throttle load on the server. Search pages on the main WordPress application interact with the search system via AJAX requests. A search system was designed to be independent of WordPress to avoid the performance overhead of invoking the WordPress framework on every AJAX request.
- Up and Running integrated the application with ConstantContact to facilitate the sending of bulk emails to subsets of the organization's membership. The code uses the ConstantContact API to send a list of member email addresses to ConstantContact. The application provides an interface for filtering this list of members based on customized criteria such as a member’s registration date and type. Once the list of member email addresses is synchronized to ConstantContact, the administrator can either use ConstantContact’s website to send a mailing to the list or they can use an interface built into the application to compose and send a message via the ConstantContact API.
- As part of the transition from the organization's legacy MSSQL-based application to the new LAMP-based application, Up and Running wrote migration code to transfer and remap the data from their old database into the WordPress database. This transfer posed several challenges, including:
- Dealing with encoding differences in binary data between Windows/MSSQL and Linux/MySQL
- Dealing with time zone and date format differences
- Implementing support for MSSQL's password hashing method at the application level to allow members' existing passwords to be usable in the new system
- Before contracting Up and Running to work on the project, SCBWI had worked with a developer who spent weeks learning SCBWI’s business and creating an estimate for the project, only to bail shortly after beginning work (most likely after realizing their estimate was an order of magnitude too low). Up and Running worked with SCBWI to rescue the project by phasing out the development required into manageable scopes of work and proceeding as efficiently as possible to keep costs contained. If there were many ways to approach a particular must-have feature, we helped SCBWI determine if scope was more important than cost so they could make good business decisions before development started.
- Building such a large application on top of WordPress was an interesting challenge for Up and Running. Much of the work could have been done more efficiently on a clean MVC framework, but there were legacy and budget issues to contend with that prevented moving in that direction when we took over the project’s software development. (All of this was discussed with SCBWI in detail.) Going forward, we’re helping them to create a more scalable and maintainable system in respect to their custom business workflows while using WordPress for the features that it supports so well. In the long run, this will improve their total cost of ownership since it’ll be easier (faster, taking less time to build a better solution) to support the current system and build out future features.
We invite you to browse more portfolio selections by clicking a logo below:
Logos owned by respective owners. Presence does not indicate a partnership or endorsement. Customers served directly, or through collaboration with other firms.