gianpaolo's hierarchy of software needs

Most of us know Maslow's hierarchy of human needs


As its name suggest, Maslow's pyramid illustrates a hierarchy of needs than humans seek. It is only once a layer is taken care of that one concentrates on the next layer. For example, it is only after the needs for survival (breathing, food etc.) are taken care of that one is interested in the needs of esteem or actualization.


In a shameless ego-trip I define today gianpaolo's hierarchy of software needs :)




Akin to the Maslow's rationale, my assertion is that once software has fulfilled the need of a layer, software will evolve to fulfill the need of the following layer.


The most basic need for software is computation, this wsa the first usage of software. Typical example of this are the early computers used to send the man to the moon, or big number crunching scientific applications.


Once the compute need is met, the next level of need for software is to connect. It became important from an early stage to connect computers; network protocols such as TCP became popular and fullfil that need. More recently more complex "bit mover" applications such as an ESB fulfill that need.


Once the need of computing and connectivity are met, the next level is Combine, i.e. creating applications from building block pieces. SOA (the way it is traditionally understood) is a classic example of Combine. Faceless services are combined to offer an application with limited user experience attached. At this layer, the importance is in the creation of the composition not how a user consumes it.


It is only in the following layer: Experience that the user finally gets into the picture. At this layer the need is to fulfill the user experience, the focus is on experiencing the applications created in the combine layer. Rich visualization, new UI metaphors, mashups (?!) fullfil this layer's need.


The last layer only relevant if all the layer underneath are fulfilled is the need of sharing and social interaction. Folksonomie, tag cloud, blogs,, flikr are all example of software at this layer.


So according to this conjecture, the Web2.0 trend is simply a movement into the Experience and Sharing layer, now that the needs of Computing, Connecting, Combining are getting mostly met.


Do you buy that? Comments/Feedback very welcome.



I agree that this is not as profound as Maslow's pyramid of needs and can be seen as quite random but it definitively beats the hell out of watching 2 girls and 2 guys being eliminated from American Idol (which was the alternative I had tonight) :)