Prenez de bonnes habitudes avec Daily Stamp

Posté par . Modéré par Xavier Teyssier.
Étiquettes :
12
4
sept.
2010
Ruby
Rails Rumble est une compétition qui se tient une fois par an et dont l'objectif est de faire une application Rails en moins de 48h avec une équipe de moins de quatre personnes. La prochaine édition se tiendra les 16 et 17 octobre prochain, mais je voudrais surtout vous présenter une des applications de l'édition 2009 : Daily Stamp.

Ryan Bates, aussi connu pour ses Railscasts, a développé Daily Stamp pour nous permettre de prendre de bonnes habitudes ou de casser les mauvaises. Il vient de libérer le code source sous licence MIT.

Le fonctionnement est très simple et s'inspire des Seinfeld Calendar : chaque jour, vous apposez un tampon si vous avez bien accompli votre mission et vous marquez des points au fur et à mesure que votre série de jours tamponnés grandit. Par exemple, si votre objectif est d'écrire un billet sur votre blog tous les jours, chaque fois que vous aurez écrit un billet, vous irez tamponner la case du jour sur Daily Stamp. Quand vous aurez atteint un score de 100 points (ou plus si vous le souhaitez), vous devriez avoir adopté l'habitude et pouvoir continuer sans Daily Stamp.

Daily Stamp vous permet d'avoir plusieurs objectifs en parallèle, de personnaliser vos tampons, de rendre publics vos objectifs ou de les garder privés et de suivre les tampons publics de vos amis. Bref, c'est un très bon moyen pour garder sa motivation lorsque l'on souhaite prendre une nouvelle habitude ou casser une mauvaise.

Ruby on Rails 3 est là

Posté par . 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.

Sortie de Bundler 1.0.0

Posté par . Modéré par Benoît Sibaud.
Étiquettes :
10
30
août
2010
Ruby
Bundler permet de gérer les dépendances d'une application Ruby au cours de sa vie sur plusieurs machines de manière systématique et reproductible. Cette application sous licence MIT vient de sortie en version 1.0.

Bundler peut être utilisé conjointement à Ruby Version Manager pour les développeurs travaillant sur de nombreux projets, mais il est déjà très utile par lui-même. Je vous invite à lire la seconde partie de la dépêche pour comprendre comment bundler peut vous rendre service.

Ruby Version Manager 1.0.0

Posté par . Modéré par Anonyme.
Étiquettes :
11
24
août
2010
Ruby
Ruby Version Manager, ou RVM pour les intimes, est un outil en ligne de commande qui permet d'installer et de travailler facilement avec plusieurs environnements Ruby. Chaque environnement se compose d'un interpréteur Ruby et d'un ensemble de gems.

RVM s'installe très rapidement en tapant la ligne de commande suivante :
bash < <( curl http://rvm.beginrescueend.com/releases/rvm-install-head )

Il est ensuite possible d'installer les interpréteurs Ruby que vous souhaitez utiliser ou tester d'un simple rvm install [interpréteur], que l'interpréteur en question soit le tout récent Ruby 1.9.2, Rubinius, JRuby, IronRuby ou bien d'autres encore. Vous pouvez alors passer d'un interpréteur Ruby à un autre en tapant rvm use [interpréteur]. De même, vous pouvez choisir l'ensemble de gems qui vous intéresse grâce à la commande rvm gemset. Tout ceci peut être très pratique pour tester une bibliothèque Ruby avec plusieurs versions de Ruby ou un greffon Rails avec plusieurs versions de Rails.

RVM est publié sous licence MIT et vient d'atteindre la version 1.0.0, un an exactement après le premier commit. Cette évolution rapide a notamment été permise par le travail de Darcy Laycock, alias Sutto, dans le cadre du Ruby Summer of Code. Parmi les changements récents, nous pouvons citer :
  • RVM demande maintenant à l'utilisateur s'il a confiance dans un fichier rvmrc d'un projet avant de l'exécuter pour des raisons de sécurité
  • Une option --with-rubies a été ajoutée pour lancer une commande avec un ensemble particulier d'environnements (par exemple, rvm --with-rubies gemsets ruby [somethimg] lancera la commande ruby pour tous les gemsets de l'interpréteur Ruby courant).
  • La complétion des commandes, des rubies et des gemsets dans ZSH.

