"The Java community has taken Linux for granted," Hargett said. "The assumption is, 'What else is Linux going to do for managed code?'
"The Java community has taken Linux for granted," Hargett said. "The assumption is, 'What else is Linux going to do for managed code?'
I've been a volunteer Banshee dev (~20 KLOC) for about 4 years. With limited time to contribute I wouldn't be nearly as productive if I had used C or Python. Without Mono lowering the (time) barrier for entry I probably wouldn't be a long-term free software developer.
Personally, I'm sad to see JavaScript coming to the forefront with GNOME 3.0.
If you're writing python apps you're better off using twisted than the threading system (which in my limited experience is indeed horrid).
Twisted is pitched as being a networking layer, but I find it better to think about it as a purpose built scheduler which happens to have poweful networking modules. To explain what I mean by scheduler: - you have a cycle of standard functions for the application which might handle input, look at the network for traffic, handle output. Sometimes in the course of execution more functions will be needed and you stick them into the cycle. So you have an extra item in the rotation that handles custom tasks. Once you've got a scheduler model like this you can tweak it to make your application more responsive if it needs it.
You can use pyinstaller to produce a packaged binary that can be easily transported between platforms without requiring users to install a stack of python libraries. If you use wxpython as your GUI the whole thing can be multiplatform.