Feeds:
Posts
Comments

Archive for the ‘En français’ Category

L’adjectif “libéral” est un des nombreux termes qui a, surtout au Canada, et suivant le contexte, des connotations très différentes et parfois contradictoires.

Premièrement, le mot “libéral” a la même racine que “liberté”, ce qui est plutôt positif à première vue.

Ainsi, dans un premier sens, “libéral” s’oppose à “conservateur”. L’un est supposé est plus permissif, plus “libertaire” et l’autre plus “frileux”, gelé dans un statut-quo perpétuel.

Cependant “libéral” et surtout “néo-libéral” charrie une toute autre symbolique.

Ici, “libéral” veut plutôt dire partisan de la non intervention de l’état dans la vie publique et de la non-réglementation des activités économiques.

La “libéralité” qu’on revendique ici est celles des entreprises, des forces du marché. On est contre toute forme de réglementation, de répartition des richesses. “Laissez faire les acteurs économiques”. C’est le mot d’ordre.

Autrement dit “Des renards libres dans un poulailler libre!”

On a vu le résultat avec la crise de 2008, qui démontre où on s’en va avec le laisser-faire dans le domaine financier en particulier.

On peut aussi dire que ce mode de pensée privilégie la liberté individuelle et nie souvent l’existence de libertés collectives.

Par exemple, on entendra souvent dire «pourquoi ne suis pas “libre” d’envoyer mon enfant à l’école anglaise?», ne voyant pas que l’exercice de cette “liberté” brimerait à long terme le droit collectif d’une société de vivre et de prospérer en préservant sa culture et sa langue.

La question se résume à ceci: “Des acteurs économiques agissant sans contraintes réglementaires vont-ils, tout naturellement, faire converger la société vers la maximisation du bien commun?”
Personnellement, je ne le pense pas.

Il y a eu une période de “croissance” pouvant donner l’impression que l’enrichissement effréné de certains entraînait l’enrichissement global de la société (sauf les laisser pour compte).

Ça a été la belle époque du capitalisme. C’est, je crois, une époque révolue. On voit bien que cela a conduit à la destruction de notre environnement et à des inégalités de plus en plus grandes.

Les inégalités les plus criantes passent d’ailleurs presque inaperçues aux yeux de la plupart d’entre nous puisque ce sont les inégalités entre les pays.

Quand on voyage en Afrique ou en Asie, on est frappé par la pauvreté abjecte d’un grand nombre de personnes.

Libre à vous de vous consoler en pensant, plus ou moins consciemment, que tout est bien dans le meilleur des mondes et qu’on est plus riches parce qu’on travaille fort et qu’on le mérite bien.

Laissez moi vous dire que les ouvriers au Sri Lanka qui fabriquent nos jeans pour 10$ (pas le salaire, le prix de vente au grossiste américain) , que nous achetons ensuite pour 200$,
travaillent très fort eux aussi !

Advertisements

Read Full Post »

“Perfection interne et confirmation externe”. Tels étaient les deux critères, selon Einstein, pour juger de la valeur d’une théorie scientifique.

Le degré de perfection interne d’une théorie est d’autant plus élevée, que le nombre d’axiomes de base sur lesquels elle est fondée est plus restreint.

Perfection interne est donc en quelque sorte synonyme d’élégance.

Quant à la confirmation externe, il s’agit bien entendu de la concordance entre les phénomènes observés et les prévisions de la théorie.

Au fond, puisque que le mérite ultime d’une théorie, c’est de représenter le plus possible la réalité, alors admettre le premier des deux critères précédents revient à postuler que la “réalité” ou la “nature” doit aussi posséder cette même perfection interne, ou élégance.

Bien entendu, ceci suppose que l’on adhère au système de pensée selon lequel il existe une réalité objective, connaissable et indépendante de nous, que nous tentons de découvrir à travers le miroir déformant de nos perceptions et dans les limites des capacités de notre cerveau.

Einstein croyait à cette réalité objective et “a priori”.

Quel rapport avec l’informatique? J’y viens, ayez un peu de patience!

Grady Booch disait aussi dans un de ces livres, en substance : « Si vous voulez concevoir des systèmes complexes qui aient quelque chance de succès et qui supportent l’épreuve du temps, alors étudiez des systèmes qui ont fait leurs preuves et fonctionnent bien. La nature en montre de nombreux exemples».

Une plante, un animal, par exemple sont des systèmes effroyablement complexes et cependant très robustes et résilients.

Leur complexité n’est pas arbitraire, on peut l’appréhender en décomposant ces systèmes à des niveaux d’abstractions grossiers, puis de plus en plus fins.

Mes connaissances en botanique sont très sommaires mais je crois qu’on peut dire schématiquement qu’une plante se compose d’un sous système racinaire et d’un sous système “feuillage”, chacun ayant son role. Les racines absorbent l’eau du sol et certains nutriments. Le feuillage a pour fonction la photosynthèse et la reproduction etc.

