Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things

Re^3: code-sharing at work.

by Tanktalus (Canon)
on Mar 24, 2005 at 02:10 UTC ( #441941=note: print w/replies, xml ) Need Help??

in reply to Re^2: code-sharing at work.
in thread code-sharing at work.

Hey, that's a pretty good idea ... you can give out "brownie points" - literally! As a "team motivator", keep an eye on the situation, and give out points, and when the team reaches 20 points, you bring in a batch of brownies...

Although, admittedly, it would be much nicer if everyone just got along and you didn't need to bribe 'em.

Personally, I am the one that gets to dictate the coding standards for perl in our team, and I've found that pointing out problems during code reviews is extremely useful in getting people to think my way. That is, pointing out what scenarios the person's code doesn't handle, why it isn't flexible, what type of future requirements to keep in mind when coding.

And then I also point out in future code review sessions where these changes have come in useful. Changing requirements sometimes end up meaning no code change because of how flexible the code is1. And it's those lightbulb moments that really get us all on the same page. Our manager sees "changing requirements" and equates it to "delta work" (extra work we didn't sign on for). And when we actually don't do any extra work, even though our manager thinks we did, that just improves our perceived performance. And my teammates love it.

1 I didn't take any computer science, so bear with me if my terminology is a bit off. I subscribe not only to object-oriented methodologies2, but also to what I call data-oriented methodologies. What I mean is that I put the common stuff into a data store of some sort (even if that's a hard-coded hash or array), and then loop through the data to do what I need instead of unrolling the loops and duplicating code. 90% of our data for my primary project is stored external to the code, and I'm trying to find ways to get the other 10% moved out, too. I do this in perl, C, C++, Java ... and am trying to do it in shell script, too, but Bourne shell is extremely limiting for this ;-)

2 I like OO, but I am not a purist. I probably use OO more than many people, but definitely not 100%. Not everything is an object. Lots of stuff is, but not everything. For example, using perl6-isms, I'll probably like to be able to do something like @list.=sort(). But that's largely due to a more generic built-in (non-OO) sort that will be available from the core, using callbacks (such as sort in perl5).

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://441941]
erix wonders... how is the neurocent doing these days?
[marto]: Invest in my crypto currency, derpcoin
[erix]: ( and only a single italian in the Giro top 10 -- surely you guys are not trying hard enough! )
[marto]: it does literally nothing, solves no problems that aren't already addressed, but it's real easy to mine, because nobody is doing it

How do I use this? | Other CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (10)
As of 2018-05-25 15:52 GMT
Find Nodes?
    Voting Booth?