OVH Cloud OVH Cloud

Stabilité de python

24 réponses
Avatar
Christophe
Bonjour !

Avant de me lancer à corps perdu dans le python j'aurais quelques
questions concernant la stabilité de python.

J'aimerais savoir quel est la pérennité d'un programme codé en python ?
Est-ce que l'on a une compatibilité ascendante parfaite ?
Dans le cas contraire quel est en général le pourcentage du code à
recoder lors d'une transition vers une version supérieure et à quel
rythme cela arrive ?

D'autre part je m'intéresse de très près à wxpython qui me semble très
intéressant. Est-ce que vous jugez que cette technologie est prête pour
une utilisation en entreprise ou bien me conseillez vous a) d'attendre
un peu ou b) me tourner vers une autre solution de développement de GUI
?

Il semblerait que la compatibilité ascendante avec wxpython n'est
vraiment pas terrible (ce qui est normal pour un projet jeune et
dynamique). A quel point est-ce rébarbatif ?

Merci d'avance à ceux qui prendront quelques minutes pour me répondre.

4 réponses

1 2 3
Avatar
Bruno Desthuilliers
Christophe wrote:
On Wed, 28 Jul 2004 19:24:40 +0200, Bruno Desthuilliers


(from Christophe...)


En ce qui concerne Python (langage...) , généralement, il y a des
warnings sur le code 'deprecated' assez longtemps à l'avance. Par
conséquent, dans bon nombre de cas, les modules tierces déclencheront
aussi ces warnings.



Ah ! Excellent ! Ca c'est vraiment une bonne idée !


Attention, ce n'est pas systématique, il *peut* aussi y avoir des bugs
qui apparaissent (soit un crash franc et massif, auquel cas le pb est
souvent facile à résoudre, soit des délires plus ch... à repérer et
corriger).

Mais bon, honnêtement, si tu compare à bon nombre de produits proprios
couramment utilisés, c'est vraiment sans commune mesure. Et tu a
toujours accès au source...


En tout cas je viens toute juste de faire ma première petite
application en python et je suis comment dire... bluffé !
Je me demande vraiment pourquoi ce n'est pas ce genre de langage que
l'on nous apprend à l'école (parce que bon le Java et le C, Ok c'est
immédiatement utilisable en entreprise mais bon pour vous écoeurer
de la programmation il n'y a pas mieux...)


<troll>
Les décideurs ne sont généralement pas compétents techniquement, et
pour ne pas prendre de risque s'en tiennent aux solutions 'standard'
du moment (le 'standard' étant généralement défini par 'ce que les
autres utilisent, surtout s'il y a une grosse boite derrière qui
pousse'). Un chef de projet n'a jamais été viré pour avoir choisi
Java...



Je ne sais pas, il doit bien y avoir autre chose quand même : les
décideurs d'aujourd'hui ne sont pas devenus décideurs du jour au
lendemain, ils ont bien été simples grouillots de base à une époque


Boaf... Il y en a qui n'ont jamais vraiment programmé. Les pires sont
ceux qui *croient* y connaitre quelque chose...

(je
parle des décideurs "accessibles" pas les big boss qui gouvernent la
planètes...).
Ou bien peut-être qu'on deviendra commme eux plus tard (Dien m'en
préserve !) ?


Le problème est que les accros de la programmation n'ont généralement
pas envie de devenir cadre (au sens 'fonction', pas 'statut'). Et puis
ce ne sont pas forcément les mêmes compétences qui entrent en jeu. Tu
connais le principe de Peter ?

Bon nombre d'écoles cherchent avant tout à recaser leurs élèves, donc
leur enseigne les technos les plus demandées du moment (au lieu de
leur enseigner l'informatique en général...).



Ca c'est comme ça que l'on nous a imposé le Java !


!-)


Il en résulte que la majorité des programmeurs à un instant T
maîtrisent essentiellement les techno 'standard' au moment de leur
entrée en formation. Et donc qu'il est plus facile de recruter des
programmeurs connaissant ces technos. Ce qui renforce la tendance des
décideurs à favoriser ces technos (les dits décideurs n'ayant toujours
pas compris qu'il vaut mieux avoir des programmeurs avec une bonne
culture et une bonne capacité d'adaptation que des pisseurs de code ne
connaissant qu'une paire de techno, et incapable d'en apprendre une
nouvelle par eux-même).



Il y a plus sournois que ça : je me renseigne actuellement sur le python
car nous cherchons une alternative à matlab qui coûte vraiment très
cher. Et bien je m'aperçois que matlab a une politique de licence
presque gratuite pour les étudiants et les écoles. Résultat :
l'utilisation de matlab en entreprise est accentué car le personnel a la
flemme d'apprendre un autre langage (ça m'a pris deux jours pour digérer
les grands principes de python...) et utilise presque exclusivement
matlab...

