Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Managing CSS in a Sate of Flux

Managing CSS in a Sate of Flux

Over the last twelve months at BugHerd, we've changed the way we write CSS three times. From Sass to inline and then eventually to css-modules, we've had to deal with immense change.

This talk was presented at Be Responsive in Melbourne. The talk is not technical - it doesn't cover the technical changes. I spoke about the key learnings from how we dealt with change; leadership, honesty, failure and progression.

James Coleman

February 09, 2016
Tweet

More Decks by James Coleman

Other Decks in Technology

Transcript

  1. MANAGING CSS IN A STATE OF FLUX JAMES COLEMAN //

    BE RESPONSIVE // FEBRUARY 2016
  2. NOT SPECIFIC TO CSS • This deck isn’t specific to

    css • Applies to little and big changes
  3. HAVE A VALID REASON WHY WE NEEDED CHANGE • Excludes

    changing for no reason other than personal interest. • We needed to solve: • Global state • Sass Errors and abusing sass features • Modularity
  4. CHANGE CAN BE HARD • Affects others in your team,

    not just you • A lot to think about for everyone • Fear of a worse future • Fear of the unexpected • Fear that new is hard • Uncertainty
  5. BE A LEADER • If you want change you have

    to lead change • You might not be able to solve it yourself, so you need to lead your team to a solution • Because you’re ‘senior’ doesn’t mean you’re a leader.
  6. 8 STEPS TO LEAD CHANGE DR JOHN KOTTER, BIG WIG

    AT HARVARD • Dr Kotter is Professor of Leadership at Harvard Business School • 8 Steps are from ‘Leading Change’, 1995. • http://www.amazon.com/Leading-Change- With-Preface-Author/dp/1422186431
  7. 1. Create a Sense of Urgency • You need people

    talking about the change, not just you. • Motivate a sense Use motivation to create urgency • Take a step back - how does this change positively affect the team • How does this change affect the bottom line - why do you need to get there ASAP
  8. 2. Build a Guiding Coalition • Get others on your

    side • A Coalition should be a mini team of leaders • It’s okay to share leadership responsibility • Ask your coalition for explicit commitment to the cause • Ensure you have a mix of employees - designers, developers, managers.
  9. 3. Form a Strategic Vision and Initiatives • Determine what

    values are essential to your change. Make them known. • Why does this change help the teams future • Where do you see the team as a result of this change - why are they in a better spot?
  10. 4. Enlist a Volunteer Army • Different to rallying a

    coalition • As people start helping and getting behind the change - make their movements clear to others in the team • Use the momentum generated to guide the rest of the team
  11. 5. Enable Action by Removing Barriers • You need to

    remove barriers for others in your team • Includes organisational barriers (‘this team isn’t allowed to change tech’) and red tape • Technological barriers (‘I don’t know command line and i dont have any way to use a preprocessor’)
  12. 6. Generate Short-Term Wins • Highlight early success • Set

    small, achievable goals • Set individual goals for those who are struggling with adopting any part of the process.
  13. 7. Sustain Acceleration • Never declare victory too early; if

    the result has been achieved, strive to make it better. • Persist with the change • Quick wins are only the beginning
  14. 8. Institute Change • Make change a part of your

    culture • Make successful changes a talking point • Recognise your entire teams effort • Continue the success past the initial change
  15. WHAT IF NOBODY CARES? • Understand why: • You’re not

    selling the idea well enough • The idea is terrible • It’s a solution to a problem no one else has
  16. BE HONEST • Honesty to your entire team is important

    • Use your judgement to arming when you’re wrong • Use your honesty at the right time to instil confidence in your team • Never use honesty to compromise confidence
  17. LEARN • Take every opportunity to learn; learn from those

    you’re leading • Learn how your team responds to leadership • It’s okay to ask questions of yourself or your solution • Don’t act like you know everything; don’t be a jerk!
  18. WE ALL WANT THE SAME THING • At the end

    of the day, you’re all in the same boat, staying afloat.
  19. FAILURE IS OKAY • Small or big failures are okay

    • Admitting you failed is okay; it shouldn’t get you fired • We have failed a lot - so has everyone else • Sometimes failing is fast, sometimes slow.
  20. TAKE RESPONSIBILITY • If you know something has gone wrong,

    take responsibility - even if it’s not your fault • Make change a smooth process • Make co-workers confident you will stick your neck out for them, they will hopefully do the same when the time comes
  21. Failures have been errors of judgment, not of intent. Ulysses

    S. Grant • U S. Grant was an important dude in America • Even if someone fails at a task you set, at something you want, it’s an error of judgement not of intent • The intent was the same as yours, just the implementation failed
  22. WE’VE MADE MISTAKES • In order to advance, we had

    to take changes • Had to realise when something was wrong • Our solutions still aren’t perfect • We still make mistakes • Change doesn’t exclude failure of mistakes
  23. BUT WE’RE PRETTY HAPPY • As a team, we’re comfortable

    and generally happy • As an individual, I’m happy because the team has coped with change
  24. MANAGING CSS IN A STATE OF FLUX JAMES COLEMAN //

    BE RESPONSIVE // FEBRUARY 2016