RedNotebook 1.0

Posté par  (site web personnel) . Modéré par Nÿco.
Étiquettes :
21
30
juin
2010
Bureautique
RedNotebook est un logiciel sous licence GPLv2 qui vous permet de tenir un journal. Il vous aide ainsi à garder trace de vos notes et pensées et de naviguer à travers celles-ci via un calendrier, un nuage de tags, une hiérarchie de catégories ou un moteur de recherche.

RedNotebook est écrit en Python et GTK. Il est donc possible de le faire fonctionner sur de nombreuses plateformes dont GNU/Linux, Mac OS X et Windows. Il est traduit en 16 langues, dont le français.

Ses principales fonctionnalités sont :
  • L'export d'un journal en PDF, HTML ou texte brut ;
  • Possibilité de formater le texte et d'inclure des images ou fichiers ;
  • Reconnaissance automatique des URL et adresses de courriel ;
  • La prise en charge du glisser-déposer ;
  • La correction orthographique ;
  • Enregistrement automatique dans des fichiers plats, en local ou à distance (ssh, ftp ou webdav) ;
  • Des gabarits par jour de la semaine ou nommés ;
  • Possibilités avancées comme gérer plusieurs journaux ou chiffrer un journal.

Les pouvoirs magiques d'Unicorn 1.0.0

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

Gérez vos projets avec Trac

