Because that is the reality for the majority of new joiners once decisions like this are in place.

As is choice of language, libraries, project, customer, manager, all of the existing code, and every other artifact of the software development process up to the point of the new hire's, well, hire.

I've committed code that was awfully clever because it was the best way we could think of in the time we had to solve the problem we needed to solve. Ovid could tell a great story about how we chose Python for one particular project, and I'm sure he has several stories I've forgotten about me asking him if the code I wrote was too clever for the rest of the team to handle. (The particular occasion I remember, we were discussing whether to train everybody else on the technique or to simplify the code. I don't remember what we decided, and it's immaterial to the story.)

I expect to make some compromises for the good of the team when I work with a team. I don't expect that even with my "high status" that everyone automatically agrees with me, and I can live with that, as long as we're following a development process that lets us refine what we do to improve how we do things.

I'm not interested in hiring someone who can't or won't work under those circumstances. He or she may be a fantastic coder, but I'll bet on being able to train a decent programmer into brilliance if he or she can work well with others. I don't intend that to sound harsh or cruel; if I were hiring people (I'm not leading a development team right now) I would look for people who wanted to work on such a team and I would make it clear that that's an expectation.

This thread has certainly gone on long enough, and neither will convince the other. It seems that we've discussed just about every angle of the subject I can imagine. If you'd agree and would like to have the last word, please feel free.


In reply to Re^12: Modern Perl and the Future of Perl by chromatic
in thread Modern Perl and the Future of Perl by chromatic

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.