Tag Archive for 'API'

MozCamp 2011

Le mois dernier, j’ai participé au MozCamp EU 2011 à Berlin.
C’était mon premier événement Mozilla en tant que contributeur et ce fut une expérience très enrichissante.
Tout d’abord, j’ai rencontré beaucoup de personnes que je ne connaissais que sur Internet, des personnes de différents pays, mais aussi d’autres de la communauté francophone.

Les conférences données cette année étaient intéressantes et marque clairement le tournant de Mozilla dans le monde du mobile et des applications web.
Ce que j’attendais le plus était de voir Boot2Gecko, nom de code du système d’exploitation, développé pour mobile. Celui-ci repose entièrement sur les «APIs» Web. Cela permet en l’occurrence d’avoir une interface entièrement en HTML/CSS/JS, des technologies libres, ouvertes et standardisées par le consortium W3C. Ce projet B2G est encore à ses débuts et des premières démonstrations nous ont montré l’envoi et la réception de SMS, mais aussi l’écran d’accueil et de gestion d’applications sur téléphone.

Une autre conférence au-quelle j’ai assisté portait sur BrowserID et Open Web Apps, présenté par Chris Heilmann.

BrowerID est une technologie qui permet de se connecter à tous vos sites internet en utilisant seulement un seul e-mail et mot de passe. On s’affranchit donc de compte supplémentaire et aussi on évite aussi de s’authentifier via des sites comme Facebook et Twitter qui vont s’approprier votre identité sur le net. Avec BrowserID votre vie privé est respecté car seul votre mail est conservé.

Open Web Apps est un système permettant de gérer des sites web favoris en tant qu’application. Ainsi vous pouvez démarrer un jeu dans un onglet applicatif par exemple, il sera aussi possible bientôt d’acheter et de vendre ses «applications» sur un site Mozilla et même sur son propre site.

Durant le MozCamp j’ai aussi eu l’occasion de présenter deux choses, tout d’abord le documentaire Code Rush auquel j’ai contribué en créant un transcript ainsi que les sous-titres avec l’aide de Sonny Piers et Frédéric Bourgeon. Ce documentaire retrace les origines de Mozilla à la Silicon Valley dans les bureaux de Netscape. Il a été projeté vendredi soir, à la fête d’accueil et introduit par William Q, Chris Hoffman premier employé de Mozilla (apparaissant dans le documentaire), Sonny P et moi-même.
Le projet autour de ce documentaire n’est pas fini, en effet un site va rapidement être en place, coderush.tv. Il permettra de visionner le documentaire avec les sous-titres en différentes langues.

Mes photos sont disponibles sur Flickr et aussi sur le groupe Mozilla Community

Le lendemain, j’ai aussi présenté en début d’après-midi une conférence sur Nightingale, le “fork” du lecteur multimédia Songbird basé sur les technologies Mozilla. Dans celle-ci, j’ai expliqué les raisons de cette version alternative. En effet beaucoup de choses ont bouleversé le développement de Songbird. Celui-ci n’est plus maintenu sur Linux et souffre d’une communauté très faible ainsi que des outils qui ne sont plus à jour. Mes slides sont d’ailleurs disponibles ici.

Mais le MozCamp c’est aussi la «Mozilla Attitude», de nombreux goodies distribués, une ambiance très chaleureuse, des rencontres en tout genre.
De nouvelles communautés se sont formées un peu partout dans le monde comme l’a montré la présentation samedi matin. On notera tout de même que la communauté française était largement représentée (autant que l’Allemagne).

Cet événement confirme mon attachement pour Mozilla et ses valeurs. Le respect de l’utilisateur, de sa vie privée et la participation active aux standards du Web.

Quoi de neuf dans Firefox Mobile ?

Firefox Mobile est en pleine évolution. Divers changements sympathiques arrivent :

  • Une gestion des applications web :

Installation d’un site comme application via la “favicon”

Il est ensuite possible de définir les autorisations de l’application

  • La possibilité de mettre des applications web en raccourcis sur le bureau d’Android :

L’ajout du raccourci se fait comme pour le navigateur de base,
une liste permet de choisir le site

