Netbeans 6.7

Posté par  (site web personnel) . Modéré par Nÿco.
Étiquettes :
14
30
juin
2009
Java
NetBeans est un projet qui consiste d'une part en une plate-forme de conception d'applications Java et d'autre part en un environnement de développement intégré - un IDE.

NetBeans a été racheté par Sun en 1999 et est développé en Java. Il est distribué sous double-licence CDDL et GPLv2.

Il est disponible dans de nombreuses langues - et en partie francisé - et prend en charge plusieurs langages de programmation parmi lesquels :
  • Java SE, Java EE, Java ME, JavaFX
  • C / C++
  • Javascript, AJAX...
  • XML
  • PHP
  • Ruby
  • Groovy
  • Python
  • ...

NetBeans dispose de fonctionnalités bien connues des utilisateurs d'IDE : coloration syntaxique, auto-complétion, gestion multi-projets, intégration des documents de référence, support de solutions de gestion de versions, intégration de débogueurs... Le logiciel a été conçu en prenant en compte le principe de la modularité. Il est ainsi proposé au téléchargement via des paquetages centrés sur les langages employés : PHP, C, JavaFX, Ruby, etc. mais rien n'empêche d'ajouter de nouvelles fonctionnalités via le système d'extensions.

Petites brèves, spécial Javascript

Posté par  (site web personnel) . Modéré par Xavier Teyssier.
Étiquettes :
14
18
juin
2010
Internet
HTTP-console est un outil en ligne de commande qui vous permet de faire des requêtes HTTP et d'examiner la réponse. C'est donc une sorte de Curl, mais son mode interactif en fait un outil très pratique si vous avez à débugger une API Rest. Pour ceux qui préfèrent les interfaces web à la ligne de commande, vous pouvez regarder Hurl (code source).

PDF.js est une bibliothèque javascript qui permet de générer des fichiers PDF simplement. Elle peut être utilisée dans un navigateur web ou coté serveur avec Node.js.

À propos de Node.js, Ryan Dahl, son créateur, viendra en parler lors du Web Workers Camp le 3 juillet à la Cantine, Paris. Node.js est une implémentation Javascript côté serveur qui utilise le moteur V8 de Google Chrome. Il est publié sous licence MIT et est très performant. Par exemple, il est possible de faire tourner des composants serveur XMPP avec xmpp.js.

Enfin, pour ceux qui préfèrent utiliser jQuery (une bibliothèque Javascript facilitant le développement d'un site web), Rebecca Murphey a mis en ligne un livre intitulé « jQuery fundamentals », sous licence CC by-sa. Celui se compose de trois parties : une introduction au Javascript, les concepts de base de jQuery et jQuery avancé (la troisième partie n'est pas encore là).

StropheCappuccino est un ensemble de classes Javascript qui - comme le nom l'indique - lient Capuccino (framework pour applications desktop-like) à Strophe (bibliothèque XMPP). Il permet donc d'écrire de vraies applications desktop en Javascript se reposant sur XMPP.

En vrac, spécial Ruby

Posté par  (site web personnel) . Modéré par j.
É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.

Sortie d'Elastic Search en version 0.19

Posté par  (site web personnel) . Édité par baud123 et NeoX. Modéré par Lucas Bonnet. Licence CC By‑SA.
14
3
mar.
2012
Base de données

Elastic Search est un moteur de recherche full-text, sous licence Apache 2. Plus précisément, c'est une interface Rest (Representational State Transfer) distribuée, utilisant le format JSON, qui permet d'exposer des index Lucene pour construire des moteurs de recherche avec des fonctionnalités avancées comme de la recherche par facette. On peut donc le comparer à Solr, mais avec une approche plus moderne et plus proche du mouvement NoSQL.

Il existe de nombreux clients pour Elastic Search comme la gem Tire dans le monde Ruby ou ElasticSearch.pm pour Perl. Elastic Search est utilisé en production par Mozilla, Stumble Upon , yfrog, Klout, af83, etc.

NdM : LinuxFr.org utilise Elastic Search pour son moteur de recherche interne, dans sa version 0.19 depuis le jour de sa sortie. Merci Lukhas !

Dernière ligne droite pour le concours LinuxFr.org

