25 August 2009

Sharing your knowledge

Why are developers, and people in general , so prone to entropy? Most of the software developers I know are really quick to throw aways good engineering practices in favor of writing more code. And use the same code writing exercise as an excuse of not doing those practices in the first place.
I have to much work to do! See, how many bugs I have to fix! What do I get from writing all these down, nobody will read that! Testing is stupid, I will be the only one doing it , everyone else doesn't do it!
Oh , how many such sentences I've heard from everyone I talked to. And the energy I spent correcting each and different attitude. Ah! And then to see them fall back to their evil no engineering ways, practically makes me wonder why do I try.
OK, I try , because I really want to teach others what I know and think that should be a practice for all experienced developers, only this way our profession will grow and evolve. I do not gain anything by not sharing and teaching others.
What are the benefits of sharing (for example with your team mates):

  • You can shuffle boring and uninteresting work to them, while you focus on more challenging stuff

  • You can discuss problems with someone who understands the topic , and possibly made some learning on their own

  • You learn by teaching

  • People around you will write code with greater quality

Teaching others , or sharing knowledge , has its drawbacks :

  • Time spent teaching others is not time spent on improving you

  • Teaching others (in my experience) often diminishes your knowledge in the eyes of others , since for them is so easily gained

  • Teaching is a strenuous and continuous process with unknown results (if you want to see big bangs for you bucks quickly, better be ready for disappointment)

And the greatest truth of all: you can't force people to really learn and implement that they are not interested in. Especially if you do not a rifle on their heads.

No comments:

Post a Comment