Le test HTML5

Le HTML est un terme qui regroupe de nombreuses fonctionnalités. Les balises HTML5 évidemment, mais aussi les nouvelles API du DOM et aussi pour certains les nouvelles moutures du JS, a.k.a ECMAScript.

La première version de ce micro article (2012) parlait du WebGL, de microdonnées, du dragNdrop. Mais bien d’autres choses ont fait leur apparition depuis: le WebGL2, la push api, les web workers etc.

Pour tout développeur soucieux de l’avancement des technos front et de l’état des navigateurs, trois ressources permettent de savoir si vous pouvez utiliser telle ou telle techno en prod ou non :

  • le très connu Can I Use qui permet d’afficher le support d’une api précise,
  • HTML5test qui donne une note à votre navigateur et présente les différentes technos supportées (ou non) et fourni les liens vers la doc W3C, Whatwg ou MDN,
  • enfin le test ECMAScript qui présente une synthèse de l’implémentation des différentes versions de JavaScript par les principales plateformes.

Bon dev !

Maitriser MySQL en CLI

Vous n’êtes pas sans savoir que derrière chaque site web se cache une base de données. Si vous développez des sites ou applis web, que ce soit en php, ruby ou python, vous devriez savoir maitriser MySQL en ligne de commande. À la question, « à quoi ça sert ? », je répondrai que phpMyAdmin n’est pas forcement installé sur le serveur que l’on doit administrer, et dans ce cas, il va falloir gouter à l’interface en ligne de commande. En outre, les commandes CLI sont les mêmes que celles que vous mettez dans vos codes php, python ou autre, alors les apprendre ne peut que vous être utile !

(suite…)

PHP et la vidéo avec ffmpeg-php

FFMPEG php, à l’instar de FFMPEG, est le genre d’outil qu’on ne se lasse jamais de présenter. FFMPEG PHP offre des classes permettant de « discuter » en php avec FFMPEG. On peut donc récupérer toutes sortes d’info sur des vidéos, en extraire des images etc. En revanche, il n’est pas possible d’encoder directement d’un format à un autre avec FFMPEG PHP. Pour cela, il faudra passer par FFMPEG tout court.

(suite…)

Lumière sur les fetch modes de PDO

Si vous utilisez PDO, pour récupérer vos données après un select, vous faites peut-être tout simplement :

$pdo = new PDO('mysql:host=host;dbname=DBNAME', 'user', 'pass');
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );

while($mesDonnees = $maRequete->fetch()) {
  echo $mesDonnees['machin'];
}

// ou 

$mesDonnees = $maRequete->fetchAll()

foreach ($mesDonnes as $element) {
  echo $element['machin'];
}

Vous utilisez donc probablement la méthode de récupération par défaut, FETCH_BOTH. Sachez qu’il existe des tonnes d’autres méthodes pour récupérer ses données. À la fois plus efficacement et peut-être de manière plus adaptée à vos scripts que la méthode par défaut. Tout ceci est bien entendu disponible sur la doc officielle php. Mais si c’est un article clair et qui parle le langage de l’homme que vous cherchez, alors j’ai trouvé une petite série qui se chargera de rendre tout ceci limpide dans votre cerveau !

Bonne lecture.

La puissance des REGEX

Pour ceux qui ne savent pas ce que c’est, les expressions régulières, combinées à des fonctions de certains langages (PHP, bash, JavaScript et même HTML5 !) permettent de faire des recherches et de la reconnaissance sur des chaines de caractères. Extraire des numéro de téléphone d’une page web, ou vérifier que l’email que l’internaute rentre dans un formulaire, ressemble bien à un email… C’est très puissant !

(suite…)

Les différents types de colonnes MySQL

Derrière la quasi-totalité des sites web et applications web, se cache une base de donnée SQL. Et lors de la conception de celle-ci, il faut choisir avec justesse les différents types de colonnes. Chose qui s’avère parfois plus difficile que prévu… Quelle est la différence entre un CHAR et un VARCHAR ? Qu’est-ce que sont les BLOB ? Ce petit guide permettra d’éviter certaines erreurs qui pourraient bien, à terme, nous coûter quelques gigaoctets supplémentaires et des ralentissements inutiles.

(suite…)

Internet et l’Univers, objets en expansion

Le numérique est l’avenir car les ressources sont illimitées, contrairement à l’économie classique qui repose sur les limites physiques des matières premières. En effet, impossible de vendre plus de voitures qu’il n’y a d’aluminium pour fabriquer la carrosserie, impossible aussi de vendre plus d’ordinateurs qu’il n’y a de silicium pour fabriquer les puces… oh wait ! Internet, c’est des ordinateurs ?! Et un ordinateur, c’est matériel, donc Internet aussi non ? C’est là toute la question. Qu’est-ce qui est matériel, qu’est-ce qui ne l’est pas ? Internet est-il fini ou infini ?

(suite…)

Créer un crawler web en php

Sur le web, les robots, spiders ou crawlers, selon les termes, sont très employés. Google, bien sur, en utilise pour explorer les sites à référencer, mais leur utilisation ne s’arrête pas là. Facebook aussi a recours à eux lorsque vous postez un lien et qu’une image et la description s’affichent sur le mur, on pourrait penser également aux portails d’informations (ou les applis comme Flipboard) qui vont chercher les contenus sur divers sites, mais encore Pinterest qui est très à la mode… La liste est longue. Apprenons à programmer le notre pour nos propres besoins !

(suite…)

La commande sed pour les nazes

Sed peut faire des choses qui prendraient des heures à faire avec une interface graphique. Exemple ? Renommer 1500 documents d’un coup ou encore modifier du texte dans des centaines de fichiers à la fois ! Introduction et résumé des commandes.

(suite…)