angularjs-yeoman.png

Vous souhaitez démarrer le développement d'un projet AngularJS mais vous ne savez pas vraiment par où commencer ....

Allez jeter un oeil sur le générateur de code AngularJS basé sur Yeoman.

En quelques commandes shell vous pourrez ainsi créer un projet avec tout le nécessaire pour éviter de perdre du temps. Si vous êtes sous Windows, vous pouvez utiliser la console Bash fournie par Git for windows.

Installation de yo, grunt-cli, bower, generator-angular and generator-karma, cette commande nécessite d'avoir NPM d'installé sur son environnement :

npm install -g grunt-cli bower yo generator-karma generator-angular

Création d'un nouveau répertoire projet :

mkdir my-new-project && cd $_

Lancement de yo angular avec en paramètre optionnel le nom du projet :

yo angular [app-name]

Si vous choisissez SASS comme solution de feuille de style, vous devrez préalablement installer Ruby et SASS sur votre environnement de développement.

Démarrage de Grunt pour la compilation et la fourniture d'un serveur Web pour prévisualiser le live les développements :

grunt serve

Vous voilà servi ! Mais cela ne s'arrête pas là !

hipster-logo.png

Si vous êtes un Javaïste intéressé par AngularJS et que vous souhaitez aller plus loin, je vous invite fortement à aller découvrir le projet JHipster sur GitHub. Il permet de générer des projets CRUD AngularJS sur la base d'un modèle de données défini dans la couche de service Java. L'avantage de JHipster est qui vous permet de générer à la fois les écrans de votre application, les webservices et la couche de persistance. Il offre un gain de temps énorme pour démarrer des projets AngularJS en front et Java en back.

chrome-extension.jpg

Vous utilisez assez régulièrement des proxy pour surfer sur Internet ? Vous trouvez comme moi que l'activation de proxy n'est pas simple depuis l'interface de Chrome ?

Voici un plugin Chrome qui vous simplifiera la configuration de l'utilisation de votre proxy au sein de votre navigateur. Il s'agit de Proxy SwitchyOmega noté 4.68 étoiles sur 5 sur le Webstore et utilisé par pas moins de 280 000 utilisateurs.

Il vous permet de changer rapidement de configuration de proxy soit de manière automatique en fonction de certaines règles configurables, soit de manière manuelle en cliquant tout simplement sur le bouton du plugin présent dans la barre de navigation.

switchyomega.jpg

Plugin à installer si vous ne l'utilisez pas déjà.


Crédits photo Tsahi Levent-Levi

asus-zenpower.jpg

J'ai testé pour vous l'ASUS ZenPower et l'ASUS Lolliflash, les deux derniers gadgets commercialisés avec l'Asus Zenphone 2 fonctionnant sous Android.

L'ASUS ZenPower offre une solution de secours en cas de panne de batterie, vous pouvez l'utiliser pour recharger en 1 et 3 fois votre Smartphone directement depuis votre sac. Très pratique le matin quand la batterie de votre téléphone est à plat et que vous avez 1h de transport devant vous. Il est compatible avec l'ensemble des terminaux du marché pouvant être chargés avec une prise USB.

Il possède un câble mini-USB pour recharger sa batterie de 10050 mAh (oui tout de même) et 11 fonctions de sécurité pour éviter tout problème de surchauffe.

D'apparence, il semble assez robuste, sa coque en aluminium lui donne un style raffiné. Il est testé pour pouvoir tenir plus de 5000 cycles de recharge et possède 6 certifications au niveau international. Sa batterie offre une puissance de sortie de 2.4 A. Quant à son prix, comptez 39,90€

asus-lolliflash.jpg

L'ASUS Lolliflash est une torche avec des lampes LED au Xenon permettant de prendre des photos et des vidéos de qualité dans des endroits sombres avec votre téléphone.

Il est livré avec 3 filtres de couleurs et possède 3 niveaux d'intensité variables configurables via un petit bouton présent sur sa coque. Il peut être rechargé en USB via sa prise mini-USB. Son utilisation peut se faire à la main, il est aussi possible de le connecter sur la sortie jack du téléphone via son embout plastique.

Il est compatible avec tous les terminaux du marché. De taille réduite, il peut être emmené partout, faites attention juste à ne pas perdre les précieux filtres. Comptez 19,99 € pour cet accessoire qui ravira les utilisateurs d'Instagram.

