Journal Résolution pour 2018

35
17
jan.
2018

Cette année, j'ai pris comme résolution de revoir mon « hygiène numérique ». La raison est globalement que j'ai l'impression de perdre le contrôle de ma vie numérique et que les outils sont de plus en plus tournés aux services d'entités commerciales et non pas pour me servir. Il y a bien entendu les récents bugs des processeurs, mais également plein d'autres choses : les publicités en ligne sont de plus en plus souvent des espions, quand elles ne vont pas (...)

Deux failles critiques : Meltdown et Spectre

100
4
jan.
2018
Sécurité

Ces derniers jours, les rumeurs allaient bon train sur les réseaux sociaux suite à l’intégration en urgence d’un gros correctif dans la RC-6 du noyau Linux. Cela allait à l’encontre de toutes les habitudes de Linus Torvalds, ce qui laissait penser que les conditions étaient vraiment particulières. Et le moins que l’on puisse dire est que nous ne sommes pas déçus. Ce n’est pas une faille critique, mais deux, qui viennent d’être dévoilées : Meltdown et Spectre, de leur petit nom.

Nous vous invitons à lire le journal de Pinaraf< à ce sujet, bien qu’incomplet le jour où il l’a écrit. Depuis la date de sa publication, la faille Spectre a ensuite été révélée et, si cette dernière s’avère d’une ampleur moindre que Meltdown chez Intel, elle toucherait tous les fondeurs et la plupart de leurs produits).

Campagne de financement d’eelo pour un smartphone respectueux de la vie privée

Posté par (page perso) . Édité par Benoît Sibaud, Davy Defaud et ZeroHeure. Modéré par Pierre Jarillon. Licence CC by-sa.
36
20
déc.
2017
Téléphonie

Gaël Duval, le créateur de la distribution Mandrake Linux, a décidé de se lancer dans un nouveau combat : créer un système d’exploitation pour smartphone / ordinateur de poche qui soit respectueux de la vie privée, libre et utilisable par le commun des mortels. Ce projet nommé eelo est à but non lucratif, dans l’intérêt du public.

Logo d’eelo

Autre logo

Mais pour avancer et atteindre une taille critique suffisante pour maintenir un système d’exploitation, il y a besoin de pouvoir payer des développeurs et donc de financer tout ça. Gaël Duval a décidé de faire appel à un financement participatif pour atteindre un premier produit utilisable en partant de LineageOS. Il espère pouvoir ensuite attirer des contributeurs et itérer sur de nouvelles versions.

CouchDB passe la seconde vitesse

Posté par (page perso) . Édité par Davy Defaud, Xavier Teyssier et Benoît Sibaud. Modéré par Xavier Teyssier. Licence CC by-sa.
49
20
sept.
2016
Base de données

CouchDB est une base de données de la famille NoSQL. C’est même l’une des plus anciennes, sortie en 2005. Elle est ensuite devenue un projet Apache en 2008. Elle a pris du retard sur ses concurrents sur de nombreux aspects, mais sa grande force, la réplication entre instances primaires, reste inégalée. Pouchdb, un portage de CouchDB en JavaScript capable de tourner dans les navigateurs, est compatible avec le protocole de réplication de CouchDB et la combinaison des deux est très intéressante pour développer des applications Web dites « progressives » (PWA), capables de travailler sans connexion Internet. Il existe d’autres implémentations compatibles avec ce protocole de réplication, dont Couchbase lite pour mobile.

La version 2.0 de CouchDB est attendue depuis plusieurs années et a pris beaucoup de retard. Elle vient enfin de sortir avec de grandes nouveautés, dont la prise en charge du clustering, un nouveau moteur de « requêtage » et une interface d’administration plus moderne.

Logo de CouchDB

Donnez votre avis sur la nouvelle architecture de Cozy

Posté par (page perso) . Édité par palm123. Modéré par Xavier Claude. Licence CC by-sa.
Tags :
43
31
août
2016
Cloud

Cozy est un cloud personnel que nous suivons et évoquons régulièrement sur LinuxFr.org. Il a fait récemment parler de lui via le recrutement de Tristan Nitot, sa version 2.0, sa quête permanente d'améliorations, sa toute nouvelle application de synchronisation de fichiers ou encore sa récente levée de fonds. Aujourd'hui, l'équipe Cozy Cloud fait appel à vous.

Nous souhaitons développer une nouvelle version majeure de Cozy qui puisse répondre à de nouveaux besoins :

  • permettre aux auto-hébergés d'avoir du multi-utilisateurs
  • diminuer grandement la consommation de ressources par instance Cozy hébergée pour en réduire le coût
  • améliorer la sécurité globale
  • revoir certains aspects de la plateforme qui ne nous plaisaient pas.

