Styles

samedi 12 février 2011

Gérer une équipe comme on devrait enseigner les mathématiques

Qu'est-ce qui est vraiment au fondement même de l'informatique ? D'où viennent les véritables progrès de cette discipline ? L'informatique paraît encore jeune et beaucoup de nouveautés apparaissent mais est-ce vraiment des innovations ou de simple créations ?

La plupart des choses qu'on appelle nouveauté en informatique, ne sont en fait que de nouvelles créations sans originalité fondamentale : un nouveau framework Web, de nouvelles librairies performantes, des nouveaux langages pour dire toujours la même chose.

Les véritables nouveautés en informatique ne viennent que d'une seule source : les mathématiques. On a beau chercher recréer des centaines de fois la roue, ce n'est toujours qu'une roue, et un framework Web est toujours un framework Web. La science informatique (computer science) est la branche des mathématiques qui a pour seul objectif le progrès et la nouveauté.

Or les mathématiques sont souvent mal perçues, car plus considérées comme un moyen de sélection à l'école plutôt que l'outil parfait pour la résolution des problèmes. La justification de l'apprentissage de certains concepts en mathématique à l'école est uniquement basée sur le fait que l'élève en aura besoin pour les classes supérieures. Mais comment faire comprend à un gamin qu'il faut qu'il s'intéresse et s'investisse dans les mathématiques uniquement parce qu'il risque d'utiliser ce savoir dans 2 ans ? Un peu de psychologie enfantine fait aisément comprendre que ça ne peut pas le motiver.

Ce qui motive le plus, c'est de résoudre des problèmes pratiques pour lesquels l'élève peut se sentir investi d'une responsabilité ou d'une curiosité naturelle. Les cours de mathématiques pourraient être adapté pour proposer à l'élève un apprentissage progressif en poussant l'élève à se poser les bonnes questions et demander au professeur des outils pour l'aider à résoudre son problème.

Une très bonne (et très belle en plus) réflexion sur le sujet est la présentation Math is not linear du professeur de Mathématique Alison Blank. Faire toucher du doigt aux élèves ce qui est intéressant dans les mathématiques est vraiment une tâche primordiale d'un professeur. Dans l'idéal le professeur ne fait qu'aider les élèves en leur offrant des problèmes intéressants, en provoquant des questions qui poussent à réfléchir, en donnant, quand le besoin se fait sentir les outils nécessaires pour la résolution des problèmes.

Le parallèle peut être fait avec les personnes en charge de gérer une équipe. Le plus important pour un gestionnaire est de savoir faire fonctionner une équipe, déléguer sans imposer un diktat qui n'aurait pour conséquence que la démotivation. Le mieux en tant que chef d'un projet est de savoir poser les bonnes questions et les bons problèmes pour que chaque membre de l'équipe propose leur propres solutions et prennent volontairement leurs responsabilités. C'est ici que l'expérience du chef de projet est primordiale car il doit savoir détecter dans toutes les solutions ou propositions, les problèmes à venir, les manques éventuels, et doit pouvoir mettre en perspective les solutions vis à vis des objectifs du projet (périmètre, délais, coûts, qualité, communications, ressources, risques et achats).

Mais le chef de projet doit résister à la tentation de dire ce qu'il faudrait faire, même s'il a une idée précise de la solution. Si sa solution est la meilleure, elle réapparaitra d'elle même dans les réponses des membres de l'équipe. Le chef de projet sera souvent surpris du fait que sa solution n'est finalement pas toujours la meilleure.

samedi 5 février 2011

Comment bien utiliser OpenID

L'enfer est pavé de bonnes intentions, c'est bien connu. OpenID est une bonne intention qui, si vous ne la maitrisez pas, vous rendra la vie infernale. J'ai eu la douloureuse occasion de m'en rendre compte récemment quand j'ai décidé d'attribuer un vrai nom de domaine (www.jeromeradix.com) à mon blog ici présent (jradix.blogspot.com). Mal m'en a pris ! J'avais naïvement cru que tout cela se passerait sans douleur, c'est tout l'inverse qui se passa.

Ce blog étant porté (à la date de ce billet) par blogger.com, je profite automatiquement d'un système de consolidation des autorisations pour l'identifiant OpenID du blog : http://jradix.blogspot.com/

