meven's blog

Aller au contenu | Aller au menu | Aller à la recherche

jeudi 10 octobre 2019

Wayland goal - Call for Action

KDE community has elected to finalize the transition to Wayland and embrace the future of desktop.

This entails making Plasma running smoothly under Wayland, but also making sure KDE Apps can run without bugs and missing features. It also means that we want to help the wider Wayland community to fill missing features and fix bugs.

I call App users and developers to try out their favorite app in Wayland and report the issue that may arise. and add wayland as keyword to the bug to keep track on those bugs.

And you don't need a wayland session to test an app, you can do it in wayland within a X session !

kwin_wayland # start an embed kwind_wayland

# In another terminal

gwenview --platform wayland # starts gwenview in the wayland session

Gwenview in Wayland in a X session

We have a page listing how to fix a few pitfalls that applications may have in Wayland.

You can also test Plasma Wayland session of course and report the same way issues that may arise.

You can reach us at #kde-devel or #plasma in or freenode.

More information on the Wayland Goal page

samedi 5 octobre 2019

Recently Used ioslave

With D7446 landing, the new ioslave recentlyused:/ ioslave will become user visible with KDE Frameworks 5.63. This differential revision adds two entries "Recent Files" and "Recent Locations" to the place panel (in dolphin and open/save dialogs)

Recent screenshot

It leverages the ioslave recentlyused:/ introduced in D22144, allowing to access KActivity data. KActivity is the service that provides "recent" elements to kickoff menu and is activity aware as the name suggests.

So now "Recent Files", "Recent Locations" in the places panel share the same underlining data with kickoff.