Fidèle à notre attachement pour le Logiciel Libre, le dépôt git dans lequel le développement va se faire est public. Il contient pour le moment surtout un document qui décrit la nouvelle architecture que l'on souhaite mettre en place.

Mais avant de commencer à coder, il nous semble particulièrement important d'avoir l'avis de la communauté. Donnez-nous vos commentaires et impressions. Nous souhaitons savoir ce que nous avons pu manquer, quelles sont les forces et faiblesses que vous voyez dans cette architecture, ce que nous pourrions faire différemment. Alors, à vos claviers !

Synchronisez vos fichiers avec cozy-desktop

Posté par (page perso) . Édité par ZeroHeure et palm123. Modéré par Xavier Claude. Licence CC by-sa.
Tags :
47
7
juin
2016
Cloud

Cozy Cloud est une plate-forme libre qui vous permet de mieux gérer votre vie numérique en vous réappropriant vos données. Grâce à elle, vous pouvez installer de nombreux services web à usage personnel sur votre propre machine à la maison ou louée chez un hébergeur.

Cozy Cloud

Et maintenant, il est possible de synchroniser vos fichiers entre un ou plusieurs ordinateurs personnels et son nuage Cozy. Le client « desktop » vient de sortir en version beta pour Linux.

Sortie de Electron 1.0

Posté par (page perso) . Édité par Benoît Sibaud et Trollnad Dump. Modéré par Benoît Sibaud. Licence CC by-sa.
24
14
mai
2016
JavaScript

Electron permet de construire des applications de bureau multi-plateformes avec les technologies du web (HTML, CSS et JS). Il était initialement développé par Github pour son éditeur de texte Atom et est maintenant un projet à part entière. Il vient d'atteindre la version 1.0, signe d'une certaine maturité.

Electron 1.0

Node.js passe la sixième vitesse

Posté par (page perso) . Édité par M5oul, Florent Zara, palm123 et Benoît Sibaud. Modéré par Florent Zara. Licence CC by-sa.
37
12
mai
2016
JavaScript

Node.js est la principale implémentation du langage JavaScript côté serveur. Elle utilise V8, le moteur JavaScript de Google Chrome, et vient d’atteindre la version 6.0.0 le 26 avril 2016.

Logo Node.js

La montée de version de V8 vers la version 5.0 a d'ailleurs permis une meilleure prise en charge d'ES6, avec 93 % des fonctionnalités couvertes. Parmi les autres nouveautés, on trouve des performances accrues (notamment pour le chargement des modules), une meilleure stabilité et utilisabilité des API JavaScript (notamment Buffer et File System).

Peu de temps après la sortie de la version 6.0.0, des failles OpenSSL ont été annoncées, ce qui a conduit à la sortie d'une version 6.1.0.

Crystal, un langage proche de Ruby, en version 0.16

Posté par (page perso) . Édité par Benoît Sibaud. Modéré par Benoît Sibaud. Licence CC by-sa.
40
8
mai
2016
Ruby

Crystal est un langage de programmation, encore jeune. Il s'inspire de Ruby pour la syntaxe mais vise des performances proches du C. La version 0.16 vient de sortir, avec un nouvel algorithme pour l'inférence de types. À noter, le compilateur de Crystal est écrit en Crystal.

Voici à quoi ressemble un serveur HTTP basique écrit en Crystal :

# A very basic HTTP server
require "http/server"

server = HTTP::Server.new(8080) do |context|
  context.response.content_type = "text/plain"
  context.response.print "Hello world, got #{context.request.path}!"
end

puts "Listening on http://0.0.0.0:8080"
server.listen

À la découverte d'un nouveau langage, Elm

Posté par (page perso) . Édité par Davy Defaud, ZeroHeure, palm123, Lucas, VictorAche et Nils Ratusznik. Modéré par Pierre Jarillon. Licence CC by-sa.
Tags :
44
21
avr.
2016
Programmation fonctionnelle

Découvrons un nouveau langage : Elm. Celui-ci vise à rendre accessible la programmation fonctionnelle pour les développeurs Web. JavaScript a ses qualités et ses défauts ; il est parfois intéressant d'aller voir ailleurs pour mieux les comprendre. Même si vous ne comptez pas utiliser Elm plus tard, cela reste intéressant car il vous permettra de découvrir de nouvelles façons de faire et vous permettra de devenir un meilleur développeur. D'ailleurs, on peut noter que de nombreuses bibliothèques JavaScript, comme Redux, annoncent clairement s'être inspirées d'Elm.

Elm a été créé dans le but d'apporter fiabilité et maintenance simplifiée aux applications JavaScript dans les navigateurs. Son créateur, Evan Czaplicki s'est donc naturellement inspiré des langages fonctionnels, qui sont conçus justement pour avoir ces caractéristiques. En utilisant la bibliothèque JavaScript virtual-dom, il s'est également assuré que les performances soient au niveau des principaux frameworks.

