dimanche 30 septembre 2012

A0253 Pour fortifier vos idées, publiez-les sans réserves

Vous avez l'idée du siècle, celle qui peut changer votre destin et celui du monde entier. Que faire ?
Surtout, ne  pas la garder  secrète. Publiez-la largement, parlez-en dans le détail à tout le monde, sans rien attendre en retour, sans faire signer de NDA. Ce qui va se passer:

-- 90% des gens s'en fichent
-- 9% des gens s'y intéressent mais n'y comprennent rien
-- 0,9% la comprennent tout de suite, car ce sont vos rivaux et vos concurrents, mais ils aiment tellement leur idée à eux qu'ils préfèrent ne pas flirter avec la vôtre, les idées sont tellement jalouses ...
-- 0,1% la comprennent, la commentent, la courtisent, vous félicitent, vous admirent, la généralisent, s'enthousiasment. Ceux-là, ou bien vous les embauchez, ou bien ils vous embauchent, ou bien vous vous associez.
Vous aurez ainsi tapé dans le ... millième.

samedi 29 septembre 2012

A0252 La Bible du Programmeur


Si Dieu était un programmeur orienté objet, il aurait dû commencer par créer une boite –une classe- comme conteneur du monde, puis par écrire une boucle for pour le faire tourner.

Ou une boucle while, ou until ? That is the question.

Heureusement, pour les sujets importants, comme les dix commandements, il a préféré la programmation déclarative.

A0251 Box Office Numérique


Le problème du Web, c’est qu’un film vu en salle par 10 000 spectateurs est plus connu qu’une vidéo vue en ligne par 10 millions d’internautes

jeudi 27 septembre 2012

A0250 Faut-il arrêter les centrales nucléaires informatiques ?

Je suis toujours effaré par la sophistication des environnements de développement de programmes (IDE en anglais: I pour Interactive). Ah, pour être interactifs, ils le sont: on passe son temps à cliquer dans des tas de menus et répertoires avant de faire la moindre chose.

Pour des professionnels du développement informatique sur de très gros projets, c'est certainement très bien. Par contre, quand on  essaie d'utiliser ça pour initier des élèves à l'informatique, c'est tout de même sadique - ou masochiste.

Si vous voulez par exemple faire réaliser à nos chères têtes blondes un programme qui est capable de faire 1+1,  ou bien de dessiner un cercle sur l'écran, il faut prévoir plusieurs séances de TP ...ou alors leur proposer Javascript, du type Js1k,  (ce que l'on fait à l'ESILV au premier semestre de la première année)  ou bien  APL (ça serait mieux, mais je n'ai pas encore osé).

De mon temps (en 1967) , l'environnement de développement était beaucoup plus convivial:

-- nous écrivions notre programme avec un crayon -et une gomme-  sur une feuille de papier adaptée
-- un gars passait en camionnette ramasser nos feuilles, et les portait au centre de calcul à 10 km de là
-- quelques jours plus tard, il nous ramenait les listings des résultats
-- on avait le droit à trois passages, pas un de plus

Et comme ça, à Noël, on avait tous  mis au point un programme de résolution d'équations différentielles de type Runge-Kutta. (Le langage de programmation était Algol 60)

Vous en connaissez beaucoup, vous, des IDE opérationnels avec reconnaissance automatique des caractères manuscrits?

Une autre manière de comprendre comment se passe un TP d'initiation à l'informatique avec des IDE professionnels: c'est comme si, pour faire le TP d'électricité  "Pont de Wheatstone", on demandait  aux élèves -en simplifiant beaucoup- de:

-- s'approcher d'une centrale nucléaire
-- trouver l'entrée
-- trouver la salle des commandes
-- lire le mode d'emploi
-- mettre la centrale en marche
-- etc, etc ...
-- enfin, quand un peu de courant commence à sortir, se dépêcher de jouer avec le pont de Wheatstone avant la fin du TP.

J'aimais bien la camionnette de l'Avenue Félix-Viallet à Grenoble. En tout cas, ça ne m'a pas découragé de faire de l’informatique.


mardi 25 septembre 2012

A0249 Défense des Sans Papiers

Toujours délicat, dans un comité de programmes, de justifier le refus d'un papier.