Pareil pour microsoft (on dérive là...), licence presque gratuite pour
les étudiants qui lorsqu'on leur demandera leur avis en entreprise
"préfèreront avoir un poste Windows".
Plus cynique encore, on peut encourager le piratage "car vous
deviendrez dépendant et on trouvera bien un moyen de vous faire payer un
jour..." (la première dose est gratuite...).


Oui, j'ai eu l'occasion d'observer ce processus aussi.


</troll>

Ceci étant, de plus en plus de boites passent en ce moment à
Zope/Python pour leur développement Web (à part bien sûr celles qui
ont un abonnement à vie chez MS...)

C'est notre cas : on vient de tout basculer sur XP (car le support de

NT ne sera plus assuré), ça nous a coûté une fortune et on vient de
choper le premier virus qui a mis tout le réseau à genoux pendant plus
d'un jour...

Plus je découvre Python et plus je m'aperçois qu'il gagne vraiment à
être plus utilisé. Au début je cherchais un moyen de réaliser une GUI de
manière simple, je tombe sur wxPython et je me documente donc sur Python
et ô stupeur c'est un langage très facile, ô stupeur il est néanmoins
très puissant, ô stupeur il peut remplacer les calculs de matlab
(numarray), ô stupeur on peut aussi tracer de beaux graphiques
(matplotlib)... et ça continue depuis...


Bienvenu au club !-)

Si tu a besoin d'arguments pour convaincre tes boss (en vrac, liste non
exhaustive):
- Python est utilisé entre autres par Pixar, la Nasa et... les
développeurs et admins chez MS !-)
- Python n'est pas un jouet, cf Zope
- Python permet régulièrement de faire en une ou deux lignes des choses
qui en nécessitent une dizaine en Java
- Python s'intègre très bien avec les outils MS (COM, API win32 etc,
support dans Visual Studio...), et une implémentation de Python pour
.NET est en cours (ironPython)
- Python est aisément extensible
- Python est une techno stable et pérenne (plusieurs années d'existence,
et une licence qui garanti que le produit restera libre)
- IBM, Cap Gemini et d'autres *grosses* boite investissent dans des
solutions Zope/Python
- il existe des bibliothèques fiables pour la grande majorité des
besoins (cf la très impressionnante bibliothèque standard, et la non
moins impressionnante liste de bibliothèques tierces...)
- n'importe quel programmeur digne de ce nom est productif en Python en
moins d'une semaine
- n'importe quel non-programmeur ayant des bases en programmation
(chercheurs, scientifiques, ingénieurs etc) peut apprendre Python
rapidement et aisément.
- le support communautaire est impressionnant (cf le traffic sur
comp.lang.python...)

HTH
Bruno



Avatar
Christophe
On Thu, 29 Jul 2004 11:50:09 +0200, Bruno Desthuilliers

Plus je découvre Python et plus je m'aperçois qu'il gagne vraiment à
être plus utilisé. Au début je cherchais un moyen de réaliser une
GUI de manière simple, je tombe sur wxPython et je me documente donc
sur Python et ô stupeur c'est un langage très facile, ô stupeur il
est néanmoins très puissant, ô stupeur il peut remplacer les calculs
de matlab(numarray), ô stupeur on peut aussi tracer de beaux
graphiques(matplotlib)... et ça continue depuis...


