live streaming : le tour des offres

Pour promouvoir le 3ème album de mon pote Ben je lui ai proposé de profiter un maximum de l’internet. Bien sur avec les réseaux sociaux (facebook et twitter) mais aussi et surtout la video. Après un premier morceau enregistré dans la cave et publié sur YouTube dans la foulée, il a été convaincu.

Pour aller plus loin je me suis penché sur le live streaming en me disant que ce serait bien de pouvoir filmer un des prochains concert en live. Mais la plein de question se posent, est-ce gratuit, si payant à quel prix, quelle qualité de video, etc… En suivant TechCrunch je me suis tenu au courant des sites dédiés à ce domaine. Faisons le point sur les offres du marché :

  • justin.tv : sorti en 2007 à l’initiative de Justin Kan qui après avoir filmé sa vie avec succès avec camera sur la casquette et portable dans le sac à dos, a décidé de mettre sa plate-forme à disposition de tous. Le service est gratuit à première vue et selon la faq, mais en fait pas vraiment. Il existe une version pro pour enlever les pubs au visionnage et avoir des options de personnalisation supplémentaires, jusque la on se dit pourquoi payer, par contre en recherchant bien sur le net on s’aperçoit que la bande passante est limitée par pays. Dès que ça dépasse, le flux est coupé avec un message disant de passer en pro. Donc pas si gratuit que ça. Le site est traduit en plusieurs langues dont le français et il est possible de personnaliser la page de sa chaine. Pour diffuser c’est très simple, il suffit de créer un compte et de cliquer sur diffuser. Ensuite c’est le plugin flash live encoder qui va permettre l’envoi du flux via la webcam branché en USB sur son ordi directement depuis la page web. Il est possible d’utiliser des outils desktop comme Flash Media Live Encoder ou Quicktime Broadcaster, permettant de mieux contrôler les débits , l’encodage du son et de la video. Il existe une appli iPhone mais uniquement pour la consultation des flux. La diffusion se fait uniquement avec une webcam ou un camcorder branché sur son ordi. Le wiki de la communauté est pratique pour trouver les infos.
  • ustream.tv : sorti en 2008 ce site est réellement gratuit (en tout cas j’ai pas trouvé ou ca pourrait devenir payant). Le site n’est par contre qu’en  anglais et moins bien présenté et personnalisable que justin.tv. Par contre il est fourni avec un outil desktop complet et simple d’utilisation avec les mêmes paramétrages que ceux indiqués précédemment. Une version pro (payante) de cet outil permet même de faire de la réalisation avec plusieurs caméras branchées. Il est de plus accompagné de 2 applications mobile iPhone, une pour lire l’autre pour diffuser avec un 3G et avec un 3Gs. Et enfin une API REST basique.
  • kyte.tv : sorti en 2007 la on est vraiment dans le SaaS de la video sur internet. Par contre c’est pas gratuit mais on a aucun prix, il faut les contacter et présenter son projet, ensuite ça doit être à la tête du client, je sais pas. J’ai envoyé mon besoin on va bien voir ce qu’ils vont me répondre. Gratuitement on peut faire 15m de live et uploader des videos comme sur youtube avec un quota limité. L’offre de partage est bien foutue et on peut diffuser sur facebook rapidement en incluant la video ce qui n’est pas le cas des autres. Une appli iPhone permet de lire et diffuser du contenu video. C’est l’offre la plus complète et la plus pro.
  • livestream.com : dans la lignée des 3 précédents avec une offre claire au niveau prix, on y retrouve les memes fonctionnalités, une API bien fournie mais pas d’application mobile ni pour lire ni pour diffuser et une interface anglaise uniquement.
  • qik.com : principalement axé sur la video prise depuis son mobile, l’objectif et de filmer des petites séquences live et de les partager. J’ai fait mes premiers essais au concert de M. L’image est mauvaise car j’étais loin surtout mais aussi parce que j’avais un iPhone 3G et pas 3Gs. Donc c’est des prises de photos toutes les secondes et pas un vrai streaming. Le son est pas trop mal par contre. C’est complètement gratuit mais c’est pas fait pour faire des vidéos de qualité. L’idée c’est un peu plus du twit video.
  • flixwagon.com : pareil que Qik avec des applis pour iPhone et Nokia series 60. Pas d’API, l’offre est simplement un service de live par mobile pour raconter sa vie. Je le trouve moins attirant que les autres.

