Recent Articles

Java CookBook »

A lot of useful tips on using Java-based utilities from projects such as Apache Commons, Apache Lucene, and Apache Velocity.

Popularity: 2% [?]

Web Application Testing using WebDriver »

WebDriver has a simple API designed to be easy to work with and can drive both real browsers, for testing javascript heavy applications, and a pure ‘in memory’ solution for faster testing of simpler applications.

It is a tool for writing automated tests of websites. It aims to mimic the behaviour of a real user, and as such interacts with the HTML of the application.

Popularity: 2% [?]

Display GPS Data using VisualGPS »

VisualGPSce is a free PocketPC application that displays GPS data graphically as well as record the raw GPS data (NMEA 0813) to a file. Other features include satellite azimuth/elevation, GPS signal quality, analog gauges and statistical position averaging.


Popularity: 3% [?]

WiX – NSIS Alternative »

The Windows Installer XML (WiX) is a toolset that builds Windows installation packages from XML source code. The toolset supports a command line environment that developers may integrate into their build processes to build MSI and MSM setup packages.

WiX is a set of tools and specifications that allow you to easily create Windows Installer database files. The WiX tools model the traditional compile and link model used to create executables from source code. For WiX, source code is written in XML files. These files are validated against a schema, wix.xsd, then processed by a preprocessor, compiler, and linker to create the desired result. WiX has been designed to allow for the easy creation of multiple Windows Installer databases from a small set of source files. You can use WiX both on the command line and in the Visual Studio development environment.

Popularity: 3% [?]

Open Source Java PDF Library »

ICEpdf is an open source Java PDF library ideal for displaying and printing PDF documents within any Java application. The ICEpdf API is lightweight, fast, efficient and very easy to use. ICEpdf is 100% Java-based. ICEpdf is capable of rendering PDFs up to version 1.6 (Acrobat 7.0) and provides the following features:

  • Seamless integration within Java clients, allowing complete control over the configuration, functionality, and user interface.
  • A lightweight static and dynamic memory footprint.
  • Easy deployment to any Java platform without the hassles of Java-to-native integration issues.
  • Embeddable as a Java PDF viewer component and stand-alone application.
  • Render PDFs to an image file (PNG, JPEG, or GIF) in a server-side web application.
  • Robust, efficient, mature PDF parser.
  • Supports all PDF embedded font types (Types 0-3, OpenType, TrueType) using the Font Engine included in ICEpdf Pro.
  • Font substitution optimized per platform.
  • Supports incremental document loading, reducing time to view first page.
  • Supports Adobe Standard Security for password-protected documents (40 and 128 bit RC4 or AES).
  • Support for interactive link annotation actions; uri, launch and resource.
  • View all markup annotations.

Popularity: 3% [?]

Microsoft SQL Server JDBC Driver »

In its continued commitment to interoperability, Microsoft provides a Java Database Connectivity (JDBC) driver for use with SQL Server. The SQL Server DBC Driver is available to all SQL Server users at no additional charge, and provides access to SQL Server 2000, SQL Server 2005, and SQL Server 2008 from any Java application, application server, or Java-enabled applet. This driver is a Type 4 JDBC driver that provides database connectivity through the standard JDBC application program interfaces (APIs) available in Java Platform Enterprise Edition 5 (Java EE 5).

The SQL Server JDBC Driver is JDBC 4.0 compliant and runs on the Java Runtime Environment (JRE) 5.0 or later. It has been tested against all major application servers, including BEA WebLogic, IBM WebSphere, and JBoss.

Popularity: 3% [?]

Open Source C# Generic Collection Classes »

C5 is a library of generic collection classes for C# and other CLI languages and works with Microsoft .Net version 2.0 and later, and Mono version 1.2 and later.

C5 provides functionality and data structures not provided by the standard .Net System.Collections.Generic namespace, such as persistent tree data structures, heap based priority queues, hash indexed array lists and linked lists, and events on collection changes. Also, it is more comprehensive than collection class libraries on other similar platforms, such as Java. Unlike many other collection class libraries, C5 is designed with a strict policy of supporting “code to interface not implementation”.

The C5 collection library provides the following collection concepts, described by C# interfaces: Directed enumerable, collection value, directed collection value, extensible collection, collection, sequenced collection, indexed collection, sorted collection, indexed sorted collection, persistent sorted collection, list, LIFO stack, FIFO queue, priority queue, dictionary, and sorted dictionary.

The C5 collection library provides the following data structures, described by C# classes: array list, doubly linked list, hash-indexed array list, hash-indexed linked list, hash set, hash bag (multiset), sorted array, wrapped array, tree set, tree bag (multiset), stack, double-ended queue, circular queue, priority queue (interval heap), hash dictionary, and tree dictionary.