3g-modem-huawei.jpg

Vous avez un Raspberry Pi sous la main ainsi qu'un modem 3G équipé d'une SIM Free à 0 euro avec SMS illimités ? Voici en quelques clics comment fabriquer une gateway SMS.

Installation de Node-Red

La première étape consiste à installer NodeJS et Node-Red sur votre Raspberry Pi. Pour cela vous pouvez suivre le tutoriel suivant qui a très bien fonctionné sur mon environnement :

http://nodered.org/docs/hardware/raspberrypi.html

node-red-screenshot.jpg

Installation de Gammu

Ensuite, installez Gammu SMS pour pouvoir transmettre très simplement des commandes d'envoi de SMS à votre modem :

$ sudo apt-get install gammu
$ sudo apt-get install gammu-smsd

Identifiez sur quel port fonctionne votre modem :

$ sudo gammu --identify

Si vous souhaitez donner un petit nom à votre modem dans le "/dev" pour pouvoir l'identifier plus facilement, vous pouvez configurer une entrée dans le fichier "/etc/udev/rules.d/99-com.rules". Utiliser la commande "lsusb" pour obtenir les détails du périphérique (idVendor / idProduct).

ACTION=="add", ENV{ID_BUS}=="usb", ATTRS{idVendor}=="12d1", ATTRS{idProduct}=="1003", SYMLINK+="tty3GModem"

Modifiez la configuration de votre démon Gammu-sms "/etc/gammu-smsdrc" en n'oubliant pas de préciser terminal USB qui correspond à votre modem :

# Gammu library configuration, see gammurc(5)
[gammu]
port = /dev/tty3GModem
connection = at19200
model = at

# Debugging
#logformat = textall

# SMSD configuration, see gammu-smsdrc(5)
[smsd]
service = files
logfile = syslog

# Increase for debugging information
debuglevel = 0

# PIN code
pin = 0000

# Paths where messages are stored
inboxpath = /var/spool/gammu/inbox/
outboxpath = /var/spool/gammu/outbox/
sentsmspath = /var/spool/gammu/sent/
errorsmspath = /var/spool/gammu/error/

Redémarrer votre démon Gammu :

sudo /etc/init.d/gammu-smsd restart

Testez l'envoi d'un SMS :

$ sudo gammu-smsd-inject TEXT 0666666666 -text "Test"

En cas de non réception du SMS, vérifiez le syslog du système :

$ sudo less /var/log/syslog

Maintenant que votre modem SMS fonctionne, offrez les droits en lecture à votre pool SMS à l'utilisateur exécutant NodeRed :

$ sudo usermod -a -G gammu pi

Allez ensuite sur votre Interface Node-Red pour configurer de nouveaux flows.

Détecter la réception de nouveaux SMS

La réalisation d'un "flow" Node-Red capable de détecter la présence d'un nouveau fichier (ici un SMS), de lire son contenu et d'en extraire le numéro de téléphone de l'émetteur est très simple à réaliser :

<img src="http://static.geeek.org/public/domotique/.sms-inbox-nodered_m.png" alt="sms-inbox-nodered.png" style="display:block; margin:0 auto;" title="sms-inbox-nodered.png, août 2015" />

  • Node "SMS Inbox" : Vérifie la présence de nouveaux fichiers dans le répertoire "/var/spool/gammu/inbox"
  • Node "Set msg.filename" : Positionne la variable msg.filename dans la variable msg.payload pour le noeud file.
  • Node "SMS content" : Lit le contenu du fichier SMS reçu, le chemin du fichier provient du msg.payload fourni en entrée du noeud.
  • La fonction spécifique extrait du fichier le numéro de téléphone de l'envoyeur et supprime les propriétés inutiles.
msg.phone =  msg.filename.match(/(\+[0-9]*)/)[1];
delete msg.filename;
delete msg.topic;
delete msg.file;
delete msg.type;
return msg;

A chaque nouveau SMS reçu vous pouvez ensuite déclencher un événement spécifique : envoi d'email, de SMS, réaliser une action sur un Karotz, ouverture de volets, de portails ....

Webservice d'envoi de SMS

Une fois Gammu fonctionnel sur votre Raspberry Pi, la réalisation d'un Webservice REST pouvant transmettre rapidement des messages est aussi très simple à réaliser :

