NY TECH FOR GOOD

#1

bit.ly/1bCHYd0

Process & Development Best Practices for Non-Profits

  • Goals
  • About Us
  • A year ago: Problems!
  • Change: Silos
  • Change: Automation
  • Change: Priorities

Goals

  • Us, in progress
  • Technological panic
  • Pick one thing
  • Come back to us!

About Us

  • DoSomething.org: Largest org for young
    people & social change
  • Members: 2.2 million young people (13-25)
  • Platform: Drupal & friends

Do Something: A year ago

  • Big old slow-ass Drupal site
  • Frustration
  • Technical debt
  • Loose (missing?) process

Problem: Outsourced development

  • Black-box products thrown “over the wall”
  • Less institutional knowledge → more technical debt

Problem: Loose dev & deploy workflow

Problem: Lack of Drupal knowledge

  • “I wish Drupal had a theming layer.”
  • 250+ modules
  • Missing content strategy

Problem: Unhappy developers

  • “90% of my time wrestling with the platform”
  • Technical debt → Unhappiness
  • No way to attract talent!
  • No way to retain talent!

Introducing change

1. Destroy the Silos

...One step at a time

Silo deets

  • Org-accessible issue tracking system: Trello
  • Code review with Github
  • Asynchronous chat: HipChat
  • Think lean: one change at a time, with feedback

Silo deets

  • Org-accessible issue tracking system: Trello
  • Code review with Github
  • Asynchronous chat: HipChat
  • Think lean: one change at a time, with feedback

Silo deets

  • Org-accessible issue tracking system: Trello
  • Code review with Github
  • Asynchronous chat: HipChat
  • Think lean: one change at a time, with feedback

Silo deets

  • Org-accessible issue tracking system: Trello
  • Code review with Github
  • Asynchronous chat: HipChat
  • Think lean: one change at a time, with feedback

2. Automation

Automation deets

  • Jenkins and Wercker
  • Test coverage: Behat, PHPUnit, Cucumber
  • Hubot (George)
  • HipChat integration

Automation deets

  • Jenkins and Wercker
  • Test coverage: Behat, PHPUnit, Cucumber
  • Hubot (George)
  • HipChat integration

Automation deets

  • Jenkins and Wercker
  • Test coverage: Behat, PHPUnit, Cucumber
  • Hubot (George)
  • HipChat integration

3. Prioritize

  • Visualize your processes
  • Reduce inventory
  • Disciplined sprint planning
  • Matrix teams

What's next for you?

  • Pick low-hanging fruit: Silos, Automation, Bandwidth
  • Try one of these solutions
  • Tell us how it's going!
  • Material for future Meetups

Thanks!