views:

305

answers:

3

While it is considered a "good thing" for developers to be given a small chunk of work time to pursue their own projects, 2-3 hours a week is not always going to be enough to service many classes of projects. This is exacerbated by peoples natural propensity to devote their brain to the "interesting" problems which are not usually the stuff needing to be done for mundane business as usual reasons :)

Is encouraging your developers to spend say 1/2 an hour in the mornings devoted to answering question on an online forum, such as Stack Overflow, a good alternative to the find a useful internal project?

My thoughts are that this is a good thing as it:

  • allows the developer to improve their skills in the niche areas where people are not answering the same questions.
  • can improve skills that are directly related to the persons role within the company.
  • will extend their abilities in problems they may have never seen before.
  • improves their speed at finding a solution.
  • most importantly it improves their writing skills (for me this is a really important as the more a developer can explain themselves the more useful they are in general).
  • also gives valuable external feedback on their skills (given that they can be ignored or praised depending on the quality of the answer). This helps people who over value themselves gently correct that impression and helps people who undervalue their skill do that same.
  • improves the developers standing in a community and can lead to improved career prospects and valuable contacts outside even an insular community.

Is encouraging your developers to spend say 1/2 an hour in the mornings devoted to answering question on an online forum a good alternative to the find a useful internal project?

+2  A: 

Interesting idea. My initial reaction to it was, No don't be daft - but you do raise some interesting points.

The difference of course between your suggestion and working on 'personal projects' is that the company own your personal projects. In general you'll be encouraged to work on something in the problem domain of your organisation, with the premise being that you'll possibly find an innovative new approach or technique that will benefit the company. Clearly they're not going to get anything tangible out of you answering difficult questions for other people.

Having said that, I agree with your points about how it might help people develop as an individual, and I would be happy if anyone in my team was interested enough to be thinking about and solving problems for other people on something like SO. I know I have probably answered the odd question here during work hours.

Andy Hume
I guess my unstated assumption is that I view a better developer as a huge asset. Whether that is worth 10% of their time is a good question.
Nat
Yes, certainly agree with that. But I'd also agree with Gordon that if you're having to force people to develop themselves and give back to the community, then it might be lost on them anyway. :)
Andy Hume
Wording is a bit misleading there. "Requiring" is not a word you should use when "herding cats".
Nat
+1  A: 

I think encouraging your developers to give back to the community is a great plan. Setting aside work time for it is even better.

However, I would suggest that you not restrict them to one way or another of giving back. If one wants to answer SO questions great. If another would prefer to spend the time working on a bugfix for an opensource project, also great.

I would also discourage requiring it. Giving back in any form is fun and rewarding mostly because it's voluntary and self directed. If I'm forced to do it, I'm not likely to create anything of any real value.

Gordon Wilson
"If I'm forced to do it, I'm not likely to create anything of any real value" - that statement probably holds true for their actual work as well :)
Nat
+1  A: 

Personally I don't see why employees should have to do either. Some people don't want to work on a personal project and some people don't want to "give back" to the community. If someone wants to do some tinkering on something while they feel distracted/bored with their daily work they will do it anyways, if they want to give answers on SO, they'll do it anyways.

In a way you shouldn't have to encourage your developers to do these sorts of things. If those are the types of people you want working for you, you should actively seek out to hire them from the start rather then trying to mold people into it.

Another way might be to just lead by example. Tell people they are free to work on stuff and/or do some community work. If answering questions on SO is your goal, then you could just send out some interesting questions once in a while and get people to give their answers. "Hey Jim, this question looks right up your street!".

Hates_
Yeah on hiring people with certain qualities, but in practice you can be given lemons and have to make lemonade.I am at a point in my career where I do need to do a certain amount of mentoring those around me.
Nat