Skip to content

Methods & Tools

Agrégateur de flux

La puissance de Drupal en Entreprise – 25 mai à Paris – Valtech y sera, et vous ?

Valtech Blog - mer, 05/16/2012 - 17:52
Valtech a le plaisir de vous inviter Ă  l’évĂ©nement de lancement d’Acquia en France le 25 mai Ă  Paris. Rejoignez-nous sur le stand Valtech et dĂ©couvrez comment le CMS Drupal permet aux entreprises et aux administrations d’innover et gagner en flexibilitĂ© afin de rĂ©pondre aux exigences croissantes des clients. Au programme Vision et Futur de Drupal Étude [...]
Catégories: Blog Société

SoirĂ©e Google Web Toolkit – 31 Mai 2012

Alpes JUG - mer, 05/16/2012 - 16:51

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.

Catégories: Association

[#SharePoint 2010][#SQLServer 2012] AlwaysOn pour SharePoint (1/4) : Configuration (1ùre partie)


Le blog de Patrick Guimonet - mer, 05/16/2012 - 11:10
1er article d’une sĂ©rie de 4 articles sur AlwaysOn pour SharePoint Configuration (1Ăšre partie) Configuration (2e partie) ...
Catégories: Blog Individuel

2Ăšme anniversaire de Duchess France !

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 …

Catégories: Blog Société

Nid Agile, GenĂšve, 15-16 juin 2012

Forum Logiciel - mer, 05/16/2012 - 09:44
A la place du traditionnel XP Day Suisse version francophone, Agile GenĂšve organise cette annĂ©e sur deux jours une confĂ©rence du type « Open Agile » oĂč le programme sera Ă©tabli par les participants. Plus d’informations et inscriptions sur http://www.agile-swiss.org/geneve/nidagile/
Catégories: Blog Individuel

Apprendre le coréen

Mathieu Robin - mer, 05/16/2012 - 09:00

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 :-D

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

flattr this!

Catégories: Blog Individuel

Zenika Ă  Devoxx-fr 2012 : les slides !

Zenika - mer, 05/16/2012 - 08:05

Comme indiquĂ© dans mon prĂ©cĂ©dent billet, j'ai eu l'honneur de prĂ©senter deux sessions Ă  Devoxx-fr :

  • Un "quickie" (15mn) pour prĂ©senter Seren, ma librairie d'optimisation de sĂ©rialisation;
  • Une "confĂ©rence" (1h) avec Heinz Kabutz, sur le thĂšme "Deadlock Victim".

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 !

Catégories: Blog Société

Scrum Master Academy – RĂšgle n°2 – Le manifeste agile n’est pas la dĂ©claration des droits du dĂ©veloppeur

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.

Lire la suite de cet article …

Catégories: Blog Société

Soirée Alt.Net FR Mai 2012

ALT.Net Francophone - mar, 05/15/2012 - 21:07

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/


Agrandir le plan

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 Shareaholic
Catégories: Association

Afficher une carte avec un plugin jQuery

Mathieu Robin - mar, 05/15/2012 - 08:13

Il 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 :-D

flattr this!

Catégories: Blog Individuel

Agile france 2012 : 7 sessions by OCTO

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 :

  • Le manager agile : Hors de la zone de confort par Gabriel Le Van
  • Mon binĂŽme m’a tuer par Jonathan Perret et Emmanuel Gaillot
  • The recent evolution of consumer products par RĂ©gis Medina
  • Retour d’expĂ©rience : Agile contre Cycle en V : Le match par Étienne Charignon

Vous voulez parler d’agilitĂ© ? Venez nous rencontrer Ă  Agile France les 24 et 25 mai prochains, les Octos seront prĂ©sents.

Suggestion d'articles :

  1. Octo présente cinq sessions dans le cadre de la conférence Agile France
  2. Interview des orateurs OCTO pour la conférence Agile France
  3. Octo soutient : Agile Open France 2009

Catégories: Blog Société

Revue de Presse Xebia

Revue de Presse Xebia
La revue de presse hebdomadaire des écosystÚmes Java/JEE proposée par Xebia.

Le coin de la technique

Lire la suite de cet article …

Catégories: Blog Société

2Ăšme anniversaire de Duchess France

A Duchess Community Blog for France - lun, 05/14/2012 - 18:33

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 ;)

OĂč nous rejoindre ?

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).


ECE

Inscrivez vous vite sur EventBrite et parlez en autour de vous !

Nous vous attendons nombreux et nombreuses !

Catégories: Association

Retrouvez les consultants de Valtech à Agile France 2012 – 24 & 25 mai à Paris

Valtech Blog - lun, 05/14/2012 - 17:20
La confĂ©rence incontournable de la communautĂ© Agile La confĂ©rence Agile France revient encore cette annĂ©e le 24 & 25 mai Ă  Paris, l’occasion de rencontrer des Agilistes de tous niveaux, partager vos expĂ©riences avec des professionnels de votre secteur. Le programme est trĂšs complet : Agile, Scrum, User Experience et aussi outils, code et techniques de programmation. [...]
Catégories: Blog Société