Sortie de Ruby 1.9.2

Posté par . Modéré par tuiu pol.
Étiquettes :
22
19
août
2010
Ruby
Yuki Sonoda (Yugui) a annoncé la sortie officielle de Ruby 1.9.2. Bien que le numéro de version n'en montre rien, cette version est très importante et pourrait marquer le passage de Ruby 1.8 à Ruby 1.9.

Rappelons que Ruby est un langage de programmation orienté objets, à typage dynamique et qui s'est inspiré de Lisp, Perl, Smalltalk, Eiffel, etc. Sa principale caractéristique est de mettre en avant les besoins humains avant ceux informatiques, et notamment le fun et la productivité.

Jusqu'à Ruby 1.8, l'interpréteur était écrit par Yukihiro Matsumoto (Matz), le concepteur du langage. Koichi Sasada (ko1n) a commencé une réécriture complète pour apporter les dernières avancées techniques à Ruby. Le projet a commencé sous le nom de code YARV, puis Matz en fait la version officielle de Ruby à partir de Ruby 1.9.

Le premier avantage de Ruby 1.9 est ses performances. Ruby était réputé pour n'être pas très rapide, mais les avancées de Ruby 1.9, et notamment le ramasse-miettes, lui permette d'être de 3 à 5 fois plus rapide que Ruby 1.8. Parmi les autres avancées importantes de Ruby 1.9, nous pouvons citer la gestion des encodages, de nouvelles fonctionnalités comme les fibres ou encore des améliorations de la syntaxe (en particulier, celles des Hashs).

Les versions 1.9.0 et 1.9.1 manquaient de stabilité. La communauté Ruby les a considérées comme des versions de développement et rares sont les développeurs à les avoir utilisées en production. La version 1.9.2 devrait changer la donne : cette version est bien plus solide et on devrait assister à une migration massive vers Ruby 1.9. Si jamais ce n'était pas le cas, les implémentations alternatives comme Rubinius ou JRuby pourraient fort bien attirer les foules et devenir prédominantes.

Pour installer Ruby 1.9.2, vous pouvez télécharger les sources sur http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.2-p0.tar.bz2 ou, pour les utilisateurs de RVM :
rvm update --head && rvm reload && rvm install 1.9.2 && rvm 1.9.2

Mailman, Locomotive, Greenletters et re2