Posté par  (site web personnel) . Modéré par Xavier Teyssier.
Étiquettes :
17
17
juin
2010
Python
Trac est un outil de gestion de projets écrit en Python et distribué sous licence BSD. Il combine un wiki, un outil de suivi de demandes et un explorateur SVN (ou d'autres SCM).

C'est donc un projet similaire à InDefero, Retrospectiva ou Redmine. Trac est moins avancé que ces outils pour l'aspect multi-projets, mais ses nombreux greffons lui permettent de rester en tête en nombre de fonctionnalités.

La version 0.12 est sortie récemment et apporte de nombreuses améliorations. Parmi celles-ci, citons les plus importantes :
  • Prise en charge de l'internationalisation avec Babel ;
  • Gestion de plusieurs dépôts par instance ;
  • Syntaxe wiki plus souple, plus intuitive, et plus proche de Wiki Creole ;
  • Amélioration de l'interface de gestion des tickets et commentaires ;
  • Ajouts de fonctionnalités au wiki : renommer de pages, Universal Edit Button, prévisualisation automatique, etc.
Vous pouvez essayer cette nouvelle version sur le site de la démo.

RabbitMQ 1.8.0

Posté par  (site web personnel) . Modéré par Nÿco.
Étiquettes :
14
20
juin
2010
Technologie
RabbitMQ est une solution de messagerie d'entreprise complète et fiable, qui implémente le standard AMQP (Advanced Message Queuing Protocol). Elle est écrite en Erlang, publiée sous licence MPL et en concurrence avec Apache Qpid et ØMQ.

Le projet RabbitMQ comporte plusieurs composants :
  • Le serveur, pièce maîtresse, en charge du routage des messages, des files d'attentes, de la gestion des droits, etc. ;
  • Des passerelles pour les protocoles HTTP, XMPP et STOMP ;
  • Des bibliothèques client AMQP pour Java et .Net (il existe de nombreuses bibliothèques pour les autres langages développées ailleurs) ;
  • Des greffons comme Shovel (pour déplacer un message d'une instance de RabbitMQ vers une autre) ou rabbitmq-bql (un langage qui ressemble à du SQL pour interroger et configurer une instance de RabbitMQ).

La version 1.8.0, sortie récemment, est la première depuis le rachat de Rabbit Technologies Ltd. par SpringSource, une filiale de VMWare. Elle apporte de nouvelles API pour étendre le fonctionnement de RabbitMQ par des greffons, ainsi que diverses optimisations.

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.

Petites nouvelles pour rubyistes

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

Présentation de nginx

Posté par  (site web personnel) . Modéré par patrick_g.
Étiquettes :
21
17
juin
2010
Internet
Nginx est un reverse proxy et serveur web, ainsi qu'un proxy mail (IMAP et POP3), sous licence BSD. Igor Sysoev a commencé à le développer en 2002 pour un site russe à fort trafic, et depuis la popularité de nginx n'a cessé de croître. Selon netcraft, 6,5% des sites web dans le monde seraient servis par nginx.

Nginx est réputé pour ses performances et sa faible consommation mémoire. Cela vient de son architecture : au lieu de dédier un processus ou un thread pour traiter chaque requête, il utilise un modèle événementiel. Cela lui permet notamment de tenir un grand nombre de connexions simultanées sans voir sa consommation mémoire s'envoler. Des sites connus comme Wordpress, github et SourceForge l'ont choisi pour cette raison.

Nginx est également développé selon une approche modulaire : il est composé d'un cœur réduit et d'un grand nombre de modules que l'on peut choisir d'inclure à la compilation. Comme il est facile de développer un module, il en existe de nombreux et qui couvrent une large palette de fonctionnalités, des plus essentielles (SSL, fastcgi, gzip, rewrite, log) aux plus exotiques (servir des fichiers GIF vides, afficher des pages d'index aléatoires).

Si vous souhaitez télécharger nginx, 3 versions vous seront proposées : la branche 0.8 offre les dernières avancées, la branche 0.7 est la branche stable, et la branche 0.6 (legacy) est encore maintenue. La dernière version, sortie le 15 juin, est la 0.8.41. Vous pourrez l'installer sur Linux, BSD, Solaris, OSX ou encore Windows.

Transmission 2.00

Posté par  (site web personnel) . Modéré par Mouns.
Étiquettes :
19
16
juin
2010
Internet
Transmission est un client BitTorrent multi-plateforme libre. Il propose cinq interfaces utilisateur : ligne de commande, Web, GTK+, Qt et Mac OS X.

La version 2.00 vient de sortir et offre principalement des optimisations pour le téléchargement, mais également un démarrage plus rapide, une vue compacte, et les classiques corrections de bugs. Cette nouvelle version n'est donc pas une révolution, mais vient plutôt marquer l'accomplissement des changements apportés depuis la version 1.00 pour en faire un client BitTorrent agréable et pratique à utiliser.

Ainsi, transmission est un client facile à utiliser, léger, avec une bonne intégration aux différents environnements, mais qui n'en reste pas moins puissant (chiffrement, échange de peers, liens magnet, DHT, etc.).

Ce qui est moins connu, c'est son extensibilité via les add-ons. On trouve parmis celles-ci le contrôle à distance (dont téléphones mobiles), des interfaces, ou d'autres encore, malgré un écosystème encore assez peu étendu.

SparkleShare pour partager vos fichiers sur internet

Posté par  (site web personnel) . Modéré par baud123.
Étiquettes :
10
11
juin
2010
Mono
SparkleShare est un outil de partage de fichiers sous licence GPL.
Inspiré de Dropbox, il se veut à la fois simple, pratique et efficace.

En pratique, SparkleShare tourne en tâche de fond synchronisant vos répertoires partagés avec votre serveur (ou ceux de vos amis).
Il est écrit en Mono et GTK+, s'intègre bien à GNOME et, particularité intéressante, utilise git.
Il est ainsi capable de versionner les documents et de garder la trace de qui a fait quelle modification.
Vous serez également notifié des changements dès que ceux-ci auront été synchronisés.

Le projet est encore très jeune, il devrait fonctionner sous Linux, et il est prévu de le porter sur windows et OSX.

N'hésitez pas à contribuer pour aider son auteur à faire avancer cet outil.

DataMapper 1.0

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

Nouvelle base de données clés-valeurs : Kyoto Cabinet 1.0

Posté par  (site web personnel) . Modéré par baud123.
Étiquettes :
25
30
mai
2010
Base de données
Mikio Hirabayashi est un ingénieur qui travaille pour un réseau social japonais, mixi.jp. Pour faire face à la montée en charge, il a écrit une base de données très rapide de type clés-valeurs : Tokyo Cabinet. C'est une bibliothèque écrite en C, avec des bindings Ruby, Perl, Java et Lua, et distribuée sous licence LGPL.

Tokyo Cabinet est très rapide, mais son auteur n'était pas satisfait des performances en concurrence sur des machines avec de nombreux cores. Il a donc écrit son successeur : Kyoto Cabinet. Kyoto Cabinet est écrit en C++, et publié sous licence GPL. Des bindings Ruby, Perl, Python (2.x et 3.x) et Java sont disponibles.

Kyoto Cabinet est rapide (l'ordre de grandeur est un million de requêtes par seconde), ACID et capable de gérer un haut niveau de concurrence. Ses bases de données peuvent enregistrer jusqu'à 8 exabytes et peuvent être de différents types en fonction des caractéristiques recherchées (persistence, verrouillage par enregistrement, par page ou global, ordre de tri, algorithme de stockage).

Tokyo Cabinet bénéficie d'un service réseau, Tokyo Tyrant, et d'un moteur de recherche full-text, Tokyo Distopia. Les équivalents pour Kyoto Cabinet n'existent pas encore, mais sont prévus et devraient sortir d'ici la fin de l'année.

Note : Pour ceux qui s'intéressent aux bases de données, le NoSQL Summer est l'occasion d'en apprendre plus. Le principe est simple : se réunir régulièrement pour discuter d'un papier scientifique autour des bases de données. Le lancement se fera le 21 juin à la Cantine pour Paris, mais vous pouvez n'assister qu'à une seule rencontre si vous le souhaitez. L'entrée est libre, la seule chose que l'on vous demande est d'avoir lu le papier sélectionné avant de venir. Si vous êtes dans une ville qui n'est pas encore couverte, rien ne vous empêche de trouver 2 ou 3 volontaires et de contacter les organisateurs.

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.

Sortie de la version 0.6 de Grisbi, logiciel de comptabilité

Posté par  (site web personnel) . Modéré par Nÿco.
21
4
juin
2010
Bureautique
Grisbi est un logiciel de comptabilité personnelle sous licence GPL. C'est un programme écrit par des Français qui respecte parfaitement l'esprit de la comptabilité à la française.

Développé dans un esprit de simplicité, il n'en supporte pas moins des fonctionnalités avancées. Grisbi est multi-comptes, multi-devises, et multi-utilisateurs. Il gère les tiers, les catégories de recettes et de dépenses, mais aussi les imputations budgétaires et les exercices.

La version 0.6 est sortie récemment et apporte les nouveautés suivantes :
  • Chiffrement des fichiers
  • Nouveau système d'impression
  • Interface utilisateur améliorée
  • Import des fichiers au format CSV et GnuCash
  • Astuce du jour
  • Travail conséquent pour améliorer l'internationalisation
  • Système de plugins
  • Et bien d'autres encore !
NdM : merci à MrBidon pour avoir proposé un journal sur le même sujet.

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.

En vrac, les autres navigateurs

Posté par  (site web personnel) . Modéré par Mouns.
Étiquettes :
20
30
mai
2010
Internet
Le navigateur web de Google, Chrome, est sorti dans sa version 5. C'est la première version à être officiellement supportée sur les plates-formes Linux et Mac. D'un intérêt plus discutable, cette version vient également avec un player Flash intégré. On notera également une prise en charge d'HTML5 améliorée, avec notamment WebSocket, API de géolocalisation, Application Cache pour le mode déconnecté, ou encore le glisser-déposer de fichiers.

Chromium, la version libre de Chrome, a été choisi pour devenir le navigateur par défaut de la prochaine Ubuntu Netbook Edition. Ses parts de marché laissent à penser que d'autres distributions pourraient suivre.

Midori est un navigateur web léger utilisant le moteur de rendu WebKit et pleinement intégré à GTK+2 (licence LGPL). La version 0.2.5 est sortie le 16 mai avec des nouveautés importantes : validation visible des certificats SSL, mode kiosque amélioré, version Windows de nouveau pleinement fonctionnelle, prise en charge des extensions Vala, etc. Elle a été suivie peu de temps après par la version 0.2.6 pour corriger des bugs bloquants.

Uzbl est un navigateur web qui se veut respectueux de la philosophie UNIX : « Écrivez des programmes qui effectuent une seule chose et qui le font bien. Écrivez des programmes qui collaborent. Écrivez des programmes pour gérer des flux de texte, car c'est une interface universelle. » Ainsi, uzbl se décline en trois saveurs :
  • uzbl-core, un composant qui utilise WebKit pour afficher des pages web et qui est facile à intégrer dans des scripts et outils ;
  • uzbl-browser, un navigateur proprement dit qui repose sur uzbl-core et lui ajoute un moyen de changer de pages, un historique, une gestion des téléchargements, des raccourcis claviers personnalisables, etc.
  • uzbl-tabbed, qui enrobe uzbl-browser et lui ajoute une gestion multi-onglets.


Et sinon :