La VoIP en mobilité

De nombreux téléphones portables offrent une connectivité Wifi dont l’usage est multiple. Dès qu’un réseau sans fil est à porté, le premier usage est l’accès au web pour la consultation de site ou de messagerie. Un autre usage moins populaire mais qui gagne à être connu est la VoIP. Je ne parle pas de solution propriétaire comme Skype mais plutôt de réseau ouvert qui utilise le protocole SIP. Nous allons nous attarder sur ce dernier.

Tous d’abord commençons par préciser les avantages de la VoIP avec SIP. Ce protocol permet d’enregistrer un terminal (le téléphone ou un ordinateur) sur le réseau internet et de l’associer à une adresse SIP qui est l’équivalent du numéro de téléphone classique. Cela permet d’appeler et d’être joignable à partit d’un même numéro SIP. A la maison on utilise un terminal qui par exemple est un véritable téléphone puis au bureau on peut utiliser un logiciel (appelé softphone). Un correspondant utilise alors le même numéro pour nous joindre. Si on est enregistrer sur le réseau SIP à la maison, c’est le téléphone de la maison qui sonne. Si on est enregistré par le biais du téléphone logiciel, alors c’est l’ordinateur qui sonne.

Cela confère la caractéristique bien connue de mobilité déjà présente dans les téléphones portables. Et c’est ici que la VoIP prend justement tout son intérêt. Le téléphone portable devenant de plus en plus puissant, intègre aujourd’hui en natif ou par ajout d’un logiciel comme par exemple Gizmo, la fonction de téléphone SIP qui couplé à la connectivité Wifi, permet de passer des appels en mobilité par internet. La téléphonie IP devient alors plus attrayante que le résau cellulaire car utiliser par une borne Wifi (gratuite) pour passer des appels par SIP est bien moins onéreux.

Mais la VoIP est-t-elle réellement utilisable ? En effet on associe souvent au terme VoIP, des appels par internet et cela ramène au concept pourtant réducteur d’appel d’ordinateur à ordinateur. A quoi bon avoir un téléphone portable Wifi utilisant le protocole SIP si on ne peux pas joindre des téléphones classiques ? De même à quoi bon avoir un terminal Wifi si il n’y a pas de borne Wifi exploitable là où on se trouve ? Ces 2 questions ne sont à mon avis aujourd’hui plus des obstacles car d’une part les points d’accès “gratuits” se multiplient à l’instart du réseau FON et la liaison entre téléphonie IP et réseau classique existe sous diverse forme.

Intéressons nous au réseau Wifi lui même. Le maillage du réseau Wifi est le problème principale. En effet la mobilité en réseau cellulaire est acquise car les opérateurs on installé partout leurs antennes. Or un simple coup d’oeil sur la carte FON nous rassure sur le maillage d’un réseau gratuit. L’accès en Wifi au réseau internet n’est donc pas un problème insurmontable. Quand à la passerelle entre SIP et le réseau classique, c’est un écueil que l’on évite en s’affranchissant d’une somme modique au regard du tarif pratiqué par le réseau téléphonque classique mais réellement compétitif par rapport au tarif des opérateurs IP comme Free ou Neuf. En effet ni Skype ou Gizmo ne sont en mesure de rivaliser aujourd’hui avec les offres tarifaire de Free avec par exemple la liaison avec les ligne fixe gratuite.

L’astuce est alors d’utiliser le compte SIP de son opérateur résidentiel afin de bénéficier de ses tarifs en mobilité. Je pense que là les opérateurs de téléphonies cellulaires sont face à une réelle menace que pour l’instant ils contournent en interdisant le VoIP avec leurs offres internet sur les mobiles. Pour l’utilisateur ce n’est pas bloquant. Il utilise le reseau wifi gratuit pour passer ses appel SIP.