justin.tv et ustream.tv font le bonheur des amateurs de foot et autres évènements sportifs et bien le malheur des chaines payantes. Les petit gars se branchent une retransmission d’une chaine payante sur le flux live de leur chaine et le tour est joué.

Toutes ces offrent ont des options de partage sur facebook, twitter et myspace et des gadgets à insérer dans son blog. C’est bien la le plus important, aider à créer du trafic sur un espace web tout en acheminant toujours plus d’utilisateurs vers son service. Toutes les vidéos live sont archivées je n’ai pas reussi à savoir quel quota pour justin.tv et ustream.tv, pour kyte.tv et livestream.com c’est clair.

Finalement pas grand monde filme sa vie en permanence mais par contre ca donne plein d’idées pour partager des moments avec des personnes éloignées. Le live donne un plus par rapport à la simple video notamment quand on peut participer via le tchat. Tous proposent ce service permettant d’interagir avec ses spectateurs. De la à faire un concert où les spectateurs votent pour la prochaine chanson ou demande une dédicace il n’y a qu’un pas. Reste à gérer la modération, la c’est plus ou moins bien fait suivant les sites.

Maintenant j’ai plus qu’à trouver une bonne caméra, un bon micro, faire quelques tests et si vous suivez le facebook ou le twitter de Ben ou moi-même y’aura ptet un truc à voir le 11 mai prochain

A quand le JUG sur justin.tv 😉

Java BarCamp IV : Cloud et DDD

Encore un succès ! C’était plein et on a été très bien accueilli dans les locaux de Google. Super bouffe au passage, j’ai beaucoup aimé les macarons en dessert et puis le fromage, trop la classe…
2 créneaux / 4 salle et au total 7 sessions, je vous résume les deux auxquelles j’ai participé […]

Encore un succès ! C’était plein et on a été très bien accueilli dans les locaux de Google. Super bouffe au passage, j’ai beaucoup aimé les macarons en dessert et puis le fromage, trop la classe…
2 créneaux / 4 salle et au total 7 sessions, je vous résume les deux auxquelles j’ai participé :

Cloud computing
Un sujet pas vraiment Java au premier abord mais qui a attiré du monde. J’ai essayé de définir le cloud computing comme je le ressentais, Didier a été plus clair que moi en le décomposant en 3 offres :

  • IAAS (Infrastructure As A Services) : c’est typiquement Amazon avec ces offres S3 pour le stockage et EC2 pour les serveurs virtualisés. On a aussi Gandi avec une offre plus « end user » la où Amazon est vraiment très bas niveaux (encore qu’ils mettent en place de plus en plus de service à valeur ajoutée autour de leurs offres de base et aussi des outils de gestion en plugin dans Eclipse (demo)). On trouvera aussi Elastic Grid qui propose de faciliter le développement et déploiement sur l’infrastructure Amazon, ou encore GoGrid une offre concurrente à Amazon. Bientôt je pense qu’avec la fusion IBM/Sun de nouvelles offres vont apparaître.
  • SAAS (Software As A Services) : la on va trouver beaucoup d’acteur (s’appuyant souvent sur l’offre précédente), Amazon SimpleDB, Amazon SQSGoogle Apps (cf mon dernier article), Microsoft Azure Services, CloudMQ, ZumoDrive, … et je pourrais en lister pas mal et la liste va augmenter rapidement
  • PAAS (Platform As A Services) : c’est la plus un hébergement d’application sur une plate-forme commune s’adaptant au besoin selon la demande, c’est typiquement Google AppEngine, ou il est possible à tous de déployer son application web si on sait faire du Python. Microsoft a surement une offre dans Azure faudrait que je jette un oeil et Sun vient de lancer Zembly.

