I first read about Market Norms and Social Norms in Dan Ariely’s Predictably Irrational. This concept is well elaborated by Dan in chapter 4 titled “the cost of social norms”. This post extends this idea and explains how one should leverage social norms in software product development.
Let me start by explaining Market Norms and Social Norms. Social norm is behavior that we exhibit when we are obliged to do something. For example, when your friend asks you to help him move his furniture, this comes under social norm. You don’t get any immediate benefit on doing this, expect for the simple pleasure of helping someone. If you meet not so well known neighbor and he says is willing you pay you money for moving his furniture, this comes into market norm. These are two completely different scenarios. Whenever you talk about money, you are in market norms. The way a person reacts to market norms is completely different from the way one reacts to social norms. Mixing social norm and market norm can be dangerous depending on the situation. For example, if your very close friend happens to say that he will willing to pay you for moving his furniture, you would be offended by this. In this case your close friend is trying to offer money for a social norm, which is unacceptable to you. On the other hand, if you boss asks you to work for one month without a pay, you will be offended by that too. The reason – market norm is completely driven by money. The main motivation in market norm is money. The motivation is social norm is many – responsibility, respect, obligation, etc. Dan in his book says we live in market norms and social norms in parallel. He also stresses that social norms are extremely powerful. One example, is open source software that is largely build by developers driven by social norms.
Lets now talk about Product Development where people are more often than not driven by market norms (at least in most of the companies). One key aspect of product development is quality. You can hire the most expensive programmers/testers to build high quality software. High quality comes at high price. Many may argue saying that high price need not necessarily mean high quality. Agreed, but usually high price does imply high quality. All we are talking about in this example is market norms – expensive programmers/testers. You can also achieve nearly similar quality with lesser cost. This can be done by factoring a little social norm into the market norm. Say you hire less expensive programmers/testers and add a little social norm to the situation. You can do this via empowering the programmers by giving them more freedom and by making them feel more responsible. This way, the programmers will be obliged to live up to their expectation and do the little extra to ensure they do their best. Adding social norm to the market norm can do wonders. The amount of social norm that you should factor into market norms needs to be carefully decided. Too much can be dangerous and can have other side effects.
Many companies are factoring social norms into market norms. This is done in many ways, like pampering employees with various benefits, flexible working hours, working from home, etc. One key factor that helps factoring social norms into market norms is the flat organization structure. A flat organization means many employees report to a single manager. This drives micro management out and ensures that employees are empowered to make their decisions. Once employees realize that enormous trust and responsibility has been given to them, they are immediately pushed to social norms. They become obliged to live up to their expectations. Factoring too much social norm into market norms can backfire. During periods of lay offs it becomes extremely difficult to lay off when social norms are high. Ideally, a good mix of social and market norms must be achieved and doing that is an art.
There are several software development methodologies that are used today and each has its own benefits. Ideally speaking, a software development methodology should try to factor in social norms. Agile Development Methodology is one such methodology. Thanks to Shreekar Inamdar for introducing Agile. In Agile, developers are empowered to make their decisions, thereby bringing social norms into market norms. This is definitely one of the reason why Agile is so popular. There are enormous benefits of using Agile for which I will dedicate a separate post later.
Ironically, both Flat organizations and Agile are used several famous and popular IT majors. They are obviously trying to harness the power of social norms, probably implicitly.