Quelques suggestions de formules, plus ou moins vécues:


"Nous refusons à l’unanimité de publier cet article car il reprend des choses anciennes que nous ignorions tous."

"Nous refusons cet article, car l'auteur laisse entendre qu'il n'y a pas de solution au problème qu'il pose"

lundi 24 septembre 2012

A0248 Datalog, Méthode d'Alexandre et droit du mariage

Je viens d'entendre à la radio que, selon un projet de loi, on n'écrirait plus sur les livrets de famille :.
père:
mère:

mais

parent1:
parent2:

Figurez-vous qu'il y a beaucoup de gens que ça dérange beaucoup.

Eh bien, moi aussi!

J'ai en effet passé quelques-unes des plus belles années de ma jeunesse -ou plutôt de nuits dans ma cuisine- à travailler sur la discipline informatique dite DATALOG, pour laquelle je ne suis pas peu fier d'avoir inventé la première méthode de traitement des axiomes récursifs, connue sous le nom de Méthode d'Alexandre. Hélas pour moi, des américains célèbres l'ont trouvée -pareille la même, notations comprises- ensuite quelques mois après, sans - à ma connaissance - avoir eu vent de mes travaux. Et, comme ça se passait à Stanford dans le bureau du directeur du CS Dept, figurez-vous qu'ils sont cités beaucoup plus que moi. Il n'y a pas de science juste.  Mais le sujet du jour n'est pas là.

Donc, en DATALOG, (ou en Prolog depuis bien plus longtemps), on passe son temps à écrire des clauses logiques de la forme:

père(X,Y) père(Y,Z) => grand_père(X,Z)
mère(X,Y) mère(Y,Z) => grand_mère(X,Z)
père(X,Y) mère(Y,Z) père (Z,T) => arrière_grand_père(X,T)

Il y a des milliers d'articles qui contiennent de tels exemples.

Eh bien maintenant, c'est foutu. Plus de père, plus de mère, ni de grand-père, de grand-mère, de beau-père, etc ... Mais toujours des frères, soeurs, oncles et tantes ... (Car la soeur de père1 ou la soeur de père2 c'est pareil, ce sont des tantes: la différentiation des sexes des descendants n'est pas remise en cause par le projet de loi, simplement le rôle des ascendants).

Bon, alors on fait quoi ?

parent1(X,Y) parent2(Y,Z) => ???

Va y avoir du boulot pour les ontologistes du W3C.

Faisons quelques propositions:

parent1(X,Y) parent1(Y,Z) => grand_parent1(X,Z)
parent1(X,Y) parent2(Y,Z) => grand_parent2(X,Z)
parent2(X,Y) parent1(Y,Z) =>grand_parent3(X,Z)
parent2(X,Y) parent2(Y,Z) =>grand_parent4(X,Z)

Oui mais d'autres préféreront:


parent1(X,Y) parent1(Y,Z) => grand_parent11(X,Z)
parent1(X,Y) parent2(Y,Z) => grand_parent12(X,Z)
parent2(X,Y) parent1(Y,Z) =>grand_parent21(X,Z)
parent2(X,Y) parent2(Y,Z) =>grand_parent22(X,Z)

Bon, il suffira de déclarer (en OWL ?)

grand_parent1(X,Y) <=> grand_parent11(X,Y)

Et puis il y a les arrière_grands_parents: il va y en avoir 8 ? Non, c'est plus compliqué que ça ...

Il faut aussi traiter les familles recomposées: on ne peut plus dire beau-père et belle-mère. Je vais y réfléchir demain.

Remarquez, un avantage c'est que parent c'est parent en français et en anglais.
Les gars de Stanford n'auront plus le motif jadis utilisé que mes papiers ne sont pas écrits en assez bon anglais pour les refuser.

Ce qui m’embête, c'est que Alexandre, en grec ça veut dire "Homme Fort" . Va peut-être, par les temps qui courent,  falloir trouver un autre nom, c'est pas magique, ça ?

.






samedi 22 septembre 2012

A0247 Artificial Intelligence Past Present and Futuree

Un lien vers une présentation que j'ai faite au congrès mondial IFIP 2004, sur le passé, le présent et le futur de l'Intelligence Artificielle.

