juil. 13, 2010
Je suis tout récemment tombé sur le site techtoc.tv, ce site regroupe un ensemble de webcasts autour de sujet liés aux nouvelles technologies. Pourquoi ces deux informations, tout simplement parce que je souhaitais 3 de ces webcasts qui sont en liaison avec un de mes précédents billets, où je présentais les différences entre application et webapplication.
Les apps' vont-elles remplacées les navigateurs webs ?
Application mobile vs version web mobile
Mon business a-t-il besoin d'une application mobile ?
Si je devais résumer la situation actuelle, une société se doit d'être actuellement présente sur les AppStores (AppStore d'Apple, AndroidMarket de Google, ...). Mais une société doit également ne pas oublier le web mobile, car il permet une meilleure inter-opérabilité mais également une plus grande liberté d'évolution. Enfin, les webapplications sont pour certains considérés comme l'avenir, alors que les applications sont amenés à une décroissance à partir de 2015 voire 2013 selon certains.
juil. 06, 2010
On me demande souvent quelle est la différence entre application et web-application. Je vais par ce billet définir chacun et indiquer leurs avantages et inconvénients.
Applications
Une application mobile est un programme informatique utilisant un SDK (Software Development Kit) basé sur un OS (Operating System) tel qu'iOS ou Android. Le SDK se définit par :
- un langage de programmation (Java pour Android, Objective-C pour Apple, Silverlight pour WindowPhone 7 WP7) qui permet de développer l'application
- un ensemble d'APIs (Application Programming Interface) permettant d'utiliser ou d'accéder à des éléments matériels du terminal. L'API sur laquelle il est important de s'arrêter est l'openGL qui permet de faire de la 3D et donc des jeux évolués. A noter que WP7 sera quant à lui basé sur un autre type API.
Les applications permettent d'avoir une interactivité plus poussée et elles permettent également d'avoir à disposition très facilement toutes les informations à un instant T. La logique est totalement différente par rapport à un site web et il est absolument nécessaire de prendre en compte ce point lors de la phase de spécifications du projet.
Cependant deux problèmes se posent : le temps de développement (2 mois pour une application de type standard) et le versionning. En effet, si un bug apparaît sur une application, il est nécessaire de repasser par une phase de développement, recette et soumission de l'application; on parle de changement de version. Ce paramètre est très important et explique la nécessité de faire une phase de recette poussée et complète.
Un dernier point important à noter également est que l'application, contrairement à la web-application, est disponible sur la place de marché de l'OS (AppStore d'Apple, AndroidMarket de Google, ...). Ceci permettant donc une potentielle visibilité, je dis potentielle car l'application sera noyé dans des dizaines voire centaines de milliers d'autres. Ce paramètre est donc à prendre en compte dans la phase de communication.
Web-application
On entend par web-application un site mobile évolué qui utilise les performances des navigateurs embarqué dans le mobile (Safari mobile, Chrome sur Android, etc..). Ces derniers disposent des éléments suivants :
- différentes fonctionnalités du xHTML et également du HTML5
- le support du Javascript (différents frameworks sont disponibles JQueryTouch par exemple)
- un ou plusieurs librairie Javascript et associé au navigateur permettant d'accéder par exemple au GPS.
Deux avantages principaux (les inverses de l'application) : le temps de développement (on est sur des technologies webs) est court, la gestion des mises à jour sont réalisées en totale transparence pour l'utilisateur puisque l'on est sur une technologie client-serveur. On peut également ajouter que ce type de développement permet de servir n'importe quel terminal de type smartphone : une web-application sous Android sera également disponible sur iPhone.
Etant sur des technologies webs, il est important de mettre en place les bonnes pratiques suivantes :
- les règles de SEO/référencement, même si actuellement, Google ne rends pas prédominant le mobile, il est important d'être présent.
- la possibilité de rediriger l'utilisateur depuis le site web standard vers le site mobile et vice-version. Je conseillerais également de permettre cette redirection page à page.
En conclusion, je conseillerais la méthode suivante : faire une application mobile (sur iPhone et Android) pour avoir la visibilité des places de marchés, mais ne surtout pas oublié les web-applications. Même si cette dernière sera le plus souvent beaucoup moins ambitieuse que l'application.
juin 16, 2010
J'ouvre dans mon blog une nouvelle catégorie qui intégrera des billets parlant de près ou de loin de la gestion de projet mobile et web. Plusieurs billets sont d'ailleurs dans les cartons et devrait arriver très prochainement. Le but de cette partie sera principalement d'exposer des problématiques apportées par les projets mobiles afin de mieux les appréhender.
juin 16, 2010
Suite au Google I/O, je me suis posé la question d'installer ou non Froyo (la v2.2 d'Android) sur mon Nexus One. Finalement, j'ai craqué et je me suis lancé dans l'installation de cette nouvelle version considéré comme bêta. Je désirais à la fois essayer Flash 10.1 mais aussi le tethering. Je parlerais dans ce billet du tethering, le Flash sera peut être le sujet d'un autre billet plus tard. Le tethering sur Froyo offre la possibilité de partager la connexion internet mobile du téléphone en WiFi ou par USB. Ayant un Mac, je n'ai malheureusement pas pu tester la version USB (uniquement compatible Windows Vista, Seven et Linux).
Première étape : la configuration du Nexus One
Ca se passe dans les Paramètres -> Sans Fil et réseaux -> Partage de connexion et point d'accès mobile. Quatre informations sont disponibles :
- via USB (pour avoir cette zone activée, il faut avoir le téléphone relié à l'ordinateur par USB)
- Point d'accès Wi-Fi mobile, en activant cette zone, le téléphone se transforme alors en hotspot Wifi
- Paramètre du point d'accès, dans cette zone, il est possible de mettre à jour le SSID du réseau, la sécurité (réseau ouvert ou sécurisé par clé WPA2)
- Aide
Deuxième étape, connexion WiFi et tests
C'est exactement pareil qu'un autre hotspot Wifi.
J'ai testé la connexion en TGV entre Paris et Lyon. C'est vraiment impressionnant de savoir que le téléphone permet de se connecter à Internet sans passer par une clé 3G. Cependant, j'ai remarqué plusieurs points :
- dès que le TGV passe une certaine vitesse, on a plus de connexion, mais cela est normale, on a le même souci lorsque l'on se connecte à internet depuis le téléphone directement,
- j'ai réussi à utiliser l'application Mail et Tweetdeck, je n'ai pas réussi à utiliser les navigateurs (je dois encore creusé le point),
- ça grille la batterie du téléphone à une vitesse impressionnante (25% en moins de 10min).
Conclusion
Je donnerais, pour conclusion, les avis suivants :
- cet outil peut vraiment dépanner et permettre de répondre à ses mails ou voir rapidement des informations sur Internet de manière plus pratique que sur son téléphone,
- Google a tapé fort en sortant cette fonctionnalité attendu de pas mal de personne, cependant on parle déjà de bridage chez les opérateurs mobiles,
- cet outils est naissant mais mérite vraiment de s'attarder dessus, tout particulièrement pour les personnes en déplacement régulier, cela leur éviterait 1 téléphone, 1 ordinateur portable et 1 clé 3G; pour revenir à 2 appareils,
- j'attends avec impatience l'arrivée du LTE en France, qui permettra de naviguer beaucoup plus rapidement sur le net depuis un mobile.
mai 31, 2010
L'annonce a été faite hier : Skype 2.0 permet de téléphoner en 3G hier, un de mes collègues et moi-même avons testé cette version : d'un côté un iPhone avec la connexion 3G, de l'autre un MacBook avec Skype installé. La résultante est que nous n'avons pas réussi à effectuer un appel correct. Les différents tests effectués ont été infructueux : on attendait la voix de l'autre très coupée, avec un gros temps de latence et l'impossible de réaliser un vrai appel...
Heureusement les appels sont gratuits pour le moment et jusque fin août. Connaissant la politique d'Apple en terme de validation, on peut se demander deux choses :
- Apple étant très pointilleux sur les phases de test des applications, ne serait-ce pas les opérateurs qui bloquent les data voix sur la 3G provenant de l'application Skype
- Apple et Skype ont fait une sorte de partenariat pour tout de même valider l'application, cette hypothèse me paraît la moins plausible
Et vous qu'en pensez-vous ?
mai 21, 2010
L'événement pour les développeurs Google I/O s'est terminé hier. Je ne reviendrait pas sur la première keynote qui est plus accès sur la partie web, mais plutôt sur la seconde. Les vidéos sont d'ailleurs disponibles sur Youtube. Suite à mon post d'il y a deux semaines, les deux points principaux se sont confirmés:
- Flash 10.1 est bien intégré
- Côté jeu, de grosse évolution : intégration des APIs OpenGL ES 2.0
Mais je m'arrête également sur d'autres évolutions intéressantes :
- possibilité d'enregistrer les applications sur la carte mémoire (plutôt intéressant pour les grosses applications). D'ailleurs la démonstration a montré que l'application ne subit aucune perte.
- l'interpréteur Javascript a été booster : des résultats 2 à 3 fois plus rapide par rapport à la version Eclair (2.0/2.1)
- un market place digne de ce nom. Il était auparavant possible de synchroniser ses applications avec son compte Google. Il sera possible de rechercher des applications sur la version web du market, d'indiquer que l'on désire l'installer, cette installation sera alors automatiquement lancé sur le smartphone.
- possibilité d'effectuer ou non l'auto-update des applications
- le feedback des plantages d'applications pourra être envoyé (comme sur Firefox) et directement accessible depuis le compte développeur
- Exchange Friendly, même si HTC sense (la surcouche HTC) permettait de gérer correctement Exchange, Google a préféré gérer en natif. Pour mieux intéressé les professionnels ?
D'autres évolutions sont également agréables et intéressantes : synchronisation de Maps entre Chrome et le smartphone, amélioration de la reconnaissance vocale, export d'iTunes en mode streaming, .... J'attends maintenant de pouvoir mettre à jour mon Nexus One pour faire un retour plus complet.
mai 19, 2010
Je vais compléter un précédent billet (la vidéo sur iPhone), je vais continuer mon tour d'horizon des technologies vidéos sur les OS mobiles. Dans le cas présent, je parlerais d'Android. Deux types de fichiers sont supportés actuellement par Android :
- 3GPP, ce format avait été mis en place pour les terminaux mobiles 3G et disparaît peu à peu
- MP4
En terme d'encodage, on peut avoir trois types différents :
- H263
- H264 AVC
- MPEG-4 (ce type d'encodage est uniquement possible avec des fichiers 3GPP)
En encodant une vidéo au format d'encodage H264 avec un type de fichier MP4, il est alors possible de lire la vidéo sur Android et sur iPhone.
Pour la diffusion des vidéos, deux solutions sont actuellement possible :
Le protocole de diffusion utilisé est alors le RTSP.
mai 18, 2010
Après un certain temps, j'ai finalement réussi à faire tourner Kwaak3 sur Android : à la fois sur un Nexus One, puis sur un Motorola Droid. Pour rappel, Kwaak3 permet de jouer à Quake depuis son terminal. Malheusement pour moi (possesseur d'un Nexus One), il n'est (pour le moment) pas possible d'y jouer. On peut tout au plus tirer ou bouger la caméra grâce à la souris.
Deuxième phase, le portage sur un Droid, là, je n'ai pas eu de soucis, j'ai installé l'application et copier/coller le dossier quake3 de la SDCard du Nexus sur celle du Droid. La jouabilité est pas trop mal malgré le petit clavier du terminal. Cela manque tout de même de précision comparé à la version desktop du jeu (et oui, rien ne vaut une souris). Je n'ai pas encore réussi à tuer un des bots, mais j'ai travaille ;-)
Je pourrais conclure en disant que c'est une première étape intéressante, j'espère avoir très prochainement la possibilité de jouer avec un terminal Android ne possédant pas clavier. Mais également on pourrait espérer un portage des vieux jeux tels que Duke Nukem 3D sur la plateforme voire Serious Sam.
mai 13, 2010
Je vais vous faire découvrir une application d'une efficacité déconcertante. Son nom : Gesture Search, disponible sur Android Market, l'application est développé par Google. L'application fait tourner une tâche de fond qui indexe les contacts, les marques-pages du navigateur, les applications installées et la musique. Différentes options de configurations sont disponibles :
Côté utilisation, il suffit d'écrire sur l'écran les lettres pour former le mot recherchés.

mai 10, 2010
On entends beaucoup parler actuellement du conflit entre Adobe et Apple (lancé pour rappel par Steve Jobs fin avril). Je voudrais m'attarder non pas sur ce conflit mais la technologie vidéo utilisé par l'iPhone et l'iPad et d'en décrire un peu plus les aspects.
La solution recommandée par Apple est le HTTP Live Streaming. Elle offre la possibilité d'utiliser des serveurs HTTP (par exemple Apache) afin de diffuser la vidéo. Le player appelle dans un premier temps un fichier m3u8. Ce fichier est un fichier de metadata, une playlist comme celle-ci :
*\#EXTM3U*
*\#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=64000*
*http://media.example.com/64kb.m3u8*
*\#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=276000*
*http://media.example.com/276kb.m3u8*
*\#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=420000*
*http://media.example.com/420kb.ts*
*\#EXT-X-ENDLIST*
On remarquera tout particulièrement l'élément BANDWITH, il permet de définir le nombre de bits par seconde. Cela permet au player de gérer suivant le réseau quel playlist il va utiliser : en Edge par exemple, le player choisira le fichier 64kb.m3u8. Ce second fichier sera du même format mais contiendra des morceaux de vidéos : des fichiers .ts à lire à la suite les uns des autres. Le player pourra au besoin changer de playlist suivant le débit. Côté encodage, on utilise l'encodage H.264 pour la vidéo et HE-AAC pour l'audio.
Tout ceci est cependant la recommandation d'Apple (cf Guidelines), il est tout à fait possible de lire du MP4 encodé en H.264, il faut juste limité le temps des vidéos à 10min maximum. Dans tous les cas, en utilisant de bons outils d'encodages, la qualité sera au rendez vous et donc la satisfaction des utilisateurs aussi. On pourra par exemple utilisé soit des outils comme ffmpeg, ceux d'Apple; dans le cas d'entreprise, il est également possible d'utiliser de gros serveurs dédié à l'encodage comme ceux d'Inlet Technologies.
Je terminerais par ce lien permettant d'avoir la note technique d'Apple quand à la création et au déploiement du HTTP Live Streaming sur iPhone et iPad