Billets avec l'étiquette ‘Java’

JavaOne, jour 2 (III)

08-05-2008
LiB at JavaOne

Hier soir, après mon dernier billet, je suis reparti pour quatre autres sessions :

  • Une session générale par AMD, où ils présentaient leurs dernières avancées en architecture et performance, et comment Java en tire et tirera profit dans ses dernières versions et dans les versions prochaines.
  • Une présentation sur Comet, et sur la façon d’implémenter ses différentes strategies avec les différentes serveurs d’application en Java.
  • Une de mes sessions favorites pour le moment, The long tail treasure trove, qui passait revue à des projets open source Java peu connus (parte de the long tail des projets open source). Et comme le titre le dit, c’est un véritable trésor cache qu’ils nous ont montré dans à peine une heure, une vingtaine de bibliothèques Java (desquelles j’avais déjà utilisé à peine une poignée) que je pense que je vais utiliser à coup sûr dans les semaines et les mois à venir.
  • Une démo expliquée de l’utilisation de Comet et les techniques de long polling et streaing pour construire une petite application web interactive (en occurrence un petit jeu multi-utilisateur)
Alcatraz
Alcatraz vue du port de San Francisco

Après ces quatre dernières sessions, assez fatigué par la journée, j’ai rejoint mon collègue F., on a pris le bus pour rentrer à l’hôtel, en bavardant sur les différentes présentations auxquelles chacun avait assisté. Une fois dans l’hôtel, je n’avais même plus envie de chercher quelque chose d’ouvert pour diner. J’ai donc pris deux barres de céréales dans le distributeur et j’ai regagné ma chambre.

San Francisco and me
San Francisco et moi :smile1_ee:

C’est 7 heures du matin ici, je pars maintenant vers le Moscone Center pour la troisième journée de ce JavaOne, que je trouve de plus en plus passionnant. J’essayerai de poster un ou deux billets dans les pauses de la journée.

Et je vous rappelle, bien sûr, que je continue à poster des photos sur Flickr. Et en plus, j’ai géolocalisé les photos que j’ai déjà posté, au cas où vous voulez suivre le parcours sur la carte…

Share on Facebook
Bookmark this on Delicious
Bookmark this on Google Bookmarks
Post to Google Buzz

JavaOne, jour 2 (II)

08-05-2008
LiB at JavaOne

Je fais une petite pause de fin d’après-midi, après une intéressante session comparative des principaux frameworks AJAX du point de vue de leur utilisation dans des applications web en Java.

Aujourd’hui les sessions auxquelles je me suis inscrit ont un caractère très orienté applications web, avec deux thématiques principales : web services et AJAX.

Bloggers in Tiburon
Blogging au café de Tiburon, lundi après-midi

En plus des session de ce matin, cette après midi j’ai eu une autre session avec des nouvelles formes de implémenter des web services REST en Java, une présentation sur les challenges et les solutions pour l’asynchronisme client-serveur et serveur-serveur dans les applications web, et la session sur AJAX dont je vous ai parlé en début de ce billet.

SFFD truck
Camion de pompiers du SFFD

Ensuite il me rentent encore quatre autres sessions, pour un grand total de 10 aujourd’hui, de 8h30 à 21h30. Si j’ai encore le courage après la dernière, je vous ferai un autre résumé rapide…

Share on Facebook
Bookmark this on Delicious
Bookmark this on Google Bookmarks
Post to Google Buzz

JavaOne, jour 2 (I)

07-05-2008
LiB at JavaOne

Deuxième jour de la conférence, je blogue dans une pause entre les sessions. C’est l’heure de midi, et à différence de hier, la pause midi est un peu plus longue, on a 40 minutes. On va donc bientôt aller chercher nos plateaux repas, et on sortira les manger au parc Yerba Buena, à côté du centre de conférences.

Yerba Buena park
Le parc Yerba Buena

