Activité du site LinuxFr.org

Posté par  (site web personnel) . Édité par Benoît Sibaud. Modéré par baud123.
33
2
juin
2010
LinuxFr.org
Le site LinuxFr.org vit grâce aux contributions de ses lecteurs. Merci à vous tous, on ne le répétera jamais assez. La communauté LinuxFr.org est active et instructive.

L'équipe de modération essaye de faire en sorte que LinuxFr.org reste cet espace vivant avec des dépêches sur Linux et les Logiciels Libres, un espace d'entre-aide, des discussions sur des sujets divers et variés, et tout cela sans avoir les chevilles qui enflent. Voici une petite sélection de nos faits d'armes :

Activité de l'équipe de modération
  • Il y a quelques semaines, l'équipe de modération s'est un peu renouvelée. Thomas Petazzoni, Scara et xals, pas mal occupés par ailleurs, nous ont quitté. Merci à eux pour le temps qu'ils ont consacré à LinuxFr. Nous pouvons saluer l'arrivée de Malicia, claudex et boa13, déjà très actifs !
  • À l'occasion du salon Solutions Linux 2010, Nils Ratusznik a donné un entretien à Intelli'N TV. C'est l'occasion de faire une séance de rattrapage pour ceux qui ne connaissent pas le site sur le bout des doigts.
  • NeoX va atteindre les 5000 réponses sur le forum. Chapeau !
  • Nÿco a atteint les 250 dépêches, Floxy et poltuiu font la course à leur 200ème dépêche, et moi, je me concentre sur ma série de 6 dépêches en 6 jours.
Côté technique
Dans un autre registre, le site tourne actuellement avec Templeet (NdM: lien réédité en 2021 pour pointer vers la version archive.org de l'époque) et très rares sont les personnes à y toucher. J'ai commencé au début de l'année 2009 une réécriture du site en Ruby on Rails. Les chances que ce projet aboutisse m'apparaissaient comme assez faibles quand j'ai commencé, mais bon gré, mal gré, cela avance.

Aujourd'hui, une nouvelle étape a été franchie : j'ai taggé la version alpha1 sur le dépôt git. Je considère que le code contient les fonctionnalités essentielles pour pouvoir remplacer la version actuelle basée sur Templeet. Je vais maintenant m'attacher à corriger les bugs et optimiser le code. J'espère que cette version pourra être mise en ligne bientôt.

Dernière chose, nous utilisons webalizer pour nos statistiques web, et plus précisément le package debian. Celui-ci n'est plus très jour, et si un développeur Debian a un peu trop de temps libre, nous lui serions reconnaissants s'il pouvait regarder ça.

Veracity, un nouveau gestionnaire de versions décentralisé

Posté par  (site web personnel) . Modéré par Lucas Bonnet. Licence CC By‑SA.
Étiquettes :
32
17
juil.
2011
Gestion de versions

Veracity est un nouveau gestionnaire de versions décentralisé (DVCS), sous licence Apache. Il est développé en C par la société SourceGear, avec la possibilité d'embarquer des greffons en javascript.

Comparé à git ou mercurial, il essaye d'intégrer une expérience de développement plus large :

Il est possible de l'installer sous GNU/Linux, Mac et Windows. Des paquets pour Ubuntu et un guide sont également disponibles pour vous aider à démarrer.

Sortie de Deno 1.0

Posté par  (site web personnel) . Édité par Davy Defaud, ted et Ysabeau 🧶 🧦. Modéré par ZeroHeure. Licence CC By‑SA.
Étiquettes :
31
15
mai
2020
JavaScript

Deno est un possible successeur à Node.js. Ryan Dahl, qui est l’auteur à l’origine de Node.js, a présenté lors d’une conférence il y a deux ans une liste de dix choses qu’il regrette à propos de Node.js. À partir de cette liste, il a voulu créer un nouveau moteur d’exécution de script qui tourne en dehors du navigateur mais qui en reprend les conventions. Le projet s’appelle Deno et il vient d’atteindre la version 1.0.

Logo de Deno

20 étudiants pour travailler sur Ruby cet été

Posté par  (site web personnel) . Modéré par baud123.
Étiquettes :
31
28
mar.
2010
Ruby
La semaine dernière, Google a annoncé la liste des organisations retenues pour le Google Summer of Code 2010. En particulier, la seule candidature autour de Ruby, à savoir Ruby on Rails, est rejetée. La communauté Ruby a alors réagi en décidant de monter un Ruby Summer of Code.

En 3 jours, les sponsors et dons des particuliers ont permis de ramasser 100 000 $. Cela va permettre de financer 20 projets en payant 5 000 $ à chaque étudiant, selon un modèle très similaire au Google Summer of Code.

Vous pouvez dès à présenter postuler comme mentor, et ce jusqu'au 2 avril. Pour proposer sa candidature comme candidat, la fenêtre ira du 5 au 23 avril. Les propositions pourront porter sur Ruby, Rails, les implémentations alternatives de Ruby comme JRuby, ou plus globalement sur l'écosystème Ruby.

À titre personnel, je me réjouis de voir que la communauté Ruby se porte bien, ayant été capable de récolter 100 000 $ en seulement 3 jours. Par ailleurs, je trouve que le Google Summer of Code est une excellente initiative de la part de Google, mais je craignais qu'il ne crée un phénomène de dépendance entre certains Logiciels Libres et Google. Le Ruby Summer of Code m'a permis de lever cette réserve et d'apprécier pleinement le Google Summer of Code.

Je regrette juste de ne plus être étudiant ;-)

