Salut à tous ! Semaine difficile, écriture compliquée par la fatigue, ce billet est pourtant un des plus intéressants que j’ai pu écrire dans cette chronique. Je vous laisse découvrir pourquoi :
Sortie de la beta 2 de jQuery 2.0 !
L’annonce a été faite vendredi par Dave Methvin. Bien entendu, le support de IE 6, 7 et 8 a été supprimé. Vous devrez donc faire quelque chose de ce genre si vous souhaitez migrer et continuer de supporter ces navigateurs :
<!--[if lt IE 9]>
<script src="jquery-1.9.1.js"></script>
<![endif]-->
<!--[if gte IE 9]><!-->
<script src="jquery-2.0.0b2.js"></script>
<!--<![endif]-->
Au delà de ça, je vous laisse regarder le lien ci-dessus, trop de détails pour vous les détailler ici et je manque malheureusement de temps. Cette version amène énormément de changements, la migration risque d’être délicate. Le lien contient le changelog complet.
Autre information officielle, le déroulement de jQuery Europe le 23 et 24 février dernier à Vienne. J’avais raté l’information mais mon amie Anne-Gaëlle Colom m’a permis de rattraper ce manque. Voilà le lien officiel sur l’évènement, vous trouverez un article assez intéressant sur le sujet chez PR Newswire UK.
L’agence de presse déléguée sur place a partagé ses photos. Dans l’ordre celles du vendredi et celles du samedi. Et celles de Gentics Software le vendredi et le samedi.
Je n’ai pas eu le temps de me pencher là dessus, mais le weekend dernier, la conférence jQueryTO a eu lieu à Toronto.
Avant de continuer, je remercie donc Anne-Gaëlle pour toutes ces informations que je n’avais pas pu glaner.
Un tutoriel imposant côté officiel a été publié et me fait un peu penser aux tutoriels de la KhanAcademy ou encore comme le tutoriel pour GitHub.
Passons aux plugins, avec une grosse fournée cette semaine. La palme revient à Stéphanie Walter. Son épisode 51 était très riche pour ma propre chronique.
Hook.js, un plugin pour faire comme une sorte de pull-to-refresh, comme sur Twitter. Ce plugin séduit pas mal en ce moment, il a aussi eu le droit à un article chez La Ferme du Web.
Toolbar.js, une sorte de barre d’outils, très simple, mais reste efficace.
Dans les autres outils, on peut compter :
JSZip, pour zipper et dézipper via JavaScript.
Edit du 6 mars 2013 : apparemment cette bibliothèque a quelques soucis majeurs, voire le commentaire de check_ca (http://www.mathieurobin.com/2013/03/chroniques-jquery-episode-107/#comment-3073)
MetTile, un ensemble de tuiles graphiques pour simuler l’interface de Metro, la dernière UI de Microsoft. Et pour une fois, ce kit est vraiment réussi.
jQuery.IO, un plugin qui permet de basculer de façon aisée d’un format de données à un autre.
Encore une fois, les liens de cette chronique sont disponibles sur un carnet Evernote dédié.
Salut tout le monde ! Désolé pour le retard de publication mais j’ai eu vraiment beaucoup de boulot et un peu de vie de famille aussi.
Heureusement pas grand chose à signaler cette semaine, la seule nouvelle qui a retenu mon attention est la sortie de jQuery Mobile 1.3.
L’annonce publiée mercredi par Todd Parker alors que prévenue lundi à l’origine, mais bon, les gars de l’équipe restent des volontaires, ils font au possible. Rien à redire donc, d’autant que je connais ça aussi.
L’accent pour cette nouvelle version a notamment été mis sur l’approche du responsive design. Une question récurrente est l’utilisation ou non du pur responsive ou mélanger un site classique et un site mobile. Leur réponse est : les 2. Il semble pratique en effet d’avoir un site consultable partout et un site vraiment dédié à un usage mobile optimisé.
Au passage, petite info bonne à savoir, ils ont travaillé pas mal donc sur porter en CSS ce qu’il était possible de faire avec au lieu de le faire en JS.
De nouveaux widgets ont fait leur apparition :
Le support de IE 10 et Windows Phone 8 vient compléter la liste des choses clés. Evidemment, jQuery 1.9.1 est supporté et ils sont confiants sur le support de la très proche jQuery 2.0. à venir.
Un évènement facilitant la navigation. Je vous invite à jouer avec $.mobile.navigate.
Dans les plus petites modifs restant bien pratiques, vous pouvez choisir l’emplacement du bouton de fermeture ou carrément le désactiver. Vous pouvez aussi refuser le clic à l’extérieur comme pouvant fermer les popups, les transformant ainsi en fenêtre modale. Bien pratique à l’occasion.
Coté sites, vous avez à votre disposition un nouveau site de démonstration et de documentation.
Attention, alerte au deprecated, les nested listviews sont désormais deprecated, leur support sera supprimé avec la 1.4. Commencez donc à porter votre code si vous voulez pouvoir assurer les mises à jour.
Vous pouvez accéder au changelog complet et comme d’habitude à mon carnet Evernote partagé dédié.
Hello tout le monde ! La chronique est vraiment de retour, je vous l’avais promis, je m’y tiens
Côté officiel, on a la sortie de jQuery UI 1.10.1 !
Comme d’habitude, c’est Scott González qui se colle à l’annonce de cette version de maintenance, la première de la 1.10. Celle-ci n’apporte rien de plus que des correctifs de bogues pour les widgets Accordion, Autocomplete, Datepicker, Dialog, Menu, Slider, Draggable, Position, Effects ainsi qu’au framework CSS.
Comme d’habitude, le changelog est disponible et le guide de mise à jour a lui aussi été mis à jour.
Et on a aussi les notes de la dernière réunion de l’équipe de jQuery Mobile. Pas mal d’infos sont donc disponibles pour nous mettre l’eau à la bouche :
Des trucs sympas en prévision quoi.
Et pour terminer, un tutoriel assez balaise sur l’usage des objets Deferred et Promise, notamment dans jQuery mais aussi EmberJS. Je le conseille sincèrement à la lecture, c’est un beau morceau.
Comme d’habitude, les liens ici présents sont disponibles sur un carnet partagé dédié sur Evernote. Pour rappel, pourquoi je partage sur Evernote et comme s’en servir.
J’ai eu plusieurs fois de longues discussions avec différentes personnes ces derniers mois à propos des plugins jQuery. Souvent très intéressantes et avec une problématique toujours récurrente. Comment choisir ses plugins ?
Il est vrai que la question est délicate mais certains critères sont simples et permettent de faire un énorme tri. Je vous en expose quelques uns ici, non triés, vous pouvez y conférer l’importance qui vous convient.
Critère n°1 : l’activité du plugin
Quand vous utilisez un logiciel, c’est comme lorsque vous utilisez une voiture ou, mieux, un ascenseur. En général, vous appréciez que quelqu’un soit capable de vous aider. Si possible un vrai expert de la technologie concernée qui peut réellement agir efficacement.
Un plugin, comme tout logiciel, doit encore être maintenu. En une phrase : je vous laisse à votre imagination pour un ascenseur non maintenu.
Critère n°2 : Responsive design
De mémoire, les premières publications concernant un design web dynamiquement adaptatif pour les mobiles datent de novembre 2009 (Mobile First). C’était il y a un peu moins de 4 ans. Comme l’a très bien affirmé Kevin Schaaf de Enyo à dotJS : »l’heure est venue d’arrêter de se demander si ça sera responsive ou non. Ça doit l’être, c’est tout« .
Le responsive design ne fait pas tout. Je ne sais quoi penser de la polémique à propos du sacrifice des sites mobiles dédiés au profit d’un unique site responsive. Il y a toute une question d’impact sur le SEO. Quoi qu’il en soit, que vous ayez un site mobile ou non, votre site doit être responsive.
D’ailleurs une version responsive de ce blog est en cours de développement. L’API de WordPress est juste infâme.
Critère n°3 : les tests
On reste dans la métaphore ascensionnelle avec l’ascenseur qui sera plus parlante que la voiture. Sincèrement, vous monteriez dans un ascenseur en sachant pertinemment que son constructeur/installateur n’a fait aucun test hormis ceux à la conception en usine ?
Critère n°4 : la documentation
Pour le coup, changement de métaphore. Vous aimez bien monté les meubles d’un certain fabricant suédois sans plans ?
Critère n°5 : l’accès aux sources
Arrêtons de charger des plugins à droite à gauche sur des sites dédiés plus ou moins bien référencés. GitHub existe, BitBucket aussi, le partage de code est facile, simple et plus qu’efficace. Un développeur qui garde pour lui son code ne mérite plus à l’heure actuelle qu’on utilise son travail. Et accessoirement, c’est surtout une question de performances et de qualité de code. Le fait de pouvoir plancher à plusieurs sur un problème peut beaucoup aider en général.
Des annuaires de qualité existent, je pense par exemple au site officiel fraîchement refait. Ou à jQuery Rain. Ou encore des testeurs en chaîne tels que l’ami Megaptery ou encore Js4Design. Il est rare que je cherche un plugin ailleurs que sur ces deux derniers sites pour une utilisation intensive professionnelle.
Critère n°6 : le prix
La gratuité d’un soft, c’est très bien. Mais ça ne fait pas tout. Des sites comme CodeCanyon, proposent d’excellentes ressources payantes. Mais parfois, il revient moins cher d’acheter un plugin très bien réalisé quelques $/€ plutôt que de passer plusieurs heures à déboguer/adapter un plugin trouver gratuitement.
Critère n°7 : la compatibilité
Je ne vous ferai pas l’affront de réclamer que vos plugins soient compatibles IE 6 ou Netscape, mais sur tous les navigateurs de moins de 5 ans d’age, ce n’est pas trop demander, surtout quand on s’appuie sur jQuery qui se charge de l’essentiel.
Conclusion
Ce sont des règles d’or pour moi, mes plugins ne les respectent pas toutes, j’y travaille. Cependant elles peuvent vous éviter un paquet de soucis.
Retour de la chronique après des semaines d’inactivité. Pour celle-ci, je ne serai malheureusement pas très complet et détaillé, pas le temps de revenir sur deux semaines pleines d’actualité mais le retour à la normale est en cours.
Du côté de l’officiel, on a la mise à disposition du premier patch jQuery 1.9.1 !
Essentiellement des correctifs de bogues et de régressions, je vous laisse lire le changelog et le guide de migration sur l’annonce officielle.
Du côté de jQuery Mobile, on a la RC1 de la 1.3 qui est sorti. L’annonce officielle est disponible ici. Des petites nouveautés sympathiques sont incluses. Il y a notamment les panels qui m’ont l’air pas mal.
Autre chose que j’attendais depuis longtemps, une mise à jour de QUnit vers la 1.11. La modification clé qui m’importe est l’affichage du temps d’exécution par test. Celle-ci permettant donc de profiler un peu mieux l’exécution de vos applications.
Côté non-officiel, je vous incite à jeter un oeil à tout ça :
Je sors le tutoriel suivant de la pile ci-dessus parce qu’il est vraiment important et clé pour comprendre la mécanique interne de jQuery. « Do You Know When You Are Looping in jQuery? » explique la logique des boucles de jQuery. La compréhension des explications qui y sont dispensées sont clés pour une amélioration plus que significative des performances de vos applications.
Comme d’habitude, les ressources de cette chronique sont disponibles dans un carnet partagé dédié sur Evernote.
Bonne semaine à tous, et normalement à la semaine prochaine pour la chronique et dans le courant de la semaine pour d’autres publications.
Hello à tous !
Après les grosses annonces de la semaine dernière, on pouvait s’attendre à du calme cette semaine. Sauf que je vous avais prévenu qu’il y aurait encore du lourd du coté de jQuery Mobile. Erratum de ma part donc, puisque mon informatrice m’a involontairement induit en erreur. En fait l’annonce officielle bien sympa est la suivante :
Le site officiels de plugins est de retour !
Donc vous pouvez recommencer à soumettre vos plugins et il y a même tout une procédure pour vous expliquer comment faire.
Au passage, ils ont entièrement rénové le site. Aussi bien la doc que le blog etc… Jetez un oeil au nouveau site et au billet d’explication des détails. Tout ça à l’air très bien, ça devrait améliorer quelque peu l’expérience utilisateur. En tout cas, il y a de très nombreux très bon retours sur Twitter.
Côté plugins, Stéphanie Walter m’a encore permis de ne pas rater un plugin utile. jQuery UI Touch Punch vous permet d’ajouter la gestion du tactile sur les widgets jQuery UI.
Je suis tombé sur Hotspotter cette semaine. Un excellent plugin pour mettre en avant certains point d’une image intégrée à votre site. Pour introduire des détails à la façon de l’identification des personnes sur Facebook. Je l’ai trouvé vraiment bien terminé.
Un article sympathique a été publié sur tutplus.com pour expliquer comment construire des plugins jQuery UI en se servant de la widget factory. Je n’ai malheureusement pas encore trouvé le temps de l’éprouver.
Pour terminer, Aurélien Gerits et Addy Osmani ont remis à neuf la documentation de jQuery UI Bootstrap. Je vous laisse découvrir par vous même l’excellent travail effectué.
Voilà, c’est tout pour cette fois. Je ne pense pas avoir le temps de publier quoi que ce soit d’autre cette semaine. Grosse livraison en fin de semaine, je suis déjà physiquement éreinté, mentalement je suis un légume donc je vais me consacrer au taf pour boucler ça proprement. A la semaine prochaine, ça ira mieux
Salut et bonne année à tous ! La chronique est de retour ! Je suis sûr que vous êtes contents
Alors vu que ça fait genre 3 semaines que j’ai pas publié de chroniques pour raisons professionnelles. Mon premier article de 2013, je suis ému. Trop de boulot pour ne surtout pas avoir envie de toucher un pc en rentrant, ça arrive. Du coup, vous allez avoir un billet de blog quelque peu long et surement un peu bordélique.
On commence par les annonces officielles :
jQuery 1.9 est disponible ! Et la beta de la 2.0 aussi !
J’avoue que tout ça a été vite et j’ai pas vu venir la beta de la 2.0. L’annonce a été faite par Dave Methvin.
Voila la liste des choses à savoir :
Un plugin nommé « Migrate » est disponible pour vous permettre de migrer et détecter facilement toutes les méthodes obsolètes. Son fonctionnement est très simple, il permettra à jQuery d’effectuer le travail attendu comme dans les anciennes versions. Mais en vous balançant une superbe erreur en console pour vous indiquer que vous utilisez du deprecated.
Avantage à utiliser la 2.0, elle est 10% moins lourde que sa consoeur 1.9 du fait de ne plus supporter les navigateurs obsolètes. Mais attention à ce que vous faites, je ne peux que rappeler mon point de vue sur la question du support de IE 6.
Du côté de jQuery UI, la 1.10 est disponible !
Pour faire très simple, il n’y a pas de nouveaux widgets mais certaines APIs ont été revues. Je ne vous la ferais pas dans le détail mais globalement :
Enfin, je termine dans l’officiel avec la beta de jQuery Mobile 1.3 !
L’annonce faite par Todd Parker précède certainement une annonce de la version définitive dans la semaine à venir. Mais ça je le sais par l’amie Anne-Gaelle Colom qui a plus ou moins volontairement lâché le morceau sur Twitter :p
J’ai manqué de temps pour me pencher dans la description de cette nouvelle version. Donc je vais éviter de trop me pencher dedans et raconter des âneries. Il y a un nouveau widget nommé Panels. Un composant intéressant pour déployer un panneau sur le coté, un peu comme le propose les applis natives mobiles Facebook ou Evernote. Ainsi qu’un composant Range Slider
Une nouvelle capacité du framework mobile est aussi de gérer les tableaux plus proprement en les rendant correctement responsives. Idem pour les grilles.
Je vous invite donc à lire en détail le billet de blog cité plus haut pour mieux saisir les spécificités de cette nouvelle version.
Au passage le design du site de documentation a été revu pour coller à celui de jQuery UI. D’ailleurs j’ai cru comprendre que côté jQuery core, ça n’allait plus tarder.
Je tiens à remercier notamment Daniel Hagnoul qui, à travers sa chronique sur Developpez.com, m’a énormément facilité la tache de synthèse.
Côté des ressources, je vous propose de jeter un oeil à jKit, un site qui propose une sorte de collection de widgets graphiques. Ça a l’air plutôt bien fait.
J’ai aussi jeté mon dévolu sur un article de Geoffrey Dorne sur un plugin nommé jQuery Pep. Bien présenté par Geoffrey, ce plugin permet d’apporter une vraie couche de qualité à vos applis pour le support de l’interactivité mobile sans basculer sur jQuery Mobile. Je vous laisse jeter vos petits yeux curieux sur son article.
Côté plugins, je n’ai rien sélectionné cette semaine hormis un plugin de recherches (clairement ras le bol des 5 slideshows « révolutionnaires » qui me sont envoyés pour avis chaque semaine).
Donc quickSearch est un plugin apparemment assez simple qui permet de faire de la recherche dans un ensemble de données en vous basant sur les sélecteurs de jQuery comme source de données. J’ai trouvé l’idée très intelligente et je pense sincèrement en avoir l’utilité à l’occasion si je ne peux disposer de frameworks au binding dynamique tels que Angular ou Ember.
Comme pour les autres épisodes, vous pouvez retrouver les ressources de cette chronique sur un carnet de notes partagé sur mon Evernote : https://www.evernote.com/pub/mathrobin/episode102
Exceptionnellement, il y a même pleins de ressources supplémentaires dont je n’ai pas parlé dans ce billet. N’hésitez donc pas à y jeter un oeil
Sur ce, je vous souhaite une bonne semaine pour ceux qui ne viennent que pour la chronique et à avant j’espère pour tous les autres ! Bonne journée !
Une semaine bien difficile, surtout remplie de stress et psychologiquement difficile, c’est reparti pour une autre. Heureusement, la chronique est là pour marquer une coupure. Voici donc les nouvelles fraîches :
La mise à disposition de la beta 1 de jQuery 1.9.0.
L’objectif affiché de cette version annoncée en début de semaine était de faire le ménage. Et ils y sont allés franco. Je reviendrai sur les détails au moment de la sortie de la version finale. Pas le temps là et ils y ont été suffisamment forts pour que je préfère attendre les premiers retours avant de vraiment tout annoncer. On parle notamment d’un changement de nom pour ajax.type en ajax.method et de la suppression de tout un tas de méthodes obsolètes ou pas forcément viables. Vous pouvez retrouver la liste de ce qui saute sur le dépôt GitHub d’un plugin de migration créé pour l’occasion. Ce plugin assure la rétro-compatibilité. Vu le bousin que c’est, essayez le et faites tous les retours possibles à l’équipe.
L’équipe de jQuery Mobile a également mis à disposition ses dernières notes de travail. Il y a pas mal de choses intéressantes à y lire. On y parle 1.3 et 1.4, révision en profondeur de la documentation (confirmée lors d’une de mes dernières conversations avec Anne-Gaelle Colom). Il y a vraiment plein de choses à lire, je ne veux pas vous noyer dans les détails mais ça se sent qu’ils ont bossé dur.
Pour rappel, j’ai mis aussi à disposition toutes les ressources jQuery que j’ai pu référencer ces derniers mois dans des carnets partagés sur Evernote. C’est gratuit et vous retrouverez tous les détails nécessaires dans le lien que je vous donne au début de ce paragraphe.
Sur ce, je n’ai plus qu’à vous souhaiter à tous une bonne semaine et un joyeux Noël. Il n’y aura pas de chronique lundi prochain, je prends un congé histoire de souffler un peu. Il y aura peut-être des publications ceci dit. En espérant que mon cadeau de Noël vous plait et vous sera régulièrement utile
Vu que j’ai passé les 100 épisodes, et que j’ai bien l’impression d’avoir un certain nombre de lecteurs réguliers, j’ai décidé de vous faire un autre cadeau pour vous en remercier. Il y a peu, en partenaire occasionnel, Simple-IT vous offrait quelques exemplaires de son livre sur jQuery pour les deux ans de cette chronique. Ce coup-ci, c’est mon tour de vous faire un cadeau à ma hauteur. Voyez ça comme mon cadeau de Noël.
Je vous offre donc mes carnets Evernote.
Qu’est-ce que c’est ? J’ai souscrit à un compte premium Evernote, il y a quelques semaines, qui me permet notamment de partager mes carnets. Je m’en sers pour ma chronique, pour ma veille et pour divers autres besoins personnels. En gros, un investissement plus qu’intéressant. Pratique, j’ai un carnet par épisode de la chronique. Voici les carnets des épisodes 70 à 100 :
https://www.evernote.com/pub/mathrobin/episode70
https://www.evernote.com/pub/mathrobin/episode71
https://www.evernote.com/pub/mathrobin/episode72
https://www.evernote.com/pub/mathrobin/episode73
https://www.evernote.com/pub/mathrobin/episode74
https://www.evernote.com/pub/mathrobin/episode75
https://www.evernote.com/pub/mathrobin/episode76
https://www.evernote.com/pub/mathrobin/episode77
https://www.evernote.com/pub/mathrobin/episode78
https://www.evernote.com/pub/mathrobin/episode79
https://www.evernote.com/pub/mathrobin/episode80
https://www.evernote.com/pub/mathrobin/episode81
https://www.evernote.com/pub/mathrobin/episode82
https://www.evernote.com/pub/mathrobin/episode83
https://www.evernote.com/pub/mathrobin/episode84
https://www.evernote.com/pub/mathrobin/episode85
https://www.evernote.com/pub/mathrobin/episode86
https://www.evernote.com/pub/mathrobin/episode87
https://www.evernote.com/pub/mathrobin/episode88
https://www.evernote.com/pub/mathrobin/episode89
https://www.evernote.com/pub/mathrobin/episode90
https://www.evernote.com/pub/mathrobin/episode91
https://www.evernote.com/pub/mathrobin/episode92
https://www.evernote.com/pub/mathrobin/episode93
https://www.evernote.com/pub/mathrobin/episode94
https://www.evernote.com/pub/mathrobin/episode95
https://www.evernote.com/pub/mathrobin/episode96
https://www.evernote.com/pub/mathrobin/episode97
https://www.evernote.com/pub/mathrobin/episode98
https://www.evernote.com/pub/mathrobin/episode99
https://www.evernote.com/pub/mathrobin/episode100
Pourquoi faire ?
En ajoutant ces carnets à votre Evernote, vous regroupez dans votre propre base de notes toute la base documentaire que j’ai généré depuis à peu près mai 2012. C’est à dire des plugins, des annonces officielles, des tutoriels, des livres, etc.
En une simple recherche sur Evernote, vous retrouverez quelque chose dont j’ai parlé dans ma chronique sans avoir à fouiller tous mes articles ou Google au milieu des milliers d’autres liens que ce dernier proposera.
Comment faire ?
Cliquez sur les liens, puis sur Joindre un carnet. Si vous avez un compte Evernote, il s’ajoutera à votre pile de carnets partagés, sinon il vous proposera de créer un compte.
Rien de bien compliqué en somme.
Il y a pas tout ?
Ça demande beaucoup de boulot de tout réunir dans des carnets vus qu’avant ces épisodes je n’avais pas encore Evernote. Je n’ai donc pas encore pu générer de carnets pour tous les épisodes. Mais de temps en temps, je libérerais des carnets supplémentaires.
D’avance, joyeuses fêtes à tous, j’espère que ce cadeau vous fait plaisir.
Bon cette semaine, on n’a pas grand chose à se mettre sous la main. Mais bon, ça m’arrange parce que j’avais tout un tas de choses à faire pour mon boulot, pour ma vie perso et pour vous aussi sur ce blog.
Tout d’abord l’arrivée de la beta de jQuery UI 1.10.
Annoncée par Jörn Zaefferer, cette pré-version du framework graphique annonce quelques changements. Désolé, je n’ai pas eu beaucoup de temps cette semaine pour me pencher sur les détails, je reviendrai donc là dessus au moment de la sortie officielle. Vous trouverez cependant toutes les informations si vous êtes pressés dans le lien fourni au début du paragraphe.
Je vous invite, coté plugins, à jouer avec Shapeshift. C’est un outil qui vous permettra en place un système de grilles responsive avec des éléments qui bougeront via drag&drop. Le tout bien entendu en étant « touch-friendly ».
Je souhaite aussi au passage saluer l’arrivée d’une chronique de veille, nommée « La Vague du Web » chez mon camarade Megaptery. Etant notamment spécialisé sur jQuery, vous y retrouverez quelques infos tels que des plugins pas mauvais du tout. Mais je vous laisse la joie de découvrir cette chronique avec plaisir. Je te souhaite bon courage l’ami !