Du nouveau dans le monde Qt/Python : Nokia vient de publier un nouveau
binding, PySide, permettant d'utiliser sa fameuse boîte à outils Qt (base de KDE, multi-plateforme) avec le non moins populaire langage Python. Ce rapprochement n'est pas nouveau puisqu'il existait déjà un produit, PyQt, permettant cette approche. L'initiative de Nokia s'explique du fait du modèle de licence de PyQt vis-à-vis de Qt.
En effet, alors que Qt est, depuis récemment, disponible sous trois licences différentes (GPLv3, LGPLv2.1 et commerciale), PyQt est resté sur le modèle GPL + commercial. Riverbank Computing, l'entreprise développant PyQt, n'ayant probablement pas les reins suffisamment solides (Riverbank Computing vivant de la vente de licence de PyQt, au contraire de Nokia) pour passer PyQt en LGPL. Rappelons rapidement que la licence LGPL permet d'utiliser le code mis à disposition dans un programme dont la licence diffère. Pour caricaturer, on peut faire du propriétaire avec du libre sans payer. D'où donc les réticences de Riverbank Computing, même après discussion avec Nokia.
Nokia, pour sa part, voit dans cette approche un possible frein au développement d'application Qt en python, et cherche à promouvoir ce domaine en recréant un binding en LGPL, dans le même esprit que le passage à la licence LGPLv2.1 permettant une plus grande possibilité d'adoption de Qt. Notons que ce changement de licence, et la création de PySide, interviennent dans un contexte de changement plus profond chez Nokia, qui cherche à faire converger Maemo, système d'exploitation pour tablettes graphiques, et Qt en remplacement de Gtk+.
PySide et PyQt, bien que compatibles au niveau API (pour le moment), possèdent néanmoins quelques différences : PyQt est une solution éprouvée, qui fonctionne indifféremment sous Linux/Unix, Windows et Mac OS X. PySide, de son coté, reste très jeune et ne fonctionne pour le moment que sous X11 (Linux/Unix donc) et n'offre donc pas pour le moment la qualité et le service fourni par Phil Thompson, le créateur de PyQt.
Nokia espère qu'une communauté ouverte se créera autour de son projet. Espérons que cette nouvelle mouture entraîne une saine compétition entre PySide et PyQt, et non pas la mort de l'un et/ou de l'autre.