Ruby on Rails 3 est là

Posté par  (site web personnel) . Modéré par Nÿco.
Étiquettes :
30
31
août
2010
Ruby
Ruby on Rails est un framework de développement web en Ruby, sous licence MIT. Depuis son lancement en 2004, il a permis le développement de nombreuses applications web comme Basecamp, Twitter, Github, etc.

Le 23 décembre 2008, les équipes développant Ruby on Rails et Merb, un autre framework web en Ruby, ont décidé d'unir leur effort. La fusion des deux frameworks visait à apporter le meilleur des deux dans un seul produit qui serait Rails 3.

On peut aujourd'hui affirmer que c'est une réussite. En effet, la sortie de Rails 3 a été annoncée et la liste des changements est impressionnante (cf la seconde partie de la dépêche). Remercions au passage les 1600+ personnes qui ont contribué à Ruby on Rails.

Cette nouvelle version de Rails est compatible avec Ruby 1.8.7, Ruby 1.9.2 et JRuby 1.5. Elle fonctionne également avec Rubinius 1.0 (mais sans garantie de la part de la core team Rails pour les versions 3.0.x à venir). Il ne vous reste plus qu'à lancer un gem install rails --version 3.0.0 pour l'installer.

Dernière chose, si vous appréciez Rails 3 et que vous souhaitez donner en retour, la core team de Rails vous encourage à faire un don à l'association Charity:Water.

Petit tour des outils de visualisation libres

Posté par  (site web personnel) . Modéré par Nÿco.
Étiquettes :
30
10
mai
2010
Audiovisuel
Les outils libres de visualisation d'informations ou de données existent, mais ne sont pas forcément très connus. Je souhaite, via cette dépêche, les mettre en avant et j'espère que les lecteurs de LinuxFr.org sauront les utiliser pour créer de jolies représentations de données pertinentes.

Je me suis donc attaché à présenter dix outils :
  • Graphviz
  • Large Graph Layout
  • Circos
  • IOGraph
  • Code Swarm
  • Gource
  • Gephi
  • Processing
  • Processing.js
  • Nodebox 2

À ce sujet, je vous recommande chaudement la lecture de l'article de LWN.net sur la visualisation des projets et communautés Open Source.

Cloud Foundry, la solution PaaS libre

Posté par  (site web personnel) . Modéré par Lucas Bonnet. Licence CC By‑SA.
29
22
avr.
2011
Ruby

VMWare a annoncé la sortie de Cloud Foundry, une solution libre de Platform-as-a-Service (PaaS). La PaaS permet de déployer des applications Web et gérer leur montée en charge, en abstrayant la gestion des serveurs, bases de données, runtimes des langages de programmation, serveurs applicatifs, etc.. VMWare va lancer une offre commerciale s’appuyant sur Cloud Foundry, mais vous pouvez aussi l’utiliser sur vos serveurs.

