Tumblelog by Soup.io
Newer posts are loading.
You are at the newest post.
Click here to check if anything new just came in.

February 28 2010

ametaireau

February 25 2010

ametaireau

PHP jouerais-t-il dans la cours des grands ?

Le temps passe, et la mauvaise image du langage PHP marque les esprits. Mauvaise image, qui n’est pas complètement dénuée de sens, même si les choses évoluent doucement. PHP est considéré par beaucoup comme un langage de débutants, et bon nombre d’entreprises et de personnes font le choix d’utiliser ce langage en mettant de coté les bonnes pratiques de la conception logicielle, traînant avec eux une vieille image ternie de ce qu’est PHP actuellement.

D’un autre coté, des projets matures et fiables voient le jour, héritant du savoir faire et de la qualité du monde Java, un exemple frappant est Flow3, et plus récemment, Symfony 2 (ce qui m’à d’ailleurs agréablement surpris). Le monde de PHP est donc en pleine mutation, avec la montée en puissance de concepts avancés tels l’inversion de contrôle, les tests unitaires et (enfin!), de la VRAIE persistance.

A l’origine, un langage de débutants…

PHP joue-t-il dans la cour des grands ?

PHP joue-t-il dans la cour des grands ?

Ce qui plombe le plus PHP, doit être le non professionnalisme d’une partie de sa communauté, découvrant le développement via PHP — langage permissif au possible — et laissant la porte ouverte à des aberrations folles.

Le langage laisse (trop) libre les nouveaux venus, et on ne parles que peu de tests unitaires, de code commenté (j’en passe des tonnes, volontairement). Facile donc de faire les choses de travers, et vous ne trouverez que peu de personnes pour vous encourager à ne pas continuer dans ce sens, à moins de savoir vers ou chercher.

On trouve encore trop de scripts en PHP avec une approche fonctionnelle (de par le passé de php et son approche fonctionnelle de la programmation), et trop de bibliothèques pas ou peu testées, bref, dans l’ensemble c’est une catastrophe. Je m’amuse à faire l’analogie avec la construction de maisons avec du scotch.

… qui tends à se professionnaliser

Je suis le premier à dire que les (petites) entreprises (en général) manquent d’un savoir faire crucial en terme de bonnes pratiques, et pourtant, ces dernières commencent à s’intéresser de près à des concepts avancés, et aux bonnes pratiques. Les frameworks utilisés en entreprise sont souvent testés unitairement (Jelix, symfony, Zend Framework, pour ceux que j’ai eu l’occasion d’apprivoiser), et les bonnes pratiques sont parfois vraiment mises en avant.

Avec la sortie de PHP 5.3, on peut désormais utiliser des fonctionnalités telles que les espaces de noms ou les closures, concepts déjà implémentés depuis fort longtemps dans d’autres langages, et qui venaient à briller par leur absence.

Et un front de raz-le-bol général qui bat son plein: on veut du code testé, du code bien fait, on en veux plus de la soupe (et de la programmation spaghetti) ! Rébellion !

Même si je fonde de grands espoirs dans PHP, et que je penses que tout n’est pas à jeter, qu’il y à une réelle motivation qui commence à se faire sentir de la part de la communauté, je me demandes si PHP joue dans la même cour que Java, ou que Python et Ruby pour ne citer qu’eux, qui bénéficient d’une communauté forte et avide de bonnes pratiques.

Et vous qui utilisez PHP, vous en pensez quoi ? PHP peut-il être comparé à Java, à Python, à Ruby ? Est-ce une abération de faire de telles comparaisons? ou est-ce définitivement à un autre niveau ?

Tags: Humeur

February 23 2010

ametaireau

Semaine de l’environnement: La consommation étudiante

Les acteurs associatifs sont bien souvent moteurs des critiques de nos sociétés. Je pense à Framasoft, à la Quadrature du net ou à Ars Industrialis (dans le domaine de la science et de l’informatique), mais aussi aux Amis de la Terre, à ATTAC (dans le domaine de l’environnement entres autres), et a tout un tas d’autres associations que je ne peux pas citer ici exhaustivement… Ce sont eux qui sont porteurs de messages alternatifs, et qui sont les initiateurs de débats publics, qui permettent de faire avancer des thématiques aussi importantes que le logiciel libre ou la protection de l’environnement.

q85-500x500-dev_courbesDans cette optique, depuis près de 3 ans (déjà !), au sein du réseau GRAPPE, on essaye d’aborder des thématiques qui touchent de près ou de loin à l’environnement, parce que c’est un sujet qui nous importe et nous passionne.

L’année dernière, c’était l’alimentation étudiante, ce qui à abouti à la publication de la revue « les étudiants se mettent à table» . Cette année c’est la consommation étudiante qui est au programme.

