Redmonk analyst Stephen O’Grady uses Facebook and Twitter as a guide for the future of development. Is your company ready to follow the prescribed guide?
In the post “Beyond Cassandra: Facebook, Twitter and the Future of Development”, O’Grady reaches the conclusion that since enterprises are beginning to realize that data is their most valuable asset, enterprise IT departments are should revisit their application development methodologies. Specifically, only invest application development resources in applications that will differentiate one’s business from their competitor.
O’Grady points to the fact that the vast majority of enterprises historically wrote their own CRM or ERP applications, but don’t do so anymore. Enterprises are differentiating elsewhere in the business process, or have found ways to differentiate by customizing off the shelf, and increasingly, open source, packages.
Some may argue that Facebook, Twitter, Google, Amazon and Yahoo, whose application development practices O’Grady uses to draw his conclusions are, frankly, a little different than a typical enterprise. But, these firms built strong businesses using development methodologies that have trickled down into the typical enterprise.
The use of open source, the emphasis on good enough, or the notion of convention over configuration, or the use of dynamic scripting languages, are all finding their way into a traditional enterprise. These development trends grew out of web native firms. If next generation enterprise application development is to resemble the practices of web native firms, O’Grady suggests that your enterprise should be ready to:
- Default to Open Source
- Use Permissive Licensing
- Use Third Party Project Hosting
These are three of the five predictions O’Grady makes. Let’s consider these three as they will be the most difficult for enterprises to accept.
Plainly put, if there is no competitive advantage in developing an application in house, look to open source it using a permissive license into a third party hosting site or foundation such as Github or Apache.
A permissive license, such as the Apache License, and external hosting will help others, possibly in your industry, find the application, and fingers crossed, contribute to evolving the application. The end result is that each enterprise using and contributing to the application benefits from spreading the development costs.
Well, that’s the theory. Putting it into practice is an altogether different issue.
This new development model requires a major shift in line of business and IT decision maker mindset. It’s one thing to use an open source product, such as Linux or Alfresco, within your enterprise even whilst knowing your competitor is doing the same. It’s entirely different to open source, for instance, your custom developed partner on boarding application, and watch your competitor being to use the application also.
Considering the level of purchased applications in the enterprise, the only true application development occurring should be on applications that differentiate the enterprise from competition. Is that truly the case at your company – you can be honest; your CIO isn’t reading over your shoulder.
Through no intended malice, enterprise IT departments continue to devote application development resources on projects that differentiate the business, but not to the degree that a project higher up the application stack would.
Let’s assume you take a serious look at your application development investments and, as O’Grady suggests, validate that they increase your company’s differentiation, and by how much. This results in an ordered list, with high value application development projects at the top of the list. What can you do about the projects at the bottom of that list?
Before open sourcing the project, consider whether it would in fact be easier stop internal development on the project and use an open source or commercial off the shelf product in its place.
If open sourcing the project is the desired route, ensure that your company actually owns the Copyrights to the source code. Some enterprise developers unwitting utilize open source code within internal projects without consideration for the associated license. They assume, since the application will never be distributed outside of the company, the requirements of Copyleft licenses will never be triggered. In parallel, reach out to others in your industry to gauge interest in contributing resources to the potential open source project.
I almost dismissed the idea of competitors working on an open source project together. But then I remembered this happens all the time in the software industry. For example, IBM and Oracle both work on the Apache HTTP Server project because it allows both companies to save development resources versus building an HTTP Server internally. The saved resources are used on higher value products higher up the software stack. Also, if world wide banks are willing to create a technology buyers consortium in order to negotiate more effectively, why wouldn’t these companies collaborate on open source application projects – especially for lower value applications?
Follow me on twitter at: SavioRodrigues
PS: I should state: “The postings on this site are my own and don’t necessarily represent IBM’s positions, strategies or opinions.”
06.04.10 at 5:15 am
Dear Savio,
actually competitors working on OSS projects together is a quite common fact; one of my favourite examples is Philips Medical and Agfa, fierce competitors on medical devices, and cooperating on an HL7 toolkit used by both.
As for releasing as open source, it is unfortunately not such an easy choice. In particular, license selection and deciding what governance model to adopt are quite complex parts of an open sourcing project – despite the overall importance.
As for the consortiums, I am a big proponent of technology consortia like Kuali and Sakai; with proper management, they have demonstrated many times their value. However, creating one is not trivial, and requires significant effort and resources before it becomes more or less self-sustaining. Eclipse comes to mind (being one of the most successful examples): it required quite an investment and lots of time.
06.04.10 at 7:31 am
Hi Carlo, yes totally agree about the complexity of choosing to open source and actually making it happen.
Good examples re. Philips Medical & Agfa. As you point out, it’s a lot easier to open source and jointly work on lower-level things like toolkits with competitors. SW vendors do it all the time ;-)
06.04.10 at 6:32 am
“if world wide banks are willing to create a technology buyers consortium in order to negotiate more effectively, why wouldn’t these companies collaborate on open source application projects”
They already do – AMQP/Apache Qpid for example
06.04.10 at 7:35 am
Hi Matt, agree, but AMQP is low level middleware. I’m talking higher up the stack.
But in reality, if companies do collaborate lower in the stack, it’s only a matter of time before that cooperation begins to make more sense higher up the stack.
06.04.10 at 7:50 am
Hi Savio,
Sorry my initial response was a bit blunt… I agree with Stephen that in Twitter/Facebook et al we are seeing the early adopters of a new attitude to the role of open source in app development – in fact I wrote something along similar lines a few weeks before http://blogs.the451group.com/opensource/2010/04/26/how-soon-is-now/ Obviously AMQP/Qpid is low-level stuff but I think if the banks are successful with it we will see them default to open source for other projects. I also know of other businesses that are considering following Twitter/Facebook’s example
06.04.10 at 8:51 am
Hi Matt, no worries at all!
Thanks for following up. Will be interesting to hear more about the businesses you mention (to the degree they are ready to go public with the info).
06.04.10 at 3:48 pm
[...] Ready to open source your apps to differentiate? « rand($thoughts); [...]
06.28.11 at 1:01 pm
Nivista is Custom Software Development Company offers services in .NET Application
Development, Dynamic CRM, Sharepoint Application Developement, Business Intelligence
Reporting, OffShore Software Development etc. We are expertise in providing IT and ITES
solutions. Custom Software Development Company
05.26.12 at 8:17 pm
If you could message me with any hints about how you made this site look like this, Id be thankful.