Journal Comment 11 lignes de code ont provoqué un #npmgate

Posté par (page perso) . Licence CC by-sa.
48
23
mar.
2016

Il était une fois 11 lignes de code qui vivait dans un module npm appelé left-pad :

module.exports = leftpad;
function leftpad (str, len, ch) {
  str = String(str);
  var i = -1;
  if (!ch && ch !== 0) ch = ' ';
  len = len - str.length;
  while (++i < len) {
    str = ch + str
(...)

Et si JavaScript allait droit dans le mur ?

Posté par (page perso) . Édité par Davy Defaud, Pierre Jarillon et patrick_g. Modéré par patrick_g. Licence CC by-sa.
37
4
mar.
2016
JavaScript

Cette dépêche pose la question de l’avenir du JavaScript. Celui‐-ci continue de gagner en popularité, mais aussi en complexité. L’auteur du journal a étudié d’autres langages encore peu connus (Elixir, Elm, Pony, Oden et Crystal) et ceux‐ci lui ont fait sauter aux yeux les défauts du JavaScript. Il s’interroge donc sur le futur de ce langage.

Dans les commentaires du journal, de nombreux développeurs ont fait un retour sur leur expérience. Certains apprécient le JavaScript (souvent, un sous‐ensemble de ce langage qui va à l’encontre des dernières nouveautés). D’autres, souhaiteraient fortement s’en débarrasser, mais quasiment tous sont d’accord sur le fait qu’il va rester grâce à son monopole sur les navigateurs).

Certains ont encouragé à essayer leur langage de prédilection : Go, OCaml, ClojureScript, etc.

Enfin, on peut également retrouver un certain espoir avec WebAssembly (le successeur d’asm.js), qui permettrait à de nombreux langages d’être compilés vers la plate‐forme Web.

Journal Et si JavaScript allait droit dans le mur ?

78
2
mar.
2016
Ce journal a été promu en dépêche : Et si JavaScript allait droit dans le mur ?.

Always bet on JS - Brendan Eich

Je me pose pas mal de questions sur l'avenir du JavaScript. D'un côté, il semble plus fort que jamais et ses surcouches (CoffeeScript, PureScript, etc.) ne sont plus à la mode. De l'autre, ces défauts me sautent de plus en plus aux yeux.

Je passe pas mal de temps à regarder de nouveaux langages de programmation. La plupart resteront expérimental, mais de temps à autre, un langage perce. Ce fût par exemple le (...)

Nouvelle application contacts pour Cozy Cloud

Posté par (page perso) . Modéré par Nils Ratusznik. Licence CC by-sa.
39
5
nov.
2015
Cloud

Cozy Cloud est une plate-forme libre qui va vous permettre de mieux gérer votre vie numérique en vous réappropriant vos données. Grâce à elle vous pouvez installer de nombreux services web à usage personnel sur votre propre machine à la maison ou louée chez un hébergeur.

Cozy Cloud

Cozy Cloud permet d'installer des applications. Quelques unes sont développées par l'équipe de Cozy Cloud, comme l'application Contacts qui a été entièrement réécrite récemment. D'autres sont proposées par la communauté. Kresus, par exemple, est une application de gestion des finances personnelles développée par Benjamin Bouvier (Mozilla).

Un point d'avancement sur Neovim

Posté par (page perso) . Édité par Trollnad Dump et Benoît Sibaud. Modéré par Pierre Jarillon. Licence CC by-sa.
65
21
avr.
2015
Ligne de commande

Le logo de Neovim

Neovim est un éditeur de texte, issu d'un fork de Vim. Il vise à le rendre plus moderne. En particulier, faciliter le développement et l'utilisation de greffons, et permettre de l'intégrer plus facilement dans d'autres outils.

Le fork date d'un peu plus d'un an et le travail commence à payer. En plus d'un gros nettoyage de la base de code, les développeurs de Neovim ont mis en place un système de plugins, de greffons, qui peuvent désormais tourner à l'extérieur du processus principal et communiquer avec lui via msgpack. On peut également apprécier la possibilité de lancer un terminal à l'intérieur de Neovim, grâce à l'inclusion récente de la libvterm.

Mais pour accélérer le développement, Neovim a besoin de vous. Le développeur principal, @tarruda passe une partie de son temps sur Neovim et une autre partie à faire des missions en freelance pour gagner sa vie. Grâce à des dons, il pourrait diminuer le temps passé sur les missions, et ainsi passer plus de temps à faire vivre Neovim.

Personnellement, je suis un utilisateur comblé de Neovim depuis quelques mois. Bien que celui-ci soit toujours en version alpha, il est très stable et le passage de Vim à Neovim s'est fait sans aucun souci. Aussi, j'ai participé à l'appel à dons et vous encourage à faire de même pour promouvoir ce projet qui le mérite bien !