Le modĂšle de dĂ©veloppement dâapplications Ă Ă©normĂ©ment Ă©voluĂ© depuis une dĂ©cennie. Les technologies web se sont imposĂ©es et ont Ă©voluĂ©es. Les applications web offrent de plus en plus de services, elles sont de plus en plus ergonomiques et performantes.
Mais quâen est-il du quotidien du dĂ©veloppeur ? Les outils de dĂ©veloppement ont-ils Ă©voluĂ©s ? Il y a 6 ans lâovni GWT faisait son apparition, avec pour objectif de facilitĂ© le dĂ©veloppement dâapplications web sophistiquĂ©s La vision rĂ©volutionnaire de ses deux concepteurs a mit du temps a ĂȘtre acceptĂ©. De nos jours comment a Ă©voluĂ© GWT ? Qui lâutilise ?
La vision de Bruce Johnson et de Joel Webber a-t-elle supportĂ© l’Ă©preuve du temps ?
Cette présentation tentera de répondre à ces questions, en présentant ce que GWT a dans le ventre.

Le 30 Mai Duchess France vous invite Ă fĂȘter ses 2 ans d’existence. Comme l’annĂ©e derniĂšre l’Ă©quipe organisera un Trivial Java avec des questions autour de Java mais pas uniquement !
Vous n’avez pas pu y assister l’annĂ©e derniĂšre ? C’est le moment de vous rattraper !
Lire la suite de cet article …

