Rubygems.org, So Nice et Rubinius

Posté par  (site web personnel) . Modéré par Nÿco.
Étiquettes :
8
24
déc.
2010
Ruby
En juillet 2009, le site rubygems.org a été lancé par la communauté Ruby pour héberger les gems Ruby. Depuis, le site est en très grand forme et vient de fêter le 100 millionième téléchargements de gems. Il vient également de passer juste devant le CPAN pour le nombre de paquets disponibles : 19 042 gems contre 19 013 modules Perl au moment de l'écriture de ces lignes (à comparer avec les 12548 packages sur PyPI et 562 packages Pear).

So Nice est une application web pour contrôler iTunes, Rhythmbox ou MPD. Elle est développée en Ruby avec Sinatra et disponible sous licence WTFPL.

Rubinius est une implémentation du langage de programmation Ruby, sous licence BSD. La version 1.2.0 vient de sortir avec :
  • Passage à LLVM 2.8
  • Améliorations des performances
  • Vérification du bytecode (particulièrement utile avec l'arrivée d'autres projets utilisant la machine virtuelle de Rubinius)
  • Des optimisations, notamment de la consommation mémoire
  • Query Agent, un nouvel outil pour débugger et remonter des informations de bas niveaux (statistiques sur le Garbage Collector par exemple)
  • Et autres améliorations et correctifs.

Apprendre un langage de programmation par an

Posté par  (site web personnel) . Modéré par baud123.
Étiquettes :
24
20
déc.
2010
Technologie
Un de mes livres d'informatique préférés est The Pragmatic Programmer, from journeyman to master. Dedans, on y trouve une foultitude de conseils, dont l'un m'a particulièrement marqué : il est souhaitable d'apprendre un nouveau langage de programmation tous les ans pour parfaire son portfolio de connaissances.

L'année 2011 va bientôt arriver et je souhaite partager avec vous quelques suggestions de langages pour ceux qui voudraient suivre ce conseil :
  • Ruby (disponible sous Licence Ruby et GPL) reste mon langage préféré et je ne saurais trop vous conseiller de le découvrir !
  • Reia (disponible sous licence MIT) est un langage avec une syntaxe inspirée de Ruby qui tourne au-dessus de la machine virtuelle d'Erlang, permettant ainsi de profiter du meilleur des deux mondes.
  • Go (disponible sous Licence BSD) est un langage assez jeune mais déjà très intéressant, avec notamment la programmation concurrente à base de Goroutines.
  • Io (disponible sous Licence BSD) est un langage de programmation qui s'appuie sur les prototypes, avec des inspirations venant de Smalltalk, Self, Lisp et Lua.
  • Scala (disponible sous Licence BSD) pourrait être le futur pour les développeurs Java et propose déjà des avancées très pertinentes comme son modèle d'Actors ou son travail sur le typage.
  • F# (disponible sous Licence Apache) est un langage de programmation fonctionnelle, fortement inspiré d'OCaml et issu des laboratoires de Microsoft.


Au fait, je n'ai pas encore choisi quel langage j'allais étudier en 2011, donc n'hésitez pas à défendre votre langage favori dans les commentaires ;-)

Reia, un langage fortement inspiré de Ruby

Posté par  (site web personnel) . Modéré par j.
Étiquettes :
19
18
déc.
2010
Ruby
Ruby est un langage de programmation génial (je vous assure, je suis totalement objectif quand je dis ça ;-) ), mais qui a quand même quelques petits défauts. On peut par exemple citer la mauvaise prise en charge de la concurrence ou l'absence de rechargement de code à chaud. À l'opposé, Erlang a une syntaxe parfois cryptique mais sa machine virtuelle est très avancée pour tout ce qui concerne les aspects distribués, la concurrence et la tolérance aux erreurs.

Reia est un langage de programmation qui cherche à prendre le meilleur des 2 mondes (licence MIT). Le code en reia ressemble à s'y méprendre à du code Ruby, mais il s'exécute sur la machine virtuelle d'Erlang. Voici à titre d'exemple le très classique Hello World :

"Hello world!".puts()

Pour le moment, il n'y a pas encore de version officielle de reia. Si vous souhaitez l'essayer, il vous suffit de cloner le dépôt git, d'avoir Erlang et Rake installés puis de lancer rake.

Campagne de documentation Rails, RubyDrop et Refinements

Posté par  (site web personnel) . Modéré par patrick_g.
12
5
déc.
2010
Ruby
RubyDrop est un clone de Dropbox libre développé en Ruby. Il permet de synchroniser des fichiers entre plusieurs ordinateurs en utilisant en interne git. Rappelons que SparkleShare propose la même chose, mais en mono (ce qui avait engendré de nombreux commentaire sur la dépêche à son sujet).

Ryan Bigg est l'auteur de plusieurs guides Ruby on Rails, écrit un livre sur Rails et participe au développement de nombreux gems Ruby. Il a lancé un appel à dons pour lui permettre de passer du temps à écrire de la documentation pour Rails. Le choix des sujets se fera parmi les suggestions proposées publiquement.

À la dernière RubyConf, Shugo Maeda a parlé des Refinements, qui devraient arriver dans Ruby 2.0. En Ruby, il est possible de faire ce que l'on appelle du monkey-patching : réouvir une classe déjà définie pour lui ajouter de nouvelles méthodes, voir modifier les méthodes existantes. Cela peut être très pratique mais peut très facilement devenir une source de bugs. Par exemple, si deux bibliothèques ajoutent toutes les deux une méthode camelize sur la classe String et que ces méthodes se comportent différemment, alors une des deux bibliothèques va utiliser l'implémentation de l'autre avec un comportement qui n'est pas celui attendu. Les Refinements pourraient être une solution pour corriger ce problème en limitant la portée de ces modifications.

