WasteBlasterz

Bonjour à tous,

Ce matin, je voulais vous parler de WasteBlasterz, un petit jeu développé par EDF Smart Electric Lyon et le studio Dowino, disponible sous Android et iOS.
Son sujet ? L’écologie.

En effet, vous devez chasser les wastivores, des petits monstres qui vivent grâce aux gaspillages des ressources. Pour éviter qu’ils ne réapparaissent à chaque nouvelle heure, il va falloir dépenser dans des améliorations énergétiques de la maison.
Par exemple, équiper les robinets de la maison en mousseur afin de réduire le gaspillage. Faire du composte, pour réduire les déchets.

Pour tuer les wastivores, il faut d’abord les trouver et les rendre visibles. Pour cela, il faudra répondre à des questions vastes mais toujours autour de l’environnement.

Bien sur, l’intérêt du jeu n’est pas dans la chasse aux wastivores, mais plutôt dans les connaissances apprises durant la partie.

Source : Numerama

Likes(0)Dislikes(0)

Robot aspirateur Neato XV Signature

Bonjour,

Ca fait quelques temps que je n’avais pas écrit sur ce blog. Et oui, la routine prend vite le pas et il est difficile de trouver du temps.
Aujourd’hui, je vais vous faire un petit article sur les robots aspirateurs et plus précisément le Neato XV signature que j’ai pu tester.

Tout d’abord, il est possible de programmer pour chaque jour de la semaine si on veut que le robot passe et si oui à partir de quelle heure.
Lorsqu’il se lance, il commence par faire le tour de la pièce, en aspirant en même temps, ou si elle est trop grande la découpe en plusieurs parties. Il fait des tours de la zone en allant de l’extérieur vers l’intérieur et dès qu’il trouve un obstacle l’évite. L’intérêt de cette façon de faire est qu’il ne fait pas de déplacement aléatoire. Ça permet d’avoir des déplacements plus efficaces et surtout être sûr qu’il passera partout. L’inconvénient est que si vous êtes dans la pièce et que le robot vous évite, il ne repassera pas par cet endroit. Il vous a considéré comme un meuble. 🙂

Point sympathique, lorsqu’il est à court de batterie, il note son emplacement et retourne à sa base par le chemin le plus court et non pas par là où il est passé pour nettoyer. Une fois chargé, il retourne là où il s’était arrêté dans son nettoyage et reprend son travail.

L’avant du robot est plat afin de lui permettre d’aller au plus près des coins et des plinthes, ce qui lui permet d’être plus efficace qu’un robot rond.

Avec le robot, il est fourni une bande magnétique, découpable, qui permet d’empêcher au robot de passer là où elle se trouve. Sa forme lui permet d’être glissée sous une barre de seuil pour lui bloquer l’accès à une pièce.

Point négatif, le bruit ! Lorsqu’il se lance, il fait autant de bruit (voir un peu plus) qu’un aspirateur classique et il est plus lent qu’un humain. Ce qui fait que le bruit dure plus longtemps.
Il n’aime pas les câbles, les tapis avec des franges et les espaces qui font sa largeur. Pour les deux premiers, il se prend dedans et reste bloqué. Pour le dernier, il avance mais n’arrive pas à sortir car il cherche à faire demi-tour et reste bloqué.
Concernant les câbles ou les franges de tapis, lorsqu’il sent une résistance dans la brosse, il s’arrête au lieu de forcer, ce qui fait qu’il est très facile de le débloquer. On n’a pas à démêler des câbles enroulés dans la brosse. On a juste à le soulever et tirer, doucement, sur le câble pour le retirer.

Tous les soirs où le robot fonctionne, il faut penser à vider le bac pour éviter des pertes d’aspiration et donc qu’il force sur le moteur. Ca va vite et ça permet de vérifier qu’il ne tourne pas pour rien.

En résumé, malgré son prix, je trouve que ce robot est un bon investissement qui vous fera gagner pas mal de temps pour l’entretien de la maison. Mais, pour son efficacité et votre tranquillité, je vous le conseille si vous n’êtes pas à la maison lorsqu’il fonctionne, où tout du moins pas dans la pièce où il travaille.

Likes(0)Dislikes(0)

Peut-on être productif avec Android ?

Bonjour à tous,

Cela fait maintenant plusieurs années que j’utilise Android. Principalement sur smartphone mais aussi sur tablette. Or j’ai toujours vu mes appareils Android comme des systèmes de loisirs (vidéos, jeux, livre, BD…) mais jamais comme un outil de travail ! Enfin mis à part pour les mails et les news pour faire ma veille mais ça ne va pas plus loin.

