Petites brèves : Sinatra 1.3, entretiens concernant la communauté Ruby et programmation UNIX

Posté par  (site web personnel) . Modéré par Lucas Bonnet. Licence CC By‑SA.
Étiquettes :
23
4
oct.
2011
Ruby

Sinatra 1.3

Sinatra est une bibliothèque Ruby permettant de développer rapidement des applications Web (sous licence MIT). La version 1.3.0 vient de sortir et apporte une API de streaming, la prise en charge du verbe HTTP PATCH, l’ajout d’une méthode utilitaire logger et des corrections de bogues.

À l’occasion de cette sortie, un nouveau projet a vu le jour : Sinatra::Contrib. Il regroupe les extensions à Sinatra les plus courantes et permettra de gérer plus facilement la compatibilité entre les versions publiées. Par exemple, quand la version x.y.z de Sinatra sortira, le mainteneur, Konstantin Haase, publiera également la version x.y.z de Sinatra::Contrib, qui aura été testée pour s’assurer de sa compatibilité.

Enfin, c’est également l’occasion de noter le récent site Web Sinatra Recipes, qui regroupe des astuces et bonnes pratiques sur Sinatra.

Entretiens concernant la communauté Ruby en France

Camille Roux a interrogé plusieurs membres de la communauté Ruby en France :

Programmation UNIX avec Ruby

Pour finir, je vous propose un petit lien qui pourra intéresser quelques‐uns d’entre vous : Eric Wong a publié une série d’articles sur la programmation système UNIX avec Ruby.

Les apéros Ruby en France

Posté par  (site web personnel) . Modéré par patrick_g. Licence CC By‑SA.
Étiquettes :
9
16
sept.
2011
Ruby

Les apéros Ruby sont à la mode : après Paris, Lyon, Toulouse, Nantes, Rennes et plus récemment Lille, Montpellier et Sophia Antipolis, c'est au tour de Strasbourg de mettre en place en rendez-vous entre Rubyistes. Celui-ci devrait avoir lieu chaque dernier mardi du mois, à commencer par le 27 septembre. Ils seront annoncés sur le futur site web, mais vous pouvez déjà suivre ça sur facebook et twitter.

Et si vous habitez dans une ville sans apéro Ruby ? Hé bien, cela ne dépend que de vous. Vous pouvez organiser votre propre apéro Ruby grâce au billet de blog de Camille Roux qui explique en détail comme faire cela.

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.

Apéro Ruby à Montpellier le mercredi 24 août 2011

Posté par  (site web personnel) . Modéré par Benoît Sibaud.
3
11
août
2011
Ruby

L'édition « bêta » de l'Apéro Ruby Montpellier aura lieu mercredi 24 août à 19h au Vert Anglais à Montpellier.

Cette édition sera principalement consacrée à un brainstorming sur l'événement lui-même et cela sera également une belle occasion de faire connaissance, beaucoup de participants ne se connaissant pas entre eux.

Sortie de MarkUs 0.10.0

Posté par  (site web personnel) . Modéré par patrick_g. Licence CC By‑SA.
31
27
juin
2011
Éducation

MarkUs est une application Web destinée à simplifier la tâche de correction du code rendu par les étudiants dans le cadre de travaux pratiques ou projets d’informatique.

La version 0.10.0 est sortie il y a quelques jours. Nous en profitons pour faire découvrir cette application.

MarkUs confère la même facilité et souplesse de correction que l’on a avec un papier et un crayon. Il permet aussi aux responsables d’enseignement et aux étudiants de former des groupes de travail, et de travailler sur des projets en utilisant un système de gestion de version (en l’occurrence SVN) par ligne de commande, ou via l’application Web (qui permet d’ajouter, de remplacer, ou de supprimer des fichiers très simplement).

MarkUs est sous licence MIT. Il a été codé avec le framework Ruby on Rails, que l’on ne présente plus.

Vous pouvez l’essayer via la version en démonstration sur le site officiel.

Apéro Ruby à Lille le Mardi 10 mai 2011

Posté par  . Modéré par patrick_g.
4
30
avr.
2011
Ruby

Ce Mardi 10 mai 2011 aura lieu un Apéro Ruby à Lille. Déjà une quinzaine de personnes souhaitent y participer et des sujets de discussions ont été proposés :

  • TDD & Rails ;
  • Développement par behavior sous Rails ;
  • Développement par plugins, best practices ;
  • Pourquoi, mais pourquoi Twitter est passé sous Java ? :p
  • Le SEO et le routage des urls ;
  • Le mode SasS.

Donc rendez-vous au café citoyen près de la place république à Lille.

Vous êtes invités à vous inscrire au google groups Ruby Nord pour proposer vos sujets de discussion. Et répondre au Doodle en guise d'inscription

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.

Suivi — Tribune petit probleme d'affichage du login dans la tribune

#417 Posté par  (site web personnel) . État de l’entrée : corrigée. Assigné à Bruno Michel.
11
13
avr.
2011

Quand l'utilisateur https://linuxfr.org/users/img-srchttpparanomehellojpg poste sur la tribune, au lieu de voir son login (qui contient par un incroyable hasard un tag html img) s'afficher à gauche du post, il voit (ainsi que les autre utilisateurs de la tribune) s'afficher une image de fort bon gout.

Rennes : Rails bar #16 — 14 avril

Posté par  . Modéré par Lucas Bonnet.
7
5
avr.
2011
Ruby

Si je veux apprendre le judo, je vais m’inscrire au dojo du coin et y passer une heure par semaine pendant deux ans ; au bout de quoi, j’aurai peut-être envie de pratiquer plus assidûment.