Trois sessions déjà ce matin. D’abord une session générale d’Oracle, où ils montraient leurs nouveaux produits pour ce qu’ils appellent l’entreprise 2.0. Ensuite une conférence très intéressante sur l’état actuel des techniques de communication asynchrone entre navigateur et serveur d’applications (Ajax, Comet, Servlet 3.0…) et les challenges qui pose leur implémentation dans un environnement de production à des fortes charges. Et juste avant cette pause, une session sur des nouvelles plate-formes de développements pour Java Mobile (JME) par des gens de China Mobile et de Sun.

Java + San Francisco
La ville aux couleurs de JavaOne

Bon, F. m’attend pour aller chercher le repas, je continuerai ce soir.

Pour rappel, à fur et à mesure que je les chargerai sur Flickr, les photos apparaitront ici

Share on Facebook
Bookmark this on Delicious
Bookmark this on Google Bookmarks
Post to Google Buzz

JavaOne, jour 1

07-05-2008
LiB at JavaOne

La première journée de JavaOne est finie, et quelle journée !

Lorsque hier je vous disais que les choses sérieuses commençaient, je ne me rendais pas compte d’à quel point l’affirmation était vraie. Je viens de sortir de la neuvième conférence de la journée, après 14 heures de sessions. La première a démarrée à 8:30, la dernière est finie à 22h30, avec 20 minutes de pause entre chacune.

Le repas ? On plateau repas récupéré à toute vitesse dans une pause, et mangé d’une main dans la session suivante, pendant que l’autre main essayait de prendre des notes.

Le bilan est très positif, j’ai appris beaucoup des choses, j’ai fait plein de contacts, j’ai récupéré des tonnes d’information… et cela n’a fait que commencer !

Une des choses que j’ai trouvé les plus rafraichissantes est que tout le monde ici est un développeur Java et un vrai geek. Pas de costard-cravates, mais des t-shirts Think Geek; pas des managers, mais des techniciens; pas des chefs de projets mais des informaticiens purs. Cela me rappelle ce que j’aime d’être un ingénieur, cela me redonne de l’envie d’approfondir encore plus dans la technique.

Moscone Center
Le Centre Moscone, là où tout se passe

Je vous parlerai avec un peu plus de détail sur les différentes sessions, car maintenant je suis trop k.o. pour le faire. Je continuerai aussi à mettre des photos sur Flickr, mais l’absence de WiFi dans l’hôtel fait que, en dehors des horaires de la conf (où je suis plutôt occupé), je dois dépendre de la générosité des anonymes qui laissent leurs accès ouverts.

JavaOne pub on taxi
Même les taxis font de la pub à JavaOne

Pour rappel, à fur et à mesure que je les chargerai sur Flickr, les photos apparaitront ici.

Share on Facebook
Bookmark this on Delicious
Bookmark this on Google Bookmarks
Post to Google Buzz

San Francisco, here I go !

04-05-2008
LiB at JavaOne

J’écris ce billet depuis le terminal 2E de l’aéroport Charles de Gaulle, même si je ne le mettrai pas en ligne tout de suite, car le wifi est payant, bien sûr…

Je pars pour une semaine à San Francisco, pour assister à la conférence JavaOne, qui démarre mardi prochain. Au menu, découverte de la ville demain et après demain, et ensuite quatre jours de pure immersion dans les dernières technologies autour de Java, avec sept séances de conférences par jour.

Pour l’occasion je vais activer mon compte Flickr et j’essayerai de uploader régulièrement des photos et mettre en ligne quelques billets pour vous raconter mes aventures en terres américaines.

L’embarquement va bientôt commencer, j’arrête ici. Prochain billet, en live depuis les U.S. !

Mise à jour : Je poste ce billet depuis une cafétéria typiquement américaine (tenue par une over-polite talkative Asian-american girl, comme F. me demande de spécifier), près du port de San Francisco. Les premières photos viendront bientôt