Un raccourci, sur le bureau d’Honeycomb

  • Un meilleur rendu des images pour les tablettes dont la puce ARM ne prend pas en charge “neon” comme les puces Tegra2 (prévu pour Firefox Mobile 7 et disponible dans Firefox Aurora)
  • Une meilleure expérience sous Android Honeycomb avec une interface dédiée aux tablettes (prévu pour Firefox Mobile 8 ) :

Cette interface est pour le moment uniquement disponible en essai sur la version “Nightly” grâce au paramètre browser.UI.layout.tablet = 1 dans about:config

  • La prise en charge des touch events, permettant des applications web encore plus riche en détectant où le doigt est posé, ses trajectoires etc.

D’autres fonctions devraient arriver rapidement comme la prise en charge du “multi-touch”, la possibilité d’utiliser l’appareil photo nativement ou encore les API Device dont j’ai parlé dans mon article sur Boot to Gecko précédemment.

Par ailleurs un deuxième concours “Game On” sera bientôt organisé par Mozilla Labs Gaming pour inciter la création de jeux pour Mobile en utilisant les technologies ouvertes du web.

Sources :
- Bug 656329 - Use a Honeycomb-style action bar on Android tablets
-
Bug 669851 - Don’t use nearest-neighbour filtering when neon isn’t available
- Fennec Tablet UI
- Fennec Roadmap
- Fennec Gaming

OSM, B2G, NGale, OMG

Ça y est j’ai décidé de contribuer pour de bon à OpenStreetMap, la cartographie libre comparable au modèle de Wikipédia où chacun peut éditer sa ville
Pour commencer, je me suis un peu familiarisé avec OSMtracker ainsi que l’éditeur Potlach (Flash beurk), pour finalement me mettre à JOSM (bien plus complet et efficace). J’ai complété les rues de mon quartier, quelques points d’intérêt, des noms de rue mais j’ai aussi rapporté des bugs de l’interface web notamment la page personnelle qui affiche une mini-carte avec les contributeurs près de chez vous ainsi que le journal personnel. Je suis par ailleurs assez impressionné par la rapidité des corrections des bugs

Pour continuer, Mozilla a récemment annoncé le projet B2G : Boot to Gecko. Il vise à développer un système d’exploitation mobile pour téléphones et tablettes reposant sur les technologies ouvertes du web à savoir HTML/CSS/JavaScript. Le projet donne lieu à l’ouverture d’un tas de bugs intéressants pour prendre en charge de nouvelles APIs destinées à la téléphonie, les SMS, la synthèse vocale, les manettes de jeux… Ce futur «Mozilla OS» semble prometteur, de plus il repose sur des fichiers système Android assurant une compatibilité sur la plupart des appareils faisant tourner le système mobile de Google. Quel impact pour les utilisateurs ? Un système entièrement libre (cf Honeycomb), respectueux des standards mais aussi des utilisateurs. (Option pour ne pas être pisté, données encryptées côté client par exemple). Pour les développeurs, pas de nouveau langage à apprendre, les applications seront développées avec les technologies du web. N’importe quel développeur web sera à même de créer et proposer sa propre application.

Si Mozilla a choisi cette voie c’est aussi pour se faire sa place dans le monde du mobile où la concurrence est rude et la notion d’ouverture pas toujours présente.
Prenons le cas d’Apple : impossible de proposer de navigateur web alternatif pour iOS. Mozilla a donc développé Firefox Home, permettant juste la synchronisation des onglets ouverts ainsi que des mots de passe.
Dans le cas d’Android c’est différent, Firefox Mobile est disponible, cependant ce n’est pas le navigateur par défaut et la plus part ne se contente que du navigateur de base. De plus cette version de Firefox n’est pas «native», c’est-à-dire non développée en Java. Mozilla a fait de gros progrès du  coté des performances cependant et l’application fonctionne très bien sur des appareils comme la EEE Pad Transformer (le test arrive bientôt !).
Pour finir Windows Mobile 7 ne dispose pas d’un SDK natif et ne propose que le langage Silverlight, donc pas de Panda roux chez «Mammon» même si la donne risque de changer étant donné les dernières annonces de Microsoft quant à arrêter Silverlight au profit de HTML5.
J’oublie MeeGo, webOS et autre OpenMoko qui ne sont pas vraiment encore dans la course mais ça n’engage que moi.