Posté par  (site web personnel) . Modéré par j.
Étiquettes :
14
29
déc.
2010
LinuxFr.org
À l'occasion de la nouvelle version de LinuxFr.org, nous organisons un concours. Nous sommes dans la dernière ligne droite, le concours finit le 5 janvier 2011 à 23h59. Il vous reste juste le temps pour y participer sur l'une de ces catégories (ou les deux) :
  • Proposer une nouvelle charte graphique ;
  • Réaliser une « killer feature » en HTML5.
Vous pouvez continuer à tester la version bêta^Walpha et à remonter les bugs. En revanche, pour simplifier la vie des participants au concours, cette version ne devrait pas bouger jusqu'à la fin du concours.

Pour rappel, vous pouvez gagner de l'hébergement virtualisé, une tablette Android type Archos 101, des bons d'achat pour du matériel « ouvert » et un HTC Desire, le tout fourni respectivement par Gandi, Nuxeo, Hackable Devices et Mozilla Europe. Un grand merci à eux et à InDefero qui nous met gracieusement les forges à disposition pour la réalisation des projets.

Les informations pour participer au concours sont données dans les dépêches précédentes. Il ne me reste plus qu'à vous souhaiter bon courage.

Petites brèves à propos de Ruby et Rails

Posté par  (site web personnel) . Édité par Benoît Sibaud. Modéré par baud123.
É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.

Spree 1.0.0

Posté par  (site web personnel) . Édité par Xavier Teyssier, baud123 et Nÿco. Modéré par Malicia. Licence CC By‑SA.
14
10
fév.
2012
Ruby

Spree est une solution d'e-commerce, sous licence libre, écrite avec le framework Ruby on Rails. Après cinq ans de développement, elle vient d'atteindre la version 1.0.0 grâce à plus de 150 contributeurs.

Spree est une plateforme d'e-commerce complète conçue pour simplifier le développement d'applications e-commerce en faisant certaines suppositions. Elle peut-être utilisée telle quelle mais, plus important, elle est surtout pensée pour être une base solide pour que des développeurs puissent l'utiliser dans des développements plus importants. Voici les quatre opinions à la base de la vision de Spree :

  1. Aucune solution ne peut satisfaire tout le monde. Spree se concentre sur fournir les 80 % des fonctionnalités les plus utiles, charge aux développeurs de coder les 20 % restantes, spécifiques à chaque projet.
  2. Le commerce en ligne n'est pas pour les débutants. Spree vise un public de développeurs Rails aptes à se confronter aux besoins avancés nécessaires pour les boutiques en ligne sérieuses.
  3. Les développeurs ont besoin d'un contrôle total. Spree ne doit pas se mettre en travers du chemin des développeurs quand ceux-ci travaillent sur les fonctionnalités spécifiques et rester suffisamment souple pour permettre les adaptations à moindre coût.
  4. Il faut rester concentré. Spree est une solution d'e-commerce et ne doit pas s'éparpiller. Il n'y a pas de raison de proposer des fonctionnalités de type CMS alors qu'il existe déjà des CMS dans le monde Rails comme Radiant.

À partir de cette vision, les développeurs de Spree ont réussi à construire une solution d'e-commerce robuste, offrant de nombreuses fonctionnalités, parmi lesquelles on retrouve :

  • Apparence facilement personnalisable ;
  • Parcours client flexible ;
  • Gestion avancée du catalogue de produits ;
  • Interface de gestion des commandes ;
  • Prise en charge de nombreuses passerelles de paiement et de calcul de frais de ports ;
  • Traduction en 30 langues ;
  • Plus d'une centaine d'extensions.

Sortie de Phusion Passenger 2.2.12

Posté par  (site web personnel) . 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.

3 frameworks de développement : Ruby on Rails, Snap et Lamson

Posté par  (site web personnel) . Modéré par tuiu pol.
Étiquettes :
13
25
mai
2010
Internet
Ce week-end, la version 2.3.6 de Ruby on Rails est sorti, suivi de peu par la version 2.3.7. Ces versions apportent un bon nombre de correctifs pour divers problèmes, mais surtout préparent le terrain pour Rails 3. Certaines API vont être supprimées dans Rails 3, et la version 2.3.6 permet d'être averti si votre application Rails utilise une de ces API.