Posté par . Modéré par Anonyme.
Étiquettes :
12
29
juil.
2010
Ruby
Dans le cadre du Ruby Summer of Code, un des étudiants a publié un micro-framework pour traiter des courriels entrants. Mailman est sous licence MIT et en est encore à ses balbutiements (et n'a rien à voir avec GNU Mailman logiciel libre de gestion de listes de diffusion). Pour le moment, il permet d'aller chercher des courriels en POP3 ou depuis un Maildir et d’exécuter des actions pour chaque courriel en fonction de critères sur l'émetteur, le destinataire, le titre ou le contenu.

Locomotive CMS est, comme son nom l'indique, un système de gestion de contenu et est sous licence MIT. Il est écrit en Ruby on Rails et fonctionne avec une base de données MongoDB. Il peut être déployé pour gérer un ou plusieurs sites ou être utilisé sous forme d'engine au sein d'une application Rails plus large.

Greenletters est un clone d'Expect écrit en Ruby. Il permet donc d'automatiser des interactions avec des outils en ligne de commande comme telnet, ftp, passwd, etc. Greenletters peut aussi être utilisé depuis des specs Cucumber en utilisant les raccourcis fournis.

RE2 est une bibliothèque développée par Google pour manipuler des expressions rationnelles de manière efficace. Il existe désormais des bindings pour profiter de cette bibliothèque en Ruby.

Les pouvoirs magiques d'Unicorn 1.0.0

Posté par . Modéré par Anonyme.
Étiquettes :
19
19
juin
2010
Ruby
Unicorn est un serveur applicatif HTTP en Ruby comparable à Mongrel ou à Thin, sous licence GPLv2. Il est utilisé notamment par Twitter et Github et vient d'atteindre la version 1.0.

Unicorn est compatible avec Rack, une interface entre les serveurs applicatifs et les frameworks. Il peut ainsi être utilisé pour servir des applications Ruby, dont celles écrites en Ruby on Rails. Il tourne avec Ruby 1.8, Ruby 1.9 et bientôt Rubinius. Rappelons que Rubinius est une implémentation alternative de Ruby dont la version 1.0 est sortie récemment.

Unicorn s'appuie au maximum sur les noyaux Unix pour éviter de réinventer la roue. Par exemple, la répartition des requêtes entre les différents processus se fait grâce à une socket partagée. Il est également possible de mettre à jour Unicorn, l'application ou l'interpréteur Ruby sans perdre la moindre connexion.

De même, Unicorn est optimisé pour servir des clients rapides. Il est donc très souvent utilisé derrière un reverse-proxy, qui pourra bufferiser les requêtes des clients lents.

A l'inverse, utiliser Unicorn pour des connexions longues comme du Comet (Comet désigne un ensemble de techniques où un serveur maintient des connexions HTTP ouvertes pour pouvoir pousser des contenus vers les clients) ou des websockets serait très inefficace, je vous conseille pour cela de regarder Rainbows : c'est un projet inspiré d'Unicorn qui vise justement à répondre à cette problématique particulère.

Petites nouvelles pour rubyistes

Posté par . Modéré par Anonyme.
Étiquettes :
14
16
juin
2010
Ruby
Les Ruby Hero Awards sont remis une fois par an, lors de la RailsConf, et mettent en avant des personnes ayant fait avancer la communauté Ruby. Cette année, six trophées ont été remis :

Un sondage Ruby est organisé pour mieux cerner les préférences des développeurs Ruby : Rails ou Sinatra ? Textmate ou Vim ? Espaces ou tabulations ? Si vous êtes un développeur Ruby, je vous encourage à y participer (ça ne prend que deux minutes).

Pour ceux qui ont la malchance d'être sous Windows, sachez qu'il existe un moyen simple d'installer Ruby sur votre plateforme : l'installeur. Les versions de Ruby disponibles ont été mises à jour la semaine dernière et le site vient d'être refait.

Enfin, le 19 août sera l'occasion de célébrer le Why Day, en l'honneur de Why the lucky stiff. Ce hacker a très fortement influencé la communauté Ruby, par ses écrits et notamment le guide poignant de why, ses projets Ruby (Camping, Shoes, RedCloth, Try Ruby, etc.), et plus généralement par sa présence en ligne. Le 19 août de l'année dernière, il a décidé de supprimer toute son activité en ligne, probablement pour préserver son anonymat. Le Why Day sera l'occasion de lui rendre hommage et de se lancer dans des projets fous.

DataMapper 1.0

Posté par . Modéré par Anonyme.
Étiquettes :
18
10
juin
2010
Ruby
DataMapper est une bibliothèque en Ruby qui vous permet de manipuler des données dans des bases de données sous forme d'objets Ruby (c.-à-d., c'est un ORM). Sous licence MIT, il vient de sortir en version 1.0, grâce au travail de 66 contributeurs.

Dans le monde Ruby, l'utilisation d'ORM est devenue une pratique courante sous l'influence de Ruby on Rails. ActiveRecord, l'ORM de Ruby on Rails, est ainsi très utilisé mais il ne convient pas à tout le monde. Les développeurs de Ruby on Rails ont des avis très tranchés sur certains points et, notamment, cherchent toujours à répondre aux 20% de cas d'utilisation qui couvrent 80% des besoins. Mais certaines personnes ont des besoins plus particuliers : c'est ce qui est arrivé aux développeurs de DataMapper.