Je vous invite aussi à lire le billet de Clochix sur Boot to Gecko pour plus d’informations.

Quelques nouvelles aussi pour Nightingale : j’ai discuté avec Stevo (ancien développeur Songbird) à propos du projet, rien de neuf si ce n’est que le thème est l’élément bloquant la sortie.

Pour finir, petite découverte par un utilisateur Songbird : Nectarine Demoscene Radio. C’est un flux radio avec différentes «démos» audio, du bon son 8-Bit mais pas que
J’ai ajouté le flux à l’extension BirdTune au passage.

Mise à jour de Songbird Developer Tools

Depuis le début, j’utilisais Songbird Developer Tools pour m’aider à créer des extensions pour Songbird. En quoi consiste “DevTools” ? C’est un regroupement de différents outils conçus à la base pour Firefox et plus généralement la plateforme Mozilla (Gecko/XULRunner). En regardant la description :

  • Assistant de création de thèmes, pour créer des “plumes”
  • Assistant de création d’extensions, permet de faire une extension de base avec des parties d’interface
  • Options pour désactiver le cache de XUL et permettre le rafraichissement de l’interface
  • Plus de débogages
  • La table périodique de XUL, pour tester toutes les possibilités d’interfaces
  • Accès facile au gestionnaire de profils
  • Un bouton pour rapporter des bugs
  • Une console de débogage Javascript et environnement de test

Alors que c’était bien pratique, Songbird a beaucoup évolué (nouvelles fonctionnalités, nouvelle API etc.) mais personne n’a pris soin de cette extension, à part la correction d’erreurs et l’augmentation du maxVersion toujours et encore.

Comme c’est une super extension, j’ai décidé de l’améliorer en apportant diverses modifications :

  • Depuis Songbird 1.4.3, les pages media personnalisées peuvent avoir leur propres bouton (comme avec BirdQuizz par exemple). Désormais, lorsque vous créerez une page media, vous aurez le code pour afficher ce bouton. (Non disponible pour Songbird 1.8 à cause d’un bug)
  • Depuis le thème “Purple Rain”, les boutons de la barre d’outils nécessite le fond graphique du bouton de base. Lorsque vous créerez un bouton pour la barre d’outils, vous aurez maintenant un modèle correspondant au bon thème ainsi que des tailles correctes dans le fichier CSS.
  • Les pages media créées disposent maintenant d’un titre de page pour éviter d’afficher le lien Chrome dans l’onglet (ce n’était pas lisible sinon !)
  • Chaque extension créée ajoute maintenant une icône par défaut (iconURL), j’ai fait ce choix car beaucoup de personnes oublient d’en mettre une ou simplement évitent. C’est une étape importante pour que votre extension soit reconnue.
  • Suppression des liens XULPlanet car site fermé depuis un petit moment et correction de plusieurs liens du Centre développeur de Mozilla. (youpi le nouveau site est disponible !)
  • Suppression de la possibilité d’inclure une boîte de dialogue “A propos” dans l’assistant, c’était inutile car le gestionnaire d’extensions de Mozilla génère lui-même cette boîte de dialogue. Je crois que cette fonction était dédiée à Firefox 2.0. Conseil pour les développeurs : au lieu de faire une page “A propos” en XUL, réaliser la en HTML
  • Lorsque que vous créez un Panneau d’affichage dans l’assistant, vous aurez maintenant la possibilité de choisir quel panneau vous souhaitez utiliser ! Panneau en bas des services (pochette album), panneau de contenu du bas (mashTape) et panneau de droite (paroles). Vous pouvez même en choisir plusieurs en même temps.
  • Suppression des chaînes de caractères inutiles provenant des panneaux d’affichage si l’utilisateur n’inclue pas cette fonction
  • Possibilité de créer un marque-page Radio ou Services dans le panneau de services via l’assistant : C’est une fonctionnalité majeure, alors qu’il était possible d’utiliser le panneau de services dans les versions précédentes de Songbird, cette fonction vous permettra de créer une extension avec un marque-page Radio ou Services avec du code compatible avec Songbird 1.8 et plus. C’est dédié au nouveau panneau de services.
  • De plus, lorsque vous créez une extension avec un marque-page dans le panneau de services, vous profiterez d’un lien vers la documentation de ce nouveau panneau de services.
  • Graphismes améliorés de l’extension pour mieux correspondre au thème “Purple Rain” : les pages d’accueil des extensions et des thèmes profitent d’un meilleur design par exemple.
  • et bien évidemment, le “maxVersion” a été défini pour la version 1.9.0 pour être compatible avec la sortie prochaine du nom de code “Pink Floyd”

