Tuesday’s Tip: 10 Suggestions For A Successful Open Source Apps Strategy (Based On Personal Experience Blowing Up My Blog)

Published on January 6, 2009 by R "Ray" Wang

Blogging Platforms Provide A Good Showcase For The Power And Benefits Of Open Source

Over the past 3 years, I’ve had the pleasure and privilege of experimenting with a variety of blogging platforms.  For my day job, I use TypePad and at night I build this blog with WordPress.  (Prior to that, I used Blogger.)  Without going into the pro’s and con’s of each platform, I can say that blogs are by far a great example of what can be accomplished with open source.  Each blog platform builds with an open source pedigree.  Delivery is via SaaS or on-premise.  Support comes from an active community of users willing to lend a hand to help the next person out.  An ecosystem of developers builds the latest and greatest widgets that can be added to the next release and extend functionality faster than any software vendor could ever go to market.  Early adopters take one for the team (TOFTT) and provide extensive testing and report bugs.  The benefits are definitely there and as an individual blogger, I’ve come to appreciate the community and group effort.

Personal Blog Crisis Highlights Potential Open Source Concerns For Enterprises

So while on vacation the last two weeks, I decided it would be a great idea to update to the latest version of WordPress 2.7.  While I was at it, I figured there’d be no harm in updating to the latest and greatest version of my Atahualpa Theme.  After 3 months of virtually no issues with upgrades and the application of widgets, I thought this would be just another simple upgrade.  Boy was I wrong!  In fact, I managed to both hose my existing database, restore the database via disaster recovery, and then blow up my existing blog again with a screwed up deployment of the latest theme.  Not apparent to most subscribers was the fact that the website had been rendered inoperable for 2 weeks.  While content could be viewed, no new content (i.e. links, comments, posts, users, etc.) could be created.   After a week of struggling to find the right post in a support forum, testing out the latest “fix”and failing miserably, learning codex for dummies, I ended up with a plea for help in twitter.  Thanks go out to Adam Metz, J A di Paolantonio, and fellow Forresterite Jeremiah Owyang in directing me to the right professional help – John Wiseman, who actually was the pro in troubleshooting what would become evident as some serious user errors!

Now all this makes me wonder what an enterprise who deploys an open source ERP or any enterprise app would have to do to:

  • Procure the right level of support
  • Determine the key selection criteria for an open source app
  • Recruit the right level of talent to maintain and extend functionality
  • Mitigate risks during upgrades or changes

Open Source Lessons Learned From My WordPress Experiences Applicable to Enterprises

Mea culpa is a Latin phrase that translates into English as “my fault”, or “my own fault”
SourceWikipedia

So what I’m about to list as a top 10 is probably not new to open source aficionados so don’t flame but feel free to add your comments.  Truth be told – it’s a list of many things I failed to do – some items were advice I often gave my clients about enterprise apps in the day job.  So, learn from my mea culpa, I certainly have!

  1. Choose a widely supported platform. Thanks to the sage advice of friends, I started with a solid hosting provider.  Props go to Media Temple for real live person support and a good knowledge base.  Equally important is an application with rich support and strong community.  I had evaluated 5 major blogging platforms and ended up with WordPress because of the richness of the tool, support community, and the wide range of widgets and theme options.


    Personal
    lesson learned: Reduce risk by choosing a widely adopted platform.  You’ll get the benefits of a community ecosystem.  You can’t pay enough money for that kind of level of support.

  2. Keep abreast of release changes. The pace of innovation is much faster with open source projects.  Releases often follow agile methodologies with frequent updates from small but powerful teams.  With so many releases and bug fixes in play, users should keep abreast of changes on a weekly basis, at a minimum.

    Personal lesson learned: The process of cramming 3 months of change information in a week was just insane.  Now I keep an RSS feed of the themes, widgets, and application updates.

  3. Contribute to the community as much as possible. The power of open source is with the community.  This assumes an active and vibrant community that benevolently shares information.  This collective urban tribe requires active participation and that means you should contribute as much as you can when you can in an effective manner.

    Personal lesson learned: Understand the community dynamics by trolling for a few weeks. Then get involved where you can with that perspective.  Contribute early before you need help and like other community organizations, you’ll find a receptive and thankful core group with a long memory.

  4. Upgrade only when needed. No need to upgrade to the latest and greatest release.  Focus on key requirements and upgrade when requirements pop up.

    Personal lesson learned: Ignore all those tempting red icons that tell you to upgrade.  Consider upgrade when you have time set aside for extensive testing.  You’ll live without the latest and greatest widget!

  5. Adapt a less is more philosophy. With so many different widgets from different programmers, reduction in complexity will work in your advantage.   Coding standards vary and interest among developers range from personal hobby to professional.  Certification programs are nascent and most deployment is based on reputation.  Keep in mind, most open source products are free.  So quality is based on personal pride.

    Personal lesson learned: Moving from 25 widgets down to 10 core widgets makes isolation of bugs and testing much easier.  Less is truly more in the long run.

  6. Maintain separate environments. Very obvious to an enterprise to have test and production.  Not obvious to an individual despite his/her background in the industry… ;)  Development environment would also make sense for those with heavy custom dev resources.

    Personal lesson learned: Test and production now up and running.  New widgets and upgrades will be tested before roll out to production.

  7. Test, test, test. This goes without saying.  You can never test enough.  Key approach is to test in isolated parts as widgets, themes, and other new code is introduced.  If you can find automated testing tools, put them to use!

    Personal lesson learned: Introduce new versions, widgets, and themes one at a time.  Test between new introductions.  You never know what will break.

  8. Backup often. Mistakes will be made.  However, a good backup plan minimizes data loss and is a good risk mitigation strategy.  Schedule automated backups as often as possible.

    Personal lesson learned: Backup all components on a frequent basis.  Make all backups before upgrades or new installations.

  9. Evangelize success. As with identifying bugs, sharing successful strategies helps strengthen the community.  Successful adoption of open source is based on best practices and experiences from others.

    Personal lesson learned: You can blog, tweet, or use any other Web 2.0 tool or social media approach.  Share the wealth!

  10. Don’t be afraid to seek professional help when all else has failed. Despite all the richness of the ecosystem and support, sometimes it’s no longer possible to do-it-yourself (DIY).  You may face scenarios where you are ahead of the curve and there is no support forum for your scenario.  In some cases, consider professional organizations delivering support as part of the selection criteria.

    Personal lesson learned: Keep a running list of experts on your platform.  Continuously seek references from peers about key resources.

