Download - Making Support Fun & Profitable: DrupalCon Portland

Transcript
Page 1: Making Support Fun & Profitable: DrupalCon Portland

Building Bridges, Connecting Communities

Meghan Sweet, Anne Stefanyk, Scott Massey, Michelle Krejci

Tuesday May 21, 2pm

Making Support Fun & Profitable

Page 2: Making Support Fun & Profitable: DrupalCon Portland

Introductions

Anne - Supporting the People in Support

Michelle - Onboarding & Auditing for Success

Meghan - Technical Support

Scott - Support Design & Management

Page 3: Making Support Fun & Profitable: DrupalCon Portland

Who's in the Room?

Page 4: Making Support Fun & Profitable: DrupalCon Portland

Drupal support is a continuation of building

out the website, adding features, optimizing, refining and updating.

Page 5: Making Support Fun & Profitable: DrupalCon Portland
Page 6: Making Support Fun & Profitable: DrupalCon Portland

Physical Needs

Clients: issues that impact their primary website objective

Page 7: Making Support Fun & Profitable: DrupalCon Portland

Physical Needs

Clients: issues that impact their primary website objective

Developers: need yummy food, beverages and a great work environment

Page 8: Making Support Fun & Profitable: DrupalCon Portland

Safety & Security Clients: need to be able to trust you and

communicate effectively with the team

Page 9: Making Support Fun & Profitable: DrupalCon Portland

Safety & Security Clients: need to be able to trust you and

communicate effectively with the team

Developers: need a gatekeeper or someone up the chain to turn to

Page 10: Making Support Fun & Profitable: DrupalCon Portland

Belonging Clients: Support routines help clients relax

Page 11: Making Support Fun & Profitable: DrupalCon Portland

Belonging Clients: Support routines help clients relax

Developers: team collaboration and collective learning

Page 12: Making Support Fun & Profitable: DrupalCon Portland

Esteem Needs

Clients: empowered with more knowledge & resources

Page 13: Making Support Fun & Profitable: DrupalCon Portland

Esteem Needs

Clients: empowered with more knowledge & resources

Developers: empowered by solving hard problems and working autonomously

Page 14: Making Support Fun & Profitable: DrupalCon Portland

Actualization

When support heads towards stress free, calm work...

support becomes fun and profitable

Page 15: Making Support Fun & Profitable: DrupalCon Portland
Page 16: Making Support Fun & Profitable: DrupalCon Portland

Survey of 365 IT managers found that of all projects: - 16% successful - 31% were impaired or cancelled - 53% were deemed "project challenged"

The CHAOS report

Page 17: Making Support Fun & Profitable: DrupalCon Portland

The WYSIWYG

Theme

Page 18: Making Support Fun & Profitable: DrupalCon Portland

- Content not available to Drupal, which likes to manage that sort of thing. - Does not scale. - Theme lives inside content editor's head. QUICK CHECK: turn off the WYSIWYG and see what happens.

Page 19: Making Support Fun & Profitable: DrupalCon Portland

Hide &

Seek PHP

Page 20: Making Support Fun & Profitable: DrupalCon Portland

- Cannot cache. - Cannot easily trace. - Does not export well.

QUICK CHECK: turn off PHP filtering

Page 21: Making Support Fun & Profitable: DrupalCon Portland

Secret Mission Modules

Page 22: Making Support Fun & Profitable: DrupalCon Portland

If it is not immediately clear what a custom module does, it could mean a black hole of support. QUICK CHECK: Sorry, there's not. Run some scripts that check for complexity and best practices. Then try good 'ole looking at the code.

Page 23: Making Support Fun & Profitable: DrupalCon Portland

The Codebase Hoarder

Page 24: Making Support Fun & Profitable: DrupalCon Portland

Uh oh. This developer never read any documentation ever. Proceed with caution. QUICK CHECK: Look at what modules are enabled, see if you can find them.

Page 25: Making Support Fun & Profitable: DrupalCon Portland
Page 26: Making Support Fun & Profitable: DrupalCon Portland

Yes. Yes, we do.