Cloud Foundry, sous licence Apache 2, est un ensemble de briques développées en Ruby : NATS, Cloud Controller, DEA, Router, Health Manager, etc., dont le fonctionnement est expliqué en seconde partie de cette dépêche.

En pratique, chaque serveur sera installé avec vcap, puis les applications sont déployées avec l’outil en ligne de commande « vmc » et peuvent utiliser les services mis à leur disposition. Actuellement, Cloud Foundry supporte Ruby on Rails, Sinatra, Node.js, Spring et Grails pour les applications, et MySQL, MongoDB, Redis et RabbitMQ pour les services.

Par exemple, déployer une application Rails se fait très simplement avec les commandes suivantes :

$ vmc target api.example.net   # Choisir que quel cloud on va déployer
$ vmc login                    # S'identifier auprès du Cloud Controller
$ vmc push                     # On demande à déployer l'application

Il faut ensuite répondre à quelques questions : quel est le nom de l’application ? Quelle est son URL ? Sur combien d’instances va-t-elle être déployée ? Quels services utilise-t-elle ? Puis, Clound Foundry va réserver les ressources, installer les gems nécessaires avec Bundler, lancer les services applicatifs puis mettre à jour sa table de routage. « vmc instances » permet également de modifier le nombre d’instances d’une application pour s’adapter à la charge qu’elle va avoir à traiter.

Au final, Cloud Foundry est une solution jeune (peu de frameworks et services disponibles pour le moment), mais VMWare semble prêt à respecter les règles du Logiciel Libre et prendre en compte les propositions d’améliorations des premiers utilisateurs.

Sortie de Ruby on Rails 3.2.0

Posté par  (site web personnel) . Édité par claudex. Modéré par claudex. Licence CC By‑SA.
Étiquettes :
29
21
jan.
2012
Ruby

Ruby on Rails est un framework de développement web agile, sous licence MIT. La version 3.2.0 est sortie hier, avec au menu :

  • Amélioration des performances : un nouveau moteur pour le routage, Journey, a fait son apparition et, en mode développement, seules les classes réellement modifiées sont rechargées ;
  • Requêtes SQL Explain : il est maintenant très facile de faire une requête Explain depuis la console pour vérifier la présence d'un index ou optimiser une requête (Person.active.limit(5).explain par exemple) et ce sera fait par défaut pour les requêtes prenant plus de 0,5 seconde en mode développement ;
  • Active Record Store : Active Record permet maintenant d'utiliser un champ d'une base de données SQL comme un stockage de type clé/valeur ;
  • Logger avec des tags : la classe TaggedLogging permet de préfixer chaque ligne de log avec un ou plusieurs tags. Exemple :

logger = ActiveSupport::TaggedLogging.new(Logger.new(STDOUT))
logger.tagged("BCX") { logger.info "Stuff" }
# Logs "[BCX] Stuff"

Je vous recommande d'utiliser Ruby 1.9.3 pour profiter pleinement de cette version de Rails. Mais dans le cas où vous seriez coincé avec un Ruby 1.8.7, pensez à mettre à jour Rubygems, il semblerait que l'installation ne se passe pas très bien avec des versions un peu anciennes de rubygems.

Note : LinuxFr.org tourne depuis aujourd'hui avec Rails 3.2.0.

Sortie de Ruby on Rails 3.1.0

Posté par  (site web personnel) . Modéré par patrick_g. Licence CC By‑SA.
28
1
sept.
2011
Ruby

Ruby on Rails est un framework de développement web agile, sous licence MIT. Après 8 releases candidates, la version 3.1.0 est sortie aujourd'hui.

Les nouveautés sont nombreuses mais les plus importantes sont :

  • jQuery est devenu le framework javascript par défaut (à la place de Prototype) ;
  • L'Asset Pipeline permet de gérer la compilation, la minification et la gestion des dépendances pour les feuilles de style et le fichiers javascript ;
  • Sass et CoffeeScript sont maintenant proposés par défaut ;
  • Les migrations SQL ont été revues (plus simples à écrire mais également plus de possibilités offertes) ;
  • Les réponses peuvent être envoyées en plusieurs morceaux (HTTP streaming), ce qui peut être utilisé pour optimiser le temps de chargement des pages ;
  • La documentation de l'API utilise maintenant SDoc.