Xebia Training a le plaisir de vous faire part dâune offre promotionnelle pour la formation MongoDB pour Administrateurs en partenariat avec 10Gen Lire la suite de cet article …
Une fois n’est pas coutume, je vais vous parler d’autre chose que d’informatique. Je me suis fixĂ© rĂ©cemment comme objectif d’apprendre le corĂ©en pour des raisons personnelles. Et vu que je ne retiens bien une chose qu’en l’Ă©crivant selon mes propres mots, vous allez subir
Alors tout d’abord, aprĂšs quelques essais, il s’avĂšre que le hangeul, l’alphabet corĂ©en, est assez facile Ă transposer sur notre alphabet latin. Il y a une quarantaine de caractĂšres Ă retenir. Pour le coup, c’est le point un peu galĂšre. Parce que non seulement il y a plus de caractĂšres mais en plus ce ne sont pas les mĂȘmes. Avec en prime, de devoir apprendre des symboles diffĂ©rents pour les reprĂ©senter. Certaines de ces lettres seraient des syllabes pour nous (ya, yĂŽ, yo, yu, …) et certaines de nos consonnes ne sont presque qu’une seule pour le corĂ©en. Par exemple le l et le r sont une seule et mĂȘme lettre en hangeul. On ne fait la distinction que par leur position dans la syllabe.
Ceci dit pour se simplifier les choses, il y a 24 caractÚres de base (14 consonnes, 10 voyelles) plus 5 consonnes doubles et 11 voyelles composées.
Les syllabes sont en fait des caractĂšres regroupĂ©es dans une structure trĂšs logique. Chaque syllabe est composĂ©e « normalement » d’une consonne, puis d’une voyelle et possiblement d’une autre consonne. La syllabe se lit donc de gauche Ă droite puis de haut en bas. Si elle ne commence pas par une consonne, vous devrez mettre un « rond » Ă la place (dĂ©solĂ©, j’ai pas trouvĂ© le nom donnĂ© Ă cette figure de style). Ăa simplifie beaucoup la lecture quand on n’a pas cet alphabet dans notre langue maternelle puisqu’au moins, on sait de suite si un caractĂšre est une consonne ou une voyelle.
Et comme toutes nos langues latines et anglo-saxonnes, le texte se lit de gauche Ă droite et de haut en bas. Un beau frein en moins dans l’apprentissage
Sur ce premier billet, vous l’aurez compris, l’objectif est grand, mais la langue est construite de façon trĂšs logique. Ăa devrait aider. Je suis plus qu’optimiste et enthousiaste Ă cette idĂ©e
Comme indiqué dans mon précédent billet, j'ai eu l'honneur de présenter deux sessions à Devoxx-fr :
Pour nos lecteurs qui n'auraient pas eu l'opportunité d'y assister, voici les slides correspondants.
De plus, la conférence a été intégralement filmée, vous pourrez donc la retrouver trÚs bientÎt sur la plateforme Parleys.
Bonne lecture !
... Lire Zenika Ă Devoxx-fr 2012 : les slides !
Voici (enfin!) la suite des rĂšgles de la Scrum Master Academy aprĂšs un mois d’Avril bien occupĂ© me concernant. Pour ceux qui n’auraient pas suivi les nouvelles du French SUG, sachez que les vidĂ©os des sessions du Scrum Day sont maintenant en ligne. Vous pouvez donc y retrouver les rĂšgles que Jean-Laurent et moi avons prĂ©sentĂ©es lors de notre session dont voici la vidĂ©o.
La rĂšgle n°2 sera une dĂ©couverte pour beaucoup car nous n’en avons pas encore parlĂ© en dehors des murs de Xebia. C’est une rĂšgle qui s’avĂšre polĂ©mique Ă souhait et qui vient en complĂ©ment de la rĂšgle n°1. Nous espĂ©rons bien qu’elle fera couler de l’encre dans les commentaires.
Sujet : Soirée Alt.Net FR Mai 2012
Date : Jeudi 19 Avril Ă 19:00
Lieu : MCNEXT, 2 rue de ChĂąteaudun 75009 PARIS
Inscription: http://www.meetup.com/altnetfr/events/64294992/
Veuillez réserver la soirée du 24!
Le format sera de 2/3 sessions de 30 min + discussions.
Au programme: WCF Async Queryable Services, Le NoSQL au service de lâincrĂ©mental+guests
Cette soirĂ©e sera un peu diffĂ©rente de d’habitude car nous avons voulu changer un peu les formats. Nous allons essayer de faire plusieurs prĂ©sentations plus courtes au lieu d’une seule grosse. Cela permettra de dynamiser un peu les choses et de laisser plus de place aux Ă©changes.
Les sujets sont encore Ă confirmer, mais nous aurons Ă priori:
Matthieu Mezil
Sujet :
« WCF Async Queryable Services, la solution « ultime » pour le Data Driven Development ! »
Résumé:
Au cours des derniĂšres annĂ©es, jâai rencontrĂ© de trĂšs nombreux clients. Jâai pu identifier de nombreux scenarii rĂ©currents, pas forcĂ©ment simples Ă traiter et parfois non supportĂ©s par les frameworks du marchĂ©.Fort de ces nombreuses expĂ©riences, jâai dĂ©cidĂ© de rĂ©aliser WCF Async Queryable Services. Cependant, si on peut facilement identifier des besoins communs Ă de nombreux projets, chaque client a aussi ses spĂ©cificitĂ©s et lâutilisation dâun framework commun nâest parfois pas compatible avec celles-ci.Afin dâadresser malgrĂ© tout un maximum de projets (en mode Data Driven Development), WCF Async Queryable Services nâest pas un Framework, WCF Async Queryable Services est un meta-framework ! Nous verrons que cela apporte beaucoup de souplesse et facilite grandement la customisation.Dans le cadre de cette prĂ©sentation, nous verrons Ă©galement Ă quel point le dĂ©veloppement dâapplication 3 tiers devient aisĂ© avec WCF Async Queryable Services.
Guillaume Leborgne
Sujet:
Le NoSQL au service de lâincrĂ©mental
Résumé:
Une dĂ©marche agile est itĂ©rative et incrĂ©mentale. MĂȘme si il existe des outils ou des pratiques adaptĂ©es, gĂ©rer l’aspect incrĂ©mental avec une base de donnĂ©es relationnelle est souvent laborieux. Cela crĂ©e un tout cas des frictions dans l’avancement du projet. Depuis quelques annĂ©es, nous avons Ă notre disposition d’autres modes de persistance qui permettent de limiter ces frictions, et mĂȘme potentiellement d’amĂ©liorer les performances et la capacitĂ© Ă monter en charge de nos applications.
(note: version courte de la prĂ©sentation Ă l’agile-conf)
JérÎme Avoustin
Sujet :
TDD as I mean it
Resumé :
J’apprends TDD depuis 4 ans. Ce n’est pas facile tous les jours. Et j’ai le sentiment que jamais je n’arrĂȘterai d’apprendre. C’est parfois trĂšs frustrant, mais je persiste, et, je pense, pour de trĂšs bonnes raisons. Je vous propose de partager ma vision de convaincu et d’apprenti sur le sujet, encore trĂšs loin du niveau des gourous. Nous parlerons du concept lui-mĂȘme, de quelques points de vigilance, et pour terminer de quelques conseils pratiques
Venez nombreux, mais comme d’habitude les place sont limitĂ©es, donc inscrivez vous rapidement mais uniquement si vous ĂȘtes surs de venir afin d’optimiser les places!
Merci pour cette fois-ci Ă notre nouveau sponsor MCNEXT pour l’hĂ©bergement de la soirĂ©e!
Get ShareaholicIl y a trĂšs longtemps que GMAP3 rĂšgne clairement en maĂźtre incontestĂ© de l’affichage de cartes via plugin jQuery. Loin de vouloir lui contester cette place, AurĂ©lien Garroux et moi-mĂȘme avons, par des initiatives totalement indĂ©pendantes et isolĂ©es, voulu complĂ©ter cette offre. GMAP3 couvre Google Maps, mais certains ne souhaitent pas passer par Google. Je vous propose donc de jeter un oeil aux 3 solutions de plugins jQuery qui vous simplifieront l’utilisation de l’API de votre fournisseur de cartes prĂ©fĂ©rĂ©.
GMAP3
PrioritĂ© Ă l’ancien, le plus Ă©prouvĂ© et surtout au premier sur le terrain. GMAP3 est Ă©ditĂ© par Jean-Baptiste Demonte et aidĂ© par plus d’un dĂ©sormais, dont gtraxx fidĂšle lecteur de ce blog. La version 5 est disponible depuis peu.
Je crois qu’il n’y a plus besoin de prĂ©senter ce plugin, vous trouverez Ă peu prĂšs tout ce que pourriez vouloir faire avec Google Maps. Si vous voulez absolument utilisez ce dernier, je ne peux que vous le conseiller.
La documentation est complĂšte, les exemples ne manquent pas et pas mal de monde s’en sert, suffisamment en tout cas pour trouver facilement d’autres exemples d’utilisation « en prod ».
Ceci dit, attention, l’API d’utilisation de Google Maps est payante si vous avez des services payants sur votre site et la licence est assez chĂšre. Pour en savoir plus, vous pouvez consulter la page dĂ©diĂ©e aux entreprises et il existe une limitation d’usage pour les comptes gratuits.
BingMap plugin for jQuery
Alors j’avoue, ce n’est pas uniquement parce qu’il est sympa que je parle de son plugin. AurĂ©lien est venu demander conseils et relecture, et pas qu’auprĂšs de moi. Je trouve sa dĂ©marche respectable et trĂšs professionnelle. Surtout que la qualitĂ© est au rendez-vous.
L’avantage de Bing Maps sur GMAP3 ? Microsoft et non Google. BĂȘte Ă dire mais nombreux sont ceux qui n’utilisent que les services de Microsoft ou qui ne souhaitent pas tout faire passer par Google.
Autre avantage ? Vous ĂȘtes gourmands mais je peux encore : l’API de Bing Maps n’est pas encore limitĂ©e. Officiellement, il n’existe pas de limitation Ă son usage que vous soyez un particulier, une entreprise, que vous proposiez du tout gratis ou quelque chose de payant. Cependant, la rĂ©cente mise sous tarification de l’usage de l’API de recherche peut laisser croire que cela risque d’arriver.
BingMap plugin for jQuery exploite assez simplement l’API de Bing Maps, propose les Ă©lĂ©ments clĂ©s de celle-ci et est aussi trĂšs bien construite. Suite Ă nos discussions sur le sujet, AurĂ©lien a su construire un plugin respectant les conventions proposĂ©es par l’Ă©quipe de jQuery. Je vous invite Ă jeter un oeil au moins, Ă l’utiliser si vous vouliez vous simplifier Bing Maps.
osmLeafLet.jQuery
Ăvidement, je ne pouvais pas louper mon propre plugin. Vous pouvez retrouver toutes les infos sur le site dĂ©diĂ©.
Je vous en avais dĂ©jĂ parlĂ© et je ne ferai donc que complĂ©ter par quelques infos oubliĂ©es. Tout d’abord Open Street Map ne changera jamais de statut, c’est Ă dire qu’il sera toujours gratuit pour tous types de service. J’utilise l’API de Leaflet qui Ă priori ne changera jamais de licence non plus.
J’ai respectĂ© les mĂȘmes conventions de dĂ©veloppement qu’AurĂ©lien, dans l’idĂ©e de garantir une API la plus simple possible en conservant la philosophie de chaĂźnage de jQuery. Pour le moment, celui-ci est encore un peu limitĂ©. Vous ne pouvez qu’afficher une carte Ă dimensions choisies, mettre des marqueurs, une popup, gĂ©rer quelques Ă©vĂšnements de base d’action sur la carte mais je ne souhaite presque pas l’Ă©tendre plus.
Pourquoi ? Parce que tout surplus est inutile Ă la grande majoritĂ© des utilisations. Par contre je dĂ©velopperai quelques plugins complĂ©mentaires pour les besoins spĂ©cifiques. Tout le monde n’a pas besoin de pouvoir tracer des formes gĂ©omĂ©triques, je le proposerai mais sĂ©parĂ©ment. Ne me reste donc qu’Ă proposer la gĂ©olocalisation de vos visiteurs sur la carte affichĂ©e et vous disposerez d’un plugin dĂ©finitif en version stable.
Conclusion
J’ai essayĂ© de rester plus ou moins impartial ou en tout cas « Ă©quitable ». Si je ne me trompe pas, Ă peut-ĂȘtre une ligne prĂšs, chaque plugin a disposĂ© d’autant de place que les 2 autres, les questions des coĂ»ts, licences, sites d’exemples et fonctionnalitĂ©s ont toutes Ă©tĂ© abordĂ©es. Chaque plugin a au moins un avantage et un dĂ©faut explicitement citĂ©. J’ai mĂȘme essayĂ© de respecter cette Ă©quitĂ© dans les tags de cet article.
A vous de faire vos choix donc. Bonne carte Ă tous ! Et vive la libre concurrence
La conférence Agile France ouvrira ses portes au Chalet de la Porte Jaune les 24 et 25 mai. OCTO sera présent avec pas moins de sept sessions cette année.
Nous suivrons avec intĂ©rĂȘt les autres sessions. Quelques highlights :
Vous voulez parler d’agilitĂ© ? Venez nous rencontrer Ă Agile France les 24 et 25 mai prochains, les Octos seront prĂ©sents.
Suggestion d'articles :

