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 :
42
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 !

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
39
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

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.

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.

Sortie de Electron 1.0

Posté par (page perso) . Édité par Benoît Sibaud et tankey. Modéré par Benoît Sibaud. Licence CC by-sa
23
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

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

Posté par (page perso) . Édité par Davy Defaud, ZeroHeure, palm123, VictorAche, Lucas 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
(...)

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 (...)

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.

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 tankey 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 !

Quelques nouveautés sur votre site web préféré

Posté par (page perso) . Édité par ZeroHeure, palm123 et Benoît Sibaud. Modéré par Ontologia. Licence CC by-sa
49
11
mar.
2014
LinuxFr.org

Pour fêter ma millième entrée de suivi fermée sur LinuxFr.org, j'ai décidé de faire une petite dépêche mettant en avant quelques nouveautés récentes.

Premier changement, la feuille de style par défaut a été un peu revue. La largeur maximale est maintenant limitée pour les grands écrans afin de rendre la lecture plus confortable.

La version personnalisée de Markdown utilisée pour saisir du contenu sur le site permet maintenant d'inclure des formules mathématiques, en ligne à l'intérieur d'un paragraphe ou dans un bloc séparé. Par exemple, a \oplus a = 0 ou, pour la version longue :

Autre nouveauté, il est possible de récupérer une version markdown des contenus du site, grâce à un lien « Markdown » en bas de ceux-ci. Vous pouvez notamment essayer sur cette dépêche pour voir à quoi ressemblent les formules mathématiques :p

Enfin, le moteur de recherche du site a été revu. Il fonctionne désormais avec ElasticSearch 1.0. Il devrait être un peu plus pertinent et propose maintenant le filtrage par tags.

NdM: Pour fêter cela, Nono a décidé d'envoyer une coupe de champagne aux 1000 premiers lecteurs qui en feront la demande.

Journal Jouer avec la sécurité web

Posté par (page perso) . Licence CC by-sa
28
23
août
2012

Stripe organise un challenge autour de la sécurité des applications web. Le but du jeu est de capturer un drapeau (12 chiffres) en passant 9 niveaux (numérotés de 0 à 8). Pour passer un niveau, il faut réussir à récupérer le mot de passe d'une petite application web.

Les premiers niveaux sont faciles d'accès avec des attaques tout ce qu'il y a de plus classique comme des injections SQL et des XSS. Le dernier niveau est, par contre, bien plus (...)

trop stylé en mobilité !

Posté par (page perso) . Édité par baud123 et Benoît Sibaud. Modéré par Xavier Claude. Licence CC by-sa
Tags :
38
30
juil.
2012
LinuxFr.org

LinuxFr.org est en perpétuelle évolution. Parmi les dernières modifications, l'une mérite un peu plus d'attention : la feuille de style par défaut de LinuxFr.org passe maintenant mieux sur les mobiles. Vous devriez ainsi pouvoir consulter avec plus de facilité votre site préféré lorsque vous n'êtes pas devant le grand écran de votre ordinateur.

Dans les autres changements, notons la possibilité d'uploader sa propre feuille de style, l'ajout d'une icône à côté du lien « Mon tableau de bord » pour notifier d'une nouvelle réponse à l'un de vos commentaires, la disparition du corps des contenus avec un score négatif sur les pages de listes ou encore l'affichage du sommaire pour les dépêches en cours de rédaction collaborative.

N'oubliez pas de contribuer, LinuxFr.org vit pour vous et par vous ! En particulier, vous pouvez remonter bugs et demandes d'évolution dans le suivi.