SoirĂ©e Les coulisses du Cloud français ‘made in’ OVH chez Xebia le 22 mai !

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 …

Catégories: Blog Société

Spring 3.1 : Utiliser l’abstraction de cache

Avec sa version 3.1, Spring apporte de nombreuses nouvelles fonctionnalitĂ©s, parmi lesquelles se trouve une abstraction de cache. Cette derniĂšre permet de s’absoudre des dĂ©pendances explicites au cache utilisĂ©. En effet, une fois cette fonctionnalitĂ© configurĂ©e, les dĂ©veloppeurs auront Ă ...
Catégories: Blog Société

Java est-il trop “serrĂ©â€ ?

Blog d’Ippon Technologies - lun, 05/14/2012 - 12:16

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 :

  1. les débutants sont mal formés, notamment sur les paradigmes OOP, AOP et SOA
  2. les dĂ©veloppeurs expĂ©rimentĂ©s s’Ă©puisent Ă  passer d’un framework Ă  l’autre
  3. les architectes n’ont pas le temps d’Ă©valuer les versions qui sortent en permanence

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.

Catégories: Blog Société

Les patterns des grands du Web – FluiditĂ© de l’expĂ©rience l’utilisateur

“L’ergonomie n’est plus nĂ©gociable aujourd’hui”. OCTO Technology

L’aspect incontournable de la performance

Il 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 :

  • Amazon : une augmentation de + 100 ms de la latence signifie -1 % de ventes
  • Google : plus de 500 ms au chargement signifie – 20 % de trafic (pages vues)
  • Yahoo : plus de 400 ms au chargement signifie + 5 à  9 % d’abandon (rebond)
  • Bing : plus d’une 1 seconde au chargement signifie – 2,8 % de revenu publicitaire
Comment assurer cette performance

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 natives

Avec 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 Web

Le 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 :

  • Il est crucial de mettre en cache les ressources statiques (les images, les feuilles de style CSS, les scripts JavaScript, les films Flash, etc.) lorsque c’est possible. Il existe pour cela diverses technologies de cache HTTP. L’optimisation de la durĂ©e de vie des ressources dans le cache est ainsi une compĂ©tence Ă  acquĂ©rir.
  • Il est recommandĂ© d’utiliser un rĂ©seau de cache, ou Content Delivery Network (CDN),  pour placer les ressources au plus prĂšs des utilisateurs et limiter l’impact de la latence rĂ©seau. Disposer de serveurs de cache dans tous les pays oĂč rĂ©sident des utilisateurs est vivement recommandĂ©.
  • Le chargement en tĂąche de fond permet de masquer la lenteur d’affichage de certains Ă©lĂ©ments de la page.
  • Une pratique, trĂšs frĂ©quente consiste Ă  utiliser des “sprites” : il s’agit d’agrĂ©ger des images dans un mĂȘme fichier pour limiter le nombre de ressources Ă  charger ; elles seront ensuite dĂ©coupĂ©es Ă  la volĂ©e par le navigateur (voir l’exemple Gmail ci dessous).
  • Le recours Ă  des noms de domaines multiples permet de maximiser la parallĂ©lisation dans le chargement simultanĂ© de ressources par le navigateur. En effet, les navigateurs sont soumis Ă  un nombre maximal de requĂȘtes simultanĂ©es sur un mĂȘme domaine. Ainsi Yahoo.fr charge ses images Ă  partir de l.yimg.com
  • Placer les ressources JavaScript en toute fin de page pour que le visuel apparaisse le plus vite possible
  • Minifier, c’est Ă  dire supprimer du code tous les caractĂšres (retour chariot, commentaires) servant Ă  la relecture mais pas l’exĂ©cution du code.
  • Compacter les diffĂ©rents fichiers de code source tels que JavaScript dans un seul fichier, quand c’est possible
Chez qui ça fonctionne ?

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 Web

Google 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 :

  • cite-sciences.fr
  • LeMonde.fr
  • Allocine.com
  • UrbanDive.com
Et chez moi ?

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.

Sources
  • PrĂ©sentation “Performance des applications web, quoi faire et pourquoi ?” lors de l’USI 2010 : http://goo.gl/C57B8

Suggestion d'articles :

  1. Les Patterns des Grands du Web – Sharding
  2. Les Patterns des Grands du Web : « OpenAPI » ou écosystÚme ouvert
  3. Les Patterns des Grands du Web – Test A/B

Catégories: Blog Société

jQuery, chroniques 72

Mathieu Robin - lun, 05/14/2012 - 08:12

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 :

  • L’Ă©quipe a besoin de vos retours sur ce que vous pensez des changements potentiels qu’ils pourraient mettre en place sur les forums officiels ;
  • Vous ĂȘtes invitĂ©s Ă  tester le composant Popup qui devrait ĂȘtre intĂ©grer dans jQuery Mobile 1.2.

C’est tout pour cette semaine. A plus tard !

flattr this!

Catégories: Blog Individuel