Roy Osherove

View Original

True Learning – not comfortable, easy or safe

People seem to have a problem with me “changing lanes”. But that’s the way I learn things.

If I totally disagree with something, I accept the fact that I may be doing so because of fear and misunderstanding. The best way to get rid of FUD is to give something a shot, and that’s what I do.

  • I had a problem with Team System – I thought it was too much, but I didn’t have all the facts.What was I going to do about it?

So I started learning it and doing consulting on it. My goal was to become an authority on it so that I can say I’ve been to both sides and now I can decide better based on real knowledge. Today I use svn because it makes more sense for my current team – not because I don’t like TFS (I do, it has lots of good stuff, just like it has bad stuff)

  • I had a problem with Typemock – I thought it was a lousy product, that kills design for testability.. What was I going to do about it?

So luckily the company resides in the same country where I work, so I got up the nerves and actually started working on the damn product. Now, having been in both sides I can safely decide and answer all questions from both sides, in a more objective manner. Do I always use it? no. I use it when it makes sense. I also get to make it better in terms of API, usability and vision, so that it fits more into how I think it should be. That’s what I’m doing about it.

What’s next though?

  • I have a problem with BDD and spec-related frameworks. What am I going to do about it? (can you guess?)
  • I have a problem with people who think I’m a sellout – can I do something about that? (accept the fact I can’t control what other people think, and just do what I feel is the right thing – lead by example)
  • I have a problem with DDD (not getting it). what do I intend to do about it? (can you guess?)
  • I still don’t get NHibernate well enough. I intend to do something about that.

My point is:

Sometimes real courage means not standing in the sidelines and saying something is bad. Sometimes it means trying something even if you may look like a fool or a sellout, because that’s the only way to learn that something and come out with more knowledge. Sometimes that means you don’t feel as comfortable as you should.

TO all the detractors: a little challenge. since you’re so frigging confident in what you do, take a chance and

  • Develop a full project with VB.NET
  • Use Typemock on a real project
  • Use TFS on a real project
  • Do TDD on a real project

at worst you’ll have actual things to say why you don’t like them, and you will have learned something.

otherwise, get the hell of my lawn.