L'équipe de DataMapper a ainsi voulu fournir une bibliothèque plus complète qu'ActiveRecord. On peut ainsi citer les points forts suivants :
  • Support de nombreuses bases de données, aussi bien relationnelles que NoSQL, mais également de fichiers YAML et d'interfaces REST ;
  • Migrations automatiques : on écrit les classes Ruby, puis on demande à DataMapper de créer les tables correspondantes dans la base de données ;
  • Unicité des objets : une ligne dans la base de données correspond à un objet ;
  • Approche modulaire : on choisit les fonctionnalités dont on a vraiment besoin ;
  • Réduction du nombre de requêtes : DataMapper ne fait les requêtes qu'au moment où vous avez vraiment besoin d'y accéder (Lazyness can be a virtue ) et précharge les objets quand vous itérez sur des collections (Strategic eager loading ) ;
  • Intégration plus souple à des projets Ruby existants.


La version 3 de Ruby on Rails devrait sortir d'ici quelques semaines et va notamment permettre de remplacer facilement ActiveRecord par un ORM dans les projets Rails.
Saluons donc l'arrivée de DataMapper 1.0 qui va permettre de couvrir des scénarios complexes pour des projets Rails ou autres.

Sortie de Phusion Passenger 2.2.12

Posté par . Modéré par patrick_g.
Étiquettes :
13
1
juin
2010
Ruby
Phusion Passenger est un module pour Apache 2 ou Nginx qui permet de déployer simplement des applications Ruby. En particulier, il est très bien adapté aux applications Rails, d'où son surnom de mod_rails. Bien que développé et supporté commercialement par Phusion, l'intégralité du code source est placé sous licence MIT.

La version 2.2.12 est toute fraîche. Elle apporte des corrections de bogues et améliore le support de Bundler, vous permettant ainsi de gérer les dépendances de vos applications et charger les bonnes versions des gems utilisés sur vos projets.

L'installation et la mise à jour peuvent se faire en utilisant le gem passenger, puis en lançant passenger-install-apache2-module ou passenger-install-nginx-module. Brightbox fournit également des paquets pour Ubuntu.

Les développeurs de Passenger recommandent d'utiliser leur version de Ruby. Cette dernière se nomme de façon un peu pompeuse Ruby Entreprise Edition. C'est un Ruby 1.8.7 agrémenté de quelques patches pour améliorer la gestion de la mémoire et le comportement du ramasse-miettes (garbage collector). Ces patches ont été proposés à Matz, mais il les a refusés car ils peuvent dégrader incroyablement les performances dans certains cas en dehors du web.

En vrac, spécial Ruby

Posté par . Modéré par Anonyme.
Étiquettes :
14
24
mai
2010
Ruby
Il y a en ce moment pas mal d'activité autour de Ruby. JRuby 1.5 et Rubinius 1.0 ont été annoncés sur LinuxFr il y a quelques jours, et une troisième implémentation Ruby a franchi une étape importante récemment : MacRuby a atteint la version 0.6.

MacRuby est une implémentation de Ruby 1.9 (sous licence GPL) qui repose sur les technologies core de Mac OS X telles que Objective-C, LLVM et Foundation. Les premiers benchmarks montrent que MacRuby a des performances intéressantes à ce stade de développement, bien qu'en deçà de celles de Ruby 1.9.

Du côté du Ruby Summer of Code, les 20 projets sélectionnés ont été annoncés. Ceux-ci sont très variés, allant de l'amélioration de points spécifiques dans Ruby on Rails aux extensions en C dans JRuby, en passant par la contribution à Camping et Hackety Hack, deux projets initiés par Why the Lucky Stiff. À ce sujet, Smashing Magazine a publié la légende de _Why, dont je vous recommande fortement la lecture, que vous souhaitiez découvrir le personnage ou vous remémorer ses actes les plus glorieux.

Rubygems, l'outil de gestion de paquets spécifiques à Ruby, est sorti en version 1.3.7. La principale nouveauté est que rubygems.org devient le dépôt par défaut, remplaçant gems.rubyforge.org, qui va continuer de fonctionner pendant encore un bout de temps pour assurer la migration.