Donc on voit que même un système complexe, peut être compris à un niveau grossier d’abstraction. Bien entendu, des connaissances de plus en plus spécialisées sont nécessaires pour appréhender les niveaux plus fins d’abstraction.

Ainsi que le soulignait Grady Booch, la complexité des systèmes naturels repose sur deux “patterns” essentiels : la composition et la spécialisation.

La composition est le fait que ces systèmes sont batis comme des assemblages de sous systèmes, qui sont à leur tour décomposables en parties de plus en plus fines.

Quant à la spécialisation, en poursuivant avec la métaphore botanique, on pourrait dire que la plante est ultimement composée de cellules, dont il existe différents types spécialisés.

Ces deux patterns se retrouvent en design de systèmes sous les termes de “composition” et “polymorphisme”.

Pourquoi les systèmes naturels seraient ils toujours élégants?

En fait ceux qu’il nous est donné d’observer, c’est à dire ceux qui ont survécus, le sont !

L’élégance est également apparentée avec la notion d’économie de moyen. La nature semble toujours tendre vers ce but.

N’en déplaise aux créationnistes, tous ces systèmes que nous observons ont été batis par des processus évolutifs.

Si nous voulons bâtir des systèmes complexes, il faut avoir la modestie de reconnaître qu’il est difficile voir impossible d’en concevoir un du premier coup, “ad-nihilo”.

Les meilleurs systèmes sont donc bâtis par un processus itératif et incrémental.

Toutefois, ces évolutions successives devraient idéalement ne jamais laisser de traces apparentes des “errements” par lesquels le designer sera passé. “Les raisons historiques” voilà l’ennemi !

Une bonne façon de savoir si vous avez échappé à cette embuche, c’est de tenter d’expliquer le système que vous avez conçu à une tierce personne extérieure au projet. Si vos couches d’abstraction sont bien pensées, vous n’aurez pas de difficulté à faire comprendre le système en progressant depuis les abstractions les plus générales, jusqu’aux détails les plus fins. À chaque niveau, votre interlocuteur pourra vous suivre, car les détails non encore dévoilés, des niveaux inférieurs, ne nuiront jamais à sa compréhension du niveau courant.

Je trouve personnellement cet exercice agréable et valorisant. Il vous confirme que vous êtes sur la bonne voie. Quelque fois, les remarques et les froncements de sourcil de votre interlocuteur vous amèneront à certaines remises en question. N’hésitez pas à les faire.

En revanche, si vous êtes obligés d’invoquer des “raisons historiques” pour justifier certaines parties de l’architecture, l’exercice devient alors inutile et frustrant. L’autre personne ne peut plus vous “challenger”, l’argument est sans appel. Puisqu’elle n’était pas présente lors de ces phases “historiques”, que pourrait-elle en dire?

Si vous n’avez pas la possibilité de faire ce transfert de connaissance, alors pourquoi ne pas essayer de documenter le système?
C’est un exercice semblable. Pourquoi de nombreux informaticiens n’aiment pas documenter? Ne serait-ce pas justement à cause de la difficulté d’expliquer clairement un design composée de strates, laissant apparaître nos errements successifs, et n’ayant pas subi les indispensables retours arrière et “refactoring”?

En conclusion:

La nature est efficace, élégante et sa complexité est “décomposable”. Comme le dit Hubert Reeves, la nature est “structurée comme un langage”, formé de lettres, puis de mots, puis de phrases, chapitres, livres… Nos systèmes devraient suivre cet exemple.
Deuxièmement, la nature a été bâtie par un processus évolutif. Faisons de même.

La sagesse populaire dit que “la critique est aisée mais l’art est difficile”. Critiquons donc sans relâche notre design à chaque itération et améliorons le !

Read Full Post »

J’avais pensé écrire ce blog en anglais…

À la réflexion toutefois, je préfère utiliser la langue que je manie le mieux. Et je ne veux pas me priver du plaisir réel que j’éprouve à écrire en français.

Sans doute utiliserai-je l’anglais pour certains textes techniques.

“The computer is naked !”

Vous l’aurez peut-être deviné, est une référence au conte de Hans Christian Andersen : “Les habits neufs de l’empereur”.

Ce conte illustre un comportement enraciné dans l’âme humaine et par conséquent de toutes les époques.

«Si l’on constate un consensus quasi général sur un sujet donné, parmi des individus qui semblent bien informés, on aura tendance à faire taire son jugement, même si notre propre analyse nous fait douter de cette “évidence”»

La motivation de cette attitude est souvent la crainte de passer pour incompétent en n’adhérant pas à la pensée commune, la crainte de voir ce petit sourire ironique ou apitoyé qu’on ne manquera pas de vous adresser.

Read Full Post »