Is this the secret of success?
Joel posted another interesting article about creating startups.
What really interest me is that the reason that startups fail is that the founders lose motivation.
The biggest reason founders stop working on their start-ups is that they get demoralized
Does this work the other way round?
As long as you are motivated and stay motivated, though tough times as well as good times, your startup will succeed.
If so, your main goal as a founder, is to stay motivated.
Management for Geeks: Have a good fight
Joel has a post about being a program manager. It is a good read, but this is what took my attention:
The number one mistake most companies make is having the manager of the programmers writing the specs and designing the product. This is a mistake because the design does not get a fair trial, and is not born out of conflict and debate, so it’s not as good as it could be
As Roy and Myself are very opinionated, and we are not big enough to have a program/product manager. We have to enable the debate.
Unlike Joel who has to struggle for the debate, we are trying to make it part of our DNA, of our excellence. So whenever there is a consensus it is a sign of disengagement and not of agreement.
If a debate doesn’t kick in you can create it by role-playing. Get someone to be the devil’s advocate, sky-gazer visionary and an action oriented executive and start the debate.
Here are some tips on how to argue but still get along
- Base discussion on facts (not personalities)
- Develop multiple alternatives
- Create Common Goals
- Inject Humor
- Be fair
- Resolve without forcing consensus
Perfectionism is Fatal
During a discussion in the company someone bought
up Perfectionism. I like this definition: Perfectionism may be the ultimate self-defeating behavior.
It is our job as a manager to create excellence in our team, but this might lead to perfectionism. Lets see the difference between the two.
| Perfectionism | Excellence |
| Can not make a mistake | Must Do |
| Must Make mistakes | |
| Must Fix the mistakes | |
| Must Grow |
Perfectionism leads to ‘not doing’, we can’t make a mistake, so we can never finish the task. When ever we do something, we will make mistakes, so the task will always be 90% done, this leads to not doing anything apart from looking for excuses why the product is not perfect.
Excellence is about learning from our mistakes, but we have to do them in order to learn from them, it is from our mistakes that we grow. Excellence is the courage to make mistakes.
Good Enough is better than perfect.
Agile, lean and integrity management, help with the Doing and learning from mistakes. We have small iterations, we must deliver, we will make mistakes and learn how to fix them as fast as possible. We use unit tests to find our mistakes as fast as possible. This in the end leads to excellence.
To deal with perfectionism we have to go back to the basics and answer: What is the most valuable use of your time right now?
- What is your monthly goal? What are you giving up to reach this goal?
- What controllable actions do you need to do to reach that goal?
- Do you give your personal integrity word to do those actions?
Crossing the Chasm – Is it still true?
I picked up Crossing the Chasm (Geoffery Moore) again while thinking about our marketing strategy.
This brings up a few questions.
Q1: Is this strategy still true? With the speed that information travels and web 2.0 communities?
Q2: Is unit testing a disruptive innovation?
Q3: If it is true, what is the state of unit tests. Have we reached the chasm? I like Tara Hunt’s illustration of this:
Q4: Suppose that unit tests are at the chasm, as Eric Sink says we have to act our age and find a sub-segment group within the software development. This group must communicate between themselves and have a big pain that unit test will solve. What is this segment?
I would be happy to hear your answers, here are mine:
Q1: I think that the strategy is still true.
The other day I went shopping in the local food market in the early morning looking for chestnuts that I had to buy the team for a bet that I lost. There where many empty stalls but one stall was full of people, my instinct was to go to the crowded stall. I chose without looking at the price or quality, but I looked at what the market is doing. This I think is the basic issue of crossing the chasm – having a group of people do the same good thing without needing to spend time on research.
Q2: Last year I thought that unit testing is not a disruptive innovation, but I changed my mind. I think that it is disruptive. Most developers are under pressure and are happy to pass QA to other people. I have seen many teams shun at the idea of changing their habits and spend even more time doing unit tests, even though it will save loads of time in the end.
Q3: The early adopters are 15% of the the market, so do 15% of the developers unit test? Telerik (2008) says that 27% do unit tests, while Methods and Tools (2006) says around 15% (image from Ed Gibbs)
From our surveys, many developers call different activities unit testing. We also found less then 10% actually do unit testing. But combining these surveys together with the fact that we are seeing early majority type of questions in the community (If unit testing is so great, why aren’t more companies doing it?) I think that we are at the chasm.
Q4. This is the question that I don’t have an answer for yet. I do know that there are segments. For example, did you know that the avionics have a standard called DO-178B, that requires a 100% unit test coverage. So when it comes to human lives and the cost of a bug is high, management makes sure that all software has unit tests. But this standard has not made it into other industries.
Do you know of other developer sub groups/communities?
Funny discussion from Twitter
Here is an entertaining snippet from twitter:
Ben Hall asked
Wonder how TypeMock came up with the "Cut costs by as much as 40%" (twitter)
Daniel Fernandes answered:
TypeMock.Expect(x => x.GetMinimumCostSaving()).Return(.4) (twitter)
touché!
For those that want the real answer.
We do case studies from our customers and we measure the cost of development (including QA) before using Typemock and unit testing and after. We have witnessed many customers that once they start unit testing and getting up to speed with automating their code tests (I call this code integrity), the time to find and fix bugs is much shorter. Our customers have seen long QA process, that take both QA and developers time fall to 0 (yes zero.) thus saving 40% of their development costs!
Coaching, Its a two way street
In a previous post, I was asked some questions about coaching.
The post was about expanding my existence. I think that this is the first and most important rule of management. Leadership Starts with Self-Discovery!
I have always been an autodidact. I did see people being coached, and it always interested me, but I never found anyone who I felt could coach me. With Moti, my current coach, It works really well. Moti introduced me to living with personal integrity and that just made me discover a lot about myself.
The strongest way to make yourself do what you want to do, in order to get results, is to tell someone else that you are going to do it, and live up to your word. This is something that I do with Moti, and it works really well. The management team of Typemock are trained with Moti too.
Jurgen Appelo wrote a blog post about Managing != Coaching. I don’t agree.
Managing >= Coaching
As a manager you must coach you team! You can have a personal coach to help with your own self discovery, but as it is your job as a manager to help with your teams growth and self discovery, you have to coach your team, make them succeed. This should be your most important task! Empowering the team!
If you do delegate the coaching to a team leader – you have to coach the team leader!
I know that managing by integrity, makes the coaching very easy to do. The rules are very simple, and it confronts the team, enables them to grow, empowers them and doesn’t allow us to hide our problems or make excuses. It doesn’t focus on how or what to do, but on doing it.
Now lets answer Yarons’ questions
Q: How do you chose a coach?
A: I have no idea, I just asked some friends and heard from them what the coach did, interviewed a few. I was at a stage in my life that I had a problem deciding without enough information. I knew that I had this problem, so I just went with gut feelingsQ: How much does it cost?
A: Depends on your negotiating power, I got offers from $100-$250 per session.Q: What can you expect in return?
A: Self Discovery and meeting you personal goalsQ: When will you start seeing result?
A: I am not sure, I am still seeing results, but I think that after 5 meetings things where already changing at a lightening speed
Typemock in the local press
The local “The Marker” Magazine has published an article about startups in the current economical crisis.
There is a cool picture of some of the crew eating on the bar. We don’t normally eat there, but on a lower table that is out of the frame, but the bar makes the picture looks really cool. I am sitting in the center.
Due to the economic crisis, we have made some courageous decisions. But we are seeing more usage of Typemock Isolator. This is probably because we save enterprises time and money, by enabling their development teams to unit tests. This in turn lowers the cost of fixing bugs and the Time to Market.
Thanks Team.
Tip: Never Manage anyone who you can’t do his job!
Yes, I know that the normal way to manage, is to delegate those
things that you don’t know how to do to others, but that is disastrous.
When I began managing I used to bring in someone to do the things that I didn’t know how to do. As I am a software developer and not a salesman I bought in a salesman to help me out.
Imagine how hard it is to interview someone who you can’t do his job.
In the end I managed to bring in someone I like, I told him. “Ok, you have a $200K quota this month, bring me the results”
There are only two outcomes that happen, when you employ someone who knows how to do something that you don’t.
- The Employee will fail, the team will not succeeded, goals not met, nothing is in integrity, you will find excuses and probably fire him or be fired yourself
- The Employee will succeed, you have no idea how. You have no idea how to enable the Employee to grow. After some time the Employee will either fail (see 1) or will be so good that management will replace you with him.
The hard fact reasoning behind this is that if you don’t know how to do it yourself, you will have to manage by result and not by integrity (integrity is knowing the controllable actions that the employee needs to do, that will lead to that result). Managing by result is a good way to get excuses but the a bad way to get results.
In my case, I couldn’t explain to the salesman, how to get sales, what needs to be done to get sales, how to be motivated, what reports are needed and how to be in integrity.
Do it yourself
There is only one solution: Learn it yourself.
Expand yourself, leave your comfort zone and do what you have to do to get the job done. Manage yourself with integrity and learn how to do the job. You are clever, you are the manager, you can do it!
Only AFTER you know how to do the job, you can get someone to help you out. That person might know how to do it better then you, but you will already know what it takes to succeed in the job.
You can then manage the integrity and help the employee succeed in his job.
Tip: Follow this rule and you will never become a PHB
Being Result Driven can Backlash
People like to be result driven and when given a task, we want to complete that task and clear our desk. This is great and works really well when the task is simple and fast, and it gives us great feedback.
Being Result Driven
But lets see what happens when we have a larger goal. Suppose we are trying to sell Agile consulting to different companies. We give ourselves a week to look for a client, we are really highly motivated, so we call 3 new clients on the first hour, all of them say “No, Thank you”.
We already feel less motivated, but we still pick up the phone and for the next hour we call 3 companies but 2 are wrong numbers and the last contact has left the company. We take a small break and then call another 3 companies where their secretaries screen our call, they either take our number, or tell us to call later. We start getting quite de-motivated, but we call the next 3 and although we get through to the VP R&D, we don’t manage to convince him that agile will solve all his problems (although he is stuck in a waterfall product for over a year and is really frustrated).
You see where I am going, at the end of the week, we have no results, we didn’t manage to make a deal and then we start making excuses…
All companies are bad.
No one knows what they are loosing
Pointed haired Managers are everywhere
I don’t know how to sell
I am not really good at this
I am a failure.
Being Action Driven and Celebrating Integrity
Here is how change the goal to action driven and celebrate integrity.
In order to sell Agile consulting, I will have to call 75 customers, I will probably talk to 10 and 1 will want my help. So if I call 15 customers a day and finish this in a week. That means 3 customers an hour for 5 hours every day. Very doable. (Note I use the controllable breakdown technique)
Now the first hour I call 3 all of them say “No!”. But I get to check off the first action of the day and stay in integrity (Yea!). The next hour I call 4!, 2 are wrong numbers and 1 left the company and I get screened, But hey, I called 4 numbers! better then my commitment! Now I am really charged and on the next call I reach the VP R&D and together we find that we can add great value to his team!
We are doing the same actions but as they are in our control we can celebrate success. This is an amazing outcome of managing integrity. Just like having automated unit tests, helps build your software with integrity and will lead to completing the software at a faster time. The same happens when celebrating integrity at a personal level, you manage to do the controllable actions and this leads to success.
In Typemock we cerebrate our integrity once a day and once a week in our Integrity Meetings. This always has a great feeling and as a bonus we manage to reach our goals!
The Clearing
Clearing is a great way to finish our meeting.
It includes retrospect and success celebration and is a very powerful process
Here is how the clearing works in Typemock:
There are two rounds.
Round 1:
Each member talks about something that’s broken and doesn’t work. He then has to give a solution. The solution must be a controllable action that the employee can do alone. In any case, the solution cannot be asking others to do something unless someone offered to help.
It is possible that there is nothing broken and that everything works
Round 2:
Each member talks about what is working, here you must tell about a specific thing that is working.
You have to give a specific example (everything works is not valid) And you have to find at least one thing that works. (Remember that lots of things are working even if the person doesn’t see it, and it is your job as a manager to show that. eg. they did come to work, they did read e-mails, the computer is working, they have a place to sit).
At the end of both rounds the Manager should talk about what is broken with a solution and talk about what is working.
Tip: This is a good time to thank team members of specific things they did and show them how they are empowered and manage to get things done! This is talking about how the team is working
Clearing Example:
Manager: What is not working?
Employee: Our unit tests are broken
Manager: What are you going to do to solve it?
Employee: Hmm, I need Roy to solve the test
Manager: (You cannot ask others to solve your broken stuff) What can YOU do to solve it?
Employee: Well I can learn about it and solve it myself
Manager: Great! Do you have all you need to do it?
Employee: Well, actually I do.
Manager: Excellent, so are you going to do it? (Integrity)
Employee: Yes! I will do it until next week, (and writes it on the board as his task)
Recent Posts
- Product Status Peek – 2011
- Thanks Roy
- Typemock starts 2011 in a new location
- Agile Demos Smells
- I want loud disputes in our meetings
Categories
- .NET Tests
- Agile
- Code Integrity
- Community
- Debugging
- Fun
- Management for Geeks
- Marketing
- Product
- Release
- Reviews
- SharePoint
- TDD
- Time Management
- Uncategorized
- Unit Tests
Archives
- January 2011
- December 2010
- October 2010
- August 2010
- May 2010
- April 2010
- March 2010
- February 2010
- December 2009
- October 2009
- September 2009
- August 2009
- July 2009
- June 2009
- May 2009
- April 2009
- March 2009
- February 2009
- December 2008
- November 2008
- August 2008
- July 2008
- May 2008
- April 2008
- February 2008
- January 2008
- December 2007
- November 2007
- October 2007
- September 2007
- August 2007
- July 2007
- June 2007
- May 2007
- April 2007
- March 2007
- February 2007
- January 2007
- December 2006
- November 2006
- October 2006
- September 2006