Haml et Sass sont deux projets Ruby liés pour des raisons historiques qui viennent de sortir en version 3 (sous licence MIT). Le premier est un moteur de templating qui permet d'écrire des templates très concis. Le second est une extension de CSS3 pour faciliter la vie des personnes qui doivent écrire et maintenir des CSS : Sass offre des variables (c'est quand même fou que CSS ne le propose pas de base !), des sélecteurs imbriqués, des mixins (plusieurs règles CSS regroupées sous un même nom que l'on peut utiliser à plusieurs endroits dans ses feuilles de style), et plein d'autres ajouts très utiles.

Pour finir, je souhaite parler de TomDoc. C'est un document qui liste un ensemble de règles pour commenter du code en Ruby. Il va à l'encontre des règles de RDoc, mais la syntaxe proposée par TomDoc me semble être une avancée suffisante pour que cela vaille la peine de marquer cette rupture. J'espère que les développeurs Ruby qui passent dans le coin seront du même avis que moi et vont se mettre à utiliser TomDoc.

Rubinius 1.0 est sorti

Posté par . Modéré par Nÿco.
Étiquettes :
19
15
mai
2010
Ruby
Rubinius est une implémentation du langage de programmation Ruby, dont le code est placé sous licence BSD. Rubinius permet d'exécuter du code Ruby, mais vise également les objectifs suivants :
  • Rubinius est Threadsafe ;
  • Son code est propre, lisible, facile à comprendre et à étendre ;
  • Il est fiable et solide (avec l'aide de Valgrind) ;
  • Et surtout, il apporte les dernières avancées de la recherche sur les machines virtuelles, les ramasses-miettes et les compilateurs à Ruby.
Le développement de Rubinius a commencé en novembre 2006 et, aujourd'hui, une étape importante a été franchie : la sortie de la version 1.0. Celle-ci marque la compatibilité avec Ruby 1.8.7, y compris Ruby on Rails (aussi bien la version 2.3 et que la version 3), Rspec, Rubygems, les bibliothèques Ruby et même une grande partie des extensions codées en C.

D'un point de vue plus technique, Rubinius est écrit majoritairement en Ruby, et pour les parties où ce n'est pas (encore) possible en C++. Il fonctionne avec une machine virtuelle dont le bytecode est transformé en code machine à l'exécution grâce à LLVM et utilise un garbage collector générationnel, précis et compactant. Et pour ceux qui seraient d'humeur taquine, je ne résiste pas à l'envie de mettre un petit lien vers un benchmark. Vous pouvez voir que Rubinius est l'implémentation Ruby la plus rapide, ou du moins, l'était en janvier quand le benchmark a été fait.

Si vous êtes convaincus, vous pouvez installer Rubinius soit en suivant les instructions officielles, soit en utilisant Ruby Version Manager. Je recommande d'utiliser la seconde solution, car RVM vous permet d'installer plusieurs implémentations de Ruby sur la même machine, d'installer des gems pour chacun d'eux et de passer d'une implémentation à l'autre sans problème.

Petites brèves à propos de Ruby et Rails

Posté par . Modéré par Anonyme.
Étiquettes :
14
13
mai
2010
Ruby
JRuby 1.5 JRuby est une implémentation complète de Ruby au-dessus de la machine virtuelle Java. JRuby est entièrement compatible avec Ruby 1.8.7 et en grande partie avec Ruby 1.9, offre des performances significativement meilleures que la branche 1.8 de Ruby et comparable à celles de la branche 1.9, et vous permet de faire fonctionner les principaux programmes Ruby comme Ruby on Rails, rubygems ou encore rspec. La version 1.5 de JRuby n'apporte aucun changement vraiment révolutionnaire, mais un important travail de consolidation a été fait : meilleure compatibilité avec la version officielle de Ruby, meilleures performances, meilleur support aussi bien pour Unix que pour Windows, prise en charge d'Ant, etc. Si vous souhaitez essayer JRuby 1.5, l'installation se fait très simplement, mais je vous recommande d'utiliser Ruby Version Manager qui permet d'avoir plusieurs implémentations de Ruby sur sa machine sans problème.

Teambox est un outil de gestion de projets dont le fonctionnement s'inspire de Twitter : la page principale d'un projet se présente sous la forme d'une timeline avec les dernières mises à jour sur laquelle on peut mettre à jour son statut. Vous retrouverez également toutes les fonctionnalités classiques d'un outil de gestion de projets : partage de fichiers, liste de tâches, discussions, notifications par email, gestion des utilisateurs et permissions, etc. D'un point de vue plus technique, Teambox est une application Ruby on Rails, sous licence AGPL. Le code est disponible sur github et les contributions sont les bienvenues.

Posez vos questions Ruby Ruby France a mis en place un espace où vous pouvez poser vos questions sur Ruby et Rails, en français. Fréquenté par de nombreux rubyistes confirmés, vous ne devriez pas avoir de mal à trouver une réponse. Le site tourne avec Shapado, une application web de questions/réponses sous licence AGPL. Shapado est écrit en Ruby on Rails et fonctionne avec une base de données MongoDB.

IronRuby 1.0, le futur de Java, Gizzard et Flockdb, rachat de RabbitMQ par SpringSource

Posté par . Modéré par Florent Zara.
Étiquettes :
7
14
avr.
2010
Ruby
IronRuby 1.0
Trois ans après l'annonce initiale, IronRuby est fier d'annoncer sa version 1.0. Microsoft propose ainsi une implémentation alternative de Ruby qui tourne au-dessus de .NET. La version 1.0 d'IronRuby est compatible avec Ruby 1.8.6 (pas complètement : le langage est très bien respecté, mais pas quelques parties de la bibliothèque standard). Il permet notamment de faire tourner Ruby on Rails 2.3.5.

La prochaine étape est de s'attaquer à la compatibilité de Ruby 1.9 et de permettre de faire fonctionner Rails 3, comme annoncé dans l'interview de RubyInside.

Le futur de Java
Oracle a racheté Sun, et on peut se poser la question de savoir quelle direction Oracle souhaite-il donner à Sun. Le départ de James Gosling laisse à penser que Java n'est pas un enjeu prioritaire pour Oracle, mais en l'absence de communication officielle, il est difficile d'en savoir plus. Rappelons que Java 1.7 devrait sortir en septembre, sauf problème majeur.

Le compte github de twitter
Twitter a publié sur son compte github deux projets intéressants (tous les deux sous licence Apache 2.0) :
  • Gizzard est un framework pour faire de la répartition de données (sharding) entre plusieurs stockages. Écrit en scala, ce framework sert à développer des middlewares qui se placent entre vos applications et les bases de données pour assurer la distribution des données et garantir une certaine tolérance aux erreurs.
  • Flockdb est une base de données de type graphes. Twitter s'en sert pour stocker son graphe social (13 milliards d'arcs tout de même) et est en train d'en faire un projet libre à part entière. Un client Ruby est disponible pour communiquer avec la base de données.
Rachat de RabbitMQ par SpringSource
SpringSource, une filiale de VMWare, a racheté Rabbit Technologies Ltd., la société derrière RabbitMQ. RabbitMQ est une solution complète et fiable d'échange de messages entre systèmes hétérogènes, sous licence Mozilla. Elle implémente le standard AMQP (standard décrié par ses créateurs).

Codez avec classe grâce à Sinatra

Posté par . Modéré par tuiu pol.
Étiquettes :
16
29
mar.
2010
Ruby
Sinatra est un micro-framework en Ruby pour construire rapidement des applications web (licence MIT).

Il se présente sous la forme d'un Domain Specific Language, avec un jeu assez réduit de fonctionnalités et laissant beaucoup de libertés aux développeurs d'applications. En cela, il est très complémentaire de Ruby on Rails, car il sera très efficace pour les petites applications web, les prototypes, les API Rest, les webhooks, ou fournir une interface web à une application Ruby existante.

Le développement de Sinatra a commencé en novembre 2007, et une nouvelle étape a été marquée le 23 mars dernier avec la sortie de la version 1.0. Sinatra est utilisé dans de nombreuses applications Ruby, mais son succès ne se limite pas à Ruby. Il existe des clones plus ou moins fidèles dans de nombreux langages : Sammy (Javascript), Dancer (Perl), Fitzgerald (PHP), Martin (.net), Itty (Python), Step (Scala), Express (node.js) et beaucoup d'autres.

D'un point de vue plus technique, Sinatra s'installe très simplement avec Rubygems, d'un simple coup de gem install sinatra. Et écrire un Hello world n'est pas plus compliqué :
require 'rubygems'
require 'sinatra'

get '/' do
'Hello LinuxFr !'
end

20 étudiants pour travailler sur Ruby cet été

Posté par . Modéré par Anonyme.
É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 ;-)

