Journal
Ce journal contient 20 entrées.
libcoap: C-Implementation of CoAP
Implémentation en C du protocole CoAP (un protocole REST pour les machines fortement limitées en ressources, pour lequel il existe un mapping avec HTTP), décrit dans la RFC 7252.
En plus du protocole de base, cette librairie implémente les ressources observables (RFC 7641) et la découverte des ressources liées (RFC 6690). Elle implémente aussi certains brouillons, comme l'annuaire de ressources CoAP (https://tools.ietf.org/html/draft-ietf-core-resource-directory-10).
RFC 7252 : https://tools.ietf.org/html/rfc7252
RFC 7641 : https://tools.ietf.org/html/rfc7641
RFC 6690 : https://tools.ietf.org/html/rfc6690

En plus du protocole de base, cette librairie implémente les ressources observables (RFC 7641) et la découverte des ressources liées (RFC 6690). Elle implémente aussi certains brouillons, comme l'annuaire de ressources CoAP (https://tools.ietf.org/html/draft-ietf-core-resource-directory-10).
RFC 7252 : https://tools.ietf.org/html/rfc7252
RFC 7641 : https://tools.ietf.org/html/rfc7641
RFC 6690 : https://tools.ietf.org/html/rfc6690
Géolocalisation des trains
Tous les trains de la SNCF positionnés en temps réel (délai d'environ 5mn) sur une carte interactive.

htop-explique | Le blog de Carl Chenet
Traduction française de l'excellent "htop explained": https://peteris.rocks/blog/htop

GitHub - dokan-dev/dokany: User mode file system library for windows with FUSE Wrapper
Génial, un équivalent à FUSE (Filesystem in Userspace) pour Windows. Il s'agit d'une interface permettant d'écrire des systèmes de fichier "virtuels", c'est-à-dire ne nécessitant pas de modifier le noyau du système d'exploitation pour fonctionner.
C'est une fonctionnalité qui a toujours manqué à Windows.

C'est une fonctionnalité qui a toujours manqué à Windows.
Oh, shit, git!
Une collection d'astuces pour rattraper les (petites) erreurs de manipulation avec git. Par exemple corriger le message d'un commit, amender un commit, etc.

Lushprojects.com - Circuit Simulator
Allez, aujourd'hui c'est électronique (voir lien précédent), avec ce petit simulateur de circuits. Ca me rappelle le logiciel Isis qu'on utilisait en cours, que de souvenirs <<

SoundCity - We are engaging citizens for smarter cities
Mon laboratoire travaille sur les villes intelligentes, notamment sur l'implication du citoyen dans l'analyse de son environnement urbain :
http://urbancivics.com
Une première application mobile vient d'émerger du projet :
"SoundCity est une application de mesure du niveau de bruit ambiant. Elle permet de suivre au cours du temps votre exposition personnelle à la pollution sonore. Les mesures de SoundCity contribuent de plus à une évaluation collaborative du bruit dans la ville.
Du point de vue individuel, l'application permet de quantifier votre exposition au bruit sur différentes échelles de temps (heure, jour et mois) afin de la mettre en regard de votre ressenti et des recommandations en matière de santé."
N'hésitez donc pas à télécharger, les données sont parfaitement anonymisées et seront utilisées pour faire avancer la recherche scientifique : https://play.google.com/store/apps/details?id=fr.inria.mimove.quantifiedself

http://urbancivics.com
Une première application mobile vient d'émerger du projet :
"SoundCity est une application de mesure du niveau de bruit ambiant. Elle permet de suivre au cours du temps votre exposition personnelle à la pollution sonore. Les mesures de SoundCity contribuent de plus à une évaluation collaborative du bruit dans la ville.
Du point de vue individuel, l'application permet de quantifier votre exposition au bruit sur différentes échelles de temps (heure, jour et mois) afin de la mettre en regard de votre ressenti et des recommandations en matière de santé."
N'hésitez donc pas à télécharger, les données sont parfaitement anonymisées et seront utilisées pour faire avancer la recherche scientifique : https://play.google.com/store/apps/details?id=fr.inria.mimove.quantifiedself
square/javapoet · GitHub
Une API pour générer du code Java. Plutôt pratique pour compléter Recoder, dont j'avais parlé il y a longtemps : http://benjaminbillet.fr/news/index.php?link=d5gw1l
Par exemple, le code suivant :
MethodSpec main = MethodSpec.methodBuilder("main")
.addModifiers(Modifier.PUBLIC, Modifier.STATIC)
.returns(void.class)
.addParameter(String[].class, "args")
.addStatement("$T.out.println($S)", System.class, "Hello, JavaPoet!")
.build();
TypeSpec helloWorld = TypeSpec.classBuilder("HelloWorld")
.addModifiers(Modifier.PUBLIC, Modifier.FINAL)
.addMethod(main)
.build();
JavaFile javaFile = JavaFile.builder("com.example.helloworld", helloWorld)
.build();
javaFile.writeTo(System.out);
Génère le code Java suivant :
package com.example.helloworld;
public final class HelloWorld
{
public static void main(String[] args)
{
System.out.println("Hello, JavaPoet!");
}
}
Par exemple, le code suivant :
MethodSpec main = MethodSpec.methodBuilder("main")
.addModifiers(Modifier.PUBLIC, Modifier.STATIC)
.returns(void.class)
.addParameter(String[].class, "args")
.addStatement("$T.out.println($S)", System.class, "Hello, JavaPoet!")
.build();
TypeSpec helloWorld = TypeSpec.classBuilder("HelloWorld")
.addModifiers(Modifier.PUBLIC, Modifier.FINAL)
.addMethod(main)
.build();
JavaFile javaFile = JavaFile.builder("com.example.helloworld", helloWorld)
.build();
javaFile.writeTo(System.out);
Génère le code Java suivant :
package com.example.helloworld;
public final class HelloWorld
{
public static void main(String[] args)
{
System.out.println("Hello, JavaPoet!");
}
}
lorempixel - placeholder images for every case
Un service pour sélectionner des images aléatoirement par taille et par thème. Très simple d'utilisation :
http://lorempixel.com/400/200 : image aléatoire en 400x200 pixels
http://lorempixel.com/g/400/200 : idem, mais en niveaux de gris
http://lorempixel.com/400/200/sports : idem, mais dans la catégorie "sports"
http://lorempixel.com/400/200/sports/Dummy-Text : idem, mais avec un texte affiché sur l'image

http://lorempixel.com/400/200 : image aléatoire en 400x200 pixels
http://lorempixel.com/g/400/200 : idem, mais en niveaux de gris
http://lorempixel.com/400/200/sports : idem, mais dans la catégorie "sports"
http://lorempixel.com/400/200/sports/Dummy-Text : idem, mais avec un texte affiché sur l'image
JSON Diff
Un petit outil en ligne pour afficher en couleur les différences entre deux JSON.
abnfgen - ABNF-grammar test case generator
Cet utilitaire permet de générer des cas aléatoires qui satisfont une grammaire ABNF donnée.
$ cat grammar.txt
ring = 1*12("ding" SP) "dong" CRLF
$ ./abnfgen grammar.txt
DInG DiNg doNg
ABNF (Augmented Backus-Naur form) est une notation permettant de décrire les règles syntaxiques d'un langage non-contextuel. Non-contextuel signifie ici que l'interprétation d'une variable ne dépend pas des éléments qui la précédent ou lui succèdent.
A noter que ABNF est la notation standard utilisée dans les RFC.
http://en.wikipedia.org/wiki/Augmented_Backus–Naur_Form

$ cat grammar.txt
ring = 1*12("ding" SP) "dong" CRLF
$ ./abnfgen grammar.txt
DInG DiNg doNg
ABNF (Augmented Backus-Naur form) est une notation permettant de décrire les règles syntaxiques d'un langage non-contextuel. Non-contextuel signifie ici que l'interprétation d'une variable ne dépend pas des éléments qui la précédent ou lui succèdent.
A noter que ABNF est la notation standard utilisée dans les RFC.
http://en.wikipedia.org/wiki/Augmented_Backus–Naur_Form
Regulex:JavaScript Regular Expression Visualizer.
Regulex, un outil pour visualiser les expressions rationnelles sous la forme d'automates

Gephi pour la visualisation et l'analyse de graphes
Un logiciel de visualisation et d'analyse de graphes appelé Gephi. Apparemment, ça supporte plusieurs types de graphes (dirigés, hiérarchiques, topologie variable au cours du temps) ainsi que des graphes de grandes tailles.

Générer un nom aléatoire - Fake Name Generator
Générer des utilisateurs aléatoires pour tester des applications, un peu dans le même genre que http://randomuser.me/ mais en plus sophistiqué.
EDIT : dans le même style, je viens de découvrir cette librairie python pour générer toutes sortes de données de tests.
http://www.joke2k.net/faker/
EDIT : dans le même style, je viens de découvrir cette librairie python pour générer toutes sortes de données de tests.
http://www.joke2k.net/faker/
Recoder
Encore un outil Java. Oui je sais, c'est le troisième en deux jours, mais en ce moment je bosse beaucoup sur Java et Android. Promis, après j'arrête un moment <<
Bref, Recoder est un parser très complet qui, à partir de code source ou de bytecode Java, est capable de construire un arbre syntaxique abstrait (AST). Cet AST peut être modifié à loisir et, détail fort intéressant, transformé à nouveau en code source.
Le support de Java 7 est en cours.
Bref, Recoder est un parser très complet qui, à partir de code source ou de bytecode Java, est capable de construire un arbre syntaxique abstrait (AST). Cet AST peut être modifié à loisir et, détail fort intéressant, transformé à nouveau en code source.
Le support de Java 7 est en cours.
Javassist
Javassist est une librairie d'instrumentation de code très puissante, permettant d'intégrer directement de nouvelles méthodes, classes, etc. directement dans des binaires java.
JD-GUI Java Decompiler
Un décompilateur d'archive java (.jar) terriblement efficace. Marche aussi plutôt bien avec les applications Android (.apk), une fois celles-ci passées à la moulinette dex2jar :
http://code.google.com/p/dex2jar/
http://code.google.com/p/dex2jar/
Framindmap
Un outil en ligne pour construire des cartes heuristiques (ou cartes mentales), par Framasoft.

Ce journal est basé sur Ginger, un gestionnaire de lien minimaliste développé dans le cadre d'un stage de perfectionnement. Pour plus d'informations, consulter le wiki consacré à mes projets personnels.