Pas mal de débat sur quid du mode déconnecté, la sécurité, et où java la dedans. Perso le mode déconnecté a pour moi une importance capitale dans ce monde de plus en plus nomade ou le cloud est en priorité un espace de stockage me permettant de partager mes données entre mes différents terminaux, ensuite un espace de service, et au final une plate-forme de déploiement de mes applis.
Fini de gérer son backup qu’on fait jamais, fini de chercher un moyen de partager ses données en réseau pour au final s’échanger un fichier avec une clé parce qu’on a pas réussi à faire parler un mac et un pc, mes données sont dans le cloud et synchronisées sur tout mes terminaux. J’ai mis en place Zumodrive dans ma société et c’est un vrai régal, les documents sont partagés même à l’exterieur de l’entreprise et je me pose plus la question du backup. J’ai prévu un prochain article sur l’experience avec cette offre cloud que je comparerais à Google Docs.
La sécurité reste le point crucial de l’implémentation de ces offres dans l’entreprise, j’ai l’impression d’entendre les mêmes remarques que lorsque l’on évoquait le paiement sur Internet il y a dix ans. Tous ces services sont bien sécurisés et il n’y a pas de risque zéro.
Java pour moi a sa place dans le cloud tant coté client que coté serveur. L’aspect multi plate-forme permet de faciliter les développements au niveau client (ex: le client ZumoDrive est en Java), j’aimerais voir proliférer des APIs Java « cloud-ready » facilitant l’intégration de service dans son code. De même côté serveur j’attends avec impatience Google AppEngine en Java.
Au final l’avantage du cloud computing est avant tout économique, les PME sont les premiers clients et voient leurs cout diminuer tout en ayant des capacités flexibles.

DDD (Domain Driven Design)
J’avais eu peu de succès la dernière fois avec ce sujet mais j’avais quand même attisé les curiosités, cette fois-ci il a été proposé par d’autres bien plus connaisseurs que moi et qui ont apportés des arguments pertinents sur les bienfait de ce concept. Un des points importants évoqués était cette habitude de trop parler technique et imbrication de framework pour s’orienter plus sur le métier, une évidence que l’on a tendance à oublier en voulant mettre nos nouveaux framework dans notre code. J’ai reparlé de Qi4j qui, je l’ai appris, n’est pas du pur DDD mais en tout cas reste à mes yeux une implémentation concrète de ce qui est pour moi la meilleure manière de modéliser du réel. Faut vraiment que je m’y mette et que je me fasse une démo de mon dossier médical implémenté avec Qi4j pour vraiment prouver que cette approche est pertinente.
Bien sur je reste persuadé que son implémentation dans un code existant reste difficile mais j’en suis pas encore là.
Le DDD c’est avant tout une bonne pratique et une nouvelle manière d’appréhender son développement. A suivre c’est sûr …

Merci encore aux organisateurs. C’est toujours une bonne occasion d’échanger. Et pourvu que Google nous ouvre leur porte le plus souvent possible 😉
Retrouvez les autres blogs sur le JavaBarCamp IV:

Mettre sa société dans les nuages

Il y a de cela 2 mois je me suis lancé dans la migration de la messagerie de la société sur GoogleApps. La où notre ancien hébergeur nous prenait une somme conséquente par mois pour infogérer notre serveur de mail, Google lui fait la même chose gratuitement. Il n’y a pas de petites économies et c’est un bon départ pour se lancer dans l’utilisation d’outils du cloud computing. Je vous retrace ici les étapes pour réaliser le projet et un retour après maintenant 1 mois d’utilisation.[…]