<img src="http://static.geeek.org/public/domotique/.webservice-sms-nodered_m.jpg" alt="webservice-sms-nodered.jpg" style="display:block; margin:0 auto;" title="webservice-sms-nodered.jpg, août 2015" />

  • Node "get /sendsms" : Ce noeud expose un Webservice de type GET prenant un paramètre "phone" et un paramètre "msg".
  • Node "Prepare command" : Ce nœud prépare la commande Gammu-inject-sms à partir des arguments en entrée du service. Attention aux injections de shell possibles, une vérification du contenu doit être réalisé pour éviter toute possibilité d'injecter du shell.
gammu-smsd-inject TEXT "{{payload.phone}}" -text "{{payload.msg}}"
  • Node "Exec Gammu" : Exécute la commande préparée par le template injectée dans le msg.payload.
  • Node "Check result" : vérifie la présence de la chaîne suivante : "Created outbox message"
  • Node "OK / KO / HTTP Response" : Retourne en réponse HTTP de type 204 ou 501 en fonction du bon envoi du message par Gammu.

Vous voilà en possession d'un Webservice que vous allez pouvoir intégrer à d'autres scénario de domotique plus complexes. Si vous souhaitez enregistrer le contenu des SMS, vous pouvez utiliser une base MongoDB, le connecteur Node-Red est extrêmement simple à utiliser.

Chromecast.jpg

Vous rêviez d'acheter une ChromeCast ? Voici une bonne occasion proposée par PriceMinister !

1 ChromeCast + 5 films à 21.99€ grâce au code promo : CHROME

Les 5 films proposés :

  • Rango
  • Zoolander
  • Le parrain 2
  • Amercian Beauty
  • Les Incorruptibles

Le prix du marché des 5 films et de la Chromecast est de 84.94€ , soit 62.95€ d’économie!

Le coupon de 3€ de réduction est valable sur l’offre : "5 films cultes + un chromecast offert"

L'offre est valable dans la limite des stocks disponibles. Il reste encore beaucoup de ventes à retirer, mais dépêchez-vous, lors de la dernière offre 500 Chromecast sont parties en 48h.

Voir l'offre sur PriceMinister.

Official_Litecoin_Logo.png

Après une montée en flèche de 1,30€ à 8€ en quelques semaines, le Litecoin est redescendu à 3/4€ il y a quelques jours.

Pour ceux qui ont suivi mon précédent article sur le Litecoin, j'espère fortement que vous avez acheté à 1,3€ et revendu à 8€ vos Litecoin, si c'est le cas n'hésitez pas à me laisser un petit commentaires. Pour tous ceux qui ne m'ont pas cru, n'hésitez pas non plus à me laisser un commentaire ;-)

Je pense que le Litecoin peut encore monter d'ici les 30 prochains jours avec l'approche du halving. Wait and see !

node-red-logo.jpg

Je suis tombé amoureux d'un logiciel OpenSource développé par IBM : Node-RED.

Node-Red est un serveur Web consommant peu de ressources, capable de fonctionner sur un Raspberry Pi qui permet très rapidement de concevoir et déployer des scénarios d'automatisation dans sa maison. Ce progiciel que je trouve excellent a rendu tous mes développements sur mon projet Domogeeek totalement désuets.

Il permet en quelques clics de créer des scénario plus puissants que toutes les box domotiques du marché. Toutes les fonctions / connecteurs mis à disposition de l'outil sont adaptables facilement, il est aussi possible de créer ses propres modules, bref c'est un régal !

Je me suis basé sur ce produit dans le cadre de la réécriture de mon projet Domogeeek, j'utilise aussi un broker MQTT pour l'échange de messages entre les composants et j'utilise mon connecteur Z-wave vers MQTT pour permettre à ma domotique de communiquer avec le serveur Node-Red.

J'ai récemment réécrit mon scénario d'ouverture et de fermeture de mes volets, tout cela s'est fait en 5 minutes environ. Voici le scénario :

  • Ouverture des volets à 9h du lundi au vendredi et 10h le week-end.
  • Fermeture 20 minutes après l'heure du coucher de soleil.
  • Pendant les mois d'été, fermeture en début d'après-midi jusqu'à 19h sauf le week-end.

Voici maintenant à quoi mon scénario ressemble :

node-red-shutters.jpg

Le module bleu "Scheduler" est opensource et récupérable depuis le site de Peter Scargill.