Si je veux apprendre la programmation objet, mon employeur va me trouver une formation de trois jours à Java dans le catalogue 2004.

Cherchez l’erreur.

—Laurent Bossavit

Source : http://wiki.agile-france.org/cgi-bin/wiki.pl?LeProjetDuDojo

Rennes On Rails semble avoir trouvé son format avec le « [[Randori]] ».

Comme à chaque fois :

  • propositions de sujets ;
  • vote ;
  • travail ;
  • retour d’expérience.

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

Sortie de Django 1.3

Posté par  (site web personnel) . Modéré par Xavier Teyssier. Licence CC By‑SA.
Étiquettes :
42
24
mar.
2011
Python

Mercredi matin, 11 mois après la 1.2, est sortie la version 1.3 du framework Web Django, écrit en Python.

Ce framework, basé sur un concept [Modèle-Vue-Contrôleur], est conçu pour le développement rapide et reprend la plupart des grands principes de Python (« Explicit is better than implicit », notamment), ce qui en fait la plate-forme de développement Web idéale pour les perfectionnistes sous pression.

De plus en plus de sites utilisent Django (par exemple, Bitbucket.org, Libération.fr, Disqus, Century21, convore, instagram, threadless…) pour sa flexibilité et pour le nombre d’applications Django réutilisables, qui ne cesse de croître.

Je vous propose de découvrir les quelques nouveautés que vous offrent les développeurs Django et toute la communauté.

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.

Sortie de Redis en version 2.2

Posté par  (site web personnel) . Modéré par baud123.
Étiquettes :
34
27
fév.
2011
Base de données

Redis est une base de données de type clé-valeur, sous licence BSD. On peut voir Redis comme une sorte de Memcached boosté aux stéroïdes.

La version 2.2.0 est sortie la semaine dernière, très rapidement suivie de la version 2.2.1. Cette version apporte principalement des optimisations par rapport à Redis 2.0 :

  • importante diminution de la consommation mémoire (à ce sujet, je vous conseille la lecture des astuces pour optimiser la mémoire) ;
  • réplication non-bloquante ;
  • la commande Watch pour faire du check and set ;
  • l'Algorithme LRU pour l'éviction des données quand la mémoire consommée par Redis est limitée ;
  • nouvelles commandes : SETBIT, GETBIT, SETRANGE et GETRANGE permettant d'accéder à des valeurs de type « chaînes de caractères », comme s'il s'agissait de tableaux.

Pour la suite, antirez (le principal développeur) souhaite se concentrer sur la prise en charge des grappes de serveurs (clusters) et sur diskstore (un stockage sur disque des données pour les instances où tout faire tenir en mémoire n'est pas une option).

Architecture logicielle de la nouvelle version de LinuxFr.org

Posté par  (site web personnel) . Édité par Benoît Sibaud. Modéré par tuiu pol.
90
23
fév.
2011
LinuxFr.org

La nouvelle version de LinuxFr.org est en ligne depuis quelques jours. Vous nous remontez régulièrement des bugs et des propositions d'améliorations dans le suivi. Je vous encourage à continuer et à commenter / voter sur les entrées qui vous intéressent.

Voici quelques entrées sur lesquelles j'aimerais particulièrement avoir vos retours :

Je pense que vous êtes également intéressés par l'architecture logicielle de cette nouvelle version. Vous pourrez donc trouver quelques explications à son sujet en seconde partie et n'hésitez pas à poser des questions dans les commentaires.

Nouvelle version de LinuxFr.org

Posté par  (site web personnel) . Modéré par Benoît Sibaud.
110
20
fév.
2011
LinuxFr.org

Le site LinuxFr.org existe depuis juin 1998. Il est passé par différentes versions, fonctionnant avec différents moteurs : DaCode, Templeet et maintenant Ruby on Rails. Le site a donc utilisé le tout intégré DaCode, puis des modèles de page en Templeet développés par l'équipe du site, puis une version intégrée en Ruby.

Templeet avait été lancé principalement pour LinuxFr.org, il a été et est utilisé par d'autres sites comme moteur de « templates ». Il continuera sa vie de son côté, une version 4 étant attendue d'ici quelques mois.

La nouvelle version propose une charte graphique refaite pour l'occasion. Un concours a été organisé dans ce but et la feuille de style (CSS) gagnante, RonRonnement, est devenue la nouvelle CSS par défaut. Si celle-ci ne vous plaît pas, vous pouvez toujours profiter des autres CSS (l'ancienne feuille de style est là sous le nom kaiska-new).

Il est difficile de lister tous les changements liés à cette migration, mais voici les plus notables :

  • Les contenus et commentaires utilisent maintenant une syntaxe wiki, du Markdown en l'occurrence ;
  • L'espace de rédaction collaboratif a été refait (d'ailleurs, cette dépêche a été écrite simultanément par les 3 admins du site : lukhas, oumph et NoNo) ;
  • Le site intègre maintenant un wiki ;
  • Chaque utilisateur a maintenant un avatar : par défaut, il vient de gravatar mais il peut être changé dans les préférences ;
  • Les utilisateurs authentifiés peuvent étiqueter les contenus ;
  • Le script d'envoi de la lettre quotidienne d'annonce des dépêches est à refaire.

Mais certaines fonctionnalités n'ont pas encore été portées : la messagerie interne, les statistiques et le choix des contenus sur la première page.

Après les remous de la migration vers le nouveau site, l'équipe du site est à votre écoute pour recenser tous les problèmes que vous pourriez rencontrer.