The bottom line – open source will take some work but could be an alternative in today’s economic climate

Heard enough?  Contemplating open source for your enterprise apps?  Given today’s economic climate, there could be a greater case and trend for open source.  If you take the plunge, keep in mind the lessons learned and be prepared for some DIY and a certain level of ambiguity.  It can work, you just need to do your homework like any other packaged apps strategy. However, I can see open source working best in enterprise scenarios when there’s a common and dominant “competitor”  such as the case in operating systems with Linux vs Windows.  Enterprises need one throat to choke but maybe with this economy the views may be changing.

Your POV.

Have you had similar experiences with open source and support for your open source products. Post here or send me a private email to rwang0@gmail.com.

Copyright © 2009 R Wang. All rights reserved.

  • Another response for Hank: Have a look at xTuple ERP. You can download the full client, and either connect it to a locally installed copy of the open source PostBooks Edition, or a hosted demo of the commercially licensed Manufacturing Edition. There are also a couple dozen videos of xTuple ERP functionality at http://www.xtuple.com/demo/video.

    Ray’s list is right on point. That’s why, while there are thousands of people experimenting with xTuple and other open source ERPs on their own, when it comes time for implementation, production support, and managed upgrades, you really should work with the vendor or one of their partners. For example, we offer what we call XTN (xTuple Network) services, which includes offsite backups, nightly upgrades, and even buckets of hours to help smooth out the inevitable issues that come with upgrades.

  • Erica,

    Good point! I’d imagine a security update is a significant requirement so Point 4 is valid if you feel security is key =) This brings up a good point. How do you know what security features are provided that are mandatory in open source? is there any kind of registry service?

    Ray

  • Great advice! I have to disagree with point 4, on updating only when needed. In the security world, we advise people to update software ASAP as soon as it is available and feasible without endangering core functionality. Why? Because malware and exploit authors use new updates to reverse engineer security holes that the updates patched, and immediately (often within hours) start targeting websites running the outdated versions.

    In 2008, for example, there were several waves of massive hackings of non-updated WordPress sites. The repercussions from a hacked website can be dire – not only can your or your visitors’ computers become infected with trojans, password sniffers, etc., but you can lose trust and good will among visitors and can receive search engine penalties. For example, Google is well-known for placing warnings in its search results for sites it’s discovered to be distributing malware (even inadvertently), which can lead to huge drops in traffic and any traffic-dependent income.

    It can help to be sure your site doesn’t reveal its exact version, because malicious hackers search for sites that, essentially, advertise themselves as hackable by declaring what version of software they’re running somewhere in their templates. That won’t guarantee safety, but it can help some.

  • In response to Hank Jefferson’s inquiry, please have him take a look at an open source project called Open Bravo, its a mature ERP system, the best one that I’ve seen and I am presently in the midst of giving it a go.

    Pass along my contact info if they can use some help with it.

  • We’re trying to figure out if it makes sense to use an open source ERP. We run a very old AS/400 RPG ERP. Don’t even know the name. We don’t have the money for SAP or Oracle. What options besides open source should i consider. What’s a good way to evaluate. I’ll send my contact info by email.

    Hank
    IS Manager

  • Good post, Ray. It’s interesting how those of us involved in enterprise IT for so many years can easily forget some basics when it comes to our own personal computing. Thanks for itemizing these lessons learned.

    –Frank

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Related Posts