Sortie de la version 2.0 de Retrospectiva

Posté par . Modéré par Nÿco.
Étiquettes :
13
9
fév.
2010
Ruby
Retrospectiva est un outil de gestion de projets libre (licence MIT). On peut le comparer à des outils comme Redmine, Trac ou Indefero. Il est toutefois plus orienté sur les approches agiles, notamment via le greffon AgilePM.

Les principales fonctionnalités de Retrospectiva sont :
  • Gestion des tickets avec un workflow personnalisable ;
  • Suivi de l'avancement des jalons et objectifs ;
  • Intégration de subversion et git pour l'affichage des révisions ;
  • Interface d'administration complète ;
  • Multi-projets avec une seule instance ;
  • Traduction dans plusieurs langues, dont le français ;
  • Un wiki avec la possibilité d'attacher des fichiers ;
  • La possibilité d'avoir un blog ;
  • Une installation simplifiée ;
  • Une API Rest et des flux RSS.


La version 2.0 de Retrospectiva vient de sortir, et c'est l'occasion de l'essayer. Si avant cela, vous voulez voir à quoi ressemble Retrospectiva, faites un tour sur le site officiel, il tourne lui-même sous Retrospectiva.

BlockCamp Paris le 28 novembre

Posté par . Modéré par Benoît Sibaud.
Étiquettes :
1
21
nov.
2009
Ruby
L’association Ruby France, l’ESUG , l'INSIA et af83 ont le plaisir de vous annoncer l’organisation d’un BarCamp consacré à Ruby et Smalltalk dans les locaux de l'INSIA à Paris, le samedi 28 novembre 2009.