Page 27: Making Support Fun & Profitable: DrupalCon Portland
Page 28: Making Support Fun & Profitable: DrupalCon Portland

Until then... Look for shops or contractors with a View-to-Support mentality. Have one yourself. Put all config in code: - Features - Configuration - Role Export, Block Export, Strongarm, etc. Test your shit.

Page 29: Making Support Fun & Profitable: DrupalCon Portland

"Given enough eyeballs, all bugs are shallow."

Page 30: Making Support Fun & Profitable: DrupalCon Portland

Prevention is Better than Cure

Page 31: Making Support Fun & Profitable: DrupalCon Portland

Drupal is an ecosystem

Page 32: Making Support Fun & Profitable: DrupalCon Portland

Its dynamic. Timelines, budgets, servers, core/contrib, team's abilities. Deal with what you have and don't have Stretching it only makes it worse later.

Drupal is an ecosystem

Page 33: Making Support Fun & Profitable: DrupalCon Portland

10 Drupal Diseases

Page 34: Making Support Fun & Profitable: DrupalCon Portland

01. Overriding your overrides

02. Abandoning modular structure

03. Adding more hastily

04. Coding rather than training

05. Scattering code

10 Drupal Diseases

Page 35: Making Support Fun & Profitable: DrupalCon Portland

06. Features without a workflow

07. Patching without sharing

08. Not leaving a trail

09. High coupling

10. Ignoring api.drupal.org

10 Drupal Diseases

Page 36: Making Support Fun & Profitable: DrupalCon Portland

Follow the established development philosophy Play to your strengths and client's true needs Escalate when needed

Non-invasive procedures

Page 37: Making Support Fun & Profitable: DrupalCon Portland

What is sustainable? Avoid technical debt Both sites of the continuum are right / wrong sometimes

Moral compass of technical decision making

Page 38: Making Support Fun & Profitable: DrupalCon Portland

Most of response time is figuring out what's broken. Can I reproduce this reliability? Analyze causes/effects. Propose solution. Analyze cost/benefit.

Response time

Page 39: Making Support Fun & Profitable: DrupalCon Portland

Keep it simple, keep it sane. Ideally your whole team can deploy. Drush aliases and ssh config for the win.

Deployment

Page 40: Making Support Fun & Profitable: DrupalCon Portland

Keep it simple. If it can't be simple, make it

very clear.

Page 41: Making Support Fun & Profitable: DrupalCon Portland
Page 42: Making Support Fun & Profitable: DrupalCon Portland

Run the table. Don't let it run

you.

Page 43: Making Support Fun & Profitable: DrupalCon Portland

5 "P"s Proper Planning Prevents Poor Performance

Page 44: Making Support Fun & Profitable: DrupalCon Portland

The 3 "R"s: Read it, wRite it, Repeat it.

Page 45: Making Support Fun & Profitable: DrupalCon Portland

Support Design

ITIL/ITSM -Strategy -Design -Transition -Operation -Continual Improvement

"Build Quality into the process." -W Edward Deming

Page 46: Making Support Fun & Profitable: DrupalCon Portland

Design Specifics

“Do nothing that is of no use” -Miyamoto Musashi

-No PM Workflow -Can your SE draw the process? -Get a PSA application -Monitor & Automate

Page 47: Making Support Fun & Profitable: DrupalCon Portland

Contract Design -Deliverables are "achievables" -Risk is your guide for agreement type. -Templates, not snowflakes

(menu: the vortex in atlanta)

Page 48: Making Support Fun & Profitable: DrupalCon Portland

-Empower Team -Don't ignore burnout

Building a Successful Brigade

Page 49: Making Support Fun & Profitable: DrupalCon Portland

Lightning Round & Questions

1. What do you love about support? 2. "I would do anything for [client] love, but I

won't do that." 3. What is your most awesome/needed tool? 4. What is your biggest challenge/success?

Page 50: Making Support Fun & Profitable: DrupalCon Portland

Building Bridges, Connecting Communities

Evaluate this session at:portland2013.drupal.org/session/making-support-fun-and-profitableThank

you!

What did you think?