http://www.perlmonks.org?node_id=547425

Is it just me?

We've all seen these disputes among development teams of all manner of such projects. Obviously disagreement comes with the territory. If two people agree 100% of the time, one of them is not necessary... is the expression that comes to mind.

But why is it that when the going gets rough, core principles of the whole movement are abandoned? Open source, open discussion, open participation and contribution, learning from each other, whether it's our successes or failures. This suddenly turns into conditional agreements of absolute silence, closed mediations, secrecy, and barely explained personnel changes. The pithy voice in my head is trying to remember whether it's the white smoke or the black smoke that lets us know about the change.

It's not that I can't understand it on a simple level. A mailing list lockdown for a single day, big deal. Staving off the flood of "WTF" messages and caffeine fueled diatribes ending in "SRI r00lz, I'll never use catalyst again!" announcements is fine. But the minimalist onward-and-upward pat on the back (lauded as "professional") teaches us nothing. I'd like to know why. I'd like to know why one opinion won out over another.

I can read between the lines like anyone else, but who can deny that some of the best, most enlightening discussions here on PerlMonks have been heated. Someone feels strongly about something and they end up providing great detail about their reasons. Regardless if you agree, you've probably learned something.

Catalyst has become a very significant project. Aren't we missing the benefit of how such a project is lead? Wouldn't we benefit from the technical details such as how changes impact other projects? Wouldn't we also benefit from seeing other's passion for their projects? At minimum, maybe it would expand our awareness of the community as a whole.

Like I said, maybe it's just me.

--
naChoZ

Therapy is expensive. Popping bubble wrap is cheap. You choose.

Replies are listed 'Best First'.
Re: Catalyst team change
by perrin (Chancellor) on May 04, 2006 at 15:34 UTC

    But the minimalist onward-and-upward pat on the back (lauded as "professional") teaches us nothing.

    There's plenty to learn from it, if you choose to. It can teach you that there are alternatives to an endlessly escalating flamewar. It can teach you that irreconcilable personality clashes do not have to destroy projects. Civility is often in short supply on mailing lists for open source projects, and on the Internet in general. Personally, I'd rather see more of it, not less.

      Well said there perrin, I couldn't agree more.

      I would also say to the OP, that I don't seem to remember many (heated or otherwise) perlmonks discussions where the soul of an entire framework was in the balance.. Discussing for the sake of it is one thing, trying to decide the fate of a project is another. Also, the Catalyst discussing was taking place realtime, on IRC, thus it would have been a lot harder to preview content, consider, post only when really sure, etc, since by that time the moment is gone.. Thus heated discussions would have been a lot more so.

      Civility and mediated discussion is definitely a plus, in my book, when things are at stake. Having them closed/private just means people can discuss properly.

      C.

        I'm sorry to say, but this time I can only see PAX ROMANA. It would be better understood and considered something professional (in the true sense of the word) if the conversations (even mediated) toke place in public, as expected from a proeminent open source project like Catalyst.

        This was a big lost for open-source projects, IMHO.

      It can teach you that irreconcilable personality clashes do not have to destroy projects.
      So is that all it was, "personality clashes"? Jeeze, I would have thought some technical visions of the ideal world, would have been behind it. I'm hoping this is more than a brainless contest of armwrestling.

      I agree with the OP of this thread, covering up all the technical reasons behind a shroud of polite silence, is going to help noone. So, what's the difference between Catalyst and the new MoJo? I have no idea. And a situation like this one is not going to help anyone, especially not the outsiders.

      Get rid of the mystery. If not, it can only hurt both projects.

        I'm sure that if and when MoJo is created, the differences will be fully explained. The very idea of making Catalyst into something significanly different at this point was probably a main point of contention. Users on the list frequently complain about API changes.
