Category Archives: life

Grail Quest to find where went our productivity to (part three) ?

In Part one we talked about problems with productivity, when adding more resources, introducing better processes like scurm don’t help. In Part two we focus on Work In Progress, when paradoxically  the more we want to do, the less actually work is done.

In order to fix Work in Progress of the team, we often what to help them. Let us split the team, so people are more focused on their work. Another fix is adding more people to the team (increasing the amount of work done).

Is that right?

Unfortunately, the truth turns out to be brutal and it is quite different. You may find that for some reason the work goes even slower: more people/focus but smaller WIP.

Why is that?

To be able to synchronize, you need to communicate. Quite often we do not realize how much time is wasted to communicate to each other. If you want to check the easiest way to do this is to measure the number of meetings. If you have a central system for booking rooms, just prepare and look at a simple report: the number of meetings per employee.

At one point I even investigated this matter and came to the conclusion that the more people in the meeting, the more expensive it should be to book such a room. The idea of course has not been realized, but if you want to provide such service, than I will be happy to try out such reservation system.

Everyone complains about the meeting, and then it turns out that anything in the company can not “moved forward” without meeting. Personally, I love my calendar today, because I do not have more than five hours in meetings per week. And even this is too much in my opinion.

Sometime ago I had conversation during a conference with one guy. He told me that, they had a “customer service center” in which they have KPI: “how many calls per minute”  and it was something about 10 calls per minute.  Well, as usually happens, someone “upstairs” stated that he has an offer from a company that can do it much more effectively. So their call center was canceled and all work was outsourced to the outsider. The first reports allowed “the board” to celebrate success. The new company supports about 100 calls per minute – 10 times better efficiency. Great decision!

You probably already feel trick here … because I wouldn’t tell a story here if it would not show another problem affecting our productivity. It turned out that customers called a dozen times for one problem. The operator wanted to handle (according to his KPI) them as soon as possible, very often by riding the client of. Client had to call several times to solve his problem, as a result the client were much less satisfied with the service. Not always the number of customers served goes in hand with quality of service.

The first quick lesson – what you measure is what you get. Measure more calls per minute, you get more calls per minute, It does not mean better service and in many cases things goes worser.
The second lesson is more important. It is worth looking for the problem at the source. Go to the source and start solving the real problem. Many times we use  “tricks” to cover it – We can call it Failure Demand.

An example from IT sector is a team that increases its velocity (sounds good) but does not provide any value. WTF? It can easily happen when there are more and more bugs which even increase velocity (every bug get a certain amount of story points). This leads to the situation when the team only do bug fixing (by the way bugs was introduced by the team), so no additional value is delivered.

Quite often a remedy is to try to move part of work (eg. bug fixing) to different team, so development team can focus on delivering business value. We can introduce a team (QA) that will fix some of the errors, or will test whether the errors have been fixed, and so on. Sounds familiar?

In this way, specialized teams are born.  Now the “poor” developer can produce even more code. The testers are testing instead of him, the release managers do deployment instead of him, the incident managers react to production problems instead of him …. and so on…..

This leads quickly to a situation in which the developer does not feel responsible and does not understand how his bad code affects the whole organization and work of others. The developer become detached, which become huge problem for organization.

Looking at the work of teams that improve some “developers pain area”.  When we move work to different team, than it causes developers to increase their bandwidth. More developers bandwidth increases Work in Progress (WIP) in pain-killer-team. This causes  these teams to become a bottleneck. The whole organization focus on them, because they do not cope with the amount of work – so they (eg. testers) are the problem not developers.

Interestingly – it hides the real people responsible for delivering the poor solution. Introducing such teams sooner or later creates siloses, which is very bad for organization. Furthermore we aren’t solving the right problems, and we are creating even more bottlenecks and more detachment in the organization.

You can also look at that as local optimization destabilizes the workflow on a global scale.