Bienvenu au club !-)

Si tu a besoin d'arguments pour convaincre tes boss (en vrac, liste
non exhaustive):
- Python est utilisé entre autres par Pixar, la Nasa et... les
développeurs et admins chez MS !-)
- Python n'est pas un jouet, cf Zope
- Python permet régulièrement de faire en une ou deux lignes des
choses qui en nécessitent une dizaine en Java
- Python s'intègre très bien avec les outils MS (COM, API win32 etc,
support dans Visual Studio...), et une implémentation de Python pour
.NET est en cours (ironPython)
- Python est aisément extensible
- Python est une techno stable et pérenne (plusieurs années
d'existence, et une licence qui garanti que le produit restera libre)
- IBM, Cap Gemini et d'autres *grosses* boite investissent dans des
solutions Zope/Python
- il existe des bibliothèques fiables pour la grande majorité des
besoins (cf la très impressionnante bibliothèque standard, et la non
moins impressionnante liste de bibliothèques tierces...)
- n'importe quel programmeur digne de ce nom est productif en Python
en moins d'une semaine
- n'importe quel non-programmeur ayant des bases en programmation
(chercheurs, scientifiques, ingénieurs etc) peut apprendre Python
rapidement et aisément.
- le support communautaire est impressionnant (cf le traffic sur
comp.lang.python...)



Ca tombe bien j'étais en train de préparer une petite note présentant
les avantages de python, il y a aussi cette page si tu ne connaissais
pas :
http://www.amk.ca/python/howto/advocacy/
Et celle-là en français :
http://www.linux-center.org/articles/9812/python.html

Merci pour tes infos !


Avatar
Christophe
On Thu, 29 Jul 2004 10:55:08 +0200, "Olivier Ravard"

et Ô stupeur, il est 1à fois plus rapide que matlab dans sa partie
interprêtée


Attention ! Ce n'est plus vrai aujourd'hui je pense (voir mon post
suivant)

J'étais enseignant à l'Université. Je travaillais avec matlab et testé
beaucoup (mais vraiment
beaucoup) de langages (objet et autres). Les contraintes que
j'imposais à mon langage
préférentiel étaient : être portable (multiplateforme), pourvoir faire
des interfaces graphiques rapidement,
être performant en terme de calcul, avoir des fonctionnalités "réseau"
faciles à utiliser
(email, http, etc), être un langage objet, pouvoir utiliser des
modules C, etc.
Pour moi, le langage qui a remporté la palme d'or est python. Il n'y a
pas photo.
J'ai abandonné matlab pour python+Numeric+wxPython et c'est le
bonheur...


Bon je vais basculer sur Python alors, j'espère ne pas avoir à le
regretter !

Avatar
Michel Claveau, résurectionné d'outre-bombe informatique
Bonsoir !

Il est aussi possible de tester un prof, sous couvert de questions-pièges,
du genre :

" Monsieur, j'ai lu un truc que je comprend mal. Pourriez-vous m'expliquer
pourquoi Erlang est supposé supprimer les effets de bords, en utilisant
uniquement des variables non modifiables"

"Monsieur, pourquoi un langage très simple, comme BrainFuck (8 instructions
seulement) sont-ils si compliqués à utiliser"

"Maître, les langages les plus faciles à apprendre sont HQ9+ et HQ9++
(version orientée objet). Qu'apporte la version orientée objet de HQ9++,
dans la mesure où les objets ne sont plus accessibles"

"Maître vénéré, quelles sont les principales différences entre Proccessing
(langage orienté artistique), et Piet (langage inspiré de l'art moderne)".


D'ailleurs, les réponses (de profs) m'intéressent. Je pourrais les rajouter
à cette page : http://mclaveau.com/esolang




Bonne soirée
--
Michel Claveau
1 2 3