Share on Facebook
Bookmark this on Delicious
Bookmark this on Google Bookmarks
Post to Google Buzz

Eclipse 3.3 Europa

03-07-2007

Il y a juste une année, j’écrivais sur mon blog un billet sur la sortie d’Eclipse 3.2 Callisto. Aujourd’hui, une année après, je vais vous parler de la sortie de la version suivante de la plate-forme Eclipse, Eclipse 3.3 Europa.

L.i.B. et Java

Eclipse est un environnement de développement très modulable, de multiples projets développés indépendamment. Au centre il y a le projet Eclipse, et autour de lui des projets pour les fonctionnalités les plus diverses : Business Intelligence and Reporting Tools (BIRT), C/C++ IDE (CDT), Data Tools Platform (DTP), Eclipse Modeling Framework (EMF)… Depuis l’année dernière, ils se coordonnent pour sortir en début du mois de juillet une mise à jour conjointe des principaux sous-projets, créant une version stable de la plate-forme Eclipse. Cette année la nouvelle version, Eclipse 3.3, porte le hautement symbolique nom Europa, et elle comporte 21 composants.

Et parmi tous les composants mis à jour, il y a une nouvelle version de la Web Tools Platform (WTP), WTP 2.0. WTP est un outil formidable, c’est le projet qui permet la création d’applications web en Java, le support des web services, la génération de XML, XSDL et WSDL, et toute une série d’outils indispensables pour le développeur Java J2EE.

Je travaille avec WTP depuis début 2006. A l’époque c’était un outil beta, plein de bugs, mais qui apportait déjà une vraie valeur ajoutée pour les développeurs. La version 1.0 est sortie vers mai 2006, avant la fin de ma mission chez Yves Rocher. C’était déjà un outil mûr, fortement pratique. En juillet de l’année dernière, avec la sortie d’Eclipse 3.2 Callisto, WTP est passé en version 1.5 (d’ailleurs à l’époque j’ai fait une analyse de cette version).

Aujourd’hui, WTP 2.0 promet plein de nouveautés, certaines très demandées par la communauté d’utilisateurs (comme le support d’Apache Tomcat 6 ou des services web Axis 2 ) .

Je n’ai pas eu encore le temps de le tester (des que je l’aurai fait je ferai un compte rendu plus ou moins détaillé), mais au premier regard une semble une release très bien ficelée, avec des importantes améliorations. J’espère seulement qu’au niveau stabilité et consommation de resources il sera au moins aussi performant que son prédécesseur, ou même mieux…

Share on Facebook
Bookmark this on Delicious
Bookmark this on Google Bookmarks
Post to Google Buzz

JavaFX

09-05-2007

Cette semaine il se déroule à San Francisco la plus importante conférence internationale sur Java : Java One. J’aurais bien aimé pouvoir y aller, mais ça n’a pas pu se faire*, alors je suive la conférence à distance, par des podcasts dans le site officiel, et des billets des blogueurs assistants.

L.i.B. et Java

La plus remarquable des nouvelles dans ce début de conférence a été sans doute l’annonce de JavaFX. JavaFX se veut l’alternative Java pour le développement des Rich Internet Applications (RIA, applications web avec un interface rich). Jusqu’à il n’y a pas si longtemps, les seuls concurrents dans cette catégorie étaient JavaScript et Adobe Flash. Cependant ces derniers temps les plate-formes de développement de RIAs s’ont multiplié comme des champignons dans une cave tiède et humide. De l’Adobe Flex, au projet libre OpenLaszlo, en passant par le future Microsoft Silverlight, la mode est aux RIAs et tous le monde cherche à obtenir une partie du gâteau.