Dans cette perspective j’ai essayé avec bonheur l’utilisation de mon compte SIP Free depuis mon téléphone Wifi en me connectant à une borne Wifi d’un inconnu. Ce dernier utilisait il est vrai Free comme fournisseur ce qui explique que le point d’accès Wifi était pré-configuré pour en permettre l’usage aux autres abonnés. Il me reste à faire un test depuis un point d’accès FON pour terminer la démonstration mais elle me suffit déjà. La VoIP en mobilité est aujourd’hui possible car les terminaux sont disponibles, le maillage du réseau Wifi est suffisant et la passerelle vers le réseau classique est soit accessible soit donnée par le fournisseur d’accès résidentiel.

Ubuntu pour développer en Java ?

Cette distribution linux rendue célèbre en 2006 par son interface graphique sexy 3D offre l’avantage d’être orientée utilisateur : une installation simple, des logiciels complets et un support des codec non libres. Ubuntu une distribution parfaite pour qui souhaite quitter Windows pour Linux.

Aujourd’hui  la toute dernière version 8.04 offre un support complet pour le développement Java. Le dépôt de paquet contient les outils nécessaires. En premier lieu le JDK 5 et 6 peut être obtenu directement à partir du gestionnaire de paquet. L’éditeur Java de référence, celui de Sun, est également disponible : Netbean 6. Enfin l’outil de build incontournable pour avoir des projets modulaires, Maven 2, est aussi présent.

netbeans.1209841312.pngmaven2.1209841298.pngjdk.1209841286.png

Cela constitue un confort appréciable pour peu que les mises à jour soient régulières et n’oblige pas à revenir à la méthode manuelle qui reste toujours possible si le besoin est d’avoir plusieurs versions des applications en même temps ou des versions spécifiques mais n’enlève en rien l’intérêt d’un support natif des outils de développement Java.

Ubuntu pour développer en Java ?

Cette distribution linux rendue célèbre en 2006 par son interface graphique sexy 3D offre l’avantage d’être orientée utilisateur : une installation simple, des logiciels complets et un support des codec non libres. Ubuntu une distribution parfaite pour qui souhaite quitter Windows pour Linux.

Aujourd’hui  la toute dernière version 8.04 offre un support complet pour le développement Java. Le dépôt de paquet contient les outils nécessaires. En premier lieu le JDK 5 et 6 peut être obtenu directement à partir du gestionnaire de paquet. L’éditeur Java de référence, celui de Sun, est également disponible : Netbean 6. Enfin l’outil de build incontournable pour avoir des projets modulaires, Maven 2, est aussi présent.

netbeans.1209841312.pngmaven2.1209841298.pngjdk.1209841286.png

Cela constitue un confort appréciable pour peu que les mises à jour soient régulières et n’oblige pas à revenir à la méthode manuelle qui reste toujours possible si le besoin est d’avoir plusieurs versions des applications en même temps ou des versions spécifiques mais n’enlève en rien l’intérêt d’un support natif des outils de développement Java.

Un monde en ligne

L’orientation du monde numérique est d’avoir à sa disposition toute sa vie numérique en tout lieu. Le concept de mobilité est devenue la caractéristique principale de l’informatique. Nous y sommes tellement habitué qu’il nous est pas facile d’imaginer un monde où il faudrait rentrer chez soi consulter son calepin pour y retrouver les coordonnées d’une personne ou bien aller à la bibliothèque pour se renseigner sur la biographie de l’interprète d’une chanson qu’on entend à la radio. De nos jours tout se trouve sur internet.

La mise en ligne d’information touche aussi la sphère privée. Non seulement des données personnelles peuvent se retrouver sur la toile de manière plus ou moins volontaire au grès des informations que chacun renseigne sur les sites web mais aussi des données que l’on met volontairement sur l’internet. Il peut s’agir dans ce cas d’information que l’on souhaite partager avec un groupe restreint comme par exemple des photos de vacances que l’on souhaite partager avec sa famille. Il existe pour cela des services comme flickr qui propose un espace limité aux photos et vidéo auquel on préfèrera l’excellent vox qui propose un hébergement complet : blog, photo, vidéo, audio sans limite de taille totale.

L’exemple de l’album photo en ligne n’est pas le seul à illustrer la virtualisation de notre monde. Les agendas en ligne avec google en est un autre et il est loin de fermer la liste: les services de messagerie instantanée, les webradio, les services bancaires en ligne…