Note : il est prévu que LinuxFr.org passe rapidement à cette version.

Sortie de Ruby 1.9.3

Posté par  (site web personnel) . Modéré par Xavier Teyssier. Licence CC By‑SA.
Étiquettes :
28
31
oct.
2011
Ruby

La version 1.9.3 de Ruby vient de sortir. Cette nouvelle version apporte peu de modifications visibles, le gros des modifications se faisant sous le capot.

Parmi les changements notables, nous retrouvons :

  • la licence accompagnant Ruby est maintenant la licence BSD (c’était la GPL v2 jusqu’à présent) ;
  • le chargement plus rapide des bibliothèques, qui devrait être très appréciable pour les projets Rails ;
  • une meilleure gestion du multi‐threading ;
  • la prise en charge d’Unicode 6.0 ;
  • le moteur par défaut pour le YAML devient Psych ;
  • la mise à jour de Rubygems (1.8.10), JSON (1.5.4), Minitest (2.2.2), Rake (0.9.2.2) et Rdoc (3.9.4).

Bien entendu, vous êtes encouragés à passer rapidement à Ruby 1.9.3, en sachant que certaines versions ne seront bientôt plus maintenues :

  • les mainteneurs de Ruby vont encore proposer les correctifs de sécurité pour Ruby 1.9.1, jusqu’à janvier 2012. Après quoi, cette version sera officiellement morte ;
  • pour les utilisateurs de Ruby 1.8.7, les choses vont se faire plus en douceur : maintenance normale jusqu’à juin 2012, puis maintenance de sécurité uniquement jusqu’à juin 2013.

Pour le futur, une version 1.9.4 est prévue pour l’année prochaine et surtout, la sortie de Ruby 2.0 pourrait arriver en février 2013 pour les 20 ans de Ruby.

Panne du week-end

Posté par  (site web personnel) . Modéré par Florent Zara.
Étiquettes : aucune
28
24
mai
2010
LinuxFr.org
Le site LinuxFr.org et les services associés étaient en panne ce week-end. Le serveur qui les héberge a fait un kernel panic samedi matin (il semblerait que ce soit un problème lié au RAID).

Le serveur a pu être redémarré grâce à une intervention du NOC de la fondation Free. Nous les remercions pour s'être déplacé un week-end et plus généralement, pour l'hébergement que la fondation Free nous fournit depuis plusieurs années.

Petites brèves : Ruby 2.0, DataMapper et RubyLive

Posté par  (site web personnel) . Modéré par Nÿco. Licence CC By‑SA.
Étiquettes :
27
27
oct.
2011
Ruby

Matz, le créateur de Ruby, a récemment créé une nouvelle branche de développement qui va accueillir les développements pour la version 2.0 de Ruby. Bien que le numéro de version laisse penser qu’il y aura de gros changements, cela devrait pourtant être une version avec moins de changements que pour Ruby 1.9, avec une date de sortie prévue pour début 2013.

La liste des fonctionnalités est encore en cours de discussion, mais on devrait notamment y retrouver les arguments sous forme de mots‐clés, l’importation‐exportation du bytecode de la machine virtuelle, la transformation de la bibliothèque standard en gems (les bibliothèques dans le monde Ruby), un meilleur ramasse‐miette (garbage collector).

DataMapper est le principal concurrent d’ActiveRecord dans le domaine des ORM dans le monde Ruby, il est sorti en version 1.2.0. Côté nouveautés, nous retrouvons des performances améliorées, des corrections de bogues et surtout la prise en charge de Rails 3.1.

Enfin, si vous souhaitez suivre l’actualité Ruby, un nouveau site Web vient de sortir : RubyLive. C’est un site collaboratif, où chacun peut proposer des liens vers des ressources Ruby et/ou Rails, avec une description en français.

En vrac spécial Ruby : JRuby, Sinatra et Goliath

Posté par  (site web personnel) . Modéré par Xavier Teyssier.
Étiquettes :
27
20
mar.
2011
Ruby

JRuby

