chicha a écrit 264 commentaires

  • # Déjà très stable

    Posté par . En réponse au journal Le nouveau Firefox pour Android en pré-finale. Évalué à 3 (+2/-0).

    Je l'utilise depuis plusieurs mois comme remplaçant de la version Android stable. Léger, simple, rapide, stable, il ne me manque presque rien par rapport à la version stable. La gestion des mots de passe se fait via Firefox Lockwise, qui ne marche pas super bien, c'est le seul bémol.

  • # Première page

    Posté par . En réponse au journal Openclipart est en mode maintenance, vive FreeSVG !. Évalué à 0.

    En regardant la première page du site je vois un grand nombre d'images à caractère communautaire, religieux et politique. Il n'y en avait pas autant il y a quelques années. C'est à l'image de notre société actuelle : chacun pour soi dans sa communauté. Je trouve ça bien triste que le libre succombe à cela également.

  • # Firefox sous Wayland sous Arch

    Posté par . En réponse à la dépêche GNOME 3.34. Évalué à 9.

    Grâce à ton article (et à celui sur Firefox) je découvre que je peux activer Wayland pour Firefox. Je regarde l'état du sujet pour ma distro (Archlinux) et je vois que c'est aussi simple qu'une variable environnement MOZ_ENABLE_WAYLAND=1. Le gain en fluidité est assez impressionnant. Reste à voir la stabilité sur le long terme (pas de crash même pour les vidéos pour le moment).

  • # users.rust-lang.org est là pour t'aider

    Posté par . En réponse au journal Notifications d'hébergements pour le Hellfest en Rust. Évalué à 5.

    Bonjour,

    Je suis ravi que tu te sois diverti avec Rust. Pour ton erreur du Borrow Checker c'est un peu difficile de t'aider avec les infos que tu donnes. Le plus utile aurait été l'erreur du compilateur elle même.

    A l'avenir je t'invite à parcourir le forum des utilisateurs de Rust et à poster tes questions si la réponse n'y est pas déjà. La communauté Rust est vraiment super.

    Au final j'ai un peu mieux compris ces histoires de propriété. J'ai presque envie
    d'avoir un nouveau projet à écrire pour essayer d'autres constructions plus
    complexes pour me refaire fesser par le borrow checker. Euh, ça veut dire que
    j'ai passé le bizutage ? Ça y est, je suis un rustacean ?

    Sans prétention et sans vouloir te décourager, je pense que tu pourras te considérer rustacean quand tu n'auras plus d'erreurs du Borrow Checker ou que tu seras capable de toutes les corriger en comprenant réellement ce qu'il se passe derrière. Sans doute suis-je médiocre, mais il m'a fallu de longues semaines de pratique avant d'être vraiment à l'aise avec l'ownership, les lifetimes, et quelques subtilités des trait avec l'object safety.

    En revanche une fois le cap passé c'est que du bonheur. Quand je reviens à un autre langage (Go, Python, C++), je vois toutes les horreurs que ces langages laissent faire au développeur à l'insu de leur plein grès et je me sens en grande insécurité.

  • # Nostalgie

    Posté par . En réponse à la dépêche Neuf ans avec Mageia. Évalué à 6.

    Mon premier contact avec Linux c'était avec une Mandrake 8 en 2001 puis Mandrake 9. A l'époque c'était le top en terme d’expérience utilisateur pour un débutant et/ou une utilisation bureau dans le monde entier. Bien plus simple et esthétique qu'une RedHat ou une Debian.

    Ubuntu n'existe à mon sens que parce que Mandrake n'a pas réussit à se transformer en entreprise. Un cas classique de la difficulté de notre pays à faire grandir les startups, malheureusement.

    Cela me rend heureux de savoir que Mageia existe encore, même si à titre personnel mes besoins ont changé et j'utilise Arch.

    Pour être honnête j'ai un peu de mal à comprendre en quoi Mageia se différencies des autres distros.

  • # Miniflux

    Posté par . En réponse au journal geekttrss le client android continue de progresser. Évalué à 0.

    Je m'auto héberge avec Miniflux qui a une interface web très correcte pour le mobile.

    C'est le meilleur lecteur que j'ai utilisé depuis bien longtemps. Il est super simple a déployer (codé en Go) et est très performant grâce au moteur de recherche de text de PostgreSQL.

    Il nécessite cependant une DB PostgreSQL.

  • [^] # Re: OSM est incroyable

    Posté par . En réponse à la dépêche Interview de Cédric Frayssinet contributeur d’OpenStreetMap et formateur. Évalué à 3.

    Je suis d'accord mais j'ai de l'espoir : OSMAnd intègre Mapillary qui est un équivalent à StreetView avec des données libres. J'ai été surpris d'avoir du StreetView sur un chemin de randonnée en Italie (certes très touristique), ça m'a bien aidé car les courbes de niveau sont quand même difficiles à apprécier sur une carte.

  • # OSM est incroyable

    Posté par . En réponse à la dépêche Interview de Cédric Frayssinet contributeur d’OpenStreetMap et formateur. Évalué à 10.

    J'utilise OSM sur mon téléphone via l'application OSMAnd depuis peu. J'ai véritablement halluciné de la qualité des cartes notamment en mode randonné. La concurrence, Google Maps en premier, est loin derrière.

    On se prend au jeu et assez vite on a envie de contribuer, c'est hyper simple depuis le site d'OpenStreetMap.

    Un grand merci à toi Cédric ainsi qu'à tous les anonymes pour ce travail de dingue.

    J'ai envie de croire qu'aucune entreprise privée ne pourra jamais atteindre le niveau de qualité d'OSM dans les 10 prochaines années. La masse de bénévoles qui donne de leur temps gratuitement avec passion est trop grosse, même pour une entreprise comme Google.

    Dans un futur plus lointain on peut imaginer des satellites et de l'IA qui cartographient le monde en temps réel et qui croisent les données avec tout ce qui remonte de nos téléphones et des bases de données de cadastre et autre, mais même là je doute que ces cartes nous indiqueront une fontaine d'eau potable sur un GR en altitude …

  • [^] # Re: Passer à 30 : c'est fait !

    Posté par . En réponse à la dépêche Fedora 30. Évalué à 4.

  • [^] # Re: Bravo !

    Posté par . En réponse à la dépêche Pijul, contrôle de version et théorie des patchs, version 0.12. Évalué à 1.

    Je prend le point. Ma remarque s'applique tout autant aux autres librairies orientées sécurité de l'écosystème Rust. J'avais eu la même appréhension avec l'implémentation SSH de Go au début, mais maintenant je l'utilise sans crainte. Il en sera certainement de même avec Trustssh dans le temps !

  • # Bravo !

    Posté par . En réponse à la dépêche Pijul, contrôle de version et théorie des patchs, version 0.12. Évalué à 6.

    Bravo Pierre-Étienne pour votre remarquable travail.

    C'est un vrai challenge que de proposer une alternative à Git, mais le projet me semble bien parti.

    M'étant mis à Rust je regarde Pijul évoluer depuis quelqu'un temps, sans m'y être vraiment mis. Ma crainte principale n'est pas liée à Pijul directement mais à la jeunesse de l'implémentation en Rust de certains algos et protocoles de sécurité comme l'implémentation de ssh via votre projet Thrussh.

    Mais cet article m'a donné envie de m'y mettre beaucoup plus sérieusement. Je ne manquerai pas de venir vous voir sur Nest si besoin !

    Bon vent à vous.

  • [^] # Re: Cool, on parle d'un soft qui gère le RAW ;)

    Posté par . En réponse à la dépêche darktable 2.6.0. Évalué à 7.

    Tu ne seras pas déçu, c'est un excellent logiciel qui n'a pas grand chose à envier aux autres logiciels sous Windows ou Mac. En revanche son ergonomie est très spéciale et je n'arrive toujours pas à m'y faire.

  • [^] # Re: Utilisez déjà-dup.

    Posté par . En réponse au journal Timeshift, l'outil de sauvegarde de Linux Mint 19 : oui mais attention. Évalué à 1.

    NB. Comme toute sauvegarde de type déduplication à la maille fichier (basée sur rsync et des >hardlinks)) ou de type déduplication "bloc", il faut impérativement un double ailleurs (dans le >cloud par exemple) car un même bloc de données peut être partagé entre toutes les versions d'un >fichier ou plusieurs fichiers). Si le secteur supportant ce bloc devient corrompu on a perdu le >fichier.

    C'est un point important en effet. Avec restic (j'imagine que c'est pareil pour les autres) je lance régulièrement restic check pour vérifier l'intégrité de mes sauvegardes. J'ai également une copie complète de ma sauvegarde sur un disque usb en dehors de chez moi (cold backup). Je synchronise ce disque environ 2 fois par an.

    Restic a l'avantage d'être codé en Go ce qui facilite grandement son déploiement dans des environnements hétérogènes. En revanche, comme tu l'as souligné, la taille des blocs n'est pas paramétrable. En pratique une sauvegarde Restic prend plus de place qu'une sauvegarde Deja-Dup, si comme moi vous modifiez assez peu les fichiers existants (photos et vidéos).

  • [^] # Re: Utilisez déjà-dup.

    Posté par . En réponse au journal Timeshift, l'outil de sauvegarde de Linux Mint 19 : oui mais attention. Évalué à 4. Dernière modification le 15/11/18 à 17:38.

    J'ai longtemps utilisé déjà-dup et j'en ai été très satisfait. Mais il a un gros défaut : il est obligé de faire un full backup de temps en temps pour avoir un point de restauration si l'un des backups incrémentaux est corrompu.

    C'est un gros inconvénient pour moi qui ai un disque de 500GO avec plein de photos et vidéos personnelles sur un ordinateur portable connecté en Wifi à mon NAS qui reçoit les backups via Samba. Il faut toute une nuit pour faire un full backup (contre 1 heure via le LAN et un cable réseau).

    Je suis donc passé à Restic qui est aussi incrémental mais qui utilise de la dé-duplication au lieu de delta : non seulement ça lui permet de se passer de point de full backup intermédiaire, mais ça lui permet également de ne pas sauvegarder 2 fois des morceaux de fichiers identiques.

    Cerise sur le gâteau Restic fournit un serveur (tout a fait optionnel) que j'ai installé sur mon NAS et qui me permet de faire des backups via http et me passer de Samba.

    Restic est également cross-platform (codé en Go), Linux, Mac, Windows.

    Son seul inconvénient est qu'il n'existe pas d'interface graphique à Restic pour le moment à ma connaissance. J'ai tout configuré à la main avec un service systemd pour mes users.

  • # Un peu de finesse ...

    Posté par . En réponse au journal Nouvelle chaire Sciences du logiciel au Collège de France.. Évalué à 3.

    Merci pour cette bonne nouvelle. Un peu de finesse dans notre monde de brut fait du bien.

  • [^] # Re: Disparition du RSS

    Posté par . En réponse à la dépêche Firefox 63. Évalué à 6. Dernière modification le 25/10/18 à 16:02.

    Après avoir vécu la fermeture de Google Reader et de Digg Reader j'ai décidé d'auto-héberger mon lecteur de flux. Pour ça j'utilise Miniflux.

    Je ne regrette pas une seconde tant c'est simple et ça marche super bien.

    Pour en revenir à votre problème, Miniflux fournit un signet intelligent qui ouvre Miniflux avec en paramètre le site sur lequel vous êtes au moment où vous cliquez sur le signet, et en extrait les flux disponibles. Vous n'avez plus qu'à accepter et éventuellement catégoriser le flux.

    Miniflux, le lecteur de flux sans reflux !

  • # Patience

    Posté par . En réponse au journal Forker ou ne pas forker ?. Évalué à 10.

    Je te recommande un peu de patience et surtout d'avancer dans ton coin.

    Prend le code en main, développe les fonctionnalités qui te manquent. Quand tu es content de ton travail et que ça marche bien fait une autre pull request au développer. S'il n'en veut pas laisse tomber et continue à avancer dans ton coin. Refais un point avec toi même et le développeur dans 6 mois et prend ta décision de forker à ce moment là.

  • # Go -> Rust

    Posté par . En réponse au journal Go et Rust, lequel est le remplaçant du C ?. Évalué à 8.

    Après avoir adoré Go je suis passé au Rust et je n'ai aucune envie de revenir en arrière, pour les raisons suivantes :

    • Rust est plus compliqué (Gestion de la mémoire, Generics, …) mais passé la barrière on se rend compte à quel point Go est trop simple, trop ennuyeux: une fois passé la magie de Go, mes programmes ont tendance à tous se ressembler, j'avais l'impression de toujours faire la même chose. C'est bien du point de vue industriel, mais c'est barbant du point de vue artisanal.

    • Le mode de développement de Rust est très ouvert, comme Mozilla sait si bien le faire. On retrouve le même esprit que l'on peut avoir dans de nombreux projets libres. Go, quoiqu'on en dise, est verrouillé par Google. La barrière pour contribuer à Rust est beaucoup moins élevée que celle pour contribuer à Go.

    • Le champ d'application de Go me semble plus restreint que celui de Rust, entre autre à cause du garbage collector et de la librairie standard embarquée. Alors que je vois bien Rust corroder les noyaux et l'user space dont les environnement de bureaux (Gnome y songe).

  • [^] # Re: C++ -> Python -> Go -> Rust

    Posté par . En réponse au journal Ready At Dawn passe à Rust. Évalué à 7. Dernière modification le 26/07/18 à 23:34.

    Je n'ai même plus envie d'écrire une seule ligne en Go tellement je le trouve ennuyeux.

    Que veux-tu dire ?

    Go est ennuyeux et c'est totalement assumé par Google: un langage simple, facile à prendre en main, avec juste l'essentiel. On pourrait dire KISS. C'est un gros point fort. Mais le manque de générique et de macro pèse un peu à la longue, même si go generate existe. On passe beaucoup de temps à convertir des slices d'un type à un autre, par exemple, ou a copier du code.

    A la longue je trouvais que mon code était plat, sans saveur. Je n'avais aucun plaisir à le lire, comme on peut avoir du plaisir à lire un très beau code C++. J'ai retrouvé ce plaisir avec Rust.

  • # C++ -> Python -> Go -> Rust

    Posté par . En réponse au journal Ready At Dawn passe à Rust. Évalué à 6.

    J'ai commencé à coder en C++ il y a 18 ans, puis j'ai basculé en Python pendant de longues années chaque fois que je pouvais me passer du C++, puis Go a remplacé Python pour tous mes projets (backend, web, ligne de commande …).

    Depuis quelques mois je me suis mis au Rust. Plus le temps passe plus je m'approche de la productivité que j'avais en Go. Je n'ai même plus envie d'écrire une seule ligne en Go tellement je le trouve ennuyeux.

    La safety de Rust sans garbage collector est génial bien que difficile à maitriser au début. Les macros sont au top. Le "trait system" est brillant: j'en avais déjà terminé avec la programmation objet de papa (héritage notamment) avec le Go, mais Rust apporte de la généricité en plus.

    Pour ce qui est de l'écosystème de Rust (librairies standards, outils de développement), je trouve que ce n'est pas encore tout à fait mature, un cran en dessous de ce que j'avais en Go, bien qu'il y ait des projets vraiment brillant comme Serde, Diesel et Actix. Mais les choses bougent vite, je sens un vrai intérêt pour Rust de la part des développeurs (c'est ma perception, je peux me tromper).

    Enfin Rust n'est pas au niveau de Go pour ce qui est des "green threads" (Goroutines), mais c'est entrain d'être comblé avec l'arrivée prochaine de async/await.

    Un dernier mot : Le support natif du Web Assembly. Je me prend à rêver que je vais pouvoir tout coder du backend au frontend, en passant par mes petits outils en ligne de commande, en Rust, sans une seule ligne de Javascript.

    Bref, Rust c'est à essayer si vous ne l'avez pas déjà fait.

  • [^] # Re: Go ou Rust côté backend, système ou embarqué

    Posté par . En réponse au journal La ronde (boucle?) des langages. Évalué à 5.

    Ce blog post donne des exemples de race conditions en Go.

    On est d'accord en faisant attention on peut se protéger des races conditions. Mais c'est au développeur de faire attention. Go ne peut pas te dire au moment de la compilation si tu es thread safe ou non, mais seulement au runtime en instrumentant le code. Dans un programme lourd il peut être très difficile pour un développeur de garantir la thread safety.

    Rust au contraire garantie la thread safety au moment de la compilation. Il y a de nombreux postes sur le sujet dont celui du blog officiel de Rust.

  • [^] # Re: Go ou Rust côté backend, système ou embarqué

    Posté par . En réponse au journal La ronde (boucle?) des langages. Évalué à 7.

    Donnes toi un peu de temps pour l'apprécier. J'ai du m'y prendre à plusieurs fois pour adopter la bête. J'ai été très découragé au début par la syntaxe et les mécanismes de gestion de mémoire "safe" (borrowing, lifetime).

    Mais en tant que programmeur C tu apprécieras sûrement :

    • Le build système intégré (Cargo), et son lot de modules tiers (crates.io).
    • Le langage a été pensé pour s'interfacer avec le C très facilement.
    • Des structs, des méthodes et des interfaces, mais pas d'héritage (fini la programmation objet de papa qu'on a tous appris à l'école).
    • Des enums vraiment sympa.
    • Des templates. Je ne suis pas fan des templates, mais l'approche de Rust est assez élégante.
    • Une gestion fine de la mémoire, complètement safe et sans l'overhead d'un garbage collector : pas de coredump, pas d'overflow, pas de release after free et autre subtilités qui font la joie des pirates.
    • Thread safety garantie à la compilation (c'est sans sans prix !)
    • Un système de macro puissant.
    • Une cross-compilation intégrée avec support de nombreuses platformes (Windows, Linux, Mac, BSD, ARM, …).
    • Une librairie standards minimaliste pour des conteneurs (Vecteurs, Lists chainées …) que tu peux exclure du link si tu veux faire un binaire minimaliste pour de la programmation embarquée.

    Bref Rust se positionne comme le remplaçant du C, plus que du Java par exemple. Mais clairement la courbe d'apprentissage est longue, à l'opposée de tout ce qui se fait aujourd'hui comme Go ou Swift.

  • [^] # Re: Go ou Rust côté backend, système ou embarqué

    Posté par . En réponse au journal La ronde (boucle?) des langages. Évalué à 10.

    Go brille aussi par son implémentation des processus légers (les goroutines). Rust rattrape son retard avec des async/await qui sont une des priorités de 2018. Mais Rust a un avantage sans prix : La thread safety garantie à la compilation, ce que Go ne pourra jamais offrir.

    Mais il est clair que Rust ça pique pas mal au début, la courbe d’apprentissage est longue (je dirais un bon mois de code pour en apprécier la saveur), alors que Go c'est un des langages les plus faciles qui soit (une demi journée de code pour se faire plaisir).

  • [^] # Re: Une vrai communauté

    Posté par . En réponse au journal un éditeur de code portable par Microsoft?. Évalué à 1.

    Je ne le savais pas :-)

  • # Go ou Rust côté backend, système ou embarqué

    Posté par . En réponse au journal La ronde (boucle?) des langages. Évalué à 7.

    Je code également depuis 20 ans sur une grande variété de plateformes et langages, mais Go et Rust m'impressionnent fortement bien plus que tout ce qui est arrivé depuis le C comme C++, Java, Python, C# ou Swift.

    En ce qui concerne la programmation côté backend, système et embarqué je vois bien Go et Rust régner sans partage dans les années à venir au détriment de C/C++/Python voir Java. Typescript va rafler la mise côté Browser. Pour le reste il restera toujours des langages de niches ou académiques comme R, Erlang, Prolog et autre. Je me demande même si Rust ne finira pas par éclipser Go lorsqu'il sera mûr (encore 2 ans de boulot). Quand le Web Assembly sera stabilisé je me demande aussi si le Javascript continuera à exister …

    Bref Si tu aimes le C il est impossible de passer à côté de Rust (si tu ne l'as pas déjà essayé) !