But recentlyused:/ can be used to create your virtual folders for recent files or folders. For instance

  • recentlyused:/files?type=video/*,audio/*

To filter recently accessed video and audio files.

  • recentlyused:/files?path=/home/meven/kde/src/*&type=text/plain

To filter recently accessed text files in any subdirectory of /home/meven/kde/src/

  • recentlyused:/locations?path=/home/meven/kde/src/*

To filter recently accessed folders in any subdirectory of /home/meven/kde/src/

You can read the documentation for more details.

When working on this new feature, It was a great time to improve KActivity. So I allowed KActivity to ingest data from gtk applications in differential D23112.

I want to thank Ivan Lukić for building KActivity service and library and reviewing most of this work. And I want to thank all the other reviewers involved.

vendredi 26 juillet 2019

KDE First Contributions and first sprint

I have been a KDE User for more than 10 years. I really love KDE community, Plasma and its apps. I have been reading eagerly Nate Graham's blog He gave me the inspiration to start contributing.

It has been a opportunity to learn some C++, Qt and some Qml.

So far I am very happy to have contributed a few features and bug fixes :

And a few less noticeable as well.

And I have quite a lot more in the back of my head. I am close to completing adding click-to-play to video and audio previews in dolphin information panel.

Usablity & Productivity Sprint in Valencia

I participated last month to the Usablity & Productivity Sprint in Valencia. I have been very happy to meet some great KDE community members from three continents and 9 countries.

There I improved the kinfocenter consistency thanks to the help of Filip and Marco and added a link from the system battery plasmoid to the corresponding kinfocenter kcm. I started to work on a new recently used document ioslave that will match the same feature as in kicker/kickoff. Adding some consistency and activity awareness to dolphin and KDE Open/Save dialogs. I learned about Kwin debugging with David Edmundson. And I had great discussions with the people there.

I am going to Akademy 2019 !

And since I am a big fan of rust-lang, this will be a nice opportunity to debate on the matter and on the future of KDE.

mercredi 27 juin 2018

Appending your website name at the end of its pages titles with middleman and slim

If you use middleman and the nice template solution slim you might encounter the same need as I did: appending your site name at the end of your page titles without hardcoding it everywhere.

I found a simple solution, in my layout I added:

    - if
        title= + " | My Website"
    - else
        title My Website

When in your slim pages you have :

title: My page title

You end up in your generated code using middleman with the title

<title>My page title | My Website</title>

And if the page has no title it will default to :

<title>My Website</title>

This was found when trying to improve diesel documentation.

I hope this can be useful to somebody else.

dimanche 8 janvier 2017

Yet another sudoku solver, in rust

I have been quite interested recently with the new languages Go and rust. Go and rust have some very nice new features and their design and tooling reflects the standards of this days. So I have been hacking with go and rust.

I share this piece of rust code that solves sudoku, in the hope it will be useful to someone. It is not very much optimized as the algorithm is naive, but the purpose of this code was to get more comfortable with rust.

fn print_grid(g: [Option<i32>; 81]) {

    let mut cnt = 0;
    let mut line = 0;

    for &x in g.iter() {

        cnt = cnt + 1;

        match x {
            Some(i) => print!("{}", i),
            None => print!("_"),

        if cnt == 9 {
            line = line + 1;
            cnt = 0;
            if line == 3 {
                line = 0;
        } else if cnt % 3 == 0 {
            print!("   ");

        } else {
            print!(" ");

fn check_grid(g: [Option<i32>; 81]) -> bool {

    // check lines
    for x in 0..9 {
        let i = 9 * x;
        let val = [i, i + 1, i + 2, i + 3, i + 4, i + 5, i + 6, i + 7, i + 8];

        for v in 0..(val.len() - 1) {
            let valv = g[val[v]];
            if valv != None {
                for c in 1..val.len() {
                    let valc = g[val[c]];
                    if valc != None && val[v] != val[c] && valv == valc {
                        // println!("Block false at {}", x);
                        return false;

    // check columns
    for x in 0..9 {
        let val = [x, x + 9, x + 18, x + 27, x + 36, x + 45, x + 54, x + 63, x + 72];

        for v in 0..(val.len() - 1) {
            let valv = g[val[v]];
            if valv != None {
                for c in 1..val.len() {
                    let valc = g[val[c]];
                    if valc != None && val[v] != val[c] && valv == valc {
                        // println!("Block false at {}", x);
                        return false;

    // check blocks
    for x in 0..9 {
        let mut i = 3 * (x % 3);
        if x > 2 {
            i = i + 27;
        } else if x > 5 {
            i = i + 54;

        let val = [i, i + 1, i + 2, i + 9, i + 10, i + 11, i + 18, i + 19, i + 20];

        for v in 0..(val.len() - 1) {
            let valv = g[val[v]];
            if valv != None {
                for c in 1..val.len() {
                    let valc = g[val[c]];
                    if valc != None && val[v] != val[c] && valv == valc {
                        // println!("Block false at {}", x);
                        return false;

    return true;

fn is_grid_complete(g: [Option<i32>; 81]) -> bool {
    let mut ret = true;
    for &x in g.iter() {
        match x {
            Some(_) => {}
            None => {
                ret = false;
    return ret;

fn clone_grid(g: [Option<i32>; 81]) -> [Option<i32>; 81] {
    let mut new_g: [Option<i32>; 81] = [None; 81];
    for x in 0..g.len() {
        new_g[x] = g[x];
    return new_g;

fn solve_grid(g: [Option<i32>; 81]) -> Option<[Option<i32>; 81]> {

    if is_grid_complete(g) {
        return Some(g);

    for x in 0..g.len() {
        match g[x] {
            Some(_) => {}
            None => {

                let mut checked: [bool; 9] = [false; 9];

                for v in 1..10 {

                    let mut new_g = clone_grid(g);
                    new_g[x] = Some(v);

                    checked[(v - 1) as usize] = true;

                    if check_grid(new_g) {
                        match solve_grid(new_g) {
                            None => {
                                if checked == [true; 9] {
                                    // the path is a dead end
                                    return None;
                                } else {

                            Some(gx) => return Some(gx),

                if checked == [true; 9] {
                    // Detected a dead end
                    return None;

    return None;

fn parse_grid(grid_string: &str) -> [Option<i32>; 81] {
    let mut grid = [None; 81];

    let mut i = 0;
    for s in grid_string.split_whitespace() {
        match s {
            "_" => {}
            val => {
                grid[i] = Some(val.parse::<i32>().unwrap());
        i = i + 1;

    return grid;

fn main() {
    let grid_string = r#"
            1 _ _   _ _ _   _ _ 3
            _ 4 _   _ _ 9   2 6 _
            _ _ _   7 _ _   _ 5 4

            _ _ _   1 7 _   9 _ _
            _ _ 2   _ _ _   6 _ _
            _ _ 3   _ 9 5   _ _ _

            2 7 _   _ _ 1   _ _ _
            _ 8 9   3 _ _   _ 7 _
            6 _ _   _ _ _   _ _ 2"#;

    let grid: [Option<i32>; 81] = parse_grid(grid_string);


    match solve_grid(grid) {
        Some(g) => {
            println!("Grid complete !");
        None => println!("Couldn't solve the sudoku"),


You can just, given you have installed rust.

cargo build

dimanche 30 juin 2013

Uluru, Kata Tjula et Kings Canyon

Je suis parti avec un américain et un hong kongais en road trip à la découverte des sites d'intérêt du centre rouge : Uluru, Kata Tjula et Kings canyon.

Notre trip a duré 3 nuits et 4 jours.

Uluru est très surprenant quand on s'approche, cette grosse masse rocailleuse. Il est beaucoup visité. Il a une belle marche Uluru à faire.

La marche dans Kata Tjuta est très sympas. Le trip a été excellent, J'ai adoré déguster un verre de vin devant un feu en face de Uluru. Les petits ennuis mécaniques ne faisant qu'ajouter du charme et du suspens au périple.

En circulant dans le red centre, on s'attend surtout à voir des kangooroos. Mais j'ai eu davantage l'occasion de voir dingos, chevaux et chameau.

A l'heure où je publie ce billet, je suis en vol pour la France.

lundi 17 juin 2013

Kakadu & Litchfield

Après avoir passé quatre jour à Darwin, j'ai loué avec un danois, un allemand et un néerlandais un 4x4 pour passer 5 jours dans les parcs nationaux de Kakadu et Litchfield. J'ai pas été déçu.

Kakadu était un parc que je tenais particulièrement à visiter. Et bien que l'on y est passé plus de trois jours, cela ne m'a pas paru suffisamment long pour apprécier la dimension de ce parc. Il est plus grand qu'un département français.

Le parc regorge de paysage somptueux. La faune et la flore sont magnifiques et parfois uniques au monde. Il se compose majoritairement d'un bush assez classique parsemé de termitières de diverses tailles.

Mais les parties les plus intéressantes sont les escarpements à l'est où se trouvent les chutes d'eau.

Et au nord, les zones humides qui regorgeant de vie en particulier d'oiseau. Les nombreuses rivières et billabongs hébergent les plus grands reptiles au monde, les crocodile d'eau salée, que je n'ai eu la chance que d'entrapercevoir.

C'est un bon endroit pour faire des randonnées dans le bush. C'est aussi un bon endroit pour pratiquer du off-road en 4x4 sur des pistes de gravier ou des pistes pour 4x4.

On peut y croiser dingo, wallaby, chevaux, buffles, divers iguanes et même des ânes sauvages.

Litchfield est très beau également mais moins spectaculaire et moins grand. Il a l'avantage d'être bien plus facile à visiter, puisque seuls quelques sites d'intérêt nécessite l'usage d'un 4x4.

Je suis parti à Alice Springs au Sud deux jours après être rentré à Darwin.

dimanche 9 juin 2013

Cairns et vers Darwin

J'ai passé un mois à Cairns. J'y ai fait pas mal la fête. J'y ai trouvé un boulot mais pas génial et qui n'a pas duré. J'ai pu profité du lagoon et du beau temps. Mais il s'est dégradé au fil du temps où j'y suis resté.

J'y ai beaucoup lu profitant d'un hamac avenant. J'y ai fait du saut à l'élastique, on ne vie qu'une fois. J'ai pu faire une escapade avec 7 autres backpackers pour faire le tour des chutes d'eau aux alentours de Carins.

Et bien sûr j'ai rencontré un paquet de gens. Mais il était temps de partir, les jours se suivent et se ressemblant trop.

Puis j'ai rencontré une fille qui cherchait des gens pour compléter un camping car pour faire Cairns Darwin en 4 jours. Il s'agit d'une relocation. On déplace le véhicule en échange de quoi on voyage sans payer la location, seulement l'essence. On était cinq, trois français, une française et un allemand. Partis vendredi après midi, arrivés mardi après midi. On a traversé des zones semi désertiques, aperçu des émeus sur le bord de la route des chats mais surtout des kangaroos et wallabies écrasés servant de dîner à des hordes de milans, de corbeaux et d'aigles.

On me l'avait et j'ai pu le vérifier, les nuit sont froides dans le nord ouest du Queensland dans l'outback. Puis une fois atteint le Northern territory et en commençant à remonter au nord cela se réchauffe. La végétation se densifie quelque peu. On s'est très peu arrêté sauf pendant les deux derniers jours.

mardi 16 avril 2013

Lemon picking

Le thining s'est terminé le 22 février. Ensuite, je suis parti à Childers pour attendre la reprise du ramassage de citron. J'ai du patienter deux semaines à cause du temps.

L'hôtel backpacker dans lequel je suis resté était plein de différentes nationalités, l'ambiance était très bonne.


J'ai terminé de ramasser des citrons le 9 avril brusquement, puisque l'on a appris que cela terminait la veille. Le boulot était pas trop mal. Comme c'est payé à la bin, on s'arrête pas beaucoup de travailler. Il y a juste deux désavantages on s'écorche et on se salit. On s'écorche comme les citronniers sont pleins d'épine et on se salit car les arbres sur lesquels on travaillait ont passé 4 jours sous les eaux au moment des inondations.

On avait une bonne ambiance de travail y compris avec notre superviseur.

Mais le boulot ne permettait pas d'économiser. On a travaillé qu'une seule fois une semaine complète en 5 semaines travaillées.


Puis il y a une semaine je suis parti dans un backpacker à Bundaberg pour bosser dans les mandarines. Le problème est que remplir une bin de mandarine est deux fois plus dur, les fruits étant plus petits et moins denses. De plus on ramasse non seulement par rapport à la taille du fruit mais aussi par la maturité du fruit qui se traduit par sa couleur. J'ai quitté ce boulot.

Je vais aller vers le nord mais je ne sais pas encore où. À priori Cairns.


mardi 12 février 2013

Inondations et thining à Gayndah

Inondations à Bundaberg

Fin janvier s'est pas passé une terrible tempête tropicale. Elle était prénommée Oswald et a parcouru quasiment toute la côte est de l'Australie du Nord au Sud. Il a plus ici en 3 jours plus que ce qu'il pleut d'habitude en une année. S'en est suivi d'importantes inondations, un peu partout. La ville de Bundaberg où j'étais pour fêter l'Australia day, la fête nationale, s'est trouvé isolée par voie terrestre.

Plusieurs ponts ont été submergés, un hôpital a été évacuée par hélicoptère, les quartiers nord de la ville était en majeure partie sous les eaux et étaient totalement coupés du monde.

La ville de Gayndah a subi également d'importants dégâts. Des conteneurs emportés par les flots ont fissuré le pont de la ville.

Nous avons du attendre plusieurs jours avant de pouvoir rentrer à Coalstoun Lakes, le temps que l'eau se retire et que les routes inondées soient de nouveau accessibles.

Inondations à Bundaberg

Inondations à Bundaberg

À notre retour nous avons découvert une étendue d'eau de pluie derrière la maison. Elle forme un petit lac et à ce jour, il ne s'est toujours pas vidé. Les canards et grenouilles s'y plaisent à merveille.

Lac derrière la maison

Je travaille depuis le premier février dans le thining. Le job consiste à arracher de mandarinier le trop plein de fruit qu'ils ont à leurs branches à l'aide d'un râteau.

Une madarine et un serpent

De temps à autre on rencontre des serpents. Le premier jour, un serrpent à attaquer un collègue, sans conséquence heureusement. Mais le plus souvent on les voit dans les arbres et on les évite simplement. L'équipe de dix personnes à quinze personnes est composé de gallois, allemand, néo-zélandais, écossais, anglais et italien.

Rangée de mandarinier

Panorama des abords de la maison de Coalstoun Lakes

mardi 15 janvier 2013

Gayndah / Coalstoun Lakes / Biggenden

J'ai commencé à travailler dans une ferme juste après noël, le 27 décembre. Je fais du ramassage de pastèque et du ramassage de pierre dans les champs à l'occasion. La terre est volcanique ici et les champs contiennent encore beaucoup de débris rocheux qui complique la vie des fermiers.

Nuage de chauve-souris à Gayndah

Le travail est dur. Levé vers 4h du matin pour commencer à 5h. On ramasse plus de 40 tonnes de pastèque par jour. Je fais équipe avec des australiens, des hollandais, des gallois et des français.

Chargement d'un camion

Une araignée

Les patrons sont très gentils et rendent le bouot plaisant. L'exploitation est tenue par deux frères, aidés par la femme d'un des deux et les fils quand ils sont en vacances. L'un des deux frères nous a prêté une maison inhabitée qu'il a récupéré et qui se situe à deux pas de chez lui. J'y habite depuis deux semaines avec les deux hollandais et deux français qui nous ont rejoins il y a deux jours.

La maison dans laquelle je réside

Des Cacatoès rosalbin ou galah en anglais

Je voyage désormais en solo m'étant séparé de mes deux compagnons après après avoir trouver le job. Ils voulaient faire autre chose.

Trouvez le kangooroo

Il y a pas mal de balade à faire dans les environs. On se situe dans un espèce de plateau volcanique entouré par des volcans de 63 millions d'année. J'en ai visité un jeudi. Certains cratères contiennent un lac.

Un arbre en haut d'un volcan

Bonne année, happy new year, bloavez mad

mardi 18 décembre 2012

Suite du périple, Queensland


Python dans le parc de Bundjalung

Après un périple de 1100 km environ et de près d'un mois sans se fouler, nous sommes à Bundaberg, première grande étape du voyage. C'est une ville entourée de champs où les backpackers sont légions. Sur la côte à moins de 10 kilomètres, on peut observer des tortues pondre, mais à la nuit tombée seulement.

Depuis près de deux semaines je suis dans le Queensland. J'ai passé quelques temps du côté de Bribie Island, une île de sable, près de Calbooture au Nord de Brisbane. Les 4x4 peuvent y rouler sur la plage sous réserve d'avoir un permis pour.


Pêcheur de requin, une heure de bataille


Couché de soleil à Bribie

Puis nous sommes allés à Noosa Heads, très sympathique cité balnéaire. Dépendamment de la météo, on peut voir certains jours des centaines de surfers. Et suivant la météo c'est soit longboard, ou short board.



Au parc national de Noosa, nous avons pu observer un koala dormir... Il attire les touristes, et se prénomme Dave à ce que l'on m'a dit.

Nous sommes maintenant à la recherche de boulot. Nous allons y rester pour les fêtes.

Merry Christmas.

vendredi 16 novembre 2012

Les oiseaux australiens

15 jours plus tard je suis toujours à Sydney mais plus pour très longtemps. Je suis sur le point d'acheter une voiture avec deux autres français et partir ensuite vers le Nord en roadtrip.

Pour frimer un peu je vais montrer quelque photos d'oiseaux australiens. C'est quelque chose que l'on remarque assez vite, il y en a beaucoup, n'importe où. Ils sont bruyant, souvent grands et beaux.


Le Cacatoès à huppe jaune. Ils sont très communs et difficiles à rater à cause de leur chant cri strident et fort qu'ils poussent n'importe quand.



Il y a des pélicans, que l'on peut trouver le long de la côte.


Il y a des échassiers de tout genre, comme ici un héron garde-bœufs (Cattle Egret en anglais).


Un oiseau au doux joli nom de Cassican flûteur. Ça ressemble à une pie.



Le Vanneau soldat (Masked Plover) fait son niz à même le sol, comme ici au milieu d'une pâture d'où la bouse...


Le Laughing Kookaburra (Martin-chasseur géant en français) est un oiseau très plaisant dont le chant est très caustique.

Je ne montre ici que les photos à peu près réussies. J'ai vu en réalité beaucoup plus d'oiseaux d'espèces différentes mais sans avoir eu le temps de prendre de bonnes photos d'eux. Il manque notamment le Loriquet à tête bleue (Rainbow Lorikeet), qui est très commun ici et très coloré comme son nom anglais l'indique.

mardi 30 octobre 2012

NSW côte Sud et animaux sauvages

Je suis descendu la semaine passée dans le sud du New South Wales, à Berara, puis près de Narooma dans le parc national d'Eurodalla. Cela a été l'occasion de voir mes premiers kangooroos et wallabies en plein jour. J'ai pu voir aussi de nombreux autres animaux, baleines, dauphins, échidnées, oiseaux en tout genre...

Les échidnés ressemblent à de gros hérissons. J'ai eu la chance de tomber dessus deux fois en une semaine, alors que ce n'est pas un animal facile à trouver. IMG_0238.JPG

Une journée à la plage, on a pu observé plusieurs fois plusieurs baleines faisant leur cabrioles non loin de la côte. C'est assez difficile à photographier, elles peuvent rester plus de 20 minutes sous l'eau et leurs acrobaties ne durent que quelques secondes. Heureusement c'est plutôt facile à repérer grâce à leur taille. IMG_0381.JPG IMG_0372.JPG

Une journée nous avons été voir les chutes de Tuross. Elles se situent à 2 bonnes heures de route dans l'intérieur des terres. Les routes sont en fait des pistes de montagne, pas très rassurante à vrai dire. Et le voyage n'en valait pas tellement la peine.


Mais cela a été l'occasion de voir quelques animaux sur la route, des walabies, serpents, et iguanes. IMG_0315.JPG

Sur plusieurs lacs, j'ai pu observé des cygnes noirs. IMG_0352.JPG

Je suis de retour à Sydney avant de repartir dans quelques jours vers une destination pour l'instant incertaine.

mercredi 17 octobre 2012

Les plages de Sydney

Ces derniers jours j'ai pu visiter deux plages de Sydney. L'une près de Cronulla, n'est accessible qu'en 4x4.


L'autre, celle de Manly est une plage de surfer.


Et toujours plus de photos de Sydney :


J'ai vu ma première baleine aujourd'hui depuis le ferry qui nous menait à Manly.

dimanche 14 octobre 2012

De Kuala Lumpur à Sydney

Atterrissage à Kuaka Lumpur à 6h10, 00h10 heure française. J'ai 14h à passer sur place, la visite de la ville s'impose donc. En dehors des bâtiments, on ressent très vite la chaleur (aux alentours de 30°C) et l'humidité. Le temps est beau mais instable, d'ailleurs c'est parti à l'orage à un moment.



Départ dans la nuit pour Sydney, encore 7h30 de col et 3 heures de décalage horaire et le voyage sera terminé. Ici il fait plus frais et très ensoleillé. Premier tour dans le port de Sydney l'après-midi. Mais avec la fatigue cumulée, cela n'a pas été très long.


mercredi 10 octobre 2012

Départ en Australie

Demain départ pour l'Australie.

Je suis à 18 heures du décollage à l'heure ou j'écris ces lignes.

Petite escale à Kuala Lumpur et c'est parti pour l'aventure.

Pour l'instant j'apprécie la grisaille de Paris en comptant les heures.

Paris la grisaille

dimanche 15 janvier 2012


Juste un billet pour promouvoir deux vidéos de conférences qui se sont passées en décembre à Berlin à l'occasion du Chaos Computer Club ( Chaos Computer Club (en) ).

Je vous recommande vivement de les regarder. Si vous aimez internet davantage que la censure, ou la distribution des savoirs plus que le contrôle.

28c3: The coming war on general computation

Il y a en relation un article sur linuxfr ( Guerre et paix : Tolstoï au 21e siècle, par Cory Doctorow au 28C3 ).

Tor est le plus connu des outils d'anonymisation sur internet. Il est combattu par les gouvernements, les même qui privent à leur citoyen certaines libertés élémentaires. Son actualité est très animée.

28c3: How governments have tried to block Tor

Je qualifie ce billet de politique car il en traite. Les questions soulevées sont des choix de société, d'éthique, rien de moi.

jeudi 11 février 2010

Fosdem 2010

J'étais de passage au fosdem 2010.

On pouvait croiser des machines bizarres tels que Reprap et autre makerbot dans les stands.

Cette année je n'ai assisté que à deux conférences, mais pas des moindre.

Minix 3

La première était une conférence de Andrew Tanenbaum, père de Minix. Minix est un système POSIX compliant développé par son équipe de recherche et lui même.

La dernière version Minix 3 présente de très belles fonctionnalités en terme de fiabilité. Il est capable de détecter des plantages de driver, d'utiliser plusieurs implémentation de driver pour un même périphérique et de basculer l'usage de l'un à l'autre sans perte de données.

Il prépare comme nouvelle fonctionnalité entre autre la mise à jour du noyau sans redémarrage.

Et comme d'habitude une bonne conférence se ponctue par quelques répliques cocasses :

Licensed under BSD Do whatever you want
- Except sue us

Ou bien encore

Yes, The mascot is a racoon :
Because it is small, smart, agile
And most importantly, it eats bugs.


La deuxième conférence à laquelle j'ai assisté était animé par un développeur derrière Rockbox, le firmware ouvert pour lecteur mp3.


C'est un projet de 8 ans, qui vise à proposer un firmware alternatif et libre pour un maximum de lecteur audio. Il s'installe sur ipod(sauf touch), archos etc...

Je l'apprécie beaucoup, l'ayant utilisé auparavant dans feu mon ipod. Il faut se rendre que la masse de travail à fournir pour supporter un seul baladeur est énorme. Le reverse engineering prend une part énorme du travail. Et la tâche se complexifie, les constructeurs corsent de plus en plus les choses.

Malheureusement j'ai manqué une conférence qui semblait forte intéressante : Scaling facebook.

vendredi 11 décembre 2009

Weave par Mozilla la sauvegarde de profil fait maison

Avec la sortie des extensions dans google chrome et la version 4, il me vient une idée : Et si pour synchroniser mes marques-pages je pouvais me passer des serveurs de google pour changer. Et mieux encore, et si, je pouvais synchroniser les deux meilleurs navigateurs du moment chrome et firefox.

J'en rếvais, Mozilla l'a déjà fait. Le projet dont je parle s'appelle Weave. Il est issu du Mozilla Labs, la pépinière d'innovation de mozilla. Mozilla Weave Il vise à permettre de fusionner ses marques-pages d'un poste à l'autre et plus encore, de manière sécurisée et in the cloud (Un buzzword, un).

D'un côté une extension firefox ou fennec (le firefox mobile) qui récupère les données et de l'autre un serveur qui les stockent et les rend disponible n'importe quand.

Ce type de fonctionnalités n'est pas nouveau, et google le propose dans chrome directement sans extensions. La grande différence avec les autres services du genre et celui de google est selon moi son ouverture. Le code est entièrement ouvert côté client (l'extension pour firefox) et, chose moins commune, côté serveur.

Résultat : rien n'empêche d'héberger son propre serveur weave pour plus d'indépendance vis à vis de google ou même de mozilla. C'est ce que j'ai fait grâce à la procédure du wiki de weave (attention la documentation a des défauts, à suivre avec précaution). Le serveur est en Php, ce qui simplifie grandement le déploiement.

Capture extension Weave

L'outil est d'ores et déjà fonctionnel et la version 1.0 est en préparation.

Dans ces conditions, à quand une synchronisation des marques-pages et paramètres de chrome avec weave et mieux encore avec firefox. Le tout totalement indépendamment de google !

Je pense que ce n'est qu'une question de temps, sinon je m'intéresserais bien à l'écriture d'une extension pour chrome ;).

- page 1 de 4