Firefox OS, ça va dépoter
Par Laurentj le lundi, décembre 10 2012, 12:16 - Technologies Web - Lien permanent
Depuis 3 ans, dans le cadre d'un partenariat entre Mozilla et la Miage d'Evry, je donne des cours sur les technos Mozilla, accompagné de Fabien Cazenave les deux premières années, et de David Rajchenbach-Teller en cette 4ième année. C'est le projet CoMETE. Jusqu'à maintenant, on enseignait les technologies pour réaliser des extensions pour Firefox (XUL, XBL, XPCOM etc...), mais cette année, nous avons décidé d'enseigner le développement web ++, avec les toutes dernières technologies proposées non seulement par Firefox, mais aussi par Firefox OS. Autant dire que les étudiants auront des cours à la pointe (pas comme moi quand j'étais à la Miage d'Orsay en 1996-98, où on nous enseignait encore du Cobol alors que Java faisait fureur :-/ ).
Je suis le projet Firefox OS (aka Boot 2 Gecko) depuis le début. Vivien, l'un des développeurs de Firefox OS, m'avait fait l'honneur de me montrer les toutes premières versions de Firefox OS fonctionner sur un smartphone. C'était en Octobre 2011, 3-4 mois après le démarrage du projet et il y avait déjà des applis 100% HTML, dont celle pour lancer un appel téléphonique ! (bon, un bug empêchait de raccrocher :-) ).
Cependant, je n'ai pas non plus suivi le projet de très près (comprendre : je ne suis pas les commits comme autrefois sur Firefox, et je ne contribue pas - encore ?- au projet). Mais pour préparer ces cours, je suis bien obligé de me plonger dans toutes ces webAPI, dans la réalisation d'une WebApp, ou encore compiler/tester Firefox OS sur mon laptop.
Pour rappel, Firefox OS est un système d'exploitation pour smartphone (et dans le futur pour tablette), dont la particularité est que toutes les applications, y compris le "bureau", sont des applications HTML. En gros, Firefox OS, c'est seulement trois principales couches logicielles :
- un noyau linux et des drivers adéquates
- Gecko, le moteur de rendu de Firefox, accompagné de son moteur Javascript
- des applications 100% HTML5/JS
Et bien sûr, pour que les applications puissent accéder au matériel (comme démarrer un appel téléphonique, envoyer un SMS, utiliser le capteur photographique...), il faut des nouvelles fonctions JS utilisables dans le fichier HTML de l'application. Ce sont les fameuses WebAPI, que Mozilla ne se contente pas d'ajouter, mais aussi de proposer à la standardisation au W3C.
Je dois dire que je suis de plus en plus enthousiaste sur Firefox OS. On va pouvoir réellement tout faire, y compris dialoguer avec les autres applis via les WebActivities. On va pouvoir porter tout ces nouveaux Jeux HTML reposant sur WebGL, vers FirefoxOS, en profitant de nouvelles api (faire vibrer le téléphone, utiliser l’accéléromètre...). L'interface actuelle de Firefox OS montre ce que l'on peut faire avec les transformations et animations CSS3 pour tout les petits effets graphiques. Bref, on va pouvoir refaire le monde avec des technologies que finalement bon nombre de développeurs maitrisent déjà (HTML, JS, CSS), à savoir des technologies standards.
Plus je vois Firefox OS avancer, évoluer, plus je me dis que Mozilla va réussir son pari, celui d'offrir une réelle alternative à IOS et à Android, comme Mozilla l'avait réussi avec Firefox dans un tout autre contexte. Les sceptiques diront que d'autres ont déjà essayé (WebOs par exemple), mais comme l'a écrit Daniel, Firefox OS n'est pas qu'un simple navigateur posé sur un noyau, Firefox OS va plus loin, car Mozilla standardise. De plus, Mozilla ne fait pas ça dans son coin, il a des partenariats avec des opérateurs, en particulier Telefonica, qui vendra des abonnements+téléphones avec Firefox OS préchargé, dés le premier trimestre 2013 , au Brésil.
Vivement que je puisse m'acheter un smartphone et une tablette Firefox OS :-)
Commentaires
Cazenave avec un C pas un K :)
La question est de savoir si les fabricants vont vraiment jouer le jeu de la standardisation.
C'est un risque pour eux. Comment se démarquer de la concurrence si les fonctionnalités des téléphones sont standardisé? Même si c'est faisable, en théorie du moins, je ne suis pas sur qu'ils veuillent vraiment jouer le jeu tout pris qu'ils sont dans leurs stratégies d'enfermement des utilisateurs…
Désolé de ne pas être bien présent pour CoMETE cette année Laurent, la release de Firefox OS 1.0 étant prévue pour mi-janvier c’était tendu. :-/
Merci à toi de faire perdurer l’aventure, je me rattraperai l’an prochain !
@pascal : il a n'a ka arréter de mettre des k partout :-) (c'est korrigé)
@fabien : no problem :-)
@LordPhoenix : ce ne sont pas des standards sur le téléphone, mais sur l'API JS, ce n'est pas pareil. D'ailleurs certaines d'entre elles se retrouvent dans le Firefox standard. Si un concurrent fait un OS similaire avec des applis en HTML, si il ne propose pas les APIs standardisés :
Microsoft par exemple prend un risque à mon avis : les développeurs d'applis pour téléphone doivent déjà faire une version en Objectif C pour IOS, une en Java pour Android. Maintenant il faut qu'ils en fasse une en je ne sais pas quoi pour les windows phone.
Mozilla ne fait pas le choix d'un nième langage, mais d'une techno que finalement la plupart des développeurs pour téléphone connaissent déjà, et qui nécessitera moins de travail pour porter leur appli web existante sur Firefox OS, que si ils ont à la porter sur IOS ou autre (sauf pour ceux dont l'appli n'est en fait qu'un navigateur déguisé, mais ils profitent moins des fonctionnalités du téléphone)
Bravo Laurent et David de faire briller tous ces projets a la Miage d'Evry.
J'ai eu des retours très encourageants ce matin du 1er cours!!
Bravo et continuons l'aventure ensemble.
Tout à fait d'accord avec toi Laurent !
Et encore merci à toi , à Kaze et à David d'être aussi présents auprès des étudiants !
Vivement
1 ) que WebAPI soit finalisé et intégré au W3C
2 ) que WebKit EFL intégre WebAPI, ou qu'un gecko-EFL pointe le bout de son nez
3 ) qu'un OS libre minimaliste intégrant tout ça, à la fois pensé pour PC de bureau pour tablette et pour mobile soit developpé.
(quelque chose comme Tizen peut-être?...)
4 ) qu'un serveur web léger et facile orienté grand public soit intégré à cet OS pour pas que le Web se transforme en Web2.0 TrucMachinStore.
Parce qu'il y'en a marre de voir fleurir des machines sur-puissantes qui donnent l'impression d'être au supermarché à chaque fois qu'on les allument, qu'on soit obligé de s'identifier même pour charger une application gratuite. Le concept du libre en prend un coup.
Et ça serait pas mal si on pouvait ressortir des vielles bécanes qui prennent la poussière dans les greniers pour leur donné un coup de jeune. Faut penser que les temps sont durs, les gens ne pourront plus acheter je ne sais combien de téléphones/tablettes/ordis par an et d'un coté tant mieux parce que c'est absurde à tout point de vue. Restera un problème : aujourd'hui du matos solide durable et bon marché, ça existe de moins en moins...
Je dis ça parce que ça me dégoute un peu de voir des technos comme ça sortir (qui plus est, basées sur du libre!), qui ne servent qu'à faire toujours plus de blingbling, et à vendre toujours plus de matériels, alors qu'elles pourraient servir à faire le contraire... Mais on comprends tout de suite à qui ça profite. Il n'y a qu'à regarder qui finance les projets. (ex Samsung avec Tizen, même si c'est intéressant parce que ça booste l'avancement de E17 qui s'avère être un très beau projet.)
Bref, l'avenir du libre reste très ambivalent, comme toujours.