La version 3 va également apporter un grand plus au niveau de la sécurité en échappant par défaut toutes les chaînes de caractères pouvant être sujettes à une attaque XSS. La version 2.3.6 devait permettre de tester ce comportement en installant le greffon Rails XSS. Mais, certains commits n'ont pas été backportés depuis Rails3, rendant ainsi cette protection non seulement inefficace mais aussi source de plantages. Heureusement, la version 2.3.7 est sortie juste après pour réparer ça. Au final, si vous êtes un utilisateur de Rails, vous êtes encouragés à sauter la version 2.3.6 et à passer directement à la version 2.3.7.

Mise à jour : Rails 2.3.8 vient de sortir pour corriger un problème lorsque l'on n'utilise pas le greffon Rails XSS. C'est donc vers cette version qu'il faut migrer.

Et si vous préférez la programmation fonctionnelle, sachez que le développement web vous est aussi ouvert. Par exemple, Snap est un framework web en Haskell sous licence MIT. Snap se décompose en trois parties :
  • Une bibliothèque serveur HTTP très rapide, qui s'appuie sur la boucle événementielle de la libev ;
  • Une monade particulièrement bien adaptée au développement web ;
  • Un moteur de templating XML qui permet de générer entre autres du HTML.
Snap est encore très jeune, mais ses performances sont déjà impressionnantes : plus rapide qu'apache !

Enfin, Lamson est un framework de développement en Python sous la double licence BSD et GPL. Sa particularité est d'être un framework pour les mails. Il propose une approche similaire à celle de Django ou Ruby on Rails, mais pour développer des applications qui gèrent des mails. Vous avez ainsi la possibilité de router des mails entrants, d'utiliser le modèle MVC, d'utiliser des données en provenance de différentes bases de données (relationnelles ou non), d'utiliser un ORM si vous le souhaitez, ou encore d'écrire des tests unitaires. Bref, Lamson permet enfin d'écrire facilement des applications qui gèrent des mails, que ce soient des filtres anti-spams, des mailing-listes, ou des applications très spécifiques.

Sortie de la version 2.0 de Retrospectiva

Posté par  (site web personnel) . 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.

Prenez de bonnes habitudes avec Daily Stamp

Posté par  (site web personnel) . Modéré par Xavier Teyssier.
Étiquettes :
13
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.

Petites brèves autour de Ruby

Posté par  (site web personnel) . Édité par Benoît Sibaud. Modéré par Benoît Sibaud. Licence CC By‑SA.
Étiquettes :
13
1
fév.
2012
Ruby

RailsFrance.org fait peau neuve. Saluons le travail de Sush, Pierre Nespo, Georget Julien et Laurent Noblet pour donner à la communauté Rails un portail francophone digne de ce nom. Personnellement, je le trouve réussi et j'espère qu'il réussira à être un espace vivant pour la communauté.

Bonjour Gem est un site web qui présente une gem par jour. Rappelons qu'une gem est un package dans le monde Ruby qui peut être installé avec Rubygems.

JRuby, une implémentation alternative de Ruby au-dessus de la JVM, est sortie en version 1.6.6. La branche 1.6 de JRuby a principalement servi à apporter une prise en charge de Ruby 1.9. Avec la version 1.6.6, JRuby a largement atteint cet objectif et la prochaine version sera la 1.7.0.

Devise, le gem souvent utilisé pour l'authentification dans les projets Rails, a atteint la version 2.0. Elle n'apporte pas de changement majeur, l'incrément du numéro majeur vient suite à un changement d'API et se veut un pas vers une bibliothèque vraiment mature pour ce domaine. Notons que LinuxFr.org utilise Devise 2.0 depuis quelques jours.

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.

Mailman, Locomotive, Greenletters et re2

Posté par  (site web personnel) . Modéré par baud123.
É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.

Sortie de Redis 2.0.0

Posté par  (site web personnel) . Modéré par Mouns.
Étiquettes :
12
6
sept.
2010
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.

Les principales caractéristiques de Redis sont :

Le principal développeur de Redis, Salvatore Sanfilippo, a été embauché par VMWare pour travailler à plein temps sur Redis. Cela a conduit à la récente sortie de la version 2.0 dont quelques nouveautés seront mises en avant dans la seconde partie de la dépêche.