Dans un marché soudainement si saturé, quelles sont les chances pour un produit comme JavaFX ? Peut-être je me trompe, mais je pense que assez bonnes, car à mon avis JavaFx compte avec plusieurs atouts de taille :

  • IDE multi-plate-forme : Là où les IDE de Adobe Flash/Flex ou de Microsoft Silverlight ne marchent que sur Windows et où OpenLaszlo n’a pas d’IDE proprement parlant, JavaFX aura un IDE intégré dans Eclipse ou Netbeans. On pourra développer aussi bien dans Windows que Linux, MaxOS ou même dans des environnements plus “exotiques” comme FreeBSD.
  • Environnement d’exécution multi-plate-forme : Je ne parle pas de que l’environnement d’exécution puisse tourner sur des différents systèmes d’exploitation, car la plupart de ces plate-formes permettent une exécution au moins sur Window, Linux et MacOS (Microsoft Silverlight étant pour l’instant la vilaine exception, car il sortira sans aucun support Linux). Car dans le cas de JavaFX, multi-plate-forme veut dire que les scripts JavaFX pourront s’exécuter sur tout type de terminal, d’un téléphone portable à une télé, en passant par un PDA et un ordinateur. Le mantra de Java, développez une fois, exécutez partout, sera pleinement respecté dans JavaFX.
  • Gratuité des outils de développement : Dans la pure tradition Java, les outils de développement sont gratuites. Si vous voulez commencer à jouer avec les premières versions de ces outils, il vous suffit d’aller sur le site des développeurs de JavaFX.
  • Popularité du langage Java : Java est un des langages les plus populaires (peut-être le plus populaire). Les développeurs habitués à Java (autant dans sa forme standard que dans ses déclinaisons entreprise ou mobile) seront sans doute attirés par le fait que JavaFX se base sur Java et qu’il permet d’accéder à toute la richesse de l’API de Java.

En tout cas, étant donné que Java c’est mon gagne-pain depuis quelques années, je place beaucoup d’espoirs sur la sortie de JavaFX, car il ouvre toute une série de possibilités qu’avant on ne pouvait envisager sans changer toutes les outils de développement et exécution. On verra si le temps nous montre qu’il est à la hauteur de ces espoirs…

* : mon collègue de bureau Fred a eu la chance d’y aller, et j’imagine qu’il lira ce billet depuis San Francisco… Alors n’oublies pas de nous envoyer une carte postale, Fred!

Mises à jour :

  • J’ai trouvé un billet très intéressant sur l’aspect développez une fois, exécutez partout de JavaFX dans le blog du CEO de Sun. Et comme bonus, il a une belle image de à quoi ça peut ressembler un téléphone portable avec un interface JavaFX… et cela ressemble beaucoup à un iPhone, à mon avis ;)
  • Je viens de télécharger le plugin JavaFX pour Eclipse, des que j’aurai un peu de temps libre je vais commencer à jouer avec. Je vous raconterai ce que cela donne…
Share on Facebook
Bookmark this on Delicious
Bookmark this on Google Bookmarks
Post to Google Buzz

Java SE 6 est sorti

13-12-2006

Avec deux jours de retard je vais vous parler de la sortie de Java SE 6, la sixième incarnation* de la plate-forme standard Java.

Cette nouvelle version n’apporte pas, à priori, des changements révolutionnaires, mais plutôt des améliorations sur plein de plans, certaines très demandés par la communauté de développeurs. Les améliorations qui m’interpellent le plus (depuis l’optique de mes besoins professionnelles) sont :

  • La sécurité rentre au fond de la plate-forme, avec intégration native de GSS/Kerberos et de l’authentification LDAP.
  • Les web services ont aussi leur place dans la plate-forme standard, avec l’inclusion dans Java SE 6 de Java API for XML Web Services (JAX-WS), version 2.0. Cette JAX-WS 2.0 est une refonte complète de l’architecture des APIs Java pour les web services.
  • Java 6 SE inclut le moteur Mozilla Rhino pour interpréter du JavaScript, et laisse la porte ouverte à que d’autres moteurs puissent y être ajoutés. Bientôt sera donc possible d’incorporer des morceaux de code dans votre langage script favori (Python dans mon cas) à l’intérieur de votre code Java.