The C5 collection library provides the following unusual functionality on collections and dictionaries: collection update events, multiple updatable list views, reversible enumeration, hash indexes on lists, snapshottable tree-based collections, priority queues with item handles, and in general a design with emphasis on orthogonality, flexibility, and preservation of invariants.

Popularity: 3% [?]

Open Source SOA Source Book »

Good reading on SOA from The Open Group

Popularity: 3% [?]

Software Testing Automation Framework »

The Software Testing Automation Framework (STAF) is an open source, multi-platform, multi-language framework designed around the idea of reusable components, called services (such as process invocation, resource management, logging, and monitoring). STAF removes the tedium of building an automation infrastructure, thus enabling you to focus on building your automation solution. The STAF framework provides the foundation upon which to build higher level solutions, and provides a pluggable approach supported across a large variety of platforms and languages.

STAF can be leveraged to help solve common industry problems, such as more frequent product cycles, less preparation time, reduced testing time, more platform choices, more programming language choices, and increased National Language requirements. STAF can help in these areas since it is a proven and mature technology, promotes automation and reuse, has broad platform and language support, and provides a common infrastructure across teams.

STAX is an execution engine which can help you thoroughly automate the distribution, execution, and results analysis of your testcases. STAX builds on top of three existing technologies, STAF, XML, and Python, to place great automation power in the hands of testers. STAX also provides a powerful monitoring application which allows you to interact with and monitor the progress of your jobs. Some of the main features of STAX are: support for parallel execution, user-defined granularity of execution control, support for nested testcases, the ability to control the length of execution time, the ability to import modules at run-time, support for existing Python and Java modules and packages, and the ability to extend both the STAX language as well as the STAX monitoring application. Using these capabilities, you can build sophisticated scripts to automate your entire test environment, while ensuring maximum efficiency and control.

Popularity: 2% [?]

Open Source Interior Design Application »

Sweet Home 3D is a free interior design application that helps you place your furniture on a house 2D plan, with a 3D preview.


Popularity: 3% [?]

Open Source Media Center Application »


xVideoServiceThief is a tool for downloading your favourite video clips from a lot of video websites. xVideoServiceThief also provide you the ability to convert each video in most popular formats: AVI, MPEG1, MPEG2,
WMV, MP4, 3GP, MP3 file formats.

  • Download Videos from a lot of important Web Video Services: YouTube, Google Videos, etc…
  • Convert the downloaded videos to Mpeg, DivX, etc…
  • Simultaneous downloads!: Download more than one video at same time
  • Pause and resume your downloads!
  • Drag & Drop the Video Links directly to the xVideoServiceThief
  • Automatic Updates! keep the xVideoServiceThief updated automatically

Popularity: 2% [?]

Open Source SNMP Applications »

Simple Network Management Protocol (SNMP) is a widely used protocol for monitoring the health and welfare of network equipment (eg. routers), computer equipment and even devices like UPSs. Net-SNMP is a suite of applications used to implement SNMP v1, SNMP v2c and SNMP v3 using both IPv4 and IPv6. The suite includes:

  • Command-line applications to:
  • A graphical MIB browser (tkmib), using Tk/perl.
  • A daemon application for receiving SNMP notifications (snmptrapd). Selected notifications can be logged (to syslog, the NT Event Log, or a plain text file), forwarded to another SNMP management system, or passed to an external application.
  • An extensible agent for responding to SNMP queries for management information (snmpd). This includes built-in support for a wide range of MIB information modules, and can be extended using dynamically loaded modules, external scripts and commands, and both the SNMP multiplexing (SMUX) and Agent Extensibility (AgentX) protocols.
  • A library for developing new SNMP applications, with both C and perl APIs.

Popularity: 2% [?]

C# NLP »

SharpNLP is a collection of natural language processing tools written in C#. Currently it provides the following NLP tools:

  • a sentence splitter
  • a tokenizer
  • a part-of-speech tagger
  • a chunker (used to “find non-recursive syntactic annotations such as noun phrase chunks”)
  • a parser
  • a name finder
  • a coreference tool
  • an interface to the WordNet lexical database


Popularity: 3% [?]

Ringtone Tool »

Ringtone Tools is a program for creating custom ringtones and graphical logos for mobile phones.

Popularity: 2% [?]

Open Source SVN Plug-In for Visual Studio »

AnkhSVN is a Subversion SourceControl Provider for Visual Studio. The software allows you to perform the most common version control operations directly from inside the Microsoft Visual Studio IDE. With AnkhSVN you no longer need to leave your IDE to perform tasks like viewing the status of your source code, updating your Subversion working copy and committing changes. You can even browse your repository and you can plug-in your favorite diff tool.

Popularity: 3% [?]

Java: Open Source Performance Statistics Tool »