In conclusion:

  1. Workload up to 100% and the need for faster work has the opposite effect. The “worker” must have a moment to think and “sharpen the saw”.
  2. The more rules, the greater the focus on those rules. This causes us to blindly follow the rules and stop thinking, because rules do it for us (or at least we are safe). These are huge opportunity lost.
  3. The more work, the greater loss on context switching. This leads to the fact that everything takes longer. The cost of delays is increasing and many projects will never see the production environment.
  4. Hiding the problem (temporary solution) usually causes the problem to return with increased strength, and the cost of removing multiply (sometimes in exponential manner).
  5. You need to have time for unplanned work.
    • If you do not have time because of (#1 – you are fully loaded),
    • or you do not think because you have rules (#2),
    • the “business” comes with next projects (unplanned), so you try to juggle between the projects (#3),
    • so you need to hide many things because not time to solve real problem.(#4)
    • This brings you to (#5) no time for unplanned work. The whole tightens the loop on your neck. R.I.P.

What can we do about it – the solution:

  • Always have some loose time.
  • The less the rules, the better –  see experiment England Town turn off traffic lights
  • Control the WIP and respond when it’s too much. Reduce the amount of work is better than slow down or even blocking the entire system. Remember: I love Lucy candy video.
  • Solve problems at the source.
  • Remember that always something happens, you have to have time to react.

And thats all Folks!

By the way, as Tech Rebels we help companies go through technical hurdles. Just hire us, and we will bring your organization to next technical level.

It is better to harden your WordPress

During the Polish Long Weekend (actually very long), I had some speare time. I had great time with family, so after my little devils felt asleep. I though: “Let me see what I have in my draft post list” (which it is huge btw). One of interesting entry from January is “Hardening Wrodpress”.

Finish it!

The story went like that: I opened my blog at pietrowski.info, but instead of my blog I had got this (see screenshots).

chrome warning
chrome warning
safari warning
safari warning

 

firefox warning
firefox warning

What’s the hell! I check different web browsers and I had the same judgment.

Fortunately I’m Google Webmaster Tools user, and I remembered that there is diagnostic page, I ran it for pietrowski.info (click link to see actual report). Original result (4.january.2013 below).

problem-found

With my colleague (js-expert), we did backward engineering of the script. Nothing interesting,  I can put gists in comments (have to grep gTalk history :)) if you are interested in, anyway the security issue was in one of the plugin, so I made quick decision – remove it (I have no code highlighter right now ;/).

What is extremely important here is that, instead reading yet another tabloid (put your favorite name here), read security information of your platform, and perform updates if needed.

Of course I had lamer (mean standard) configuration of WordPress.

So I went through those documents:

and you should at least consider this ideas:

  • Authentication Unique Keys and Salts
  • WordPress Database Table prefix
  • Protect wp-config.php
  • Relocate Your wp-content Folder

Last but most important step was to beg google ;). You can do it through Google Webmaster Toolkit (ask for review Health->Malware). It may take up to few days to review your site (in my case 3 days). I’ve updated plugins and WordPress engine:

NewerWordpress

 

And this it is.

Career and Risk Management

Inspired by Embracing Risk in Career Decisions by Harvard Business Review plus it is New Year’s resolutions time :). I decided to write this post.

Intro

Article suggest that risk management in career decisions should be different then risk management in business decisions. In business we have to minimize risk but it will bring more harm in career decision. Of course we shouldn’t read that as “stop thinking”.

So You Want To Be a Hero?

In our quest for glory we should take care about:

  1. Happiness: all factors which make us happy.
  2. Attitude Factor: all factors which develop us.
  3. and not so important but anyway: Threats: all factors which make us shiver.

CareerDecisionMM

How we should keep balance? I will cite HBR here:

This means that career decisions need to start not with risks, but creating a prioritized list of “happiness criteria,” or aspects that will critically determine your long-term satisfaction. The second step is to think through which of these criteria are non-negotiable and — if compromised — would force you to make a trade-off that could increase your risk in some other area.

Looking into past, I were brave enough or just stupid 🙂 to not debate about threats. I do not regret any job changing I’ve made. Every new job learnt me new things, gave me new opportunities, and most important I’ve met new friends.

Anyway as New Year is coming, consider what is truly important for you.

What’s your future? Are you happy in current job?

Happy New Year!