La consommation étudiante ?

L’idée principale de cette étude est de tenter de faire une analyse de la « société de consommation» , souvent questionnée par les étudiants et par d’autres, et de jeter un œil sur le rapport des étudiants à cette société:

Quoi et comment consomment-ils ? Les universités et les écoles ne poussent-elles pas d’une certaine manière les étudiants à la consommation ?

Quelles sont les alternatives face aux dérives de surconsommation ?

Analyse des pratiques, réflexions et mobilisations des étudiants en termes de consommation seront réalisés pour comprendre leur modes de vie, mais aussi leurs attentes, leurs propositions sur cette thématique

La semaine de l’environnement !

SDE_18012010_TOULOUSEA travers l’ensemble des villes du réseau, des projections de films et des débats auront donc lieu sur ce thème, lors de la semaine de l’environnement 2010, qui se déroulera d’ailleurs durant le mois de Mars partout en france, et du 6 au 14 Mars sur Toulouse. Jetez un oeil au programme !

Avec pour objectif de sonder un peu le ressenti des étudiants en terme de consommation, nous avons mis en place un questionnaire en ligne, que vous pouvez compléter en une petite 10aine de minutes, n’hésitez pas !

La page sur la consommation étudiante sur le site du GRAPPE

Tags: Associatif

February 07 2010

ametaireau

February 05 2010

January 31 2010

ametaireau

January 24 2010

ametaireau

January 17 2010

ametaireau

January 10 2010

ametaireau

January 03 2010

ametaireau

December 27 2009

ametaireau

December 22 2009

December 20 2009

ametaireau

December 18 2009

December 17 2009

ametaireau

Python, go !

Cela fait maintenant un peu plus d’un mois que je travaille sur un projet en django, et que, nécessairement, je me forme à Python.

Je prends un plaisir non dissimulé à découvrir ce langage (et à l’utiliser), qui ne cesse de me surprendre. Les premiers mots qui me viennent à l’esprit à propos de Python, sont « logique»  et « simple» . Et pourtant puissant pour autant.

Je ne manque d’ailleurs pas une occasion pour faire un peu d’évangélisation auprès des quelques personnes qui veulent bien m’écouter.

The Zen of Python

Avant toute autre chose, je pense utile de citer Tim Peters, et le PEP20, qui constituent une très bonne introduction au langage, qui prends la forme d’un easter egg présent dans python:

>>> import this
The Zen of Python, by Tim Peters

Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you'
re Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let'
s do more of those!

J’ai la vague impression que c’est ce que j’ai toujours cherché à faire en PHP, et particulièrement dans le framework Spiral, mais en ajoutant ces concepts dans une sur-couche au langage.

Ici, c’est directement de l’esprit de python qu’il s’agit, ce qui signifie que la plupart des bibliothèques python suivent ces concepts. Elle est pas belle la vie ?

Comment commencer, et par ou ?

Pour ma part, j’ai commencé par la lecture de quelques livres et articles intéressants, qui constituent une bonne entrée en matière sur le sujet (La liste n’est bien évidemment pas exhaustive et vos commentaires sont les bienvenus) :

J’essaye par ailleurs de partager au maximum les ressources que je trouve de temps à autres, que ce soit via twitter ou via mon compte delicious. Allez jeter un œil au tag python sur mon profil, peut être que vous trouverez des choses intéressantes, qui sait!

Un python sexy

Quelques fonctionnalités qui devraient vous mettre l’eau à la bouche:

  • Le chaînage des opérateurs de comparaison est possible (a<b <c dans une condition)
  • Assignation de valeurs multiples (il est possible de faire a,b,c = 1,2,3 par exemple)
  • Les listes sont simples à manipuler !
  • Les list comprehension, ou comment faire des opérations complexes sur les listes, de manière simple.
  • Les doctests: ou comment faire des tests directement dans la documentation de vos classes, tout en la documentant avec de vrais exemples.
  • Les métaclasses, ou comment contrôler la manière dont les classes se construisent
  • Python est un langage à typage fort dynamique: c’est ce qui m’agaçait avec PHP qui est un langage à typage faible dynamique.

Cous pouvez également aller regarder l’atelier donné par Victor Stinner durant le Pyconfr 09.

Have fun !

Tags: Python

December 13 2009

ametaireau

December 06 2009

ametaireau

November 29 2009

ametaireau

November 22 2009

ametaireau

November 15 2009

ametaireau
Older posts are this way If this message doesn't go away, click anywhere on the page to continue loading posts.
Could not load more posts
Maybe Soup is currently being updated? I'll try again automatically in a few seconds...
Just a second, loading more posts...
You've reached the end.