Qui explique pourquoi et comment ça a bien marché il y a une vingtaine d'années, puis ça s'est endormi, et pourquoi cela reste le seul espoir d'améliorer le traitement de l'information.

J'ai en gros le même avis 8 ans après. J'ajouterai:

-- je déplore que le Web Sémantique nous ait fait perdre autant de temps, tout créant un terrain fertile
-- je déplore que l'IA s'intéresse de nos jours trop exclusivement à tout ce qui ressemble à des progrès algorithmiques (apprentissage, satisfiabilité), progrès certes très appréciables, mais qui occultent tout le problème amont de la représentation des connaissances, et de la modélisation des problèmes de manière acceptable par nous autres pauvres humains naturels.

A0246 Pourquoi j'ai zappé le web sémantique (en video!)

Merci à Alexandre Monnin d'avoir mis en ligne mon intervention du 14 Octobre 2011:

"De l'Intelligence Artificielle au Calcul Littéraire: pourquoi j'ai zappé le web sémantique"

Grâce au logiciel "Ligne de Temps" de l'IRI -Musée Pompidou, vous pouvez annoter cette video pendant son déroulement.

Si vous voulez voir les slides seules, c'est ici.

mardi 18 septembre 2012

A0245 L'équation qui remet en cause la première place du MIT

Le MIT, première université du monde.

Oui mais, lu il y a quelques années sur une porte des toilettes du Logan Airport à Boston cette belle démonstration algébrique:

"Without her, I am nothing"

D'où

Me - She = 0

D'où:

M(e) - Sh(e) = 0

D'où:

M - Sh = 0

D'où

M(it) - Sh(it) = 0

D'où

Mit = Shit

A0244 Nous nous faisons entuber avec notre propre langue

Lu dans la même journée du 17 Septembre 2012:

-- un tiers des prévisions de création d'emploi en France l'an prochain sont dans des fast-food, dont la plupart chez McDonalds

-- un classement des meilleurs universités du monde. Les  premières universités latines -hors Normale Sup et Polytechnique , mais celles-ci sont au nord de la Loire, donc pas en langue d'oc- se trouvent autour de la 150ème place: Barcelone, Bologne. C'est à dire assez débiles au regard de ce classement, qui me en avant essentiellement des institutions de langue anglaise

-- le premier du classement est le MIT

-- le syllabus -tiens, tiens- "CDIO" des formations d’ingénierie du MIT  liste environ 650 -vous avez bien lu- "compétences" non techniques pour le bon ingénieur, du genre: "how to create new ideas and approaches" ou "identifying the underlying paradox to be examined", respectivement les  numéros 4.7.2.2 et 4.7.1.4

-- toutes les petites universités du fond du classement vont s'efforcer de progresser en ... suivant les recommandations du CDIO du MIT, lequel MIT n'a pas de crainte à se faire: il créé ainsi ses pâles imitateurs, ses éternels suiveurs. Pendant que nous ânonnons nos syllabus en CDIO, ils préparent le futur.

Conclusion, toujours la même : quand les USA standardisent, l'Europe trinque (voir le billet A0219), ou plutôt  que de trinquer s'empiffre de pain de mie avec de drôles de concombres sucrés au milieu, préparés par les 45000 employés français labellisés CDIO,  I presume.

Le pire, dans cette servilité scientifique et pédagogique, c'est que les suiveurs croient lire une bonne parole en anglais, alors que la langue utilisée est à 99% du pur ... français ou latin.

L'anglais a en effet deux sources principales, le français  -un peu de latin d'origine aussi- et les langues venues du nord de l'Europe. Dans la vie courante et la littérature, les mots non latins sont minoritaires, et ces mots courts que nous français détestons tant - skim,  kink, rim, tetchy (vous le connaissiez celui-là ? placez le vite pour briller au prochain corporate  meeting), sulky- abondent.
Mais dans tous les écrits scientifiques, et en particulier sous leur forme PowerPoint, c'est du français ou du latin. Pas besoin d'aller chercher plus loin que CDIO, qui veut dire:

Conception Design Implémentation Opération !!!

Les pays de langue latine peuvent dire la même chose.

Nous nous faisons entuber avec notre propre langue, de quoi suffoquer, non ?