La revue de presse hebdomadaire des écosystÚmes Java/JEE proposée par Xebia.
Le coin de la technique
L’Ă©vĂšnement le plus attendu de cette annĂ©e geek arrive enfin …
le deuxiĂšme anniversaire de Duchess France aura lieu le mercredi 30 mai !
Maintenant que Devoxx France et Mix-IT sont passés, venez vous détendre en jouant autour de Java avec nous !
Le programme
Comme l’annĂ©e derniĂšre, nous vous proposons de venir nous rencontrer, Ă©changer avec nous et vous amuser autour d’un Trivial Java spĂ©cialement prĂ©parĂ© par notre Ă©quipe !
Nous vous accueillerons Ă partir de 19h pour dĂ©buter la soirĂ©e Ă 19h30, et jouer tous ensemble jusqu’Ă 22h. Un buffet vous permettra de reprendre des forces avant la deuxiĂšme manche et de discuter avec l’Ă©quipe pour nous faire part de vos idĂ©es et de vos envies. Et pour les plus courageux, une troisiĂšme mi temps est Ă©galement prĂ©vue !
Une soirĂ©e pour qui ?Si vous vous posez encore la question, c’est que vous ne venez pas assez souvent aux soirĂ©es de la Marmite
Les soirées Duchess sont exclusivement réservées aux geeks et aux geekettes. Ami commercial passe ton chemin, chez nous ça parle code, et seulement code !
C’est donc une soirĂ©e pour les dĂ©veloppeuses vous l’aurez compris, mais comme toujours nos amis masculins sont les bienvenus, surtout si ils ont une collĂšgue fĂ©minine Ă nous prĂ©senter
La soirĂ©e se dĂ©roulera Ă l’ECE que nous remercions pour son accueil. Câest au 37 quai de Grenelle dans le 15Ăšme arrondissement de Paris (mĂ©tro Bir-Hakeim ou Dupleix, ligne 6 ou Champs De Mars sur le RER C).
Inscrivez vous vite sur EventBrite et parlez en autour de vous !
Nous vous attendons nombreux et nombreuses !
Un Cloud français ? DĂ©jĂ en production ? Sans subventions ?Â

