Des robots pour tricher aux jeux sur tablette

ipad-leap-sheep-robot
Certains joueurs et inventeurs rivalisent parfois d’ingéniosité et c’est le cas avec ce robot à base d’arduino, de moteurs, de capteurs et de stylets pour tablette qui est capable de jouer au jeu Leap Sheep.
Dans ce jeu il faut faire passer des moutons au-dessus d’une barrière lorsqu’ils arrivent devant la barrière ce qui est un jeu relativement facile … Le robot utilise les capteurs de luminosité pour détecter la couleur blanche des moutons et donc appuyer les stylets sur la tablette aux bons moments ; c’est relativement simple et possible parce que les moutons passent toujours aux mêmes endroits …
Ci-dessous une vidéo du robot qui joue à Leap Sheep :

Ce n’est pas la première fois que je vois un robot jouer sur une tablette, ci-dessous une vidéo d’un robot à base de Lego Mindstorms qui joue à Clash of Clan :

Quand verra-t-on une vidéo d’un robot qui joue à Candy Crush Saga (c’est tout de mêle plus difficile) ?

Apprendre à développer en quelques mois, vraiment ?

android-growth-chart
Les besoins de développeurs informatique sont très importants aux Etats-Unis, portés par notamment par les croissance des OS de téléphones mobiles et par le fait que certains sociétés telles que Google, Facebook, Twitter etc … placent leurs réalisateurs de logiciels au niveau de stars …
De plus les salaires de bons développeurs aux Etats-Unis sont à une moyenne de 90 000 $ / an ce qui est argument suffisant pour attirer nombre de candidats à la reconversion …
C’est dans ce contexte qu’apparaissent Outre-Atlantique de plus en plus de “Coding Bootcamps” qui sont des formations intenses de quelques mois pour apprendre un langage de développement (Android, iOS, html5, php, java …) ; chaque formation a sa spécialité et certains de ces cursus se vantent d’avoir un taux d’embauche suite à la formation de 85 % … Ce taux est alléchant mais il ne faut pas oublier que la sélection a l’entrée est très difficile (jusqu’à plusieurs milliers de demandes pour moins d’une centaine de places disponibles parfois) et coûte plusieurs milliers de dollars …
Si la formation donnée peut permettre d’être opérationnel dans un langage donné, il ne faut pas croire que cela transforme les élèves en développeur à vie … En effet, en quelques mois, ils peuvent développer dans un langage et pourront satisfaire ponctuellement un employeur sachant qu’une mission de développement dure rarement plusieurs années et qu’il est facile de licencier aux Etats-Unis. En plus de connaître un langage, il faut aussi maîtriser le travail en équipe car l’une des phases la plus délicate de réalisation d’un logiciel est la phase d’intégration ; plus le développeur aura documenté et expliqué ses API et discuté avec les autres développeurs, moins les risques ‘”d’explosion” lors de la mise en commun des différentes parties du logiciels seront importants.
De plus il faut éviter de tomber dans certains pièges liés à la réalisation de code (ce qui peut parfois s’apparenter à une réalisation artistique ; en tout cas en développant, j’ai réellement l’impression de créer …) :

  • vous en serez pas le seul ou la seule à lire, utiliser ou maintenir votre code ; il faut donc le documenter et éviter la factorisation à outrance pour rendre le code facile à maintenir
  • moins il y a de lignes de codes moins il y a le risque de bogues ; c’est en grande partie vrai mais si le code est trop compliqué ou trop factorisé, il sera difficile à maintenir (même pour vous si vous le reprenez plusieurs mois après l’avoir écrit), il faut donc trouver le bon compromis entre efficacité, quantité et qualité
  • ne jamais négliger les tests unitaires et les tests de non-régression (si possible automatiques …)
  • le mieux peut parfois être l’ennemi du bien ; en effet, le code peut quasiment toujours être optimisé et donc on peut vite déborder de ses objectifs en essayant de rendre la meilleure copie possible …