Il y a de cela 2 mois je me suis lancé dans la migration de la messagerie de la société sur GoogleApps. La où notre ancien hébergeur nous prenait une somme conséquente par mois pour infogérer notre serveur de mail, Google lui fait la même chose gratuitement. Il n’y a pas de petites économies et c’est un bon départ pour se lancer dans l’utilisation d’outils du cloud computing. Je vous retrace ici les étapes pour réaliser le projet et un retour après maintenant 1 mois d’utilisation.
Google propose de manière simple de créer un espace en ligne regroupant mail, agenda, docs, chat et site web en utilisant votre nom de domaine. Si vous en avez un vous pouvez d’ores et déjà ouvrir un compte, Google vous demandera de valider que vous êtes bien le propriétaire de ce domaine en ajoutant une entrée CNAME dans votre DNS ou simplement en posant un fichier à la racine de votre serveur web. A partir de ce moment tous les services sont utilisables sauf le mail que vous devez activer en modifiant les paramètres de votre DNS concernant les serveurs MX. Pour ceux qui n’ont pas de serveur de messagerie existant l’activation peut se faire de suite, pour nous il fallait prendre en compte l’existant. C’est la partie la plus rude, heureusement Google fournit un outil de migration bien pratique permettant la récupération de mail depuis les clients Thunderbird et Outlook. Sachant que nous n’avons plus d’administrateur réseau et que je n’avais pas beaucoup de temps à consacrer à cela il a fallu que chacun y mette du sien en gérant sa propre migration, bien sûr je parle la des ingénieurs Improve dont l’informatique est le métier, pour les autres je m’en suis occupé. Cette manip est vraiment pas simple pour un non informaticien. Dans notre cas la majorité des utilisateurs utilisaient Thunderbird comme client de messagerie. En POP ou en IMAP la manip est pas la même mais le plus difficile reste la gestion de l’arborescence de votre archivage de mail. En effet il faut savoir que GMail n’utilise pas la notion de répertoire mais de label. Ce qui est au final beaucoup plus pertinent et permet de faire des recherche efficaces. Fort heureusement il y a une astuce qui permet de conserver son arborescence : l’utilisation du caractère ‘/’ dans un label est interprété comme une arborescence par le client de messagerie (connecté en IMAP), ainsi le label ‘monrep/monsousrep’ dans GMail se transformera en l’arborescence correspondante .

Migration

Les étapes de migration que je présente ici sont dédiés à ceux qui ont un client Thunderbird.

  • si vous utilisez Thunderbird et que vous avez des répertoires :
    • (pour ceux qui sont en IMAP) cliquez sur l’ampoule en bas à droite, cela vous mettra en mode déconnecté et récupérera localement tous les répertoires. Attention il faut que ceux-ci soient déclarés comme étant « synchronisés pour utilisation hors ligne« , pour cela allez dans « Paramètres des comptes » dans le menu « Hors ligne et espace disque » et cliquez sur « Sélection dossiers pour utilisation hors ligne« , sélectionnez ensuite les dossiers que vous voulez récupérer.
    • récupérer l’outil de migration, l’installer et le lancer
    • sélectionner les répertoires à migrer, au départ il est vide, un lien sur la droite « add Thunderbird directory » vous permet d’aller sélectionner les répertoires, naviguer jusqu’à votre compte Thunderbird :
      • pour XP : C:/Documents and Settings/<user>/Application Data/Thunderbird/Profiles/…
      • pour Vista : C:\Users\<user>\AppData\Roaming\Thunderbird\Profiles\…
      • en POP : …/mail
      • en IMAP : …/ImapMail
    • sélectionnez les fichiers correspondant au nom de répertoire que vous voulez récupérer (NB: pas ceux du même nom avec l’extension .msf). Normalement pas besoin d’aller chercher les sous répertoires, ceux-ci seront automatiquement détectés, pas la peine non plus de récupérer la corbeille et les spams. Attention cela peut prendre du temps, l’outil permet d’évaluer le temps de chargement, vous pouvez réaliser cette manipulation en plusieurs fois, l’outil garde en mémoire l’endroit ou vous vous êtes arrêté.
  • Si vous utilisez Thunderbird ou le webmail et que vous n’avez pas de répertoires, il n’y a rien à faire de spécial pour la migration, la prochaine étape suffira. Si par contre vous utilisez un webmail et que vous avez des répertoires la c’est plus complexe, le seul moyen que j’ai trouvé est d’installer Thunderbird de récupérer toutes vos données via IMAP et d’appliquer l’étape 1

