A couple of random observations - UI is the hardest part - next is device interface (sound cards, RS232) though the effort to abstract that out pales in comparison to the problem of providing a best-of-breed UI for different platforms - Adobe has many hundreds of programmers working on Photoshop - A Java digimode program sure would be nice. I have a few pieces done and would be pleased to work with others, but there are still people (Win/Lin/Mac/BSD who won't use Java) - Separating the UI from the modems and rig control and using a protocol between them would make it easier to write platform-specific best-of-breed UIs. PSKCore.DLL is OK for this approach for Windows, but as it uses the Microsoft component implementation framework, it doesn't help cross-platform, just cross-application.
Leigh/WA5ZNU