Dernièrement je ne publie pas beaucoup sur ce blog. La raison principale est tout simplement le manque de temps. Je passe beaucoup de temps dans les transports et le reste du temps, soit je travaille, soit j’avance mes projets personnels. Et justement, parlons en de ce temps perdu dans les transports : j’ai fini par me demander si je ne pouvais pas l’optimiser d’une meilleure manière, en reprenant la rédaction des billets de ce blog par exemple ?

Lire la suite

Likes(2)Dislikes(0)

Archos Gamepad 2

Bonjour à tous,

Il y a quelques temps maintenant, Archos sortait la version 2 de sa tablette gaming : la Gamepad. Il s’agit d’une tablette Android au design de PSP. Et comme j’ai eu la chance d’en recevoir une à Noël (2014 si ma mémoire est bonne), il était tant que j’en fasse un petit retour.

Lire la suite

Likes(0)Dislikes(0)

Architecture micro-services

Bonjour,

Comme je vous disais dans l’article sur Hateoas, je vais maintenant vous parler de l’architecture micro-services. Nous verrons les points communs et les différences avec les autres types d’architecture.

Les points communs

L’architecture micro-service se base sur MVC (pour Model View Controller ou en français : Modèle Vue Contrôleur).
Sur ce point, pas de révolution, votre application aura toujours une partie pour l’accès aux données (Modèle), une partie qui sera le point d’entrée de votre application (Contrôleur) et la partie pages web (Vue).

Comme toute architecture, elle n’est pas liée à un langage particulier mais représente une façon de faire applicable à tout type de langage (sauf exception).

Les différences

Première différence, le contrôleur n’est pas un contrôleur web standard mais le plus souvent un contrôleur REST (basé sur les webservices de type REST).
Ca permet de renvoyer des pages html entières ou directement des flux json à la vue.

Deuxième différence, et la plus importante à mon avis, la responsabilité des contrôleurs.
Chaque contrôleur doit avoir une et une seule responsabilité. C’est-à-dire, gérer un seul type d’objet que ce soit pour la création, modification, affichage ou suppression. Et chaque fonction du contrôleur ne doit faire qu’une seule chose (l’ajout par exemple).

Si lorsque vous ajoutez un nouveau produit, vous souhaitez avoir la liste mise à jour, vous devrez faire deux appels au serveur. Le premier appel permettra l’ajout du nouveau produit et lorsque le retour est « Création OK », alors vous faites le deuxième appel au serveur qui lui servira à renvoyer la liste de tous les produits.
Si vous avez lu l’article précédent sur Hateoas, vous voyez l’intérêt de coupler ces deux notions. Ainsi le niveau de maturité 3 que représente Hateoas vous permettra de communiquer plus en détail avec le serveur et ainsi pouvoir découper vos actions de façon minimaliste.

Souvent avec les micro-services, les gens ne savent pas bien découper le travail et mélange les différentes actions dans une même fonction d’un même contrôleur. L’inconvénient est que la maintenance et les évolutions seront plus chères car plus compliquées.
En découpant de façon minimaliste la responsabilité d’une fonction (ce qu’elle doit faire), vous diminuez sa complexité et donc le cout de sa maintenance.
Imaginons que vous avez une fonction qui renvoie tous les produits et les sous-catégories, car vous n’avez pas respecté les micro-services. Maintenant il faut que vous ne renvoyez plus les sous-catégories car le client ne les veux plus dans cette page. Vous devez modifier plusieurs parties de votre fonction, ce qui augmente le risque de régression et d’impacts sur d’autres pages.
Dans le cas des micro-services, vous n’avez juste qu’à supprimer l’appel aux sous-catégories dans le javascript. Le risque de régression étant quasiment nul et la complexité pareil (sauf si votre JS est mal codé 🙂 ).

Troisième point, votre architecture coté serveur ressemble à vos urls.
C’est-à-dire que si vous avez store/product/ dans votre url, vos packages cotés serveurs auront la même architecture.
Cette logique est identique coté javascript si vous utilisez un framework du type angular.
L’avantage est que même sans connaitre l’architecture du projet, vous pouvez vous y retrouver facilement coté serveur si on vous a donné l’url de la page à modifier ou inversement si vous savez où est le contrôleur.

Voilà, c’était une petite présentation sur l’architecture micro-services, qui j’espère vous donnera l’envie d’en savoir plus et pourquoi pas de la mettre en place sur vos nouveaux projets (modifier l’architecture d’un projet déjà existant est souvent long, compliqué et couteux).

Likes(0)Dislikes(0)