We saw the first five of these, namely #10 FCKeditor, #9 FileZilla, #8 OrangeHRM, #7 phpMyAdmin and #6 vMukti. Click here if you missed it. Some of these will be well known - like FileZilla, but even so it's still under active development and progression. Others will be largely unknown - like OrangeHRM and vMukti but both are undeniably useful and even inspirational and, being open source, they're free to download and free to use. Who could want for more?
Today we pick up where we left off and check out the hottest five apps on SourceForge today - #5 ZK, #4 Stellarium, #3 Zenoss Core, #2 Openbravo - culminating in number one - Azureus. I'm sure apart from Azureus most of these will be unfamiliar but every one is important. And I'm definitely sure you'll find one of interest to you.
#5 – ZK – Simply Ajax and Mobile
ZK is a framework to make web sites more dynamic and responsive through Ajax technologies. This can be used by developers and webmasters alike to bridge the gap between so-called fat- and thin-client applications.
Let me explain: web apps have long been known as thin-client due to their very lean requirements on the user's computer - generally nothing more than a web browser. All the processing occurs on the web server hosting the app. If the site is upgraded all users benefit immediately.
By contrast, traditional desktop software has been given the unflattering monicker fat-client due to its bulkier size, consisting of all the necessary libraries and controls and processing logic to do its work. If the software is upgraded, it needs to be deployed to all machines.
It can be seen web apps have a raft of advantages. However, despite this they fall short of desktop software when it comes to a responsive user interface and consequently the user's experience with the program. A web site typically renders a page then sits and waits for the user to take an action be it entering some text, selecting an option or something else. The browser sends this action back to the web server which returns the next page to display.
In some cases this is no biggie. People are used to clicking on links and waiting a small time for the results. Yet, often it really can detract from the site, possibly driving traffic away. We've all seen sign-up forms that ask for an address over a variety of fields. Typically the country is a drop-down list. Selecting particular countries - like the United States - causes the state list to be populated with drop-down options. Sometimes picking a state might even cause the city or suburb drop-down list to be populated too. Each time the country value changes, the browser has to call back to the server and display a new page, just to populate the state box. Imagine a form with many fields all dependant on the last entry. A realistic example is an advertising site to sell used cars. The site asks for the model, then the make, the body type, the engine capacity and on and on. Each choice the user makes results in yet another round-trip to the server and corresponding wait on their part.
So here's where Ajax comes in. Using nothing more than markup and scripting already supported by browsers the site becomes instantly more responsive. There's no flickering as pages change, there's no waiting for controls to change their appearance or content. The magic behind this happens because clever coding changes the usual synchronous manner of web transactions into asynchronous events - allowing more things to happen at once, and allowing the browser to communicate with the server even while the user is still working on the page.
The possibilities are endless but the ultimate result is web apps which are just much more pleasurable to work with and which combine the traditional ease of deployment of the web with the responsiveness of desktop apps. The examples above may be fairly simple but consider this: Google Earth is a web app. What makes it so snappy is Ajax. And that's persuasive!
ZK is a suite of functions and method calls that mask the underlying complexity of Ajax and give coders a straightforward bevy of routines to make it all work in a minimum of fuss.
Although not yet at 1.0 level, the project has a stable release and an active forum and is operating system agnostic.
#4 - Stellarium
Stellarium renders 3D photo-realistic skies with accurate depictions of stars, constellations, planets and nebulas. It uses OpenGL which makes its code cross-platform, with binaries available for Windows, Linux and MacOS. Impressively, the project team have made a tightly-optimised calculation engine. Ordinarily, photorealistic rendering is the sort of thing you leave your computer on overnight for: instead, with Stellarium images render rapidly.
A rich set of menu options allow zooming in to planets or other celestial bodies and let any image to finely tweaked, increasing intensity or altering viewing position or proximity. A very interesting option allows you to watch the way a portion of space changes over time.
Stellarium's developers assert that this software really lets you see on your monitor precisely what you would see in the sky through a telescope, so precise are its calculations. That's hard for me to verify but the images it produces are absolutely gorgeous.
If you want to voyae into space without leaving your chair, or if you fancy a brilliant source of never-boring wallpaper images, Stellarium is a must.
#3 – Zenoss Core – Enterprise IT Monitoring
Zenoss Core is a highly useful tool for managing networks and systems across an enterprise. It provides a single integrated product for monitoring the availability, performance, events and configuration of servers, computers and networking equipment across an eitre local- or wide-area network.
For administrators, this is a brilliant tool and provides facilities which would otherwise only be available in very expensive packages. From the onset, its autodiscovery and auditing of network devices more than proves its worth. Indeed, there's costly commercial products which can't even perform this essential task.
Using a simple dashboard, administrators can easily see their networks health at a glance. Systems, events, devices, services and products can be listed, grouped and probed. Flexible reporting brings back essential information with barely a click.
Real-time graphs show system uptime and responsiveness and the unexpected loss of connection to any device is reported swiftly in an event log. This is not constrained to just servers: any client computer or other network device can also be monitored. Alerts can be acknowledged as they are responded to, filtering them out of the list so new alerts are easily recognisable.
Zenoss Core is written in Python/Zope with a MySQL backend database and can be installed and executed on any system which has an available Python interpreter and MySQL build - which covers all Windows, Linux and MacOS systems. Anyone responsible for a network of whatever size would find immense benefit here.
#2 – Openbravo ERP
Openbravo is a hugely comprehensive web-based business application, being a complete free, open source enterprise resource planning (ERP) system. ERP is typically associated with monolithic, multi-million dollar suites like the well-known SAP. To find a good, working free open-source ERP system is like uncovering treasure in a cave. It is a testament to the altruism and talent of open source developers that it exists at all.
For those not in vogue with TLAs ("three letter acronyms"), ERP systems strive to integrate all the data and process of an organisation into a single unified system. ERP systems are not constrained by a company's size, or its business or charter. As ERP systems are so vast, they are modularised to make it easier for businesses to pick and choose the components they wish to use. Nevertheless, all modules integrate with each other.
The most common ERP modules include manufacturing, logistics, distribution, inventory, shipping, invoicing, sales, marketing, human resource management, financials, payroll, project management and customer relationship management. Additionally, ERP systems attempt to implement best practice, based on proven methodologies and frameworks. Check out Wikipedia for more detail. Suffice it to say ERP systems are huge and can make a huge difference to a company over using many diverse packages with the need for redundant data entry and storage and varying processes. This is why it is so remarkable, and impressive, to find an open source system - and especially one which has such a level of activity that it is the second hottest app on SourceForge right now.
Implementing an ERP application is no trivial undertaking. The Openbravo team have considered this and provide comprehensive documentation explaining how to get started setting it up, how users can work with it, and a comprehensive entity-relationship diagram depicting the database and all its tables and fields.
Openbravo is a must-see system. It covers every major business function and thus posesses awesome potential for everyone, whether in part or in whole.
#1 - Azureus
Azureus is the #1 application on SourceForge today. It needs little introduction and is both known and used throughout the world.
Azureus - named after a poisonous blue tree frog - is a Java-based BitTorrent client. BitTorrent is fundamentally a peer-to-peer file-sharing protocol. Although often associated with piracy, the BitTorrent protocol was initially conceived with positive intentions. Unlike other P2P apps, the BitTorrent protocol lets downloaded "pieces" of a file be uploaded to others even when the file has not yet been downloaded in entirety. Additionally, weighting is given to those who are uploading: the more you share, the faster your download becomes. The end result is that a BitTorrent download can complete far more rapidly than through other P2P methods, and that the burden of sharing the file is spread across many diverse networks. Its creator, Bram Cohen, saw this as particularly useful in software distribution. Legitimate uses of BitTorrents can be found easily, including the Web site LegalTorrents.com.
Some of the strengths of Azureus are very subtle: for one, it lets users download multiple files within a single window. By contrast, the very first BitTorrent client (known as "BitTorrent", naturally) started a new instance per torrent being downloaded. More importantly, Azureus also provides a wealth of statistics including download and upload speeds, time remaining, percentage of each file completed, and information on the "pieces" of each file still required. It reports finely-grained information which lets torrent tweakers really get a handle on what's happening.
Another strong plus of Azureus is its support for plug-ins. Any savvy coder can make an Azureus plug-in to enhance its feature set. One of the most popular available permits downloads to be scheduled, which aids broadband users who have a download quota but a "free" unmetered period at night.
Azureus is written in Java, which makes it highly portable. It will run on any system with a Java interpreter - which like the apps above, covers Windows, Linux and MacOS. However, in another sense, Azureus has drawn some criticism over its use of Java. Various quirks have, at times, caused Java apps to appear to consume a CPU's entire time. A very lean competitor, uTorrent, has taken some of Azureus' popularity in recent times, but uTorrent is not open source and is consequently far less customisable. Further, it is Windows-only.
And that's that: these are the hottest 10 open source apps in production today. They are the most active SourceForge projects representing the amount of work going into them. They are stable and the project teams are responding to bug notices and feature requests. They all have rich utility from home users through to large corporsations. Best of all, they're free and their code is freely available and freely modifiable.