Writing free software for proprietary platforms like Java (unless you make sure to test with gcj or kaffe), and even more so Mac OS X or Windows, is a far cry from writing for free platforms. It will often end up forcing your end users to use proprietary systems so they can run your software, and the underlying APIs you use are not under your control (and may be removed or canceled) until an open source reimplementation comes along.
The history of mTropolis, a multimedia system that competed with Director, is instructive (copied from here):
Originally a private company, mFactory, the creators of mTropolis, were bought by Quark, makers of Quark Xpress. Not long after Quark bought mTropolis, and only weeks before version 2 was due out Quark announced that they were killing mTropolis. Due to a Herculean effort by an extremely dedicated product manager version 2 was eventually released. Currently mTropolis is still used by several hundred die-hards and its capabilities have been increased by the development of third party mods. Unfortunately, mTropolis remains in limbo to this day.
What this doesn't mention is that a group of users tried to buy mTropolis from Quark, and Quark refused to sell it.
There a number of ways to deal with this:
Of course, for platform-specific coding you're pretty much stuck if the platform is proprietary.
FOAF updates: Trust rankings are now exported, making the data available to other users and websites. An external FOAF URI has been added, allowing users to link to an additional FOAF file.
Keep up with the latest Advogato features by reading the Advogato status blog.
If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!