Saturday, March 15, 2014

Linkedin: We know better

Agility is essential in the modern Business and Information Technology world. Many posts about  Service Oriented Architecture and Business Process Management in this blog are about Agility and Adaptation.

If you think that you know better than others, you probably will not Adapt.

Example 1: A Bank
Few years ago, instead of receiving Web Page with one of my bank account reports, I received an error message.
As the report was consistently displayed correctly, it looks like a bug correction implemented with insufficient Regression Tests.  

I notified the bank about the problem. They ignored my report and tried to find my incapability to use a Web Site (after more than 30 years in IT, including many years of using their Web Site).

After a week or two I identified the circumstances in which the report is not displayed correctly: It happens if and only if, the report should be displayed in more than one Web Page.
I send to the bank my analysis + the error message.

Unfortunately, I was not able to correct the bug without Source Code.
The result: Customers, including myself, had to wait two weeks for correction of a bug I could fix in an hour or two, if I could access the Source Code.  

example 2: Another Bank
I found that a bank performed a transaction in a bank account I managed, without an order to do it. As the activity was an activity no customer would ask a bank to do, I thought that I had to go to talk to the clerk, who performed it. 
Together we found the mistake the bank performed and corrected it. It was a mistake not an intention to steal money from the account.

However, based on my background in Computers Security Systems (Including Penetration Test in another bank), I easily found that someone (probably a bank employee) could use the same mechanism for criminal actions.

I even knew that an American bank programmer was convicted and jailed for stealing customers money using a similar mechanism to the mechanism used innocently in my account. 
The Systems should be changed in order to identify unreasonable Orders and check them  automatically or manually

I wrote to the bank expecting that they will fix the vulnerability and thank me. I thought they probably pay me a little amount of money, which I intended to donate to an organization helping children suffering from cancer. 

The bank thought that they new better: They ignored my message.

Do I post Spam?
I will list my writing experience and you will answer the question.

My writing activity includes:

1. An article based on my Masters Thesis in Psychology, written by me and my thesis moderator. He is a  university Professor. The article was published in Hebrew in a local Scientific Journal.

2. Many articles on various Information Technology topics, which were published in local and European journals and local Web Sites. 

3. Three blogs. The other two are written in Hebrew.

4. I participated in ebizq SOA Forum writing my opinion on questions asked.

5. I wrote about 100 articles in the Hebrew Wikipedia. A month ago I received a price for improving a stub article, during a competition for improving stub articles.  

6. More than hundreds of posts in Facebook, Twitter, Googl+ and Linkedin (including many Linkedin groups).
Some of the posts received Comments, Likes and Shares.
 
Yesterday, I tried to post in Linkedin. I received a message that because someone (or some people)  reported that a post of mine is Spam, the post will not displayed, but will be submitted to The Group Leader, who will check the post and decide to publish it or not to publish it.

What is the Problem?
There are two Linkedin Groups types:

1. Groups whose policy is to moderate posts prior to  publishing.
The group leader is aware of posts he has to moderate. He will probably moderate the posts shortly after they were submitted.
As a member of many Groups of this type, I submitted posts which were published. Nothing was changed due to flagging a post of mine as Spam.

2. Groups whose policy is to publish automatically
The problem is that in those groups the group leader is unaware of Posts waiting moderation. According to Linkedin message it could take weeks until they approve my post and publish it. 

Timing could be a significant factor for Posts Publishing.

Linkedin message send to me, recommended applying to Group Leaders and asking them to remove the restriction, so my posts could be published automatically. 

I am a member of too many Groups of that type. I prefer to write this post instead of applying to all groups leaders. 

It is not a personal problem. Any body's viable posts could be marked as Spam intentionally or unintentionally.

Is Linkedin Spam detection limited?
The answer to this question is Yes
Linkedin should use the approach used by Anti-Spam Software, based on Bayesian algorithms.  

If someone posted many posts and get Likes and Comments do not hurry to restrict him, just because one or few readers marked it as a Spam (intentionally or unintentionally). 

On the other hand, if someone posted only 5 posts and many people marked every post as Spam stop him, by a mechanism similar to the mechanism used to stop me or even more extreme procedure.

It should be a gradual process based on additional information.

My Take
It looks like Linkedin's approach resembles the approach the Banks in example 1 and example 2 adopted.

According to the answer they send to me, when I suggested that they will improve their Spam detection algorithm, they stick to the current approach. 

As anyone can mark any post as Spam, probably they may change their algorithm only after someone will intentionally mark as Spam many posts by leading contributors. 

Friday, March 14, 2014

Customers Typology: The Covering Customer