Cela signifie aussi qu’il faut maîtriser les outils de gestion de configuration (ClearCase, git …) pour faciliter l’intégration et le suivi des sources et savoir s’adapter car il est très difficile d’avoir des spécifications détaillées d’un logiciel (et des spécifications qui ne changeront pas en cours de développement) comme on pourrait avoir les plans d’une maison … C’est un des inconvénients du développement, il n’y a pas de solution miracle, il faut faire avec (même lorsque l’on adapte des normes qui sont pourtant figées à la publication, ce que l’on en fait peut changer).
Les missions de développement sont généralement de quelques mois et pendant ce laps de temps il faut savoir s’adapter (nouvelles spécifications, nouvelles interfaces, nouveaux outils) ; il est donc très important de rester toujours en veille …
Si ces formations accélérées arrivent en France, ce n’est pas sûr qu’elles soient adaptées au marché du travail car on mise plus sur le potentiel du développeur et sa capacité à s’adapter sur des plusieurs missions de courtes durées en CDI (alors qu’aux Etats-Unis on peut licencier à la fin de la mission).
Je code à temps plein depuis 1996 et je ne cesse d’apprendre pour rester au niveau ;  donc faire miroiter des expertises à des élèves en quelques mois, je reste tout de même sceptique …
Plus d’informations (en anglais) : ReadWrite

Franchir les escaliers, un grand défi de la robotique

asimo_escaliersOn voit de plus en plus de robots domestiques arriver sur le marché et la plupart sont équipés de roues ou de roulettes ; et à chaque fois je regarde l’environnement dans lequel je me déplace et je me rends compte que ces robots ne sont pas en mesure de franchir des paliers ou des escaliers.
L’état français a fait de la robotique un des projets d’avenir pour lequel des budgets importants seront débloqués alors avant de réfléchir robot global, pourquoi ne pas y aller par étape et investir dans deux composants indispensables aux robots de demain :

  • le franchissement de paliers ou d’escaliers (le robot Asimo le réalise mais à quel prix)
  • la reconnaissance dynamique de l’environnement

Pour franchir les obstacles, il faut calibrer les algorithmes de gestion des centrales d’inertie, activer correctement les moteurs et déplacer le robot ; les actions sont quasiment toujours les mêmes si on utilise des robots bipèdes.
Lorsque ces deux obstacles seront franchis, les fondations des robots de demain seront établies (équivalent au laser au-dessus des Google Cars) ; ensuite d’autres éléments pourront venir se greffer en fonction des usages des robots : connexion internet, manipulation de l’environnement (ouverture de portes par exemple), commande à distance, détection d’individus …
Dans les challenges DARPA, ce sont deux fonctionnalités difficiles à réaliser et pour lesquels les équipes passent beaucoup de temps …
Espérons que ces fonctionnalités seront bientôt génériques et facilement intégrables (comme des composants classiques …).
 
 

Un Hackathon pour les Google Glass

glasscamp-LOGO6
 
 
 
 
 
 
 
 
Je n’ai pas encore eu l’occasion de tester les Google Glass surtout le coté programmation (c’est un comble pour moi …) ; j’ai été très proche d’en manipuler chez Niji à Rennes (Niji est d’ailleurs partenaire du hackaton).
Avec les smartwatches, les lunettes connectées sont le domaine le plus prometteur des “wearable devices” et Google est un précurseur dans le domaine avec un temps d’avance technologique ; mais la technologie ne fait pas tout et il est impératif de travailler sur les usages.
Les usages et applications sont d’ailleurs au coeur du hackaton Google Glass qui se déroule pendant le week-end des 17 et 18 Janvier 2014 à Paris.
Pendant ce week-end des idées intéressantes on vu le jour :

  • possibilité de trouver une station de vélo en location à proximité
  • enregistrement d’une démo en classe
  • allumer une lampe à l’aide des lunettes (je pense que je saurais faire avec des Belkin Wemo ou des lampes Hue de Philips)

La date de disponibilité des Google Glass n’est pas encore connue et il n’est pas encore sûr que Google déploie les lunettes à grandes échelles (cela dépendra forcément du prix).
Plusieurs milliers de Google Glass ont été distribuées dans le monde entier (les premiers kits avec lunettes + interface de développement coûtaient quand même environ 1500 €). Il faudrait un effet de mode comme pour les téléphones mobiles il y a 15 ans (à l’époque on trouvait bizarre de voir des gens se promenant en téléphonant).
Ce nouveau genre de lunettes ne fait pas l’unanimité et certains restaurants ont d’ores et déjà annoncé qu’ils refusaient les Google Glass, de peur d’atteinte à la vie privée. Récemment aussi une automobiliste s’est vu infliger une amende car elles conduisait en portant les lunettes (même si cette décision a été annulée).
En tout cas moi je voudrais bien les essayer ces lunettes de technomaniac …

Avec iBeacon, la géolocalisation précise se démocratise

