CppCheck a l'air d'être un utile pratique pour analyser statiquement du code C++. A intégrer à un Jenkins / Hudson, avec un nightly build des tests unitaires (+ tests d'intégrations automatisés ?) voilà qui serait pratique...
Ah ah ! Mais ça mon bon monsieur, c'est le but de "data minimization" qui découle d'un grand principe de la gestion de la vie privée (privacy) : data minimization.
L'idée de base de la data minimization c'est que l'on va utiliser / manipuler / envoyer / partager seulement les informations personnelles utiles à l'action voulue. Et on va faire en sorte que notre architecture système en ait besoin le moins possible. Exemple : pour un système de télépéage, plutôt que d'envoyer à chaque instant la position GPS du véhicule à un serveur centrale (afin que l'autoroute soit satisfaite), on laisse ces voitures stockées dans la voiture et on utilise un processus cryptographique sûr pour que l'usager et le système autoroutier soit satisfait.
Quant à data obfuscation, c'est un processus visant à réduire la teneur en information personnelle d'une donnée. Par exemple, si je m'appelle "Georges Müller", en fonction des cas, on va envoyer "G. M.", "G. Müller" ou "Georges Müller".
En appliquant ces deux principes au cas concrêt actuel : on cherche à réduire au maximum les informations personnelles à donner au gouvernement en cas d'injection, en ne leur fournissant que ce qui les concerne. La manière de la faire étant d’obscurcir ces données au niveau voulu.
Politiquement et administrativement c'est déjà bien difficile. Techniquement, c'est aussi un vrai défi ! Je travaille sur la question depuis plus de 2 ans dans le cadre du projet européen Societies (Un réseau social décentralisé et pervasif, c'est à dire qui utilise notre environnement. Site Web : http://ict-societies.eu/, code sur Github : https://github.com/societies/SOCIETIES-Platform mais attention, ce n'est pas un produit fini.). Dans ma boîte, Trialog (allez, un peu de pub : http://www.trialog.com/), on cherche notamment à créer des outils pour mieux gérer la protection de la vie privée dans différents domaines. Je me rappelle que lorsque j'étais stagiaire, je pensais résoudre ce problème en un tour de main. Mouahahah !
Reveal.js, un outils génial pour créer des présentations / diaporama dans un navigateur ! Simple à utiliser, paramétrable, présentations propres : que demande le peuple ?
Bien pratique pour créer des listes de choix pour LibreOffice calc.
Sélectionner une cellule : Données / Validités... Et choisir une plage de cellules à utiliser comme dropdown list.
ça me le fait à chaque nouvelle installation d'un ordinateur.
composer.bat install
You must enable the openssl extension to download files via https
Il faut activer l'extension PHP Openssl. Si on utilise Wamp par exemple, le menu de configuration permet de l'activer dans le php.ini dédié au page Web. Ici on cherche le php.ini pour l'accès en ligne de commande (CLI), il faut enlever le point-virgule devant la ligne ";extension=php_openssl.dll" dans "wamp/bin/php/php#.#.##/php.ini".
Eh, mais il y a une nouvelle version de poche, the self hosted read-it-later web app! La précédente version me plaisait bien... j'ai bon espoir d'apprécier cette refonte. Reste à voir s'il est possible d'y ajouter la gestion du hors ligne...
"When you use void as your return type Spring will by default try to determine the view name from your method name, unless it thinks you're directly writing the response (which it does when you have a HttpServletResponse as a parameter). Have a look at section 15.3.2.3 of the Spring 3 docs."
Rah ! Mais il faut vraiment lire tout StackOverflow pour lire ce genre de choses ? Ils ne sont pas fichu chez Spring de faire une usine à gaz avec une documentation et des exemples un peu clair non ? Mince, avec toute la doc qui existe, la base des bases restent tout de même inexpliqué...
Décidément, le Web en Java EE, ça m'énerve à chaque fois !
Franchement, le DOS, c'est pas une sacré prise de tête ?
Améliorer quelques peu les performances des logs en Java, ce n'est pas toujours à négliger.
J'en suis à la version 0.3.0 de Posibrain (anciennement TchatBot, attention l'url à changé), une petite implémentation de tchat bot en PHP. Pour l'instant , je m'intéresse surtout à faciliter l'environnement de développement et de déploiement : installation, utilisation, debug, choix et créations de "knowledge databases" pour les "cerveaux" des robots.
Les lecteurs d'Isaac Asimov reconnaîtront peut-être le lien entre Posibrain et les robots positroniques ! Et ne s'étonneront pas que R. Sammy (le tchat bot par défaut) soit légèrement stupide. Créer un cerveau et une base de connaissances pour Daneel Olivaw va être un vrai challenge :-)
Ne jamais, JAMAIS (jamais !) créer la méthode "connect" dans un QObject en Qt !
Je comprends enfin pourquoi ce fichu signal ne voulait pas se connecter à ce sacré slot ! Eh bah voilà : une méthode "connect" (censée, je cite, "Start the connection to the remote server") qui surcharge bien malencontreusement la méthode "QObject::connect" ce qui nous donne "error : no matching function for call to 'MyGreatObject::connect(AnOtherObject&, const char, MyGreatObject const, const char)'".
C'est bête hein ?
Rah!
QString de Qt : "Tant que l'objet est copié, passé en paramètre, .... l'objet n'est pas dupliqué (tous les objets pointes vers le même espace mémoire)."
Eh je ne savais pas que QString était un QSharedDataPointer ! Bien !
Pourquoi n'est-ce pas le cas des String en Java ? Sur un gros projet auquel je participe, des devs se sont "amusés" à concaténer crapuleusement des String Java. Et hop, une nouvelle instance de String à chaque fois ! La mémoire globale le ressent... et franchement, on n'avait pas besoin de ça !
Mon point de vue sur l'injection de dépendances en C++ : à la main ! Parce que pour l'instance, il n'y a pas de container suffisamment léger et non-intrusif.
Depuis que je suis obligé de jouer avec les repository "remote" avec Git (puisqu'on je suis sur un projet qui n'a pas encore de repository remote centralisé à la Github, donc on s'échange des des repository "bare" par email), je maîtrise bien mieux Git ! Et je comprends beaucoup mieux ce que signifie réellement un pull/push, même un commit et les 3 états possibles des fichiers locaux. C'est incroyable de souplesse ce système.
Mon petit passe-temps du moment : implémenter un tchatbot en PHP. Je me suis inspiré d'un petit projet existant (visant à reproduire ELIZA en PHP) et j’améliore, je modifie, je m'amuse. L'idée n'est pas de créer un tchatbot très intelligent (il n'y a même pas d'apprentissage pour l'instant) mais de voir jusqu'à où je peux aller comme ça.
C'est libre et distribué sous licence LGPL v2.1.
Je l'ai installé sur le minitchat de mon site (http://la-bnbox.fr/). Le mystérieux "Hari S." se met à parler lorsqu'on envoie un message commençant par "@Hari".
J'utilise assez souvent LINE ou FILE en PHP pour récupérer respectivement le numéro de la ligne courante, et le nom du fichier courant, et je savais que cela venait du C. Je n'avais jamais remarqué que ces macros existent donc aussi en C++. Pratique pour déboguer !
Ah ouais. Soit 3.58€ TTC, donc 42.96€ à l'année. C'est déjà dans les offres d'OVH et ça commence le 29 juillet : http://www.kimsufi.com/fr/
Je paye en ce moment une trentaine d'euros par an pour un hébergement mutualisé (chez 1&1) dont 3 noms de domaine (normalement 8.36€ par an chacun), chouette certes, mais je commence à en voir les limites. Vaut mieux que j'évite d'installer certaines extensions Wordpress par exemple, sous peine d'avoir des erreurs 500 sur tous mes sites...
La question est : saurai-je m'occuper d'un tel serveur, installer tout ce qui va bien ? Dois-je céder aux attraits de notre société de consommation (eheh) ? (30€ vs. 42.96€ + 8.36x3€)
(via http://lehollandaisvolant.net/index.php?mode=links&id=20130725203856)
Ahh ok, Firefox ne montre pas tout le contenu d'un flux RSS ! Donc ce n'est pas mon Wordpress qui a des soucis... D'ailleurs Leed arrive parfaitement à récupèrer le flux complet de mon blog.
Il est assez amusant de voir que la personne ayant raison dans ce thread "Samuel Wood" a quand même vraiment du mal à exprimer son point de vue !
Plusieurs exemples de loader en Unicode (et certains en ASCII). Voilà qui peut être utile quand on ne souhaite / peut utiliser d'image.
Quelques autres ici : http://textart4u.blogspot.fr/2012/03/loading.html
A voir en action : http://jsfiddle.net/CgkQJ/235/
Dire que je pensais que Smashing Magazine n'était plus très utile dans ma liste de flux... Comment monitorer son serveur, et beaucoup d'autres informations.