Friday, February 24, 2012

Open Source Software and Cloud computing


Software is the lifeblood of every business.  Without it there would be no need to have computers because there would be nothing to do with them.  Over the last 20 or so years computing has been tied to the Microsoft platform and in turn the applications that were written for them had a Microsoft focus. Unix operating systems tried to vie for that space in the data center but their use as started to decline in the last few years

The Changing Landscape
 
In the last 3 or 4 years there has been a gradual shift in the desktop space from PC’s being Windows based to a significant number of Mac based systems.  One of the main reasons that Macs were not as widely used before now is that most applications were being written for a Windows platform.  There has be a gradual trickle of users that is starting to turn into of flood that are using a non Windows based PC.  A couple of years ago you would see the occasional Mac that was some creative guy snuck into work but as of late it seems like everyone is moving to a Mac.  Some of the larger organizations that I work with, such as Cisco and Oracle, allow their workforce to choose between using a PC and a Mac and a lot of people are choosing Mac’s. With the launch of the IPAD a couple of years ago it seems like this process has accelerated.  This last weekend I was at the mall with my kids and I just happened to stop into the Apple store was blown away by the number people there. 

So what does Apple have to do with Open Source software?  Open source software existed before this latest Apple craze.  Linux software has been around for years.   In the past PC’s were the way to go because of the choices of vendors that sold the software and in turn the software choices were much broader.  In essence buyers were tied to a Windows operating system and the software that ran on it.  Sure there was software that was being developed but not as much as we see today. The hesitancy of computer users from 10 years ago to use something different has all but disappeared.

A New Way to Look at Software

Companies like Apple, Google and Facebook have changed the way we think about software.  Google proved that we could basically use software anywhere and that there was a business model where people could make money without charging for their software.  Facebook put the trend of sharing everything and interacting in a social way into hyper-drive.  With the advent of the digital marketplace that Apple created through iTunes and through the App Store (or modeled off what was created for the underground peer-to-peer market that Napster made famous) 1000's of new applications are being created each day. Last night I attended and event where someone mentioned that 600,000 apps existed in the App Store.

The significance of this is there are a lot of people who have started to create new content (including myself) for a new and different generation of users.  A  lot of people at large companies or small start-ups are trying to create the next big thing but have limited resources to do it. 

Cloud computing and Open Source software has emerged as a solution for this space.  After the dot.com bubble burst people weren’t as willing to just give out money as readily and with the down economy of the last couple of years entrepreneurs have had to be more creative in stretching their funds.  Also with 600,000 other applications that are competing for our attention it is hard to justify a lot of money for starting an unknown venture

Cloud computing has provided a hardware cost savings to organizations but other costs such as OS licenses (namely Microsoft) and other software licenses were an additional cost users wanted to avoid.   There are a lot of organizations that need software but didn’t, or couldn't,  pay for software like web servers, CRM systems, email, databases, blogging software, etc. 


Open Source Software Challenges

While commercial applications may have been available many small companies started to look at Open Source as a way to get established while preserving capital.  In doing this several problems have popped up.
  • Free software is great but when you are using Open Source software there is now no support desk somewhere to call when you have a problem.   
  • There may also be limited documentation on how to use a trouble shoot the software.  Open Source support is generally done as community support so it may or may not be good depending on the organizations that are involved in the code.   
  • Setting up the software may not be intuitive.  Not only that but you may not know what patches need to be on the OS, or what other software may be needed to build a new application,  
  • And lastly which software can you actually trust. 
Emerging Solutions

Because of these problems groups of open source organizations such as Jumpbox,  Bitnami, and Turnkeylinux.org have started to assemble application packages together for the users.  Users then do not have to spend the time figuring out all the dependencies that are needed for the applications. Some applications may also use other software such as web services or databases to give the users more functionality.  So application packages from these vendors may have several pieces of software loaded in the images.  Users just take their image and load them into a cloud vendor. These packages also have the capability of being downloaded to local hardware as well so if a user wants to do this work at their site they can.

These solutions help users avoid some of the limitations of open source software.  Third party companies are also springing up to provide support services for some of these so of these Open Source applications.  Similar to Red Hat and Suse in the Linux market, companies like 10Gen (that supports MongoDB) and Cloudera and Hortonworks (that support Hadoop) have been created support services for the big data space.  Other vendors are popping up as well to provide a support model for other open source software.  This makes open source and cloud computing more palatable to larger organizations or organizations that have grown to a point where they need a better support model.    

Some of the types of the applications offered by these vendors include:

  • Blogging
  • Bug Tracking
  • Content Management
  • CRM
  • Customer Service
  • Database Management
  • Development Tools
  • Discussion Forums
  • Document Management
  • eCommerce
  • Education
  • Human Resources
  • Infrastructure
  • Instant Messaging
  • Network Management
  • Photo Management
  • Portal
  • Project Management
  • Security
  • Telephony
  • Ticket Tracking
  • User Management
  • Wiki

Some the commercial software vendors are also starting to have prebuilt packages for their customers.  Microsoft, for instance, has already started to put some of their applications into their Azure platform, such as mail and more companies will be following suit. 

We are just in the beginning of the Cloud frenzy but as the features of the cloud grow applications, and in particular Open Source applications, will play a significant role in shaping its direction.  

No comments:

Post a Comment