Perf4J is a set of utilities for calculating and displaying performance statistics for Java code.


  • A simple stop watch mechanism for succinct timing statements.
  • A command line tool for parsing log files that generates aggregated statistics and performance graphs.
  • Easy integration with the most common logging frameworks and facades: log4j, java.util.logging, Apache Commons Logging and SLF4J.
  • Custom log4j appenders to generate statistics and graphs in a running application (custom java.util.logging handlers coming soon).
  • The ability to expose performance statistics as JMX attributes, and to send notifications when statistics exceed specified thresholds.
  • A servlet for exposing performance graphs in a web application.
  • A Profiled annotation and a set of custom aspects that allow unobstrusive timing statements when coupled with an AOP framework such as AspectJ or Spring AOP.
  • An extensible architecture.

One of the main benefits of Perf4J is that it allows performance analysis and monitoring on live production applications through extensions to common logging frameworks like log4j.

Sample output:

Performance Statistics   20:32:00 - 20:32:30
Tag                                                  Avg(ms)         Min         Max     Std Dev       Count
codeBlock1                                             249.4           2         487       151.3          37
codeBlock2.failure                                     782.9         612         975       130.8          17
codeBlock2.success                                     260.7           6         500       159.5          20
Performance Statistics   20:32:30 - 20:33:00
Tag                                                  Avg(ms)         Min         Max     Std Dev       Count
codeBlock1                                             244.0           7         494       150.6          41
codeBlock2.failure                                     747.9         531         943       125.3          21
codeBlock2.success                                     224.1          26         398       106.8          21
Performance Statistics   20:33:00 - 20:33:30
Tag                                                  Avg(ms)         Min         Max     Std Dev       Count
codeBlock1                                             289.3          10         464       141.1          22
codeBlock2.failure                                     781.1         599         947       135.1           8
codeBlock2.success                                     316.2         115         490       112.6          13

Popularity: 2% [?]

Java: Another Open Source Java ORM Tool »

Ebean is an open source (LGPL license) Java Object Relational Mapping tool. It uses JPA Annotations (@entity, @OneToMany …) for mapping. It provides a simple API for fetching and saving object graphs.

It’s goal is to provide a simpler alternative to JPA (Java Persistence API) implementations
such as Hibernate and Toplink.

It does this by providing a “sessionless” API and a simpler query language.

That means:

  • No Session Object (or UnitOfWork or EntityManager)
  • No Attached or Detached Beans
  • No merge(), persist(), flush(), or clear(). Instead Ebean has save() and delete()

Popularity: 3% [?]

Open Source Application Launcher »

Appetizer is a free application launcher, or dock, for Windows. It allows organizing your shortcuts and folders into a convenient dock. The app is open source, which means that it’s free and will remain so. It is entirely customizable and is available in multiple languages.


  • Support for plugins
  • Support for multiple skins (two included)
  • Resizable dock, which allows displaying the icons both horizontally or vertically.
  • Three sizes of icons: Small, large and extra-large
  • Support for custom icons
  • ‘Wizard’ to automatically imports shortcuts from various locations
  • Organize the icons by drag & dropping them
  • ‘Multi-launch’ functionality
  • Regroup multiple shortcuts within one menu
  • Hot key to hide / show the dock
  • Special items to provide extra functionalities: hide / show the desktop, Recycle Bin, Control Panel, etc.
  • Support for multiple languages
  • Minimize to tray icon functionality

Popularity: 2% [?]

Open Source Map »

You can now explore open source software hotspots around the world through the interactive Open Source Index, or OSI, based on research by the Georgia Institute of Technology (Georgia Tech). The OSI is a measure of the open source activity and environment in 75 countries. Each country is given a score based on its policies, practices, and other data in the fields of Government, Industry, and Community.

Popularity: 2% [?]

Open Source 3D Web API »

O3D is an open-source web API for creating rich, interactive 3D applications in the browser.\

It is an open-source JavaScript API for creating interactive 3D graphics applications that run in a browser window—games, ads, 3D model viewers, product demos, virtual worlds. O3D extends the client-side software of a web application by providing features at the following levels:

  • System: O3D provides a browser plug-in that adds graphics capabilities inside standard web browsers on Windows, Macintosh, and Linux (TBP) platforms.
  • Content: Content for today’s web is in the form of HTML, image files, and video files. The Developer’s Guide provides information on how to create a file converter and loader for any 3D content. O3D provides a sample COLLADA Converter, which can be used to import files in the COLLADA format, an open standard for 3D assets that is supported by popular content creation applications such as SketchUp, 3ds Max, and Maya. Use this sample converter directly, or write your own converter and loader for other formats.
  • Code: O3D extends application JavaScript code with an API for 3D graphics. It uses standard JavaScript event processing and callback methods.

Popularity: 2% [?]