Hier,
j'ai eu le plaisir d'assister au debriefing interne fait par Alexis
Moussine-Pouchkine, notre consultant Java préféré.
Cela a été de très loin, la meilleure
présentation de toute cette manifestation, et je décerne
à Alexis le prix du meilleur français de JavaOne
2005
Merci, bravo, rideau!
J'ai
passé un excellent weekend gentiment invité par
Laurence dans sa jolie maison des Yvelines qui finalement est un bel
endroit de la région parisienne. La chaleur cet été
2005 fait de l'apéritif un moment à la fois délicieux
et incontournable, surtout quand il se trouve être partagé
par des gens aussi charmants et accompagné des incontournables
Apéricubes. Je vous livre le premier que j'ai pris au milieu
d'une bonne centaine d'autres: édifiant!
Pour ceux qui trouveraient le sujet un peu éloigné de nos préoccupations actuelles, je me permettrais de rappeler que la boucle d'oreille de la Vache qui Rit est un parfait exemple de mise en abîme graphique si chère à Escher et qui pourrait s'apparenter à l'appel récursif infini d'un développeur Java débutant.
J'ai fait ça avec mes petites mains, Gimp ... et StarOffice 8.0 (béta)

Cet édition de JavaOne 2005 a fait la part belle aux français qui, d'ailleurs, le lui ont bien rendu. Si ma mémoire ne me trahit pas, Olivier Piou, président d'Axalto, fut le premier français à jamais être monté sur scène pendant une general session. Ceci est d'autant plus remarquable que c'était à l'occasion de la milliardième Java Card fabriquée par cette société. Pas mal. Mais il semblerait que Romain Guy ait fait encore plus fort pendant les NeatBeans Days (qui n'en comptaient qu'un et je n'étais pas là) en présentant une démonstration de Matisse aux 600 développeurs ébahis, le tout, aux côtés de James Gosling en personne. Bravo l'ami! J'ai par contre assisté à l'excellente conférence de Eric Bilange sur le thème Developing Cross-Carrier Multiplatform Mobile Multiplayer Game. Clair, précis, didactique, un vrai régal. Enfin, Hubert Le Van Gong, tout frais arrivé de Sony chez nous, m'a fait forte impression sur le délicat problème de l'interopérabilité avec le monde WS-* et Microsoft en particulier aidé en cela par l'excellent Pat Patterson . Finalement, la France arrive à avoir de bons ambassadeurs quand elle le veut.
[JavaOne 2005] ( July 11, 2005 10:17 AM ) Permalink | Comments [2]
Le
projet Jackpot vise à fournir de nouvelles fonctionnalités
aux développeurs Java dans la gestion pure de leur code. Deux
grands types d'outils sont mis à leur disposition: des outils
d'analyse statique du code ayant comme but principal de donner des
éléments objectifs de mesure
de complexité et donc de fragilité potentielle des
choix de programmation et d'autres outils dits de refactoring.
Cette dernière technique vise à permettre des
changements globaux du code (noms de classes, redéfinition de
l'arbre d'héritage, ...) tout en conservant un source à
la fois correct (dans le sens javac
du terme) et plus solide (à partir des constations faites
précédemment). C'est au cours de cette session,
que j'ai découvert que le paragdime de base du refactoring est
la règle de production si chère à mon passé
dans l'intelligence artificielle. Voici un exemple de règle
autorisant la correction des clauses conditionnelles un peu trop vite
écrites:
(a==b
? 0 : // Values are equal
(a<b ? -1 : // (-0.0, 0.0) or (!NaN, NaN)
1));
// (0.0, -0.0) or (NaN, !NaN)
Ceci n'est pas sans me rappeler le langage Prolog et son système d'unification, à la différence près que Jackpot permet un matching des parties gauche incluant la totalité de la syntaxe Java. De quoi faire pâlir Alain Colmerauer, mon ancien professeur.
factorial(0,1).
factorial(N,F) :-
N>0,
N1 is N-1,
factorial(N1,F1),
F is N * F1.

