Skip to content
By using Twitter’s services you agree to our Cookies Use. We and our partners operate globally and use cookies, including for analytics, personalisation, and ads.
  • Home Home Home, current page.
  • About

Saved searches

  • Remove
  • In this conversation
    Verified accountProtected Tweets @
Suggested users
  • Verified accountProtected Tweets @
  • Verified accountProtected Tweets @
  • Language: English
    • Bahasa Indonesia
    • Bahasa Melayu
    • Català
    • Čeština
    • Dansk
    • Deutsch
    • English UK
    • Español
    • Filipino
    • Français
    • Hrvatski
    • Italiano
    • Magyar
    • Nederlands
    • Norsk
    • Polski
    • Português
    • Română
    • Slovenčina
    • Suomi
    • Svenska
    • Tiếng Việt
    • Türkçe
    • Ελληνικά
    • Български език
    • Русский
    • Српски
    • Українська мова
    • עִבְרִית
    • العربية
    • فارسی
    • मराठी
    • हिन्दी
    • বাংলা
    • ગુજરાતી
    • தமிழ்
    • ಕನ್ನಡ
    • ภาษาไทย
    • 한국어
    • 日本語
    • 简体中文
    • 繁體中文
  • Have an account? Log in
    Have an account?
    · Forgot password?

    New to Twitter?
    Sign up
sarahmei's profile
Sarah Mei
Sarah Mei
Sarah Mei
Verified account
@sarahmei

Tweets

Sarah MeiVerified account

@sarahmei

Software engineer, founder of @railsbridge, Director of Ruby Central, Architect at @salesforceux. She/her. IM IN UR BASE TEACHIN U HOW TO REFACTOR UR CODE

San Francisco, CA
sarahmei.com
Joined March 2008

Tweets

  • © 2018 Twitter
  • About
  • Help Center
  • Terms
  • Privacy policy
  • Cookies
  • Ads info
Dismiss
Previous
Next

Go to a person's profile

Saved searches

  • Remove
  • In this conversation
    Verified accountProtected Tweets @
Suggested users
  • Verified accountProtected Tweets @
  • Verified accountProtected Tweets @

Promote this Tweet

