After doing some searching, and getting opinions from various people familiar with what I'm trying to do, I've come to the conclusion that the only satisfactory solution is going to be developing completely separate code bases in 3 different programming languages, for 3 different platforms - Mac OS X, Windows, and Linux. I know that this is going to be a royal pain to manage. Additionally, I am the only developer right now, so I'm really going to have my work cut out for me. Any tips anyone has on orchestrating such an effort? I'm open to all suggestions - even those that involve me not working alone. Note to the curious: I didn't mention exactly what I'm programming because I realized that I'm going to have to use this solution for ALL future applications I create, regardless of what kind they are. My past applications were written in Java - but that simply doesn't meet my needs anymore.