#JavaScript

Laisser un commentaire

Gérer les encodages de texte en JavaScript

L’encodage du texte a toujours été plus complexe qu’il ne parait. ASCII, Latin 1, Mac OS Roman, ISO 8850-n, UTF-8… On a tendance à s’y perdre. J’y dédis un article de mon livre Computer Science.

Cette complexité est sans compter le fait que différents langages de programmation gèrent ces encodages différemment. Vous êtes un développeur moderne, vous vous dites peut-être que de nos jours, tout se passe en UTF-8 et qu’il est inutile de s’appesantir sur le sujet ? Grossière erreur !

Vous connaissez le JavaScript. On utilise la méthode length pour récupérer la longueur d’une chaine de caractère. Essayez donc '🤔'.length. Si vous pensiez à 1, vous êtes dans l’erreur.

Par ailleurs, saviez-vous que 'A' !== 'А' ? Oui Monsieur, parfaitement ! Le premier est le “a” majuscule latin tandis que le second est en cyrillique. Une vérification sans considération des noms d’utilisateurs d’un site par exemple, peut vite poser problème…

Et vous n’avez encore rien vu ! Convaincu de l’utilité de faire le tour de la question ? Allez, on se lance !

Laisser un commentaire

Sites statiques et Jamstack : la révolution frontend

Les générateurs de sites statiques (GSS ou communément nommés SSG), sont devenus en quelques années, grâce aux apports de la Jamstack, des outils de premier plan. D’une solution pour blog de développeur, ces technologies propulsent aujourd’hui des sites à fort trafic et à forte valeur ajoutée.

Spotify, Mastercard, Nike, Google, Facebook, Airbnb… Ce ne sont que quelques-uns des utilisateurs de ces solutions. Quels en sont donc les avantages, qu’est-il possible de faire avec cette nouvelle stack et comment ? Autant de questions auxquelles nous allons répondre dans cet article.

Laisser un commentaire

Boucles JavaScript : maîtrisez les toutes

Le JavaScript dispose d’une demi-dizaine d’instructions distinctes permettant d’effectuer une boucle sur une variable. Quelles sont les méthodes les plus adaptées aux différents types de valeurs ? Quelles sont les implications de telle ou telle méthode ? Dans quel contexte préférer une instruction plutôt qu’une autre ? Autant de questions auxquelles nous allons apporter une réponse.

Laisser un commentaire

Bien commenter son code

Commenter son code, c’est un cadeau que vous envoyez dans le futur. Peut-être pour le prochain développeur qui maintiendra le projet ou vous donnera un coup de main, mais probablement surtout pour votre futur vous.

En effet, ce qui est limpide dans votre esprit à l’instant où vous écrivez le code, sera clairement plus opaque lorsque quelques semaines ou mois se seront écoulés. La documentation – en plus d’un code bien structuré – participe activement à faire de votre base de code dans son ensemble un “bon code”.

Laisser un commentaire

Les modules JavaScript indispensables

L’un des motos de tout bon développeur est DRY, don’t repeat yourself. Pourtant, une très grosses partie de nos projets ont des besoins similaires : valider un email, uploader des fichiers…

À ce titre, conformément à un autre moto de tout bon développeur – ne pas réinventer la roue – on utilise des outils et modules déjà existants et éprouvés. Voici donc un petit listing des modules que j’utilise régulièrement.

Laisser un commentaire

PSTconverter: convertir les archives Exchange/Outlook

Au pringtemps 2018, ma mère avait besoin de récupérer le contenu d’une archive PST Exchange de plus de 50GB. Impossible d’importer ça sur Linux, pas possible non plus sur les autres systèmes sans s’abonner à Office 365. Je fais quelques recherches et entre 400 logiciels Windows payants, je finis par trouver un outil libre en ligne de commande.

Ce logiciel s’appelle readpst et fait partie de la collection d’outils libpst. Je fais la conversion et tout fonctionne à merveille. Le seul bémol : j’imagine mal ma chère maman installer et utiliser un logiciel en CLI. De là me vient l’idée d’en faire une solution web : PSTconverter.

Laisser un commentaire

Jamments, l’API de commentaires de la JAMstack

Lorsque j’ai fait la transition depuis WordPress vers le statique avec Hexo, le plus challengeant a été de trouver une solution pour les commentaires. J’ai eu tellement de mal à trouver quelque chose qui répondait à mon besoin que j’ai décidé de développer ma propre solution de commentaires. Présentation rapide de Jamments, une API de commentaires open source conçue pour la JAMstack.

Laisser un commentaire

Ciao WordPress, Hello JAMstack

Pour ceux qui l’ignorent, JAMstack est l’acronyme de JavaScript, APIs et Markup. Cela veut dire que contrairement à un CMS comme WordPress, le serveur web ne fait que livrer des fichiers statiques pré-compilés. Cependant, cela ne veut pas forcement dire que le site est statique, il y a du JavaScript et ce dernier est en mesure d’interagir avec des API (donc récupérer des données etc). Voyons les raisons de mon choix et le dessous des cartes techniques !

Laisser un commentaire

L'après jQuery: API DOM native et alternatives

Ça ne vous a surement pas échappé, on utilise aujourd’hui de moins en moins jQuery dans les nouveaux projets. Les navigateurs récents supportent en effet très bien les nouvelles API du DOM. Il est ainsi possible d’avoir un code qui fonctionne pour tous les navigateurs en se conformant aux standards. On se libère d’une dépendance mais on hérite d’une API native pas toujours super sexy… Voyons ce que l’on peut faire.

Laisser un commentaire

Programmation fonctionnelle en JavaScript

Bien que la programmation fonctionnelle ne date pas d’hier, on en entend de plus en plus parler. Souvent entourée de termes obscurs et de notions mathématiques complexes, on se dit qu’on se penchera sur ce nouveaux paradigme de programmation un peu plus tard… Et si ce plus tard était maintenant ? Tentons d’aborder le FP de manière concrète et pragmatique.