ibeacons
Grâce au Bluetooth 4.0 Low Energy (BLE) ainsi que les nouvelles API iBeacon qui sont apparues avec iOS 7.0, il est maintenant possible de déployer des bornes Bluetooth avec une grande autonomie et un faible coût. Ainsi par triangularisation, il est possible de connaître à quelques centimètre près la position du téléphone de l’utilisateur.
Outre l’utilisation pour du marketing de proximité, la géolocalisation précise de l’utilisateur peut, en conjonction avec une application spécifique, être utilisée pour :

  • recevoir des informations multimédias liées à tout type de ressources, lieux, objets (cela peut aller de la salle de réunion, à des informations sur un tableau dans un musée)
  • indiquer sa présence (checkin) à l’intérieur d’un batîment
  • guider des robots dans un batîment
  • envoyer automatiquement un menu dans un restaurant (et pouvoir passer commande aussi)

Le faible coût des bornes et leur durée de vie (certains produits peuvent fonctionner pendant 2 ans) vont faciliter l’adoption de cette technologie qui en fera oublier les contraintes en faveur des usages.
En intérieur, la technologie pourrait être utilisée pour personnaliser automatiquement l’environnement en fonction de la position de l’utilisateur : lumière, ambiance musicale, diffusion de photos personnalisées sur des écrans …
Bien entendu il ne faut pas non plus que cela soit déployé partout sinon en ville, les notifications risqueraient d’être nombreuses …
A mon avis, les usages de cette technologie vont se multiplier, les premières mises en service d’ampleur commencent aux Etats-Unis.
Apple a récemment déployé cette technologie dans 254 de ses Apple Store aux Etats-Unis ; pour pouvoir en profiter, il est impératif de disposer d’un téléphone ou d’une tablette supportant Bluetooth 4.0 (à partir de l’iPhone 4S dans la gamme Apple).
 
 
 

Rachat de Nest par Google, le mobile au centre de la maison

nest_seven_forty_five_am
 
 
 
 
 
 
 
 
 
 
 
Les investissements de Google peuvent parfois paraître incompréhensibles mais parmi ceux réalisés ces derniers temps, je pense que le rachat de Nest Labs est le plus logique.
En effet le téléphone mobile est maintenant un objet personnel communicant que chacun porte sur soi quasiment tout le temps et qui permet de nous identifier ; alors pourquoi ne pas utiliser ces propriétés pour personnaliser l’environnement de la maison suivant les utilisateurs présents : le chauffage pourrait augmenter doucement lorsque le propriétaire approche de la maison, la lumière et les ambiances lumineuses s’allument lorsqu’un téléphone est détecté à proximité …
Ces fonctions pourraient ainsi rendre les smartphones, et donc Android, encore plus indispensable et peut-être lui donner une longueur d’avance sur iOS (qui met en avant quelques technologies telles que les lampes Philips Hue et le thermostat Nest).
Si on ajoute à ces équipements de la géolocalisation interne précise du type de celles proposées par iBeacon avec iOS7 et des commandes de prise comme les Wemo de Belkin, on obtient un système domotique quasiment complet et personnalisable en fonction de l’heure ou de la saison. On pourrait même aller jusqu’à moduler la lumière intérieure en fonction de la météo puisque les smartphones peuvent s’abonner à des services météo …
Tout cela sera donc bientôt possible à condition de toujours garder son téléphone à proximité …
 
 
 

Premier round Smartwatch : Samsung va dévoiler la Galaxy Gear


 
 
 
 
 
 
 
 
 
 
Toujours en quête d’innovation et cherchant à devancer Apple, il semble que la société Samsung s’apprête à dévoiler une montre intelligente (Smartwatch par comparaison aux Smartphones). Cette montre dont de nombreux designs possibles circulent sur internet pourrait tourner sous Androïd et avoir un écran incurvé …
Il y a fort à parier que cette montre pourra se connecter à votre smartphone et recevoir différentes notifications (SMS, mail, tweet …) ou effectuer certaines actions (jouer de la musique notamment ) ; cela sera certainement possible en utilisant une connexion Bluetooth …
La plupart de ces fonctionnalités existent déjà dans des montres évoluées (la smartwatch de Sony par exemple) aussi j’attends de réelles innovations dans ce nouveau type de montre notamment le support de fonctions de tracking d’activité telles que celles qui existent dans le Fuelband de Nike …
En effet même si le smartphone devient un prolongement de soi, il n’est pas toujours avec nous au contraire d’une montre ou d’un bracelet qui nous quitte très rarement au cours de la journée (surtout si la montre est étanche).
Il faut attendre le 4 Septembre 2013 pour des informations officielles et plus tard dans l’année sans doute pour l’arrivée de l’iWatch d’Apple …
 

