I understand that Linux does not support .exe's, but is adding Linux support as simple as providing a .jar version? This summer I'm going to try to really start programming and contributing to... well anything I can. I think Linux is the future. So what makes or breaks compatibility? What do I need to change about my Java/Python programs to make them compatible?
Since you are using languages, which leverage bytecode for platform independece, you have nothing special to do, to run e.g.
Python. As long as the runtimes are supported by linux - which is the case for the mentioned languages - you have nothing to do.
The only thing which differs under linux is the way how you actually run (e.g. start) the software. It is common to write start(shell-)scripts.