Top 20 opensource software of 2012
1. Movable Type
One of the first widely used blogging systems, now an open source project, Movable Type mixes blogging with site-management functions to support administration of multiple blogs and multiple websites from a single console. Its high-security architecture makes it less vulnerable to attacks, its template language is sophisticated and powerful, and it can generate pages either statically or dynamically, depending on your needs. The newest version adds an enhanced in-browser HTML editor, support for nginx servers, the PSGI server interface, and site-path restrictions for hardened installations.
WordPress is the single most widely used blogging platform, bar none, and for good reasons: It's easy to set up, it updates and maintains itself, and it has a rich culture of third-party plug-ins and themes. Most important, though, WordPress has been put together with the blogger, rather than the programmer, in mind. It does benefit from some careful post-install tweaking for performance and security, but once that's done, it serves as a platform on top of which a great many different kinds of sites, not just blogs, can be built.
If the likes of WordPress and Movable Type are too simple or closed-ended, consider Plone, an industrial-strength content management system built on top of the Zope application server and the Python programming language. In addition to blogging and page/asset management, Plone includes events and calendaring, user accounts and discussions, and integration with directory services. Dashboard views can be based on user-group membership, to customize internal views based on department, for instance. Plone is also up-to-date with modern Web standards (HTML5, jQuery, and so on). Additional functionality comes through a whole galaxy of extensions sold or provided by third parties.
A halfway house between the ease of WordPress and the power of Drupal, Joomla powers sites like Linux.com and the United Nations. The general flavor of the program is reminiscent of Drupal, with modules for various content types. But the WordPress-ness of Joomla shines through in the user-friendly interface, the rich culture of add-ons for the platform, and in the way the program and its extensions are all able to keep themselves up to date.
If WordPress is what Web designers choose, Drupal is what Web developers choose. The highly pluggable, widely deployed CMS is the stuff of many community and corporate presence sites alike. The strength of Drupal is that there is a plug-in for everything and anything. Drupal can provide out of the box what many of the largest CMS and custom corporate presence efforts take hundreds of thousands or millions of dollars to provide.
WordPress might be the most common content management system in use today, but that doesn't make it the best. For a flexible enterprise solution, look to Typo3. Of course it has the basic CMS features, such as predesigned templates, a WYSIWYG editor, built-in search, and a Web UI, to make it all work. What sets Typo3 apart from simpler alternatives like WordPress is support for AJAX drag-and-drop to rearrange pages in the back end, fine-grained permission controls that can be applied on pages and extensions, dynamic menus, built-in image editing, and management of multiple sites under one administration interface and one set of log-in credentials.
Enterprise content management is essential for most medium-sized and large companies nowadays, not to mention government agencies. These companies have Sarbanes-Oxley requirements, as well as HIPAA and maybe FERPA to contend with. While the "freemium" open source business model is still in place, the number of features that are present only in the enterprise edition (such as JMX MBeans) is dwindling. Alfresco 4 adds Activiti workflow, support for Apache Solr as an indexing system, and support for Google Docs, Twitter, and other social integrations. But it's the records management, SharePoint replacement, and open source Java that have us hooked on Alfresco.
Is marketing trying to stick you with website development and maintenance? I say give them a way to manage the website themselves and be done with it! To that end, let them use Gallery for posting their photos and images. Gallery features geotagging support, batch editing of images, drag-and-drop watermarking, LDAP and OpenID authentication, and simple blogging functionality. You can use Amazon's S3 storage system to hold all the images for use with Gallery -- just send marketing the bill. There's even a third-party iOS app called viGallery that lets users upload pics from the iPhone or iPad and edit Gallery albums.
Sugar is your only real choice for open source CRM -- so it wins. Although it is extensible and has many mods, the spaghetti-ball of bad PHP makes this a costlier proposition than it ought to be, and the professional support and hosting options could be better. The shared hosting at SugarCRM is so horribly slow that even a small amount of data kills it, yet it isn't profoundly cheaper than Salesforce.com despite not being half as good. That said, if you need basic account, contact, opportunity, and lead management, then SugarCRM can deliver them at a fraction of the cost of Salesforce.com -- if you host it anywhere but at SugarCRM.
A fork of SugarCRM, vTiger is a powerful CRM with a host of features. There's only one edition, which is free and open source. In addition to the standard CRM capabilities, it includes what would be considered premium features in other CRM apps: sales orders, purchase orders, invoices, asset tracking, SMS notification, PBX manager, customer portal, mobile access, and workflows, to name a few. The community is large and active, and there's a lot of good documentation, plenty of third-party add-ons, and a new project called Tigress for making modifications without requiring code change. An inexpensive hosted version and third-party integration with Front Accounting are also available.
Oracle's acquisition of ATG will probably be the pivotal moment in Magento's ascendancy. With the price of ATG looming larger, folks looking for an alternative might also seek out open source. Magento is the most popular open source option for setting up your shingle and selling online. It's clean PHP code based on the Zend Framework. But while it's easy to install and modify, high-end scalability requires professional expertise. We wish there were open APIs for extensibility, especially on Magento's hosted solution. It'd be nice if the PayPal plug-in were available on the hosted solution as well. Still, Magento beats having to use ATG.
Admittedly, a key part of this e-commerce platform's appeal is that it is not PHP. It's Ruby on Rails code, and it looks clean. Like Magento, Spree could use more in the way of open APIs, especially on its hosted solution. This model is where we look for disruption, and while Spree may be the commerce server of the future, the business model is straight out of the past. Still, if you are a larger organization, you can easily set up your own instances on a PaaS provider and get the appropriate amount of support. Then you will have a well-engineered, cloud-based, open source solution to commerce. The cost will be shopping cart or credit card integration.
There are plenty of open source packages for small-business accounting. We choose FrontAccounting due to the quality of the system, the people behind it, and the community around it. Aimed at smaller businesses, the system is built on a PHP framework, and it runs on the standard LAMP stack. There is no SaaS option available, so you have to host it yourself or use one of the partners if you want to deploy in the cloud. FrontAccounting has been around for several years, and it's reasonably mature. The documentation and forums are pretty good. You'll also find good prebuilt connections to other "best of breed" projects for the likes of e-commerce and CRM.
Feng Office is a very good collaboration tool. It can be used for easily sharing information, including documents with versions and comments, as well as other types of files. But Feng Office also shines with many other useful features like assigning project tasks, shared notes and discussions, scheduling meetings, and time tracking. The workspaces allow you to share information by department, by project, or with outside parties, such as customers, vendors, or partners. One of the things that sets this app apart is the ease of use and administration, yet it's still quite flexible. A hosted version is available for either testing or full-on deployment.
GnuCash is the standout favorite in the personal finance category. It's mature, with a large and active community. The documentation is good, and there are a lot of useful features. GnuCash even has rudimentary small-business accounting functions, and many people have tried to use it as an accounting program. But it falls short if you need to take care of inventory control, order entry, purchasing, or time tracking. Think of it as a free open source alternative to Intuit Quicken. It has good bank reconciliation features, as well as investment tracking.
Unlike some "dual license" projects, OpenERP provides only one edition of the software. Commercial versions add maintenance and support. The advantage of this business model is that you can start off with the professional version, then move back to the community version merely by dropping the services. (This is not typically possible with the dual-license model because different versions of the database make it impossible to "downgrade.") OpenERP is built on a Python framework that's easy to customize and extend. There are tons of third-party add-ons, almost all of which are free
Openbravo is a fork of the original open source ERP app Compiere, now owned and supported by Consona. However, unlike Compiere, Openbravo has better community support and has not crippled the community version. In fact, there's only one edition of the system for everyone. This system is built on Java and designed for enterprise scalability, but there is a trade-off in terms of complexity when it comes to installation, customizing, and learning. You'll need a good consulting firm with a lot of experience with the technology stack or plenty of in-house expertise. There is a good partner network, ecosystem, and a wealth of third-party add-ons.
Open source ERP is still in the early stages, and xTuple is one of the pioneers. The project is going though a major transition from the Qt4 UI framework to Enyo, an open source Web/mobile HTML5 toolkit that came out of the WebOS project and is sponsored by HP. xTuple is a different sort of company, with its own business and software development philosophies, but you can't argue with its success. The company continues to grow at a healthy rate year after year, and while almost all of the other open source ERP projects have been forked, xTuple has not. That's a testament to the strength of the system.
The OrangeHRM project is based in Pakistan, but the community extends around the world. The system is straightforward to use, easy to learn, and well supported by reliable partners. It's also pretty, which is not something to overlook in a human resource management tool. The community edition covers the basics from applicant tracking to employee performance, while more advanced functions are available through add-on modules and in the SaaS edition. Built with PHP and deployed on a LAMP stack, OrangeHRM is relatively easy to install. Plus, there's good documentation and even videos to help get you started.
This well-established app for small health care practitioners is an easily customized PHP/MySQL stack packed with features for managing medical practices. OpenEMR has everything from electronic medical records management to scheduling, billing, and reporting. One of the most impressive features is the onboard rules engine, which can generate alerts and workflows based on real-time clinical data like patient vitals, prescriptions, and lab results. The project team has been busy this year releasing performance enhancements, a virtual appliance, support for 19 languages, and a mobile front end to calendar and appointment schedule.