Ensuite il y a plein d’autres améliorations de fond, dans la gestion de mémoire, la performance, l’incorporation de JDBC 4.0…

En somme, cette nouvelle version semble, à première vue, un petit bijou que je pense que tous les développeurs qui travaillent avec Java vont apprécier. De mon côté, je viens de l’installer, et des que j’aurai du temps je commencerai à la tester à fond!

&nbsp

* : En fait, l’appeler Java SE 6 est du marketing, au moins pour les early adopters comme moi, car dans Java il y a toujours eu une sorte de double nomenclature, une marketing et une autre pour les développeurs. Tout a commencé avec la sortie de Java 1.2, à la fin des années 90s, lorsque tout le monde se mets à l’appeler Java 2.

Mystérieusement, Java 1.3 et 1.4 n’ont jamais reçu un autre nom, mais Java 1.5 a été rapidement rebaptisé Java SE 5. La mode continue avec cette dernière sortie, et elle s’accentue même, car le terme Java 1.6 semble avoir complètement disparu, même le fichier d’installation du JDK (Java Development Kit) est appelé simplement jdk-6-windows-i586.exe (le dernier JDK pour Java 1.5 était jdk-1_5_0_10-windows-i586-p.exe)

Share on Facebook
Bookmark this on Delicious
Bookmark this on Google Bookmarks
Post to Google Buzz

Google Web Toolkit devient open source

12-12-2006

Il semblerait que de plus en plus d’éditeurs décident de libérer leur code, dans un mouvement qui s’accélère de plus en plus. Il y a quelques semaines je vous parlait d’une libération de code qui me touchait directement, car je travaille avec tous les jours : l’ouverture du code de Java. Aujourd’hui je vais vous parler d’une autre libération que je considère assez significative, celle de Google Web Toolkit (GWT).

L.i.B. Google