Cette non-conférence sera l'occasion de parler de Ruby : implémentations de Ruby, Ruby et le desktop, bibliothèques Ruby, etc. mais également de Smalltalk : Squeak, Pharo, Seaside... Nous aurons ainsi parmi nous la présence de Lukas Renggli, committer Seaside (framework web en Squeak).

L’événement est gratuit et ouvert à tous, débutant ou expert. Il suffit de s’inscrire (attention à la limite maximum !) et toutes les explications et les informations pratiques (code d’accès pour entrer...) sont sur la page du wiki BarCamp.

Ruby France organise un second RailsCamp Paris

Posté par . Modéré par Florent Zara.
Étiquettes :
2
20
fév.
2009
Ruby
L'association Ruby France organise un Rails Camp le 7 mars 2009, de 9h30 à 18h. Cela se passera dans les locaux de Sun, au Sun Customer Briefing Center, 42 avenue d'Iéna à Paris (16e), France.

Cet événement gratuit est ouvert à tous, débutant ou expert Rails. L'inscription obligatoire se fait en ligne sur cette page.

Le thème sera Ruby on Rails mais aussi Merb, merge oblige. Chacun est invité à venir participer aux ateliers/sessions de développement, faire des présentations et discuter des dernières nouveautés.

Sortie de Merb 1.0