Ceci n’est pas ce que j’appelle un patch “énorme” mais il améliore certainement les outils pour les développeurs. Je pense que c’est une première étape.

QUOI ENCORE PLUS ?

Oui, je pense même ajouter des choses sympa.

  • Possibilité de créer un bouton menu dans la barre d’outils (comme AdBlock Plus)
  • Possibilité de choisir la position de ce bouton
  • Traduire l’extension (Je devrais faire des tests avec l’équipe de BabelZilla)
  • Plus de personnalisations du panneau de services
  • Possibilité de créer une extension avec un moteur de recherche (comme SkreemR)
  • et plus !!!

Le patch n’est pas encore intégré et bien sûr l’extension officielle n’est pas à jour non plus, mais si vous souhaitez la nouvelle version, vous pouvez installer ce fichier XPI dans votre Songbird. (Songbird 1.8 ou plus recommandé)

Stage

Voilà, ma première année de BTS Informatique de Gestion s’achève et je suis en stage pour six semaines.
Celui-ci se déroule à l’ODDAS (L’Office De Développement Associatif et Social) de Fontenay le Comte, ma ville natale

Je vais m’occuper du site internet (en partie) qui est basé sur WordPress, mais aussi développer une application de gestion de présence d’adhérents pour la maison des jeunes.
Pour le site internet j’ai trouvé un plugin de WordPress pratique qui permet de faire du code PHP dans les pages et les articles : Exec-PHP
Très simple à mettre en œuvre, vous pourrez facilement utiliser l’API de WordPress et pas besoin de se connecter à la base de données, il utilise celle de l’installation de WordPress.

Sinon j’ai récemment mis à jour toutes mes extensions Songbird, elles devraient être compatible avec la prochaine version 1.7.2 qui devrait sortir très bientôt (cette semaine sûrement).
Parmi ces extensions, je n’ai pas mis à jour POTIfy (qui permettait de trouver le morceau que vous écoutiez sur Songbird dans Spotify) car l’API a visiblement changé depuis la dernière version de Spotify, de plus une meilleure extension est disponible “Sofy” mais pas encore mise à jour. Je n’ai pas non plus mis à jour Ubiquity (qui est une extension pour Firefox à la base) car celle-ci n’a plus l’air d’être maintenue par la communauté.
En ce qui concerne BirdTune (l’extension pour écouter les radios françaises notamment), j’ai commencé à travailler sur la prochaine version qui ne sera plus basée sur une page web mais sur une base de données locale. Cela veut dire qu’il sera possible d’ajouter vos propres radios ou de supprimer celles que vous n’écoutez pas, un peu comme le fait le plugin produit par Todae.

Pour finir, j’ai eu quelques problèmes dernièrement, j’ai voulu mettre à jour le BIOS de ma carte mère (PC Acer Aspire E380), et depuis elle ne démarre plus (blocage à “Veryfying DMI Pool Data” ). J’ai tout essayé, Clear CMOS, débrancher/rebrancher le matériel et je ne dispose d’aucun flasheur de puces.
J’ai finalement acheté une carte mère ASUS pas très chère qui correspond à peu près à ce que j’avais avant.

Si vous utilisez mes extensions Songbird je vous invite à faire un don (sur n’importe quelle page d’extension via le bouton Paypal) cela me permettra de financer ma nouvelle carte mère et me permettre de continuer à travailler sur des extensions de qualité et sans pub