Note : Bien que GMail propose de récupérer des mails issus d’un autre compte (voir paragraphe ci-dessous), ce système utilise POP et ne récupère donc pas l’arborescence.

Avant de basculer vers GMail, le temps que tout le monde ait fait sa migration, il est possible de rediriger ses mails vers GMail : allez dans Paramètres (en haut a droite), puis allez dans Comptes et cliquez sur « Ajouter un compte de messagerie que vous possédez »
ATTENTION pour ceux qui sont en IMAP : le POP va récupérer tous les messages que vous avez déjà récupéré à l’étape 1, il faut vider votre boite au lettre et détruire tous les répertoire.

Pour reconfigurer sont compte Thunderbird avec GMail voici quelques astuces qui vous permettront de vous faire gagner du temps.

  • GMail fournit l’aide pour configurer votre compte.
  • Pour bien gérer le mode déconnecté : allez dans « Parametres des comptes » menu « Hors ligne et espace unique » et cocher les cases et sélectionner les répertoires, ainsi vous pourrez aussi accèder à vos mails dans le train via Thunderbird
  • Le plugin indispensable : Nostalgy : raccourci clavier pour trier ses mails
  • Les autres :
  • Lightning : calendrier (synchronisable avec google calendar), ce plugin est bien mais peut rapidement s’avérer problématique si on partage trop de calendrier car les requêtes de mise a jour vers Google Calendar ralentissent parfois l’utilisation de Thunderbird
  • Google Contact ou Zindus : synchro des contact

Configuration de votre téléphone mobile

allez sur http://mobile.google.fr/ depuis votre mobile, ca marche avec tous les smartphones qui peuvent aller sur le web et c’est bien pratique

Mailing-lists

Pour les mailing-lists, en version standard de GoogleApps les fonctionnalités sont trés limités, la liste de distribution est simplement un envoi groupé. Il n’y a pas de gestion de droits et même des utilisateurs externes peuvent envoyer des mails sur cette liste pour cela il faut passer en version premium ou vous avez la gestion de groupes. Vous ne pouvez pas non plus archiver cette liste dans un espace commun mais il existe une astuce avec google-groups : pour cela il faut y créer un groupe qui ne servira simplement qu’à archiver les mails de votre liste de distribution et sera accessible via le web, ceci simplement en ajoutant un destinataire spécial à votre liste de distribution.

Limitations

Sachez que pour gérer au mieux les spam, GMail limite l’envoi de mail par utilisateur par jour. Ainsi il n’est pas possible d’utiliser un compte GMail pour paramétrer les notifications d’une application.

Options

Pour bénéficier d’autres fonctionnalités concernant GMail (transformer mail en document, multiple inbox, …) sachez que lorsque vous paramétrer votre GMail en français vous n’accédez plus à l’onglet « Labs » contenant toutes ces options. Il vous faut donc basculer en « English US » le temps de faire sa sélection et revenir ensuite en français.

Gestion des agendas

Tout les agendas de vos collaborateurs sont maintenant partageable. Pour visualiser l’agenda d’un collaborateur, au niveau du menu « Autre agendas » en bas à gauche du calendrier, saisissez l’email de votre collaborateur et et appuyez sur entrée. Il existe aussi des agendas publics comme les vacances scolaires de la zone C, les jours fériés, les numéros de semaines.

Bilan

Positif ! Même si la migration a été laborieuse car l’outil de migration n’est pas simple à utiliser, que la notion de répertoire disparaît dans l’interface web de GMail et rend difficile l’utilisation des labels, que certains mails ce sont perdus. Peu de gens ce sont plaint et tous y on vu les avantages d’un outil de collaboration digne de ce nom. Certains sont passés sur l’interface web qui, il est vrai, est trés bien pensée et offre les mêmes avantages qu’un client mail classique (surtout depuis le mode hors connexion). Au final on ne regrette pas ce premier pas dans le cloud qui nous fait gagner du temps et de l’argent.