Social Networks : the third level of immersion

(French version)

The pitch: Enterprise implementation of social networks is the third step of a gradual immersion of the enterprise into the internet culture. This immersion occurs because there is the obvious truth : web works with amazing speed on an amazing scale.

I have been lucky enough to witness from the inside the major changes the IT industry have been going through in the last ten years. What is really interesting within the scope of Enterprise 2.0 is that these changes involve the adoption of tools, solutions and approaches that really came from the internet culture.

As Enterprise 2.0 activists, we keep on wondering where to find meaningful experience of internet culture adoption in our company. The IT department is the place to look because they already been through the first 2 steps of immersion ….

1 – Enterprise Systems foundations

In the IT world, the productive workforce is behind this revolution. Developed by geeks on their own time, in flat organizations with leaders who have emerged naturally, Open Source Software (OSS) has completely changed the IT business.

OSS market share

Who would have thought 20 years ago that an operating system created by a bunch of hackers (Linux) would have such a market share in operating systems for large banks and insurance back-end servers ?  Who would have bet a penny 10 years ago that Firefox would have taken about 25% of the internet browser market share to Internet Explorer? That the most popular HTTP server (Apache Web Server) in the world would be free ? That most popular Integrated Development Environment would be free and hackable (Eclipse). That the White House would adopt an open source Content Management System for their web portal (Drupal)?

OSS success reasons

The reasons why open source solutions have been so massively adopted are multiple. Quality, efficiency etc … But the main one is the Darwinism of the internet : the solutions that survive are the ones that prove to be the most adaptable. Free software is open to anyone to participate : in order to survive, it has to be more adaptable than a solution locked by a publisher to a limited number of in-house developers.

Emergence of standard IT architecture for solutions developed by distributed teams

It’s worth mentioning that in terms of software architecture, the successful solutions have many similarities. The most flexible and modular software solutions has survived. They are built around a kernel offering the possibility of many optional plug-ins. Thus anyone can develop new peripheral add-on features independent from one another.

This is the architecture principle behind Linux of course but also Eclipse, Firefox or the application server JBoss (solution of French online taxes system, market leader ahead of vendors such as IBM or Oracle), .

OSS Developers rule

Even though major software vendor have stepped into the OSS market of the Java Enterprise Solutions (which is the technical area I know the most), it is still the open source community that rules the technical solutions.

As I mentioned in my rant against bloated SOA : Spring became the new J2EE (over industry standards), Hibernate became the standard for J2EE ORM mapping (again over industry standard JDO). In other words : open Source Solutions started by single developers, each solving specific problems, have been massively adopted  by the developers community and became de facto standard ahead of bloated theoretical solutions agreed by a consortium of major vendors.

As Martin Fowler reports it :

Tim Bray contended that the key decisions on technology are made by the programming community. (…) The reason we have so much bloatware in IT is because IT purchasing decisions are usually made on golf courses by people who have lost meaningful contact with the realities of software development.

2 – Project Management

Building on the success of the implementation of OSS in the enterprise IT, the productive forces have started to think about project management within the company. And a number of embarrassing questions have been asked.

Why do we concentrate so much on the process and so little on productivity ? Why so much time is spent on documentation (specifications) that are subject to interpretation, while these artifacts will be useless during the life of the product? Why do we waste so much time building contracts rather then trusting each others ?

Why phases of study, analysis, development and validation of products and services are so strictly defined ?

Why should we wait so long before realizing that what we do does not match the business needs ? Or that it does match the needs identified 18 months ago but that the initial target has moved ?

Why not focus on simplicity rather than designing systems to manage the complexity ?

How come everything goes so well and so fast when we’re developing software for free on the internet and everything becomes so slow and complicated when we develop for our company ? Why not getting real , man ?

Agile adoption issues

Major players in software engineering meet in 2001 and wrote the manifesto for agile development.

This manifesto fell ill. It is considered with a lot of caution by a generation of managers who just get into the new the web techs (led by developers, ouch). These managers had to adapt to the Java platform, which is the core of 70% of new IT projects since the beginning of the century. A generation of leaders not so keen to challenge their methods despite the disappointing results : in 2003, between 65 and 80% for enterprise Java projects are failures according to Scott Ambler.

Reasons of Agile success

This generation nevertheless had to adopt Agile methods because, again, it does deliver results.

Pragmatism and performance of the implementation phase, adequacy between what is delivered and the constantly evolving expectations, visibility on projects progress throughout all phases of development, well-being of the teams thanks to constant user feedback and overall project visibility : all combine to make Agile methods the most adapted ones for the constantly evolving context of IT development.

3 – Communication and knowledge management

For IT teams, after OSS and Agile project management methods, Enterprise 2.0 solution is the natural third step of enterprise immersion into the internet culture : the XXIst century way of getting things done for distributed teams.

What makes me think that this transition is inevitable, despite the rather considerable impact, is that executives are thinking about it. According to Forrester, 49% of the 2008 initiatives of CIOs of Fortune 500 companies focused primarily on collaboration.

They just hesitate as they are not sure how to handle this. Indeed, the problem remains the adoption in the enterprise. But there are teams around who have experienced that already in their daily work and within your enterprise.

It’s your IT people : they have adopted first OSS solutions, then Agile Project Management methods : they already have tested the amphibia nature of your organization. Just ask them how it went, they’ll be happy to help.

Leave a comment