Je profite également de cette dépêche pour annoncer la publication de la première revue mensuelle sur Ruby France.

Journal Choisir un framework web...

Posté par  .
6
22
jan.
2010
Salut,

Je me renseigne actuellement sur les différents frameworks web qui me permettraient de développer un site web simplement et rapidement.

Afin de découvrir autre chose, je regarde vers d'autres langages que PHP.

D'après ce que j'ai pu voir il y à principalement 2 frameworks assez populaires, j'ai nommé Django et RoR. Il semblerait que RoR soit plutôt orienté application web tandis que Django soit orienté publication... Mais que désigne ces termes cela veut-il dire que Django ne peut pas (…)

Journal LinuxFR en rails ?

Posté par  (site web personnel) .
14
6
jan.
2009
Ce matin, lors de mon surf matinal j'ai fait un petit tour sur github[1] quand tout à coup je suis tombé là-dessus:

Description: The new version of LinuxFr.org will be in Ruby on Rails. It's my resolution for 2009. [2]

A vos trolls.

[1] http://github.com
[2] http://github.com/nono/linuxfr.org/

Forum Programmation.c++ Pourquoi ne pas inventer un language agréable ET compilé ?

Posté par  .
Étiquettes :
0
2
déc.
2006
Bonjour à tous, d'abord deux constatations (avis personnels) : - C++ est rapide, puissant, disponible partout, bas niveau - ruby est agréable à programmer, disponible presque partout, haut niveau Je me pose une question depuis quelques semaines : Pourquoi personne n'a encore inventé un nouveau langage facile à programmer contrairement au C++ (on me dira, C++ c'est facile quand même) et agréable à programmer, plus intuitif etc... Un language qui se compile en binaire et est donc rapide à l'exécution. (…)

Support d'Ajax dans Ruby on Rails

Posté par  . Édité par Benoît Sibaud. Modéré par Pascal Terjan.
1
18
juin
2005
Ruby

Depuis quelques semaines, Ruby on Rails permet de développer des applications web avec Ajax.

Ruby est un langage de script (comme Perl ou Python), totalement orienté objet, avec une syntaxe très propre qui la programmation élégante et amusante.

Ruby on Rails est un framework de développement d'applications Web en Ruby, utilisant le modèle MVC. Oui, c'est vrai, il en existe déjà des dizaines. Mais grâce (entre autres) à son utilisation de Ruby, Rails permet de développer des applications Web jusqu'à 10 fois plus vite qu'avec d'autres frameworks (NdM. : ce type d'information est évidemment à prendre avec toutes la réserve nécessaire), avec un code bien plus concis. Ruby on Rails a provoqué ces derniers mois un petit ras de marée dans le monde des développeurs d'applications web, en remettant en cause le classique couple PHP/MySQL. D'autant plus que le support d'Ajax vient de lui être ajouté.

Ajax (Asynchronous Javascript and XML) est une vieille technologie : son composant de base, XMLHttpRequest, existe depuis 1998 et est utilisé un peu secrètement par de nombreux sites. Il permet de mettre à jour une page web sans avoir à recharger l'ensemble de la page (pour un petit exemple, postez un commentaire sur ce blog, c'est fait pour). Démocratisé par Google ces derniers temps (essayez par exemple de chercher quelque chose sur Google Suggest), son utilisation reste difficile, car il faut écrire du code compatible avec les différents navigateurs.

C'est là que Ruby on Rails montre tout son intérêt. Après avoir permis de développer des applications Web complexes sans écrire une ligne de SQL, Ruby on Rails permet de développer des applications Ajax en quelques minutes sans écrire une ligne de Javascript. Même si Ajax n'est pas la solution ultime, il permet de rendre des applications Web bien plus interactives et agréables pour les utilisateurs. Pas convaincu ? Essayez d'uploader un fichier sur cette page et admirez la barre de progression.

Sortie de Ruby 1.8.2

Posté par  . Édité par Benoît Sibaud. Modéré par Pascal Terjan.
Étiquettes :
1
4
jan.
2005
Ruby

Matz, fidèle à son habitude, a délivré le 25 décembre 2004 une version stable de Ruby (en l’occurrence la 1.8.2)

Longtemps attendue, mais retardée pour cause de manque de temps, la nouvelle version de Ruby corrige quelques bugs, et voit sa collection de classes « standards » augmenter (notamment l’ajout de RSS::Parser, SOAP4R, Net::HTTPS, l’extension de Ruby/Tk, le support des vhosts par WEBRick, ainsi que l’amélioration de Ri et RDoc).

À noter au passage, le fantastique livre de Dave Thomas sur Ruby. Ce livre en est à sa seconde édition, la première étant diffusée librement.

Journal Mon impression sur KDevelop 3 (gideon)

Posté par  .
Étiquettes :
0
9
août
2003
Amis pingouins, bonjour !

J'ai testé hier soir, comme ça, pour voir, KDevelop 3.

C'est un IDE modulaire, qui supporte d'ores et déjà les projets dans les langages ADA, C, C++, Fortran, Bash, Java, Perl, PHP, Python, Ruby; il est traduit en grande partie en français grâce à l'équipe de localisation en français de KDE, son interface revisitée est désormais à mon goût beaucoup plus agréable à utiliser, l'intégratiion du débogueur est carrément meilleure qu'avant ...

J'ai pas vraiment eu (…)