Posté par . Modéré par Benoît Sibaud.
Étiquettes :
9
8
nov.
2008
Ruby
Merb est un framework (cadre d'applications) MVC destiné à construire rapidement des applications web. La version 1.0 est sortie le 7 novembre, sous la licence libre MIT.

Son histoire a commencé en septembre 2006. Ezra Zygmuntowicz développait alors une application avec Ruby on Rails, et avait besoin de gérer certaines requêtes sans charger tout le framework. Pour cela, il a écrit un script Ruby utilisant les bibliothèques Mongrel et ERB (d'où le nom de Merb) pour gérer ces requêtes. Depuis, Merb a bien grandi et est devenu un framework à part entière, capable de concurrencer Ruby on Rails et Django.

RailsCamp Paris et MashPit à la Cantine

Posté par . Modéré par Anonyme.
Étiquettes :
0
11
mai
2008
Ruby
Ruby France, Silicon Sentier et AF83 ont le plaisir de vous annoncer l’organisation du premier RailsCamp (BarCamp/DevCamp dédié à Ruby on Rails) parisien. Il aura lieu le samedi 17 mai 2008 dans le cadre convivial de la Cantine, Paris, France.

Le thème de cette non-conférence est bien sûr Ruby on Rails, mais aussi des sujets afférents : Capistrano, Mongrel, Prototype, Script.aculo.us... L’événement est gratuit et ouvert à tous, des experts Rails aux débutants.

Il sera suivi le lendemain (le dimanche 18 mai) de 11h à 17h par un MashPit. Cette journée sera dédiée à la réalisation collaborative de mini-projets informatiques basés sur Ruby on Rails.

Ruby 1.9.0 est sorti pour Noël

Posté par . Modéré par Nÿco.
Étiquettes :
0
27
déc.
2007
Ruby
Les tests des pré-versions de cette année ont laissé présager des performances accrues (jusqu'a 10 fois plus rapide que la 1.8.5) grâce à la nouvelle machine virtuelle. Ce n'est pas encore Ruby 2.0, qui sera la prochaine version majeure stable. De nombreuses nouvelles fonctionnalités sont encore expérimentales et peuvent disparaître d'ici à la 2.0. Cette sortie en version de développement a été faite le jour de Noël, une fois n'est pas coutume (1.8.2 en 2004, 1.6.6 en 2001, 1.6.2 en 2000, 1.2 en 1998).

Parmi les nouveautés, citons le nouveau moteur d’expression rationnelles Oniguruma, la gestion de m17n (Multilingualization, notamment une meilleure gestion d'Unicode), l'intégration de RubyGems et de Rake et le remplacement du module CSV par FasterCSV.

Ruby est un langage connu dans le monde des serveurs pour son framework Ruby on Rails ou bien les interpréteurs Ruby dans Java permettant un développement plus rapide. Mais il possède également des bindings pour de nombreuses bibliothèques, dont les plus courantes dans le monde du libre (GTK/Gnome, QT/KDE, Cairo, OpenGL, XML, Curl, SDL, etc.), le rendant également utile pour le développement d'applications de bureau, de jeux, etc.

Un projet récent, Gosu permet par exemple de développer des jeux 2D complets mêlant des effets 3D en quelques centaines de lignes de Ruby, utilisant le moteur physique Chipmunk, l'accélération OpenGL et la puissance, concision et clarté du langage Ruby.

Conférence Paris On Rails 2007

Posté par . Modéré par Anonyme.
Étiquettes :
0
24
oct.
2007
Ruby
La seconde conférence francophone dédiée à Ruby on Rails aura lieu le 10 décembre 2007 à la cité des sciences de la Villette.

La conférence Paris On Rails 2007 vous permettra de découvrir le langage Ruby ainsi que le framework web Ruby on Rails et les raisons de son succès. Les conférenciers comptent parmi les meilleurs spécialistes de la communauté Rails francophone et David Heinemeier Hansson, le créateur du framework Ruby on Rails, répondra à vos questions en direct de Chicago.

Retrouvez-nous le 10 décembre prochain et apprenez comment mettre vos projets de développement Web sur des rails...

Programmez en Ruby

Posté par . Modéré par Anonyme.
Étiquettes :
0
23
fév.
2001
Ruby
Aujourd'hui vient de paraitre en ligne l'ouvrage " The Pragmatic Programmer's Guide " de Yukihiro Matsumoto, a.k.a. ``Matz''.
Le langage, et l'interpréteur sont Libres, vraiment Libres.
Et bien cet ouvrage est également libre !
Ruby est un langage de script entièrement OO et qui intègre les Closures de fonctions. Pour ceux qui ne connaissent pas ce langage plein d'avenir, cet ouvrage contient en début une description et un tutoriel.