JRuby est une implémentation complète de Ruby au-dessus de la machine virtuelle Java. La version 1.6 récemment sortie apporte des fonctionnalités majeures :

  • compatibilité avec Ruby 1.9.2, aussi bien pour le langage que pour l'API ;
  • prise en charge expérimentale des extensions écrites en C ;
  • profiler intégré ;
  • performances améliorées ;
  • meilleure expérience utilisateur sous windows ;
  • etc.

Sinatra

Sinatra est un micro-framework en Ruby pour construire rapidement des applications web (licence MIT). La version 1.2 est sortie au début du mois avec des nouveautés intéressantes :

Goliath

Goliath est un serveur HTTP en Ruby sous licence MIT. Sa particularité est de s'appuyer sur EventMachine et les fibres de Ruby 1.9. Il peut ainsi fonctionner de manière asynchrone et performante tout en gardant le code lisible (l'exécution reste linéaire et ne repose pas sur des callbacks enchainés comme on peut le voir dans d'autres environnements).

En pratique, Goliath convient bien pour écrire des services HTTP en complément d'une application web : API de streaming, upload de fichiers volumineux, proxy HTTP adaptés, etc.

Elixir, enfin une syntaxe agréable pour Erlang ?

Posté par  (site web personnel) . Édité par Benoît Sibaud. Modéré par Florent Zara. Licence CC By‑SA.
Étiquettes :
27
26
mar.
2011
Programmation fonctionnelle

Elixir est un langage de programmation qui s’appuie sur Erlang et sous licence MIT. Il propose une syntaxe agréable, inspirée de celle de Ruby, et un modèle objet à base de prototypes.

Erlang est un langage fonctionnel avec un typage dynamique, une évaluation stricte et une assignation unique. Il convient bien pour des applications distribuées, résistantes aux erreurs et sans arrêt grâce au mécanisme de rechargement à chaud. Mais c’est également un langage qui peut sembler difficile à apprendre et dont la syntaxe peut rebuter. Elixir propose une manière élégante de profiter des avantages d’Erlang. Il est notamment possible d’appeler des modules Erlang sans conversion des types de données, et donc sans impact sur les performances.

Elixir est encore très jeune et recherche des contributeurs pour aider au développement de sa bibliothèque standard. Pour installer Elixir, vous aurez besoin d’Erlang R14B01, et je vous invite à parcourir le README pour découvrir ce langage. Mais voici un avant-goût sous la forme d’un très classique « Hello World » :

module World
  def say_hello
    IO.puts "Hello World!"
  end
end

World.say_hello

Node.js passe en version 0.6.0 et arrive sous Windows

Posté par  (site web personnel) . Modéré par Nÿco. Licence CC By‑SA.
Étiquettes :
27
5
nov.
2011
JavaScript

Node.js est un environnement JavaScript côté serveur, sous licence MIT. Sa particularité est son approche asynchrone pour faciliter la montée en puissance dans des contextes avec beaucoup d’entrées‐sorties, notamment réseau. En pratique, il se compose :

  • d’un interpréteur JavaScript, à savoir V8 ;
  • de require(), un chargeur de modules compatible CommonJS ;
  • d’une bibliothèque standard, volontairement restreinte (une sorte de libc JavaScript où tous les appels sont asynchrones) ;
  • d’un ensemble de conventions : par exemple, les fonctions de retour indiquent toujours en premier paramètre si l’appel s’est bien passé, et dans le cas contraire, quelle a été l’erreur ;
  • et d’un exécutable, « node », pour lancer tout ça.

La version 0.6.0 est sortie aujourd’hui et apporte quelques nouveautés de taille (plus de détails en seconde partie) :

  • la prise en charge de Windows en utilisant les I/O Completion Ports (IOCP) ;
  • un répartiteur de charge entre plusieurs processus Node.js intégré ;
  • des moyens de communications entre des processus Node.js plus efficaces ;
  • des améliorations du débogueur en ligne de commande ;
  • des bindings pour la zlib ;
  • la mise à jour de V8, passant de la version 3.1 à la 3.6.

La prise en charge de Windows, sans dégrader les performances pour les UNIX, a pris plus longtemps que prévu. Cela a fortement retardé la sortie de cette version, mais Ryan Dahl, son créateur, souhaite sortir la prochaine version stable de Node.js (la v0.8.0) pour janvier 2012.