Possibly the greatest repository of open source software today is SourceForge, where like-minded altruistic developers can freely collaborate on projects, across countries, languages and timezones. For the general populace, there’s a wealth of useful applications to be found meeting most any business, personal or entertainment need.
What’s terrific when trying to find a hot new app to play with is that SourceForge tracks the popularity of projects based on several criteria. We'll look at two different criteria in this article.
The first lets you know what’s popular right now: at http://sourceforge.net/top/toplist.php?type=downloads_week you'll find the most downloaded programs during the last seven days.
At the time of writing, the top 10 most downloaded this week are
- eMule (2,250,156 downloads)
- Ares Galaxy (1,314,665)
- Azureus (457,064)
- GTK+ and The GIMP installers for Windows (309,402)
- 7-Zip (271,772)
- Audacity (270,995)
- FileZilla (193,766)
- emule Xtreme Mod (152,159)
- Shareaza (148,052)
- VirtualDub (129,449)
Interestingly, half of these – including the top three – are file-sharing peer-to-peer applications (must be all that Linux ISO P2P sharing I hear about!) They make up 82% of the top 10 downloads, with eMule contributing half that number alone. Of the other five, one is a Windows version of a popular Linux graphics package (The GIMP), one is a Zip compression manager (7-Zip), one is a prevalent audio editing/recording system (Audacity), one is an FTP client/server (FileZilla) and one is a desktop video editing package (VirtualDub). If you're looking for a new tool, try one of these. They're obviously popular.
As a side note, the number of downloads show open source is a big industry with a large installed user base. To give a meaningful comparison, one of the most ubiquitous programs downloaded, for Windows at least, would surely be WinZip. The primary distribution site is C|net who report 168,627,788 downloads across all time (http://www.download.com/WinZip/3000-2250_4-10665474.html). 168+ million is an enormous number and that reflects just how popular and how widespread WinZip is. However, remember that’s for all time: SourceForge lists the top downloads over all time at http://sourceforge.net/top/topalltime.php?type=downloads and it can be seen eMule has a massive 326,226,298 downloads. That’s getting up to twice as many as WinZip or in other words for every time WinZip has been downloaded, eMule has been downloaded two times.
However, in terms of finding hot apps, this list is not actually so useful, because what’s useful changes over time as technologies emerge and operating systems mature. Consider CDex – this was an extremely important utility for extracting digital audio from CDs. It played an important part in the rise of CD ripping, which led to the prominence of mp3 files and players. It is the eighth most downloaded program of all time from SourceForge, but has much less value today with its capabilities available in so many other ways. In fact, even its own development team are spending little time on it, with it now ranking right down as the 725th active project on the site. In fact, even eMule isn’t on the top 50 active projects with bittorrents rapidly becoming the most prevalent P2P technology.
That leads us nicely to what is a very useful list, namely the most active projects. This reflects where development work is happening and which projects are making the most ground. A project’s activity represents software reaching maturity, having bugs fixed and responding to user feedback. What’s more, active projects are timely projects. They haven’t been abandoned over the ravages of time but are relevant now.
So, let’s take a walk through the ten most active SourceForge projects. Some of these may be known to you. I’m sure there’ll be some which are new. And hopefully, there’ll be at least one which strikes you as solving a genuine need you have right now. We’ll work our way up from number 10.
#10 – FCKeditor
Starting us on our journey is FCKeditor (named after Frederico Caldeira Knabben, otherwise known as Fred CK.) Strictly speaking, this is not an application in its own right. Rather it is an online text editor for use in Web sites that require flexible, formatted text entry.
FCKeditor has been used in such well-known content portals as WordPress, Drupal and DotNetNuke. Adobe have announced it will be embedded in the next release of ColdFusion. Oracle include it in Oracle Application Express v3.
FCKeditor embodies a truly flexible design philosophy. It has been implemented purely in DHTML giving it compatability across many web browsers and operating systems. It integrates with web sites built in PHP, Java, ASP/ASP.NET, ColdFusion and other popular formats. Visually, it presents an extremely familiar OpenOffice/Microsoft Word-style toolbar with the expected formatting icons and keyboard shortcuts. Tooltips display in a raft of languages.
Admittedly, for the casual user, FCKeditor doesn’t have a lot to offer – but if you’re building any sort of interactive web site, FCKeditor would make a superb replacement for the stock-standard HTML TextArea tag giving your site a real touch of professionalism and enhancing your user’s experience. Check out http://www.fckeditor.net/demo for a demonstration.
#9 – FileZilla
FileZilla is a Windows-based FTP (file transfer protocol) and SFTP (secure FTP) client. The FTP protocol predates HTTP on the Internet and for many years was the primary means for moving files around or distributing drivers and software updates.
Although the Web is now the prime source of software distribution, FTP is still heavily used. Many organisations find FTP servers still a preferable means of maintaining and organising file repositories. What’s more, the bulk of webhosts are reluctant to allow interactive logins so FTP is the natural choice for letting customers upload sites with a minimum of access. This is the case with commercial webhosts as well as ISP-supplied web space. Free webhosts like Yahoo! GeoCities offer a web-based file uploading method, but it is slow and cumbersome by contrast. (They do permit FTP but only with paid accounts.)
FTP is such a staple of the Internet protocol suite that a command-line FTP client can be found on most any Internet-capable computer whether this is known or not, just type “ftp” into a command prompt. However, this necessitates the use of clunky commands to traverse directories – both on the remote system as well as your own, to transfer files using wildcards, and to change between binary and text file modes.
This is where a brilliant program like FileZilla comes in; it manages all the underlying complexity in a simple graphical interface. Both local and remote filesystems are displayed, with file transfer being a simple drag-and-drop affair. Progress is shown and best of all, sites can be mirrored whereby FileZilla senses and uploads only new or changed files.
FileZilla isn’t just an FTP client though; the project also provides FileZilla Server which is a straightforward but powerful FTP server for running on your own Windows-based machines. This can be used by individuals or companies alike with secure options decreasing risks.
This project has been awarded project of the month in the past, as well as a 2006 community choice award winner. It’s a highly active project with regular bug and security patches and is a well recommended choice for Internet-based file sharing. The lack of multiplatform support is unfortunate but, hey, this is open source; all the C++ code is there. It just needs a brave Linux developer to step up and make a port.
#8 – OrangeHRM – Human Resource Management
OrangeHRM is a web-based PHP/MySQL app which I’m confident will be unknown to most readers but hopefully will pique your interest.
OrangeHRM is, as its name suggests, a human resource information system. The project team have a roadmap detailing where they want to head, with three major facilities available now. The first is fairly obvious, capturing personal details of staff members along with name, contact details, next of kin, salary and so forth. A photograph and any supporting documents like a resume or copies of licenses can be attached.
Secondly, reports can be constructed from a range of custom search criteria and fields. The report definition can be saved and re-executed at any time. This allows HR to quickly identify staff based on the requirement at hand, be it all members of a certain team, foreign nationals whose working visas are due to expire, all employees who have attained a specific educational qualification or any other circumstance that can be imagined.
The third major facility of OrangeHRM is a comprehensive leave management module. This provides entire workflow for an employee to request leave, with any number of approvers being able to review the request. Approved leave is recorded in a company calendar. At each stage, the appropriate people are notified of the status of the request and any actions he or she must take. This alone is of great benefit to many companies whether small or large saving both paper and time, as well as showing at a glance who will be away on any given day or week.
This last feature can't be underemphasised. Let's walk through it: an employee, Bill, say, logs on to OrangeHRM from his desk to submit a request to take time off - whether a single day or a couple of weeks or more. His supervisor is notified right away. The request is approved or rejected. If it's rejected, Bill gets a note back to this effect with hopefully some comments. If it is approved, again Bill is notified, but so too are any relevant staff - like HR and payroll - and the leave is recorded against Bill's file and is listed in a public calendar. This is a boon to any business with more than a few employees. There's no filling in paperwork and worrying where the form has got to, there's no wondering how many people are absent on any particular day. This automates a very common and essential business process.
OrangeHRM is accessible to any staff member but offers finely-grained security. This allows HR staff full access, but means ordinary employees may only view and edit their own data. Any conceivable combination of security options can be defined and applied to any user or group of users. Managers, for instance, may be given read-only access to any member of their team.
With future plans including recruitment, performance and training modules, OrangeHRM is definitely an information system that will only grow in usefulness to any organisation. Even very small businesses can benefit, consolidating and filing all staff records in a single electronic spot.
One thing I find personally of interest is that OrangeHRM has a visual style reminiscent of another popular open source marketing and contacts web-based system called SugarCRM. I could find no statements that OrangeHRM is an add-on to SugarCRM, or that it shares source code or integrates with it in any way. Perhaps there is no relationship and the team just took a penchant to SugarCRM’s style, but if OrangeHRM can easily be used to extend SugarCRM I feel the developers would do well to promote that fact and capitalise on its installed base.
#7 – phpMyAdmin
phpMyAdmin needs little introduction to many blog writers worldwide; it’s become an essential tool for rescuing many a corrupt PHPNuke or WordPress database.
It doesn’t take much thought to recognise phpMyAdmin is a PHP app. What the name doesn’t quite give away is that it is a powerful web-based system for delving into MySQL databases. If you have direct access to a MySQL database server, there are a number of graphical utilities for administration and management. However, the vast majority of MySQL users don’t have such access – their databases are hosted by their ISP or webhost. Their level of access goes as far as creating a single database and then letting their software of choice do the rest of the work, be it Drupal, PHPNuke, Joomla, WordPress or any of a myriad of other LAMP offerings.
This means if your software install doesn’t go as planned – or a rogue beta trashes your production database, or you absolutely need direct access into the database for whatever reason – then there’s little that can be done with the supplied tools. This is where phpMyAdmin comes in. Download it, make a configuration file – using the precise same database location, username and password as you’ve already given your content management system - then FTP it to your webhost and fire it up in a web browser. It’s dead simple to set up and use but the power it gives is far in excess of this.
Using phpMyAdmin you can drop or re-create your entire database but the most common uses would be to add or delete individual fields to tables, to remove bad rows of data, modify individual cells in configuration tables, or to insert new data. Most functions are possible through menus and pointing and clicking but SQL queries and commands can be entered directly. Additionally, entire databases can be backed up to your local computer and restored either to the same database or to another. This makes migrating between web hosts a breeze, without losing accumulated site data like content or reader comments.
It’s no surprise that, like FileZilla, phpMyAdmin has received project of the month and 2006 community choice award accolades. In fact, it won both the database and sysadmin categories. If you have a MySQL database, phpMyAdmin is a must-have.
#6 – vMukti – Collaborative Conferencing
Forget expensive collaborative systems like Microsoft’s LiveMeeting. With the strangely-named - but very hot - vMukti Windows’ users can set up their own multi-party conferencing for web and mobile users alike.
vMukti is designed to run on a Windows XP or Vista system, or a Windows Server environment. However, so long as the target system has the .NET framework 2.0 installed, it should run reliably. This means Linux users aren’t entirely left out: because vMukti has been coded in C# it’s possible it can be made to work using the Mono project which aims to emulate the .NET framework and offers direct binary compatibility.
Where vMukti offers great value is in allowing two or more Internet-connected people to work together through the one web site. Panels display in the browser window where users can share their webcams and audio, type into an IM-style chat window, draw on a communal white board, or conduct polls. In this regard it is a superb open source offering, with real opportunity to slash communication costs and facilitate teamwork. Well-chosen screenshots at http://sourceforge.net/project/screenshots.php?group_id=162339 show off its best side.
The ultimate objective of vMukti is to bring together a vast array of diverse Internet-based communication methods, including Skype, Yahoo! and MSN Messengers, and even Asterix-based VoIP phone systems! The project team argue they've kept bandwidth usage to a bare minimum making the app not only extremely functional but also highly lightweight.
The project is yet to produce a version 1.0 release (the current is 0.6.0.4) but with 11 developers and recent coverage by Enterprise Week (http://www.enterpriseweekmag.com/issues/issue125.pdf, page 35) it’s certain to make big headway and is well worth checking out by anyone who can see the worth of co-operative facilities on a Windows-based network.
Come back tomorrow for part 2 as we walk through the top five active open source projects on SourceForge, culminating in #1!