Java un langage complexe ?

Plus de 10 années se sont écoulées depuis ce janvier 1998 où par un concours de circonstance je me retrouvais à devoir apprendre un langage à la mode pour mon mémoire de Maîtrise. Java s’avéra par la suite être le langage de programmation unique de ma carrière professionnelle. A l’étude de ce langage je fus très surpris par son efficace simplicité. La structure du langage permet à un néophyte d’écrire un code robuste tout en autorisant les plus chevronné à écrire du code plus sophistiqués mais uniquement sur les bases simples du langage qui sont les suivantes:

  • une syntaxe simple sans les signes cabalistiques du macro-assembleur C
  • une éviction de la notion d’adressage
  • polymorphisme automatique
  • héritage simple
  • notion d’interface

Qu’en est-il aujourd’hui ? Le langage a subtilement évolué: les assertions sont apparues, les types génériques ont franchis la barrières des langages en passant de la forme de template C++ au Java, des simplification de syntaxes de boucle sont désormais accessibles…mais nous assistons bel et bien a une complexification du langage.

En effet le néophyte se retrouve maintenant confronté à des notions complexes qui vont au delà d’une syntaxe plus complexe. Les génériques qui a première vue viennent d’une intention louable d’avoir des listes typées, ont un revers de médailles plus inquiétant: utilisés dans les types de retours et de paramètres en combinaison avec les notions d’héritages de type générique, nous arrivons à une réelle complexité de la syntaxe qui me rappelle la complexité de celle relative à l’adressage en C++. Les notions sont elles aussi devenues plus complexes. En effet les dernières version ajoute la notion de covariant dans la signature des méthodes ainsi que les listes d’arguments de taille variable. La maîtrise de ces notions demande une réelle compréhension de leur interprétation par la JVM, un peu à la manière du programmeur C qui doit comprendre la syntaxe par la manière dont le compilateur va le traduire en assembleur.

Mon sentiment est que le langage se complexifie or mon expérience m’a montré que beaucoup de programmeurs ne maitrisent pas les notoins de base du langage. L’avenir est donc prometteur pour les profils experts en Java, comme il l’a été il y a quelques années pour les profils experts en C++.

Contribution écologique: mutualisons !

Afin d’apporter ma pierre à la protection de l’environnement, j’ai décidé de mettre en terme à mon hébergement personnel. Depuis 2001 je mettais en oeuvre un serveur web (PC de bureau windows, portable puis linux box) et cela me procurait l’avantage du choix de la technologie, la rapidité de mise à jour et la sécurité relative des données. Hélas laisser continuellement une machine allumée pour cela n’est pas très efficient compte tenu du faible volume de transaction. Aujourd’ui je préfère laisser à un hébergeur le soin de maintenir l’infrastructure d’autent plus que l’avènement des connexions rapides (ADSL) rend la mise à jour d’un site hébergé confortable.

Jusqu’à ce que je me familiarise avec WordPress, les billets de mon ancien blog se trouvent sous réserve que ma machine soit allumée.

//perso.bressure.net/snipsnap

Contribution écologique: mutualisons !

Afin d’apporter ma pierre à la protection de l’environnement, j’ai décidé de mettre en terme à mon hébergement personnel. Depuis 2001 je mettais en oeuvre un serveur web (PC de bureau windows, portable puis linux box) et cela me procurait l’avantage du choix de la technologie, la rapidité de mise à jour et la sécurité relative des données. Hélas laisser continuellement une machine allumée pour cela n’est pas très efficient compte tenu du faible volume de transaction. Aujourd’ui je préfère laisser à un hébergeur le soin de maintenir l’infrastructure d’autent plus que l’avènement des connexions rapides (ADSL) rend la mise à jour d’un site hébergé confortable.

Jusqu’à ce que je me familiarise avec WordPress, les billets de mon ancien blog se trouvent sous réserve que ma machine soit allumée.

//perso.bressure.net/snipsnap