J'ai utilisé cet identifiant OpenID dans de nombreux sites web. Résultat : tous ces sites Web me connaissent en tant que jradix.blogspot.com, pas en tant que jeromeradix.com ! Quand j'ai associé mon nouveau nom de domaine à mon blog, j'ai n'ai plus eu aucune possibilité de me connecter sur tous les sites utilisant mon OpenID jradix.blogspot.com.

Le seul moyen de retrouver mes comptes sur les sites Web est donc de passer par ce processus très fastidieux :
  1. remettre mon blog sur jradix.blogspot.com
  2. me connecter en OpenID jradix.blogspot.com sur le site Web duquel je veux changer/ajouter l'openID jeromeradix.com
  3. une fois connecté, je remets mon blog sur jeromeradix.com
  4. je demande ensuite au site de modifier l'OpenID de mon compte (ou ajouter un nouvel OpenID) pour utiliser jeromeradix.com
  5. le site me demande alors de saisir le nouvel OpenID du compte (jeromeradix.com) et essaye d'authentifier cet ID
  6. je suis redirigé sur la page blogger.com d'autorisation d'accès au site pour mon OpenID jeromeradix.com
  7. le site met alors à jour l'OpenID du compte dans sa base de données.

On voit bien ici, les limites d'un tel processus. Si vous avez une centaine de sites Web sur lesquels vous avez un compte associé à votre OpenID, il va falloir aller sur chacun de ces sites et recommencer l'opération.

Heureusement, je n'ai pas un grand nombre de comptes protégés par OpenID, utilisant plutôt Keepass pour générer/stocker mes mots de passe. Keepass limite le risque de se faire voler ses comptes car vous pouvez avoir un mot de passe fort différent pour chaque compte. Si un de vos comptes est compromis pour je ne sais quelle raison (malveillance interne au site Web suite à la démission d'un prestataire furieux, ... ces choses arrivent plus souvent qu'on ne veut bien le croire ! regardez Wikileaks...) seul ce compte est perdu, les autres restent sécurisés car ils n'ont pas le même mot de passe.

Avec OpenID, vous centralisez l'accès à tous vos comptes sur tous vos sites Web. Si par malheur, votre compte OpenID est perdu, vous perdez tous vos comptes sur tous les sites en même temps. Tout cela sans parler du risque de Phishing inhérent à OpenID, ou de la nécessité impérieuse aujourd'hui de réduire votre dépendance et promouvoir votre indépendance...

Pour celui qui veut encore utiliser OpenID, de bonnes pratiques s'imposent donc à lui malgré tout :

- Définir un ID OpenID sur son propre nom de domaine : cela veut dire acheter un nom de domaine et héberger une page contenant deux balises <link> dans le <head> :
<link rel="openid.server" href="http://www.blogger.com/openid-server.g"></link>
<link rel="openid.delegate" href="http://jradix.blogspot.com/"></link>

La première ligne indique le serveur dans lequel vous stocker vos autorisations OpenID (pour moi, c'est le serveur blogger.com). La deuxième ligne indique quel est le compte OpenID sur ce serveur d'autorisations qui doit être utilisé pour représenter par délégation votre OpenID. J'ai mis ça dans la page correspondant à www.jeromeradix.com.

- S'enregistrer sur tous les sites Web avec l'OpenID correspondant à votre nom de domaine : pour moi, je me connecte maintenant avec l'OpenID : http://www.jeromeradix.com/

Ainsi, grâce à ça, vous n'êtes plus dépendant de votre fournisseur de service OpenId, ni de l'hébergeur de votre site Web. Vous pouvez très bien changer les deux et toujours retrouver vos comptes sur les différents sites sur lesquels vous vous êtes enregistré en OpenID.

Pour plus d'information, consulter la page Using your own URL as your OpenID.

La leçon de tout ça, est de savoir de qui vos comptes dépendent : de votre fournisseur de nom de domaine ? de l'hébergeur de votre site Web ? du service OpenId qui héberge vos autorisations ? de votre carte de crédit qui a déjà expirée et qui est pourtant la seule qui est enregistrée chez votre fournisseur de nom de domaine ?

A peser le pour et le contre, je pense que je vais préférer gérer mon compte/mot de passes avec Keepass et me faire personnellement des backups comme nous décrit très bien jwz.

A noter aussi que des doutes et des abandons apparaissent aussi chez les promoteurs de la première heure de l'OpenID.