Le parrot ArDrone2.0 est disponible

Le parrot Ar Drone 2.0 qui avait été annoncé en début d’année est maintenant disponible, à la Fnac, notamment.
Pour rappel, l’Ar Drone est une sorte d’hélicoptère à 4 palles qui se commande à l’aide de son smartphone (Android et iOs notamment).
Parrot, le constructeur, surtout connu pour ses kits mains libres Bluetooth, a connu un réel succès avec la première version grâce à un savant marketing et grâce à des campagnes relayées par les internautes à l’aide de photos et vidéos de l’appareil dans des endroits plus insolites les uns que les autres …
Avec cette nouvelle version, Parrot améliore le pilotage et la capture de vidéos à l’aide d’une caméra qui peut filmer en 720p. Avec le beau temps revenu, c’est l’occasion de s’essayer au pilotage outdoor.
Je me laisserai bien tenter par ce gadget radiocommandé surtout qu’il plairait beaucoup à mes filles (je pourrais même les filmer du dessus du trampoline).
Plus d’informations : Ar Drone 2.0
[wpsr_socialbts]

Piloter un modèle réduit d'hélicoptère depuis son smartphone


Parmi les nombreuses activités que les smartphones nous permettent, le pilotage d’hélicoptère miniature en est une nouvelle.  Pour le grand enfant, amateur de gadgets, que je suis,  j’avoue que ce jouet est assez tentant … Un des derniers hélicoptère pilotable par iPhone et Android est le Griffin Helo TC Assault qui en plus de son nom impressionnant possède 6 missiles que l’on peut lancer à souhait.
Cela laisse augurer des pauses délirantes au bureau surtout dans les Open Space …
Le fabricant Griffin n’est pas le seul sur ce créneau, on peut aussi trouver des hélicoptères Beewi (qui a réalisé des miniatures de Cooper aussi).  Bref de multiples joies pour s’amuser quelques minutes en intérieur ; en effet l’autonomie de ces gadgets est inférieure à 10 minutes, cela qui ravira vos collègues de bureaux qui trouveront certainement un peu puéril ces jeux … Il est aussi recommandé de rester à l’intérieur car le moindre coup de vent pourra faire s’envoler trop loin l’hélicoptère …
Une vidéo de démonstration ci-dessous :

[wpsr_socialbts]

Programmer sa montre Sony Smartwatch

En tant que développeur, je m’intéresse toujours de très près aux gadgets et outils innovants qui peuvent se programmer et dont des kits de développement sont disponibles.
Bien entendu dans le cas d’une montre, je ne parle pas seulement d’être en mesure de programmer une alarme mais de créer des programmes spécifiques pour la montre permettant notamment de personnaliser l’interface ou d’envoyer des notifications sur Twitter ou Facebook par exemple …
La montre Smartwatch est une montre qui se connecte à un téléphone Androïd pour accéder par Bluetooth aux appels, messages et applications. La montre est équipée d’un écran LCD tactile de 128 pixels par 128 pixels et 65636 couleurs. De plus la montre possède un vibreur, un accéléromètre et un bouton.
Dans les extensions et interfaces accessibles depuis le kit de développement, on trouve :

  • l’API Notification qui permet  d’accéder aux événements d’informations tels que l’arrivé de SMS, de MMS, des appels manqués, de messages Twitter ou Facebook
  • l’API Control qui permet de personnaliser l’interface graphique de la montre
  • l’API Widget qui permet notamment de récupérer des informations de Widgets tel que le nom du morceau en cours de lecture par le player audio par exemple
  • l’API Control qui permet d’accéder aux valeurs des capteurs (l’accéléromètre notamment)

Pour réaliser des programmes pour cette montre, il vous faudra :

  • Eclipse avec l’extension ADT (Android Development Tool)
  • Le Kit de développement Smartwatch (téléchargeable ici)
  • LimeWare manager

Les compétences de développement Android seront aussi nécessaires pour programmer la montre.
Ces capacités de programmation offre de nombreuses possibilités et on pourrait même se prendre pour 007 en lançant la musique à distance sur son téléphone qui est connecté à des enceintes (cela m’était arrivé avec ma montre Timex et mon iPod Nano).
[wpsr_socialbts]