Re: Catalyst team change
by samizdat (Vicar) on May 04, 2006 at 17:40 UTC
    I'm probably the least competent (Perl-wise) of all the people who've already replied, AND I know little of the particular situation under discussion, so take this with a whole box of Morton salt. :) I do, however, have a degree in Sociology and Psych, so I'm going to take a NSH stab at it anyway.

    I've seen meltdowns that were public, and meltdowns that were kept private, both in the open source and commercial worlds. Just as the emotions of the participants are their personal business, so are the choices to make it public. Most of the times I, personally, have been involved in a public meltdown, I've sure as hell wished it'd been kept private. At least, after the fact... ;-]

    Wanting to learn what happened is only human. However, I'd like to suggest two things. First off, the technical issues on each side have almost certainly already been made public through ML discussions and web pages, et al. Secondly, let me suggest that you'll never really learn how to avoid a meltdown by watching. No matter how much fun watching a football game on TV is, you're going to get painfully flattened if you even think you can walk onto the field during a game.

    Meltdowns occur for lots of reasons. Sometimes it's technical, sometimes it's ego. Sometimes it's just a choice being made that doesn't 'sit well' with a team member. Sometimes it's that the people involved really believe their project is an important one and needs to be "done right". Maybe it even really is that important. Certainly that has occasioned more than a few of the "left in a huff's" that I've seen in the FreeBSD Project, and cooler heads have sometimes come back to work. The important thing to realize is that the reasons for any given meltdown are specific to that team and that meltdown. Monday-morning quarterbacking doesn't add a whole lot to the situation, no matter how much fun it may be.

    It may seem as though there are more meltdowns in open source projects than in the commercial world, and there probably are, but there's also a bright side. Open Source projects can be picked up by anyone who has the chutzpah to take them on. Very few of the commercial meltdowns I've seen have been recoverable.

    As a user of open source, as opposed to a developer, I've come more and more to realize what an exceptional and amazing contribution to humanity that this whole movement is, and how much we rely on each individual developer to keep his/her act together in spite of the pressures. Given the lack of financial compensation that is so prevalent in open source development, these pressures can be monumental. We who are merely users need to do our part to support and encourage those who develop. A few quiet /msg's at the right time -- OFF LIST -- can do an amazing amount to shore up the self-motivation of a talented developer. No matter how much they're doing it for their own reasons, praise helps. Money, too, whether it's a new development server or just a beer. I realized this past tax season that I've contributed more in time and money to open source than I've paid for Microsoft products (though not (yet) for all s/w I've paid for), but, then again, I've made more money as a result of open source. I can't count the value of it, for myself or for the world. It's too high! :D

    Don Wilde
    "There's more than one level to any answer."

      Fear not for your competence. I'm sure I'm a less-competent Perl programmer than you (so far).

      That aside, I find no fault with anything you've said in this node, and I agree.

      One of the things I find most pleasing about the dynamics of open source development is the way it harnesses the energies of disparate, intensely individualistic people in a way that allows them to wander in and out of projects, contributing to a cohesive whole (unless and until they start or get stuck in a project that means enough personally to prompt them to invest more than dilettantism) without having to subsume the individual in any way. Every individual's talents and efforts are individually important in the creation of the whole product, in and of themselves. One doesn't tend to run into the situation typically found in proprietary closed source development circles where someone passes out orders and everybody falls into line for fear of losing the paycheck. That's how marketing flacks gain traction while engineers lose it.

      I think perhaps the best thing one can do to help an open source developer maintain the motivation to stick with a project is to remind him or her of what he or she gets out of it. People tend to go into these things for selfish reasons, and I think that's a good thing: when you start writing software because you want the software you're writing, you have a personal stake in producing the best software possible for your purposes. That's why open source development works, for the most part. When a particular developer reaches the point where that motivation for developing a particular piece of software has been worn down while the aggravations have built up, it's best to help the developer remember why he or she started working on the project in the first place. If that's not enough any longer, or if that prompts him or her to fork the project, so be it. At least then the developer will be making the decision for the right reasons.

      print substr("Just another Perl hacker", 0, -2);
      - apotheon
      CopyWrite Chad Perrin

Re: Catalyst team change
by Mutant (Priest) on May 04, 2006 at 16:33 UTC
    I can see your point. If there was a discussion on a purely academic level about what direction Catalyst (which has quickly become easily one of the most important Perl projects) should be headed in, then it would have been interesting to see what was discussed, the different points of views, etc.

    However, there are very very few discussions like this *ever*. Even amongst so-called professionals. Almost always, emotions get involved. I'd say this is even more likely in an open-source, Internet-based environment. And even more so where people have founded projects that have grown hugely.

    The actions taken saved the community from the embarrasment of seeing the leaders of this project exposed at their most vulnerable. True, it's not totally transparent, which is usually something to strive for in open source projects. But would we have learnt much from it? Only that everyone's human, everyone gets upset.

    Now that the bans have been lifted, we may get some less-heated discussions on what caused the difference of opinions, which we *may* learn something from. Once everyone's has a chance to cool off a little, they can see that their differences were purely philosophical, and realise that the split was for the best. This can then allow them to present the arguements in a more objective, un-emotional manner. I'd rather read that than something that was said in the heat of the moment.
Re: Catalyst team change
by eric256 (Parson) on May 04, 2006 at 16:50 UTC

    I'm going to take a moment and expose my ignorance.... Could you link to something/anything about what you are talking about? I googled and searched PM with no sign of what you are atlking about. I have heard the rumors of Catalyst Cataclism, or something like that, but nothing anywhere seems to hint that anything at all has happened. ;)


    ___________
    Eric Hodges
Re: Catalyst team change
by ides (Deacon) on May 05, 2006 at 14:20 UTC
    While I can understand your frustrations about having the process less "open", personally I think the stroke of genius here was to bring in a respected Perl outsider to mediate the issue.

    Frank Wiles <frank@revsys.com>
    www.revsys.com

Re: Catalyst team change
by BrowserUk (Patriarch) on May 04, 2006 at 15:17 UTC
    but who can deny that some of the best, most enlightening discussions here on PerlMonks have been heated.

    ++.


    Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
    Lingua non convalesco, consenesco et abolesco. -- Rule 1 has a caveat! -- Who broke the cabal?
    "Science is about questioning the status quo. Questioning authority".
    In the absence of evidence, opinion is indistinguishable from prejudice.
Re: Catalyst team change
by dragonchild (Archbishop) on May 04, 2006 at 15:43 UTC
    There is no "I" in "TEAM".

    My criteria for good software:
    1. Does it work?
    2. Can someone else come in, make a change, and be reasonably certain no bugs were introduced?
      So let's take all the people out of the team and see what's left.

      The issue is not whether some person in the team thinks he's bigger than the whole. The problem is that when you stop acknowledging the individual members of the team as just that -- individuals, their own persons -- you run the risk of alienating people. See 1 Cor. 12:14-26 for some biblical reinforcement of the dualism (or is it duality?) of a team.


      Jeff japhy Pinyan, P.L., P.M., P.O.D, X.S.: Perl, regex, and perl hacker
      How can we ever be the sold short or the cheated, we who for every service have long ago been overpaid? ~~ Meister Eckhart
        Yes, that is true. (Nice reference, btw. 1st Corinthians is one of the better Epistles, in my opinion.) But, I think acknowledgement that it cuts both ways is necessary. When you are part of a team, you have to be willing to work within the team in order to make the team work. Otherwise, it's nothing but a disparate group of individuals each going their own way. While that works for massive groups, it doesn't work for tightly focused groups that need to produce a cohesive product. Diplomacy, the art of getting along, is all about compromise.

        I'm not saying that everyone should submit to the Collective. I'm saying that you can't have rabid individualism and still expect to produce a good product.


        My criteria for good software:
        1. Does it work?
        2. Can someone else come in, make a change, and be reasonably certain no bugs were introduced?

      But there is a "ME" ;-)

      /J\

      ...and there is no team without it's individuals.


      Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
      Lingua non convalesco, consenesco et abolesco. -- Rule 1 has a caveat! -- Who broke the cabal?
      "Science is about questioning the status quo. Questioning authority".
      In the absence of evidence, opinion is indistinguishable from prejudice.
        But the team is an entity in addition to its individuals. If the members of a team consider themselves, the individuals, as more important than the team, then the team dies. That was my point and that's what happened here.

        My criteria for good software:
        1. Does it work?
        2. Can someone else come in, make a change, and be reasonably certain no bugs were introduced?

        But that's looking at it from the other direction. In which case you'd have "MEAT". Which should be heated, much like the discussion.

        And you just know that's going to torque the vegans to no end.

        Or something . . . . At least this makes less sense than I just did. I hope.

        Update: Actually you'd have "MAET". Marginal sysdlexia FTW.

      True, but there is a "U" in "SUCK". (Nothing personal. Stock response only. May contain trace amounts of fat.)

      There are individuals within a team, and any team that forgets to consider the value of the individuals -- as the "no I in TEAM" epithet seems to suggest -- is a team doomed to homogeneity and all the failings that implies.

      <-radiant.matrix->
      A collection of thoughts and links from the minds of geeks
      The Code that can be seen is not the true Code
      I haven't found a problem yet that can't be solved by a well-placed trebuchet

        Taking that to its logical conclusion, I'm prompted to make reference to groupthink. It was defined by a psychologist named Irving Janis as "a mode of thinking that people engage in when they are deeply involved in a cohesive in-group, when the members' strivings for unanimity override their motivation to realistically appraise alternative courses of action." I tend to have negative reactions to teamwork-conformity platitudes like "there's no i in team" precisely because of my experiences with groupthink in the past.

        In point of fact, I think the phenomenon of groupthink is a fair bit of the mechanism behind not only bureaucratic inefficiency, high school drama, and office politics, but also -- in a more abstracted sense -- the successes of market domination strategies of large corporations and even political elections. It's not only important to recognize the contributions of the individual, but also (and perhaps more importantly) to avoid letting the individual be subsumed by the collective. Otherwise, you run the risk of becoming the next SCO, with no greater aggregate talent for innovation than your ability to dream up new lawsuit revenue scams.

        print substr("Just another Perl hacker", 0, -2);
        - apotheon
        CopyWrite Chad Perrin

Re: Catalyst team change
by ForgotPasswordAgain (Priest) on May 05, 2006 at 14:33 UTC

    It's not just you. I thought how it was handled was fascist. People should be free to say what they want, and at the same time they're free to judge others by what they say. The way it was described by Alias in my opinion indicated a major overestimation of the importance of the problem and the project. RAISE SHIELDS! RED ALERT! Too much Star Trek or RPG playing.

    And a project calling itself "Elegant" still irritates the piss out of me. Catalyst--

      You were (and still are) fine to get on irc.perl.org#catalyst to express your opinion at any time.
      Both sides held ownership of about 50% of the namespaces for Catalyst. Either could have said "fuck you", pulled co-maint permissions, and as a result there could be no more releases of Catalyst at all.

      It may seem a little high-drama, but trust me when I say things were very close to going quite pear-shaped.