Google Web Toolkit (GWT) est un framework Java de développement de software, qui permet d’écrire d’une façon relativement facile des applications AJAX (du type de Google Maps ou GMail en s’affranchissant de la plupart des particularités liées aux différents navigateurs.

Pour ceux qui avons l’expérience de coder de l’AJAX à la main, l’utilité d’un tel framework est claire. On passe une bonne partie du temps à tester sur toutes les navigateurs possibles dans toutes les plate-formes qu’on a sous la main, et à corriger l’infinité de bugs qui apparaissent en executant le code dans chaque navigateur, toutes les subtiles incompatibilités qui font du codage en AJAX quelque chose plus proche de l’art que de la science. Avec GWT, on écrit tout en Java, un langage solide et bien carré, et lui il compile ce Java en HTML+JavaScript bien compatible avec tous les navigateurs (au moins avec Firefox, IE, Opera et Safari).

Jursqu’au présent, GWT était gratuit pour une utilisation personnelle, mais pas libre. Je pense que cette libération va permettre que certaines entreprises qui travaillent déjà sur Java (comme celle dont je travaille actuellement) basculent sur cet outil pour les briques AJAX de leurs applications web.

L’annonce a été fait dans le blog officiel de Google, et détaillé dans le blog du GWT. La licence choisi est Apache 2.0, encore une fois une licence plutôt classique (comme Java, qui va être libéré sous une licence GPL v2) et non un truc exotique qui ferait plus difficile son adoption.

Dans le billet du blog GWT, ils expliquent comment le choix de libérer était logique, car depuis le début la mission de l’équipe GWT était :

“To radically improve the web experience for users by enabling developers to use existing Java tools to build no-compromise AJAX for any modern browser.”

Pour que le développement soit vraiment ouvert, ils ont créé un projet google-web-toolkit dans Google Code, et ils ont libéré aussi toute la documentation sous une licence Creative Commons.

En résumé, un autre beau exemple de libération de code par un des grands acteurs du web.

Share on Facebook
Bookmark this on Delicious
Bookmark this on Google Bookmarks
Post to Google Buzz

Java libre!

13-11-2006

Même si j’aimerais bien vivre de mon blog, on est encore bien loin. Depuis déjà quelques années, c’est Java qui me permet de payer mes factures. Toute nouvelle qui touche donc ce langage est assez importante pour moi.

Mon histoire avec Java commence en 1998, lorsque j’ai fait un stage de six mois chez IBM. J’avais déjà fait un peu de Java, chez moi, pour tester ce nouveau langage qui semblait aussi intéressant, mais chez IBM j’ai été obligé à monter rapidement en compétence en travaillant dans un projet de migration vers Java 1.1 chez Caja Madrid. Depuis je m’était centré plus sur le côté télécom de ma carrière, mais à la fin de mon doctorat je suis revenu dans le monde Java avec des missions de prestation pour des SSII. A l’époque, l’idée de qu’un jour Sun allait libérer le code de Java faisait rire (mais à l’époque on pensait la même chose d’une éventuelle libération de Solaris, par exemple…).

Tout ça pour dire que je suivait avec intérêt toutes les nouvelles sur la libération du code source de Java sous une licence open source. On avait entendu toutes les rumeurs : libération totale, libération partielle, licence spécial Sun, licence BSD…

La semaine dernière une nouvelle rumeur, en apparence très sérieuse et documentée, a parcouru la blogosphère anglo-saxonne, Slashdot l’avait relayé : Java allait être libéré sous une licence GPL v2.

Je n’avait pas voulu bloguer sur ça, car il n’y avait pas de confirmation officielle. Et la confirmation officielle arrive aujourd’hui, dans le site officiel de Sun. Et en plus, un des blogueurs de Sun nous fait un décryptage du pourquoi et comment de cette libération de Java.

Pour fait courte la partie technique, je reprends la formule de Tim Bray :

Unmodified GPL2 for our SE, ME, and EE code. GPL2 + Classpath exception for the SE libraries. Javac and HotSpot and JavaHelp code drops today. The libraries to follow, with pain expected fighting through the encumbrances. Governance TBD, but external committers are a design goal. No short-term changes in the TCK or JCP.

Pour moi, c’est une manoeuvre qui va dans le bon sens, surtout pour Sun. Depuis le début, ils ont offert toutes les outils Java gratuitement (mais avec code fermé), et cela a été un des facteurs clés dans le succès du langage. Ils donnaient donc à la communauté des utilisateurs, mais en avant le code fermé, ils ne profitaient pas des éventuelles améliorations que la communauté pourrait faire dans le code.

L’un des arguments en contre était le risque de fork, que des groupes de hackers, des chercheurs ou des passionnés prennent le code source de Java, le modifient et proposent des versions de Java incompatibles entre elles. Mais avec le parapluie du TCK (la suite d’outils de test qui permettent de certifier un produit comme “compatible avec Java”) et des marques registrées, le risque n’existe pas, car ils ne pourraient pas appeler leur projet Java (comme pour Firefox, on peut créer et même vendre des versions modifiées de Firefox comme Flock, mais on ne peut pas les appeler Firefox).

Sur ça, la position de Sun est claire :

However many forks there are, it ain’t Java unless it’s called “Java” or has the coffee-cup on it. If it has the name and cup, it is Java and it’s compatible. And Sun will absolutely enforce that in court if we have to. We have in the past and we will again.

Cependant, il y a un risque énorme de voir pousser des langages ou des machines virtuelles basées sur celle de Java, avec d’autres noms, et taillées pour des besoins plus spécifiques. Mais cela est, à mon avis, une bonne chose. Et ce qui est encore mieux, Java pourra profiter des améliorations faites dans ces projets. Tout le monde gagne donc…

Share on Facebook
Bookmark this on Delicious
Bookmark this on Google Bookmarks
Post to Google Buzz