Block

  • Tweet with a location

    You can add location information to your Tweets, such as your city or precise location, from the web and via third-party applications. You always have the option to delete your Tweet location history. Learn more

    Your lists

    Create a new list


    Under 100 characters, optional

    Privacy

    Copy link to Tweet

    Embed this Tweet

    Embed this Video

    Add this Tweet to your website by copying the code below. Learn more

    Add this video to your website by copying the code below. Learn more

    Hmm, there was a problem reaching the server.

    By embedding Twitter content in your website or app, you are agreeing to the Twitter Developer Agreement and Developer Policy.

    Preview

    Why you're seeing this ad

    Log in to Twitter

    · Forgot password?
    Don't have an account? Sign up »

    Sign up for Twitter

    Not on Twitter? Sign up, tune into the things you care about, and get updates as they happen.

    Sign up
    Have an account? Log in »

    Two-way (sending and receiving) short codes:

    Country Code For customers of
    United States 40404 (any)
    Canada 21212 (any)
    United Kingdom 86444 Vodafone, Orange, 3, O2
    Brazil 40404 Nextel, TIM
    Haiti 40404 Digicel, Voila
    Ireland 51210 Vodafone, O2
    India 53000 Bharti Airtel, Videocon, Reliance
    Indonesia 89887 AXIS, 3, Telkomsel, Indosat, XL Axiata
    Italy 4880804 Wind
    3424486444 Vodafone
    » See SMS short codes for other countries

    Confirmation

     

    Welcome home!

    This timeline is where you’ll spend most of your time, getting instant updates about what matters to you.

    Tweets not working for you?

    Hover over the profile pic and click the Following button to unfollow any account.

    Say a lot with a little

    When you see a Tweet you love, tap the heart — it lets the person who wrote it know you shared the love.

    Spread the word

    The fastest way to share someone else’s Tweet with your followers is with a Retweet. Tap the icon to send it instantly.

    Join the conversation

    Add your thoughts about any Tweet with a Reply. Find a topic you’re passionate about, and jump right in.

    Learn the latest

    Get instant insight into what people are talking about now.

    Get more of what you love

    Follow more accounts to get instant updates about topics you care about.

    Find what's happening

    See the latest conversations about any topic instantly.

    Never miss a Moment

    Catch up instantly on the best stories happening as they unfold.

    Sarah Mei‏Verified account @sarahmei Apr 30

    More on why agile/XP so often fails heterogenous teams (started here: https://twitter.com/sarahmei/status/990594488052559874 …)pic.twitter.com/rgnIXK0M66

    7:59 AM - 30 Apr 2018
    • 378 Retweets
    • 727 Likes
    • Ricardo Figueroa Joe Schmetzer Denise Johannes Faigle Zach Margolis dan hon Jennifer Tharp chetan Bill
    45 replies 378 retweets 727 likes
      1. New conversation
      2. Sarah Mei‏Verified account @sarahmei Apr 30

        When I first did real (small-a) agile, at @pivotallabs circa 2009, it was clear to me almost immediately that this was the most powerful way to build software that I’d ever participated in.

        4 replies 14 retweets 60 likes
        Show this thread
      3. Sarah Mei‏Verified account @sarahmei Apr 30

        Pivotal wasn’t a brand so much at that point, and agile hadn’t “won.” I frequently had to explain, discuss, and (ultimately) defend the practices to many of the client developers on my early projects.

        1 reply 1 retweet 24 likes
        Show this thread
      4. Sarah Mei‏Verified account @sarahmei Apr 30

        By the time I left Pivotal circa 2012, agile had crossed the chasm. Client developers no longer pushed back against the practices - and hadn’t for years, actually.

        3 replies 3 retweets 20 likes
        Show this thread
      5. Sarah Mei‏Verified account @sarahmei Apr 30

        What practices are we talking about? 100% pair programming. 100% TDD. One week iterations. Daily pair rotation. Standups every day. Planning meetings and retrospectives once a week. And a fixed 9-6 weekday-only schedule to avoid burnout.

        4 replies 11 retweets 99 likes
        Show this thread
      6. Sarah Mei‏Verified account @sarahmei Apr 30

        Pivotal took a page directly from the XP (eXtreme Programming) workbook. Their CEO, Rob Mee, had worked with some of the signatories on early agile projects, and had been putting it all into practice continuously since then.

        1 reply 2 retweets 25 likes
        Show this thread
      7. Sarah Mei‏Verified account @sarahmei Apr 30

        I *loved* working like this. Agile is basically a set of attention hacks for me. For example - when I’m pairing I’m not on Twitter or email - all I’m thinking about is the problem at hand. Devs at Pivotal paired 8 hours every weekday, modulo standups, planning meetings, & retros.

        3 replies 11 retweets 96 likes
        Show this thread
      8. Sarah Mei‏Verified account @sarahmei Apr 30

        I’d never worked in a way that seemed so likely to produce the _right_ product. That’s the motivator for me - building things that are useful and get used. I’m not motivated by the act of writing code (tedious, error prone) nor by new technology (unless the payoff is clear).

        1 reply 8 retweets 105 likes
        Show this thread
      9. Sarah Mei‏Verified account @sarahmei Apr 30

        The agile/XP/Pivotal way of working is not without its issues. But the positives were so strong, relative to my previous experience, that it took me 5 years doing full-on agile to even start to see & articulate & connect the problems.

        1 reply 5 retweets 51 likes
        Show this thread
      10. Sarah Mei‏Verified account @sarahmei Apr 30

        So let’s start with the obvious issues: - Very few people can pair that much. My job was essentially talking for 8 hours a day. - Many people can’t do a 9-6 fixed schedule. Parents, in particular, because no daycare place stays open past 6. This is ultimately why I left Pivotal.

        8 replies 19 retweets 226 likes
        Show this thread
      11. Sarah Mei‏Verified account @sarahmei Apr 30

        - Many people have motivators that don’t mesh well with this system, including pushing frontiers via more research-y code, being in solo ‘flow,’ & using new technology. - Full-time pairing is hard across time zones. Having everyone in the same time zone is often unrealistic.

        5 replies 12 retweets 150 likes
        Show this thread
      12. Sarah Mei‏Verified account @sarahmei Apr 30

        That’s the obvious stuff. Most of it can be solved by employing small-a agile, rather than a program like scrum or XP, so that the process adapts to the needs of the team.

        1 reply 5 retweets 58 likes
        Show this thread
      13. Sarah Mei‏Verified account @sarahmei Apr 30

        The way I usually approach this is to have folks articulate what they’re trying to get out of a practice that’s not working for them. Then we brainstorm other practices that might have the same effect AND work better for that group. I’ll give you a quick example.

        2 replies 5 retweets 55 likes
        Show this thread
      14. Sarah Mei‏Verified account @sarahmei Apr 30

        When people do pair programming, their goals are usually some subset of these: - focus - avoiding silos - code review - onboarding - cross-training - fewer rabbit holes There are other ways to get all those things.

        6 replies 21 retweets 124 likes
        Show this thread
      15. Sarah Mei‏Verified account @sarahmei Apr 30

        So far, these are just the garden-variety problems with agile adoption that everyone’s been talking about for years. Let’s move on to the less-obvious problems.

        1 reply 1 retweet 27 likes
        Show this thread
      16. Sarah Mei‏Verified account @sarahmei Apr 30

        To find agile's non-obvious problems, so we can start to see why heterogenous teams have trouble, let's take a peek underneath the surface of the obvious problems. Let's start with "very few people can pair that much."

        1 reply 6 retweets 44 likes
        Show this thread
      17. Sarah Mei‏Verified account @sarahmei Apr 30

        For many years, I was a pair programming evangelist. Between that & my consulting work, I've met lots of people who tried pair programming and hated it. Some of them had paired for months, with different people, on different schedules, & still couldn't find a modality they liked.

        4 replies 14 retweets 56 likes
        Show this thread
      18. Sarah Mei‏Verified account @sarahmei Apr 30

        These people came from many different genders & races. Some were introverted; some weren't. What they all had in common wasn't obvious to me for a long time...until recently, it was. They're all usually on the downward side of one or more _power dynamics_ in their pairs.

        2 replies 18 retweets 155 likes
        Show this thread
      19. Sarah Mei‏Verified account @sarahmei Apr 30

        Power dynamics in pairing is a subject that rarely comes up, at either the macro (community discussion) or micro (team discussion) levels. First let's talk about what a power dynamic is, and then we can look at how it manifests in a pair.

        2 replies 23 retweets 82 likes
        Show this thread
      20. Sarah Mei‏Verified account @sarahmei Apr 30

        A power dynamic is behavior in an interaction driven by a hierarchical relationship between the participants. This hierarchical relationship can be formal (manager-report, or senior-junior) but more often is informal (based on race, gender, background, etc.).

        2 replies 11 retweets 60 likes
        Show this thread
      21. Sarah Mei‏Verified account @sarahmei Apr 30

        Informal power dynamics based on characteristics that have historically been subject to structural oppression turn around & mimic that structural hierarchy. Men are more powerful than other genders; white people are more powerful than other races. And so forth.

        1 reply 3 retweets 55 likes
        Show this thread
      22. Sarah Mei‏Verified account @sarahmei Apr 30

        Note that "more powerful" in this context doesn't mean any kind of formal power; men are not officially more powerful than other genders. The power I'm talking about here is simply the power to _ignore the dynamic completely_.

        2 replies 11 retweets 136 likes
        Show this thread
      23. Sarah Mei‏Verified account @sarahmei Apr 30

        People on the upward side of a power dynamic are free to pretend the dynamic doesn't exist, and indeed, many times as children they're told that that's what they should do. "Don't see color! Don't see gender!"

        2 replies 19 retweets 122 likes
        Show this thread
      24. Sarah Mei‏Verified account @sarahmei Apr 30

        Even as adults, we get messages that sometimes suggest ignoring power dynamics is the right way to go. For example, I often see women asking men to treat them the same way that they, the men, treat other men at work.

        1 reply 4 retweets 40 likes
        Show this thread
      25. Sarah Mei‏Verified account @sarahmei Apr 30

        The trouble with ignoring a power dynamic when you're on the upward side is that in doing so, you _reinforce_ the dynamic, even though in many situations (like pair programming) neutralizing it would be better.

        1 reply 37 retweets 143 likes
        Show this thread
      26. Sarah Mei‏Verified account @sarahmei Apr 30

        That's because from the upward side, you need to take real action to level the playing field. Due to the inherent nature of these power dynamics, folks on the upward side have do it. They are more powerful & better resourced, and IMO it is their moral responsibility.

        5 replies 15 retweets 120 likes
        Show this thread
      27. Sarah Mei‏Verified account @sarahmei Apr 30

        When you're on the upward side of a power imbalance & you want to level the field, ignoring (or denying) the tilt doesn't work. And if you place the burden on the downward side folks, you're asking them to both walk uphill AND figure out how to distribute power they don't have.

        1 reply 37 retweets 144 likes
        Show this thread
      28. Sarah Mei‏Verified account @sarahmei Apr 30

        Now in any given pair of people, multiple power dynamics are in play, and figuring out who is "most powerful" is not only pointless - it's impossible. You can't just sum them. Just like with oppression generally (of which this is a tiny piece), power dynamics are intersectional.

        3 replies 5 retweets 50 likes
        Show this thread
      29. Sarah Mei‏Verified account @sarahmei Apr 30

        Common power dynamics in play in a pair programming situation (low - high): * junior - senior * "wrong" background - "right" background * learning developer - teaching developer * feminine - masculine * people of color - white folks * women & other genders - men

        6 replies 22 retweets 108 likes
        Show this thread
      30. Sarah Mei‏Verified account @sarahmei Apr 30

        As a white person, I think it sucks that the race dynamic that I'm on the upward side of exists, and I want to neutralize it as best I can. That means I need to actively work against it.

        2 replies 5 retweets 69 likes
        Show this thread
      31. Sarah Mei‏Verified account @sarahmei Apr 30

        But say I'm pairing with a black man who is technically expert in the problem we're working on. Do these power dynamics cancel each other out? Can we go back to ignoring? Nope. As you may have figured out by now, power dynamics are something EVERYONE has to keep in mind.

        1 reply 5 retweets 70 likes
        Show this thread
      32. 37 more replies

    Loading seems to be taking a while.

    Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.

      Promoted Tweet

      false

      • © 2018 Twitter
      • About
      • Help Center
      • Terms
      • Privacy policy
      • Cookies
      • Ads info