Before reading this post, please view the Duck and Cover video from Youtube. This video which was uploaded on 2008 is based on USA DOD's video from 1951. I could easily find the original, however the original is about 9 minutes video. The 2008 version is a little more than 2 minutes. 

The covering pattern appearing in the video is similar to the Covering Customer's behaviour.

What does the Covering Customer tries to cover?
Prior to answering the question, let me tell you that he is different from other customer types. 

He does not know everything. He knows that his knowledge is very limited and he has to hide this fact.

Make no mistake, he is not The Self-deprecating Customer. If being a Self-deprecating customer, is the approach which maximize covering, he will stick to this behaviour type. 

He is not the classic Social Customer. He will be a Social Customer, if and only if this approach will help him to cover.
He will be anti-Social, if this approach will guaranty covering.

Similarly, he is not The Paralyzed Analyzer. Usually he is far from being a good analyzer. However, when it comes to hiding his limitations he suddenly become the ultimate Paralyzed Analyzer.

He is not a Captive. You may wrongly assume that he is a Captive Customer, because dependence on a vendor, could hide his limitations. As soon as the vendor approach will not fit to his agenda, he will be not be a Captive anymore. 

He will never be The Good, but could be The Bad or The Ugly.

What does the customer tries to hide?
He is trying to hide: Limitations and/or lack of Knowledge or Understanding and/or inability to Execute. 

He would like to continue Business as Usual. He would like to make mistakes, including those he knows that they are mistakes.  
His point of view is: Errors and Mistakes are good, as long as they are not new mistakes or errors.
He is Change averse guy, who would like to preserve the current state as long as possible.

I already posted that the term Customer does not refer to a single entity in the Organizational context.
A Consultant could have multiple Customers in an organization. However, if the Covering Customer is a dominant player he cam determine the success or failure of the consultancy assignments.

The Covering Customer may refer to multiple people in the same organization. In extreme cases Covering is built in the Organizational Culture.  

An Example

The Consulting Assignment was requested by Business Users. They were not Covering Customers. They just want Information Technology Systems adequate to their requirements and flexible enough to support Business needs changes.

I prefer Win-Win scenario rather than a Win-Lose scenario. In a Win-Lose scenario, I will be payed for my work, but the customer will get no Value. 

The Covering Customer was a key Information Technology figure, who tried to cover his responsibility for the current improper system, which was going to be replaced by a new system. 

Covering by Limiting Changes
The Covering approach was based upon changing the code without Analyzing the System.
The conclusions of not Analyzing the System could be:

1. The System addressed the customer's requirements properly when it was build a decade ago. 

2. The System is Agile and flexible, so changes were incorporated easily or the system still address the requirements without significant changes.

Nothing could describe the System worse than the conclusions above.
Prior to asking my services the Customer told me that the system did not address properly the requirements when it was built. He also told me that it is inflexible.  

I interviewed other Business Users, and discovered that my Customer view was a consensus.

The dispute between the Covering Customer and me is analog to a dispute between two engineers:
One argues that a building should be build from the foundations. The other argues that it should be built from the roof without foundations at all.

Anyone will understand that the second engineer is right. However, a non-human being just landed from Mars or Venus, who had never seen a house, he may think that the first engineer's view is as plausible as the second engineer's view.   

Elderly Business Users resemble the one just landed from Mars or Venus, as far as Information Technology is concerned. They may think that the Covering Customer's view is not as unique as it is.

The Business User's dilemma
His IT knowledge and understanding were limited. In addition, the Covering IT guy is the one who will have to maintain the system for the following years.  

The Covering Customer told the Business User that coding before analyzing a system is the standard approach in the organization. 
I assume that he was wrong, however even if he was right we were still on Earth and not on Mars.

Waterfall vs. Agile
You should not confuse between my disagreement with the Covering Customer and Waterfall vs. Agile Development approaches. 

His approach has nothing to do with Agile Software Development. Agile approach advocates partial analysis in order to identify the highest priority components. These components are analyzed and developed.
The Covering Customer advocates no analysis at all.

Consulting to Covering Customer
I encourage my students to make mistakes. It is a good way to  learn. The problem of the Covering Customer is that he will never learn from his mistakes.

Do not talk to him about the company's goals, values or benefits. He does not care. Covering is his only goal. 

The best approach is to work with other people in the organization. As you already noticed from the example appearing in previous section, sometimes it is not a valid option.

If it is not a valid option, you have to chose the least bad alternative:  

1. No Consulting to that Organization
2. Failure
3. Changing the Covering Customer mindset 

Public Cloud Core Banking: Hype or Reality? - Revisited

  More than 4 years ago I was asked if Public Cloud Core Banking is a Hype or a Short Term Reality? If you had read the post, you would prob...