En fait, ce fait que l'anglais scientifique international, c'est du français, ça  devrait donner aux défenseurs de la francophonie l'idée suivante: populariser dans le monde un vocabulaire anglais exclusivement composé de mots quasi-français. Car bien sûr tous les mots courts venus du nord ont un synonyme en "anglais-français".
N.B.: Tetchy peut être remplacé en anglais par le mot anglais irritable. Tetchy, moi ?

samedi 15 septembre 2012

A0243 Avant les chercheurs voyageaient après


Il y a quarante ans, quand un chercheur avait une idée, il allait voir ses collègues du couloir et leur disait : je crois que j’ai une idée, je vais m’isoler quelques semaines ou quelques mois, et si ça donne quelque chose, je vous raconterai. Si c’était très  bon,  il était invité à faire des séminaires dans le monde entier. Maintenant, quand un chercheur a une idée, il envoie des courriels à la terre entière pour trouver des collègues qui n’ont pas d’idée à ce moment-là, afin de  monter des réunions pour monter un projet européen.

Avant, on voyageait après. Après,  on s’est mis à voyager avant

dimanche 9 septembre 2012

A0242: Pas de politique, mais tout de même ...

Bon, ici on ne fait pas de politique, mais quand même, voilà ce que je lis dans une tribune du Monde de cette semaine, sous la plume d'un élu de la République connu, important dirigeant d'un très grand parti politique républicain et démocratique:

"Nous devons nous fixer pour objectif d'imposer l'hégémonie culturelle"

Non, ce n'est pas Tim Berners-Lee.

Tiens,  le gars qui dit ça, il devrait arrêter la politique et postuler au W3C.

jeudi 6 septembre 2012

A0241: Vive l'indiscipline

Congrès ECAI 2012 (European Conference on Artificial Intelligence) à Montpellier la semaine dernière.
Énormément de papiers, énormément de sessions, des dizaines de workshops spécialisés, des titres de papiers auxquels je ne comprends strictement rien, ce qui ne facilite pas la conversation pendant l'excellent cocktail.

Conclusion:

La meilleure manière d'augmenter la pluridisciplinarité est de diminuer le nombre de disciplines

mardi 4 septembre 2012

A0240 La charité bien ordonnée du programmeur

Pour un programmeur orienté objet, l'altruisme c'est quand il réutilise le code des autres.

Sur la sociabilité des programmeurs, voir aussi le billet A0215.

dimanche 2 septembre 2012

A0239: Allez voir "Pour rater son année universitaire"

.Sur le blog ANTHROPOPOTAME

On peut essayer aussi:

"En cours, je ne prends pas de notes, juste quelques mots-clés, puis je vais voir avec ça sur Google"

"Je n'ai pas traité cette question, l'énoncé était trop long à lire"  (en fait c'étaient des exemples pour mieux aider à faire l'exercice)

"Mais Monsieur, vous nous avez trompés, le cours de datamining c'est pas de l'informatique: il y a des maths!"

samedi 1 septembre 2012

A0238 Destructurer le débat sur la structuration

J'ai fait une présentation à la conférence ECAI 2012, dans le workshop "AI and KM", organisé par Eunika Mercier- Laurent.

C'est une réflexion sur mes 30 ans d'expérience en langages, outils et pratiques en représention de connaissances, de Prolog à KOOL, puis  IDELIANCE et aujourd'hui le "Litteratus Calculus"

Voici le lien vers la présentation sur Slideshare.

Quelques extraits:


In the early 80's, AI languages (LISP, PROLOG, KRL, Constraints later) were seen as the promise of a  revolution in programming computers: declarative programming

1982: Alain COLMERAUER declares that PROLOG is designed to replace COBOL



1991 (Bull Cediag):
 Corporate Intelligence = Corporate Memory + Corporate Decision + Corporate Visibility

Semantic Networks is a good compromise between man and machine

Is Semantic Web a bad Joke ?

SW 2001: "Machines understand and help Humans" (Scientific American Paper)

SW 2006: "A machine-to-machine Web of data"

SW 2011: Linked Data: "Humans help Machines"

SW 2016: ???? 

Tools are important! Never say "This is just a tool". 

A good KRL should be enjoyed by people