J'ai
assisté à la session What's New With Sun Java Studio
Creator, menée de main de maître par Graig
McClanahan, et je dois avouer que j'ai été
complètement époustouflé (voilà un mot
rare dans les blogs de
Sun) par la réelle dimension drang'n'drop
de cet outil. Le sommet fut atteint quand la démonstration a
porté sur la liaison entre un composant et d'autres services
comme une base de données, un services web ou mieux encore, un
EJB. A chaque fois, tous les éléments du composant
(table, colonnes, libellés) se reconfiguraient dynamiquement
en fonction des propriétés exposées par ces
différents objets.
C'est la première fois que je
vois un outil Sun aussi user friendly.
Il est jamais trop tard pour bien faire!
...
on ne compte pas, c'est bien connu. Microsoft a fait une apparition tout
en douceur à JavaOne
2005 et je suis bien évidemment passé sur leur
stand ... par simple curiosité. Rien de bien nouveau, si ce
n'est ce magnifique CD contenant toute une panoplie d'outils ne
touchant que de très loin l'interopérabilité
avec Java et une impressionnante liste de whitepapers traitant du
même sujet.
Ce qui par contre est tout à fait
remarquable est l'absence de tout signe de ™ associé à
Java. On peut facilement imaginer combien cela aurait été
impossible il y a seulement un peu plus d'un an, surtout quand on
sait qu'un oubli est avant tout un acte manqué.
Sun
n'a pas raté les 10
ans de Java à l'occasion de JavaOne
2005. Des annonces
comme si il en pleuvait, un lancer de tee-shirt complètement
raté et puis, cette célébration en direct, avec
un gâteau en carton et (presque) toute l'équipe des
débuts de Java. C'était émouvant, j'ai chanté
avec les 15000 participants « Happy Birthday Java »
et puis après on est
passés à des choses plus sérieuses.
PS: Il fait vraiment froid à SF, ce qui n'explique pas pourquoi Gimp me fait ce resizing de m.... de mes photogaphies!
[JavaOne 2005] ( June 27, 2005 07:18 PM ) Permalink | Comments [0]
Je
me souviens que notre père nous avait réveillés
vers 4 heures du matin, le 21 juillet 1969, quand Neil Amstrong a mis
pour la première fois un
pied sur la lune afin que nous devenions les témoins
vivants de cet événement. Le seul intérêt
qu'il voyait dans cet exploit était que l'homme puisse
vérifier que la terre était bien ronde, prédisant
par la même occasion la fin prochaine des expéditions.
La
photographie de gauche montre cette même terre prise par la
caméra digitale du robot Opportunity depuis Mars, avec une
lecture un peu plus complexe de notre planète qui tourne de
moins en mois rond.
On se consolera en pensant que tout cela,
c'est grâce à Java.
![]()
Our
lawyer is making us say that OpenSolaris is a trademark of Sun
Microsystems, Inc.
Je
ne le dirais jamais assez, Sun lançait il y a dix une comète
dont le monde de l'informatique ne s'est jamais remis: Java.
Est-il possible de rêver plus beau cadeau d'anniversaire que de
lancer à nouveau cette supernovae
qu'est le projet opensolaris.org.
Personnellement, je pense que non et même si mes connaissances
en système d'exploitation sont aussi minces que les chances
d'Opportunity
de sortir de sa boue de cendres, je retrouve là le courage et
le culot qui font que je reste au bout de 16 ans un employé de
Sun convaincu. Je n'aurais certainement pas la prétention
d'entrer plus en profondeur dans ce projet de spécialistes,
mais il se trouve que pour des raisons personnelles je m'intéresse
depuis peu au domaine de l'entropie
que le couple matériel (processeur + mémoire) et
système d'exploitation sont capables de construire. Des
projets comme Gnu Privacy Guard
ou Entropy Gathering Daemon
utilisent de tels algorithmes pour les générations des
clés de cryptage car les nombres aléatoires fournis par
ces procédures n'ont pas les mêmes problèmes de
récurrences que les célèbres font rand() ou sa
grande soeur srand().
Par simple curiosité, je suis allé voir ce qu'il était
possible de trouver dans le projet opensolaris.org en termes
d'utilisation de l'entropie d'un système pour résoudre
élégamment ce problème. Je n'ai pas été
déçu! On peut voir ici le code utilisé dans le
projet Gnupg pour calculer l'entropie ...
|
/*
Get various basic pieces of system information: Handle of
active |
... et le même dans le cadre du projet opensolaris.org ...
74 /* Physical memory entropy source */ 75 typedef struct physmem_entsrc_s { 76 uint8_t *parity; /* parity bit vector */ 77 caddr_t pmbuf; /* buffer for memory block */ 78 uint32_t nblocks; /* number of memory blocks */ 79 int entperblock; /* entropy bits per block read */ 80 hrtime_t last_diff; /* previous time to process a block */ 81 hrtime_t last_delta; /* previous time delta */ 82 hrtime_t last_delta2; /* previous 2nd order time delta */ 83 } physmem_entsrc_t; |
... ce qui devrait éviter ce style de problème. Prochaine étape: je compile ce code et je vous tiens au courant.
Technorati Tag: OpenSolaris
Technorati
Tag: Solaris
C'est beau comme la jeunesse !
Pour
les dix
ans de Java j'ai décidé de replongé dans mes
archives et de poster sur ce blog toutes les pages de cette
merveilleuse histoire que j'ai un peu écrites avec mes petites
mains. Mais avant cela, je ne peux pas ne pas me rappeler quel était
le sujet principal des mes préoccupations en 1995: CORBA,
CORBA et puis CORBA. Je vous livre la plus belle citation de l'
« Object Management Architecture Guide, Revision 2.0,
OMG TC Document 92.11.1 » traitant
de la finalisation de la spécification 1.2. Je cite (page 15):
« Over time, the use of object-oriented concepts
will make this « ideal » computing environment
a reality. It is the gateway through which even the most compuphobic
person can pass. It has the potential to enable the users to control
their computing environment, rather than being controlled by its
limitations. Please join with us and realize this vision ».
14 ans plus tard (l'âge de mon fils
à peu de chose près) et des kilomètres de
transparents, on y est presque!
Quand
le premier de la grande
distribution au monde fait du commerce dans le domaine de
l'informatique nomade, il le fait sur du logiciel libre, avec de
l'OpenOffice
bien au chaud dans le disque dur de la machine. Pas la dernière
version (1.1.4RC)
il est vrai, mais on ne va pas se plaindre quand on sait que
l'argument
principal de ce prix incroyable est l'abandon de Windows ...
... vont passer de bonnes fêtes nos amis américains!
Le
cauchemar. J'ai rêvé que le matin je me levais pour
aller chercher quelques € à mon distributeur préféré,
et là, crac ... quelle horreur !!!! Un bug de MS-DOS qui
m'empêchait d'acheter mon quotidien favori.
J'avais donné le reste de ma monnaie aux enfants pour éviter les mauvais sorts ... peine perdue.
L'année prochaine, je me déguise en citrouille !
IBM
vient d'annoncer
son adhésion à la Liberty
Alliance au cours de la réunion de ce groupe qui se tient
en ce moment à Tokyo. Une grande victoire pour Sun qui a lancé
cette initiative il y a plus de trois
ans et peut être un grand pas pour la fédération
des identités qui fonctionnera d'autant mieux qu'un véritable
consensus pourra se construire autour de ce standard. Quelles
pourraient être les conséquences d'une telle annonce ?
Tout d'abord de favoriser l'interopérabilité entre les
différentes implémentations
des protocoles mais surtout d'apporter à la fois les
compétences et la crédibilité de ce poids lourd
des systèmes d'information dans la difficile entreprise de la
gestion de l'identité.
Cela me rappelle les bons moments de l'histoire de Java avec l'arrivée successive aux côtés de Sun de Netscape, Borland ... et d'IBM, avec un peu plus d'hésitation cette fois-ci. Mieux vaut tard que jamais.

