Details for technology junkies
Learn More
Chirp isn't just cool because it works so well and because it does so many cool things. It's also cool because of how we built it, and what cool stuff is inside of it.
Eclipse open source platform
Chirp is built on the Eclipse open source platform. If you are a programmer, you know that Eclipse is really very cool. Sponsored by IBM and other major technology companies, Eclipse gives Chirp a bunch of capabilities it wouldn't otherwise be able to provide:
- No-compromise cross-platform capabilities. The core programming framework provided by Eclipse (and Java) allow Chirp to be 100% functionally identical on both Windows and OS X. Yet, on both platforms, Chirp looks, acts, and works like a “native” software application for that operating system. One of the keys to providing this is the SWT - standard widget toolkit. The clever thing SWT does is that it provides a common Java API for all windowing functionality, but that IPI is implemented using the user-interface facilities of the underlying operating system. This enables Java applications to look and operate as if they are native, and run speedily.
- Many oft-omitted advanced functions. From sophisticated, indexed HTML-based help systems, to fully-functional software update systems, to HTML view controls, the the Eclipse Rich Client Platform provides many functions often omitted by applications forced to live within the confines of other OS- or development-tool-dependent environments.
See the link in the sidebar on the left to view the white paper produced by the Eclipse Foundation about Chirp and its use of the Eclipse Rich Client Platform.
In the spirit of contributing back to the open source community, we have also released some of our code as open source calendar software (a date picker, not scheduling software). Visit our project site at SourceForge.net.
SyncML
A key capability of Chirp is its ability to synchronize task information and status across multiple computers for a single user, as well as across multiple other users (who also may have multiple computers). Chirp relies on the SyncML protocol specification from the Open Mobile Alliance. Chirp also uses open source technology in this area as well, having licensed the GPL-licensed Sync4j open source SyncML libraries (now known as the Funambol project) from Funambol. Chirp uses both the client and server portions of this open source project to supply advanced sync capabilities that no single company could accomplish on its own.
JBoss
Both the Chirp synchronization service as well as Plum Canary's website are built in Java using the JBoss applications server platform.
iCalendar
In order to have a rich representation of data, as well as provide data portability in case (heaven forbid) people want to move away from Chirp. Having their source data in the IETF-standard RFC 2445 iCalendar standard format will allow other applications to be able to read, and re-use (most of) users' Chirp project data. (See also the Wikipedia entry on iCalendar.) This RFC does permit vendor-specific extensions, and Chirp does require some proprietary extensions to provide some of its features. Example: The Red / Yellow / Green status indicators have no defined type in iCalendar. However, despite these proprietary extensions, applications that know how to read iCalendar data, and which simply discard those data elements they do not understand, can import Chirp Project Task data files.
The list goes on...
As with many applications, there is a long list of components we use to create Chirp. But hopefully this will give you some idea of the degree to which Plum Canary has tried to leverage the most advanced technology, tools, libraries, and standards to make Chirp as great, and cool, as it is.