Certains avaient peut-ĂȘtre oubliĂ© qu’OVH est le 4e hĂ©bergeur mondial et qu’ils n’ont pas attendu un plan quinquennal parisien pour lancer leurs ingĂ©nieurs dans l’aventure du Cloud.
Iaas, Paas et Saas, nous vous invitons le 22 Mai 19h15 Ă Lire la suite de cet article …

RĂ©cemment, une Ă©niĂšme discussion a enflammĂ© les esprits sur les forums techniques. Vous savez bien, c’est une discussion qui dĂ©marre sur l’Ă©tat de l’art et qui se termine en considĂ©rations sans fins sur les qualitĂ©s comparĂ©es avec un “vieux langage” que-sur-des-cas-prĂ©cis-il-ne-sera-jamais-dĂ©passĂ©…
C’est un fait que l’Ă©cosphĂšre Java souffre actuellement d’une offre plĂ©thorique (Struts/Stripes, Tapestry, JSF, Spring MVC, GWT, JavaFX… j’ai la tĂȘte qui tourne) et redondante (cf. dĂ©bats actuels Java EE 6 vs. Spring 3.x ou la foule des portails, GED ou ESB apparus). Il est vrai aussi que :
Sans parler des projets tellement Ă©volutifs qu’ils embarquent plusieurs technologies Web Services en mĂȘme temps ou pĂątissent de toutes sortes de dettes techniques, faute de recevoir une maintenance planifiĂ©e…
Mais a contrario, en Java les standards Ă©voluent tellement lentement qu’on leur prĂ©fĂšre des solutions alternatives Ă forte obsolescence. On en est lĂ . Avouez que c’est quand mĂȘme dommage de faire preuve d’immaturitĂ© Ă cet Ăąge ! De mon temps (hum) les bonnes idĂ©es Ă©taient simplement reprises et transcendĂ©es au sein de la “meilleure” communautĂ© créée.
Mais aujourd’hui il semblerait que notre industrie soit en guerre. jBoss vs Spring, Adobe vs Google, Hudson vs Jenkins… Faut-il pour autant prĂȘcher la dictature comme remĂšde Ă l’anarchie ? Nous ne voulons pas devenir .Net, si ? Bref, j’exagĂšre (Ă peine).
Pourquoi le monde Java en est-il arrivĂ© lĂ ?Selon moi, c’est Ă cause de son succĂšs, justement. Le niveau d’activitĂ© de la communautĂ© me semble tout Ă fait remarquable, notamment dans l’Open Source, mais pas que. Le revers de la mĂ©daille, c’est qu’un si grand nombre d’intervenants implique le ralentissement des prises de dĂ©cision, favorisant ainsi l’adoption de solutions spĂ©cifiques ou inachevĂ©es.
Avant, c’Ă©tait mieux (n’est-ce pas ?). Un serveur d’application Tomcat et quelques spin-off, un peu d’injection et de bonnes pratiques ORM et c’est parti pour le framework lĂ©ger. Un IDE sympa, avec quelques plugins utiles. En plus, tout ça gratos ! Et lâenthousiasme du fait main se rĂ©pandait dans les entreprises Ă la faveur des SCM. Ajoutez Ă cela les annotations, et l’on a pu croire un temps que nous serions productifs.
Bon… ça n’a pas vraiment suffit. N’est-ce pas ? Alors il y a eu Maven, l’intĂ©gration continue et mĂȘme l’agilitĂ©. Et BOUM ; peut-ĂȘtre que ça marche trop bien, finalement : tout le monde s’est mis Ă parler/publier en mĂȘme temps, la tĂȘte dans le guidon. Une vraie course Ă la nouvelle version.
Mais alors qu’est-ce qu’on va FAIRE (Mon Dieu) ?Nous avons une responsabilitĂ©, en tant que communautĂ© et en tant que professionnels. Cette responsabilitĂ© est de suivre un cap rĂ©flĂ©chi pour assurer Ă nos utilisateurs et Ă nos clients une certaine forme de pĂ©rennitĂ©. Je ne parle pas de 10 ou 15 ans, bien sĂ»r. En technologies de l’information et de la communication (comme on dit), c’est l’Ă©ternitĂ© ! Et c’est enfoncer une porte ouverte que de proposer un socle commun stable. Nous SAVONS ce qu’il nous faut. La question est COMMENT l’obtenir.
Et bien je pense personnellement que la RĂ©publique des Experts, c’est fini. Il nous faut une DĂ©mocratie Participative (notez les majuscules, je vous prie). Nous vivons actuellement une pĂ©riode transitoire qui pourrait trĂšs bien aboutir Ă un verrouillage par quelques grands acteurs (parmi Adobe, Google, jBoss ou d’autres), au dĂ©triment de la crĂ©ativitĂ© et de la rĂ©activitĂ©. Pour Ă©viter cela, je pense que les dĂ©veloppeurs devraient pouvoir influer sur les orientations du marchĂ© pas seulement par plĂ©biscite, a posteriori, mais aussi en amont sur la base d’une information Ă©clairante.
The Apache Software Foundation nous a montrĂ© la voie (par le truchement de l’incubation et d’un processus Ă©lectif). Mais la mĂ©ritocratie (qui a dit bureaucratie ?) n’est pas suffisante. Avez-vous comptĂ© le nombre de projets que la fondation hĂ©berge, rĂ©cemment ? LĂ aussi, le dĂ©bordement fait plus que nous guetter : il nous attend au tournant. Certaines idĂ©es mĂ©ritent plus qu’un avis technique, il leur faut un coup de pouce (comme dans l’expression “Je poussoies”, bien sĂ»r) afin de leur assurer l’effort requis. Et chacun, comme pour une primaire politique, devrait pouvoir donner sa voix sur la teneur des projets Ă privilĂ©gier.
Nous n’avons pas besoin d’une dizaine de bases NoSQL ; nous avons besoin d’une (aller, deux) solutions qui fonctionnent et garantissent une rĂ©ponse Ă une problĂ©matique rĂ©elle (mais je garde pour moi mon opinion, concernant cet exemple prĂ©cis). Les outils existent, je regarde vers GitHub (en tant que plateforme collaborative, peu importe que le support soit Git ou SVN, au fond). Nous savons fĂ©dĂ©rer la motivation ; mais il nous reste Ă exprimer l’intĂ©rĂȘt plus tĂŽt au cours du processus de dĂ©veloppement afin d’Ă©viter le gĂąchis actuel qui consiste Ă jeter nos forces dans des projets concurrents, parfois complĂštement Ă©quivalents, mais dont personne ne veut abandonner la paternitĂ©.
Un processus dĂ©mocratique, ouvert, devrait permettre aux solutions d’avenir de recevoir suffisamment de moyens pour percer, prendre le temps de se stabiliser, et enfin s’imposer. Non pas sur une mode qui aurait durĂ©, mais sur la qualitĂ© d’une rĂ©alisation ayant reçu toute l’attention nĂ©cessaire.
âLâergonomie nâest plus nĂ©gociable aujourdâhuiâ. OCTO Technology
Lâaspect incontournable de la performanceIl existe une conviction partagĂ©e chez les grands du Web : la performance perçue par lâutilisateur est critique. Cette performance a en effet un impact direct sur l’adoption du service et son utilisation dans la durĂ©e. Et le ressenti utilisateur est directement liĂ© Ă la rapiditĂ© dâaffichage des interfaces.
Le grand public se moque bien de lâarchitecture logicielle, de la puissance des serveurs, de la latence rĂ©seau provoquĂ©e par lâappel Ă des Web services… Tout ce qui lui importe, câest lâimpression de fluiditĂ© dans lâusage.
Les grands du Web lâont bien compris et parlent ainsi de mesure en âbattement de cilsâ. Tout se joue donc Ă lâĂ©chelle du 1/10Ăšme de seconde. Leurs Ă©tudes, rĂ©alisĂ©es notamment grĂące Ă du test A/B (cf. article Ă ce sujet), le dĂ©montrent clairement :
Suivant en cela le Pattern âdevice agnosticâ, les grands du Web dĂ©veloppent parfois des interfaces natives, parfois des interfaces Web, afin de toujours offrir la meilleure expĂ©rience utilisateur. Dans les deux cas, la performance perçue par lâutilisateur doit ĂȘtre maximisĂ©e.
Applications nativesAvec lâiPhone, Apple a rĂ©introduit le dĂ©veloppement au plus prĂšs du matĂ©riel (sans revenir Ă lâassembleur, tout de mĂȘme) pour maximiser les performances perçues. Ainsi les technologies Java et Flash sont bannies de lâiPhone. La plateforme utilise aussi des artifices visuels : au lancement dâune application, il peut charger la vue du dernier Ă©tat de lâapplication pour maximiser lâimpression dâinstantanĂ©itĂ©, la vĂ©ritable application Ă©tant chargĂ©e en tĂąche de fond. Sur Android, les applications Java sont exĂ©cutĂ©es sur une machine virtuelle optimisĂ©e pour la plateforme. Elles peuvent aussi ĂȘtre Ă©crite en C pour maximiser les performances.
De maniĂšre gĂ©nĂ©rale, un consensus sâest dessinĂ© autour du dĂ©veloppement natif, en particulier sur plateformes mobiles : il doit ĂȘtre au plus prĂšs du matĂ©riel. Et des technologies multiplateformes comme JME, Flash ou Silverlight tendent Ă tomber en dĂ©suĂ©tude pour privilĂ©gier lâexpĂ©rience utilisateur.
Applications WebLe chargement complet dâun Ă©cran Web est souvent de lâordre de 4 Ă 10 secondes tout compris (avec les images, le JavaScript, Le Flash, etc.)
Il apparaĂźt que la lenteur dâaffichage perçue est gĂ©nĂ©ralement liĂ©e pour 5% aux traitements sur serveurs, et pour 95% aux traitements du navigateur. Les grands du Web apportent donc un soin tout particulier Ă lâoptimisation de lâaffichage des pages Web.
Voici une liste des principales bonnes pratiques qui font consensus :
Les exemples dâusage du pattern sont nombreux chez les grands du Web : on peut citer Google, Gmail, Amazon, Yahoo, …
Les rĂ©fĂ©rences chez les grands du WebGoogle possĂšde le rĂ©seau de cache distribuĂ© le plus maillĂ© des grands du Web : le gĂ©ant de la recherche disposerait de machines dans toutes les grandes villes, et mĂȘme dâun rĂ©seau privĂ© mondial, selon des rumeurs difficiles Ă vĂ©rifier.
Google Search pousse lâexpĂ©rience utilisateur temps rĂ©el trĂšs loin avec âInstant Searchâ qui charge les rĂ©sultats de recherche au fur et Ă mesure de la frappe clavier. Cette fonction est une prouesse technique : elle a soulevĂ© nombre de questions dans la communautĂ© des architectes (cf. liens ci dessous).
Gmail est construit quasiment en HTML : les images de lâinterface sont rĂ©duites au strict nĂ©cessaire (2 âspritesâ dâicĂŽnes, voir ci dessous), et le site fait un usage extensif du cache et du chargement JavaScript en tĂąche de fond.
France
Sites utilisant ou ayant utilisé le réseau de cache distribué (CDN) Akamai :
Lâeffet de la latence dâaffichage est le mĂȘme sur les applications internes, propres Ă une DSI : exaspĂ©ration des utilisateurs et abandon du recours Ă lâapplication.
Le pattern sâapplique donc parfaitement en interne.
Exceptions !Elles sont rares : on peut évoquer les applications asynchrones et les batchs.
SourcesSuggestion d'articles :
OlĂ ! Comment ça va ? Bon, je vous la fais courte cette semaine, parce qu’il n’y a presque rien eu d’intĂ©ressant sur la toile.
Heureusement Jonathan Cutrell sauve les meubles en expliquant les 14 raisons pour lesquelles personne n’utilise votre plugin jQuery. Je prĂ©cise que son article est trĂšs bien Ă©crit et que je suis plutĂŽt d’accord en tout point avec lui. Conseils Ă suivre donc
2 choses cÎté officiel :
C’est tout pour cette semaine. A plus tard !