Les composants "Open Shutters" et "Close Shutters" sont justes des appels HTTP aux API de mon Arduino que j'utilise pour commander mes volets.

Si vous avez quelques minutes et Nodejs d'installé sur votre PC, voici comment installer Node-Red :

$ sudo npm install -g node-red
$ node-red

Pour installer Node-Red sur votre Raspberry Pi, vous devriez suivre le tutoriel suivant : http://nodered.org/docs/hardware/raspberrypi.html

Happy Hacking !

Aussi incroyable que cela puisse paraître, Geeek.org fête ses 10 ans !

Ceci est un petit clin d’œil à toutes les personnes qui pensaient que Geeek ne vivrait que quelques mois comme 99% des blogs de l'époque ;-)

Merci à vous tous de suivre ce blog qui restera encore un blog durant de très longues années je l'espère. Le volume de billets publié a largement diminué au cours de ces années pour je l'espère des articles originaux plus intéressants que vous ne retrouverez sur aucun autre blog que Geeek, c'est satisfait ou remboursé !

J'ai créé Geeek quand j'avais 24 ans ... J'en ai aujourd'hui 34, je suis papa, j'ai une maison ... Ma vie a bien changée en 10 ans et les technologies aussi !

Quelques chiffres clés :

  • 4 030 billets
  • 21 566 commentaires
  • 10 millions de pages vues

A bientôt !


Crédits photo : Christophe Verdier

Official_Litecoin_Logo.png

Le Litecoin est une cryptomonnaie aujourd'hui moins connue que le Bitcoin, elle devrait diffuser à terme 84 millions de Litecoins soit 4 fois plus de monnaie que le Bitcoin qui a prévu d'en diffuser 21 millions.

Elle a été lancée 2 ans après le Bitcoin par un ancien employé de Google, Charles Lee. Il s'agit en fait d'un fork de l'application Bitcoin, avec un choix d'algorithme différent basé sur du Scrypt au lieu du SHA-256 retenu par Bitcoin.

La capitalisation actuelle du Litecoin dépasse actuellement de 70M $USD, faisant d'elle la troisième monnaie après le Bitcoin et le Ripple. Pas mal non ?

Dans 91 jours s'annonce un événement important dans l'histoire du Litecoin, le réseau ne distribuera plus que 25 Litecoins à chaque bloc trouvé (groupement de transactions) par le réseau de minage au lieu des 50 Litecoins actuellement distribués. Cela s'appelle un "Halving".. Le halving suivant est prévu pour 2023, baissant à 6,25 Litecoin par bloc trouvé par les mineurs.

Ce déséquilibre devrait jouer en faveur de l'inflation de cette cryptomonnaie. L'inflation devrait être beaucoup moindre que l'inflation qu'a connue le Bitcoin il y a 2 ans en dépassant les 1000$ USD, mais celle-ci devrait être suffisamment importante pour permettre aux possesseurs actuels de Litecoin de faire un x2, x5 ou x10 ou plus de leur mise ....

Le cours du Litecoin est actuellement à 1,6€, il vient de prendre 30 centimes en une nuit ... Reste à voir s'il atteindra le 30€ comme en décembre 2013. Si celui-ci était aussi populaire que le Bitcoin, on pourrait imaginer qu'il atteigne un quart du prix du Bitcoin, soit actuellement environ 50€. Mais ce ne sera pas le cas, je pense qu'il faudra miser sur une valorisation de 3€ à 20€ le Litecoin d'ici 91 jours.

Ensuite deux scénario pourront se produire :

  • Soit l'inflation a suivi le coût de la production des mineurs, dans ce cas la capacité de calcul du réseau ne baissera pas, il pourrait même augmenter si l'inflation est importante.
  • Soit l'inflation est inférieure à x2, dans ce cas il y a de fortes chances que les mineurs arrêtent de miner car il n'y aura plus de rentabilité au minage. Le nombre de mineurs diminuant, la difficulté de minage devrait elle aussi diminuer jusqu'à atteindre un équilibre permettant aux mineurs les mieux équipés de gagner de l'argent.

Wait and see ... Si vous souhaitez acquérir des Litecoin, j'avais publié un article il y a plus d'un an sur le sujet et si vous souhaitez découvrir le minage de Litecoin, je vous encourage à faire un tour sur mon pool de minage Altmine.co. Mais attention, sans carte graphique performante ou matériel spécifique, vous ne pourrez pas miner grand-chose ...