changement de procédé

dans une orientation où le thème change pour toutes les pages
This commit is contained in:
Yannick Francois
2019-02-23 23:53:36 +01:00
parent 4c709cd254
commit 29d6558b4e
408 changed files with 20 additions and 286 deletions
@@ -0,0 +1,35 @@
---
layout: post
title: OpenBSD Fondation - donation
date: 2008-01-05
---
Ca y est, le premier *communiqué de presse* de la [fondation OpenBSD](http://www.openbsdfoundation.org/) annonce les contributions reçus pour le financement du projet [OpenBSD](http://www.openbsd.org).
> From: The OpenBSD Foundation
> Contact: directors@openbsdfoundation.org
> Date: January 4, 2008
>
> THE OPENBSD FOUNDATION ANNOUNCES FIRST CORPORATE DONATIONS
>
> The OpenBSD Foundation is privileged to announce the receipt of its first corporate cash donations.
>
> The very first donation was received from Norwegian network engineers SystemNet AS.
>
> This was followed very shortly by several significant anonymous donations, as well as contributions from Hewlett Packard and Google.
>
> Many thanks to our corporate donors.
>
> All donations were received soon after the Foundation announced its existance, enabling the Foundation to start operations and perfect its donation handling. These donations have enabled the Foundation to assume the costs of OpenBSDs networking expenses, and begin to acquire several key pieces of hardware for development and infrastucture.
>
[full version](http://www.openbsdfoundation.org/press/pressrelease-1.txt)
Jespère que tout ça permettra au projet de ne plus avoir de soucis financier !
*tiens faut que je fasse un petit don aussi moi cette année ;-)*
*via [undeadly](http://undeadly.org/cgi?action=article&sid=20080104201743) évidemment*
@@ -0,0 +1,18 @@
---
layout: post
title: Haiku - OpenJDK Project
date: 2008-01-07
---
Le petit OS qui avance dans lombre de BeOS commence doucement à s’étoffer. [Après les avancés du port du webkit](http://www.typouype.org/articles/2007/12/19/haiku-webkit) Haiku lance un projet de portage de la <span class="caps">JVM</span> ouverte de Sun: OpenJDK.
Je ne suis pas sur quHaiku vise à être une grande plateforme de développement (quoique pourquoi pas ;-)), mais quoiquil arrive, avoir une machine virtuel java porté pour votre OS est quasi indispensable ! Et contrairement à Adobe qui garde sont FlashPlayer bien fermé, Sun, en ouvrant la <span class="caps">JVM</span> permet à des équipes divers de la porter sur les OS passé, présent et futur.
!(http://haiku-os.org/files/screenshots/logo_haiku-openjdk.png)
Pour ceux qui serais interessé, je vous laisse lire la news officiel de la création de l’équipe [Haiku-OpenJDK](http://haiku-os.org/news/2008-01-03/new_java_for_haiku_team_formed) pour en savoir plus.
*Un projet bien interessant, je vais my interesser de prêt... Peut-être même plus vu mon profil :)*
+14
View File
@@ -0,0 +1,14 @@
---
layout: post
title: Bricabox news
date: 2008-01-10
---
Et bien voilà, la [bricabox.info](http://www.bricabox.info) accueille un nouveau colocataire: le [parablog.fr](http://www.parablog.fr). Esperons que celui-ci ne nous fasse pas le coup du teaser de plus dun an :-).
*Je ne maventurerais pas à vous expliquer de quoi il va sagir, lauteur en parlera sûrement plus tard*
**Bienvenue ! :)**
@@ -0,0 +1,24 @@
---
layout: post
title: Got new Shoes with Ruby
date: 2008-01-12
---
\_Why est une personne bien connu dans la communauté [Ruby](http://www.ruby-lang.org) pour ces participations dont la quantité et la qualité nont d’égal que loriginalité. Quand on voit contenu du livre qui la fait connaître le Poignant Guide (*dont une traduction en français est en cours, mais très délicate vu le nombre de formulation humoristique que contient ce livre*) on comprend que ma phrase est emprunte dun grand respect envers ce monsieur.
Cest donc tout naturelement, pour un fan de Ruby comme moi, que je minteresse régulièrement à ces trouvailles. Une des dernières a retenu mon attention: Shoes
Shoes est un *kit graphique* multiplateforme. Codé en Ruby (enfin pas que, ya du C en dessous, comme dhabitude), cest un bonheur pour la réalisation de petits interfaces graphiques (je pense que pour le moment personne ne cest lancé dans un *eclipse like* en shoes, avis aux amateurs :p).
Pour approfondir ce *kit* et surtout montrer un peu de reconnaissance au bonhomme, je me suis procuré son livre: _Nobody knows shoes_
![Ruby Shoes, la lib graphic tranquille](/files/ruby_shoes_book.jpg)
*Maintenant il faut que jinstalle Shoes sur OpenBSD :)*
Comme vous pouvez le voir, cela ma également permis de tester les services de [lulu.com](http://www.lulu.com) et javoue quils nont rien à envier à Amazon. Bien sur, le catalogue nest pas du tout le même, et heureusement. Mais je trouve que lulu, tout comme [in libro veritas](http://www.inlibroveritas.net/), apporte quelque chose de nouveau dans le domaine de la vente en ligne. Ici nous pouvons vendre ce que nous écrivons sans avoir à signer avec une maison d’édition: la publication ouverte à tous. Faire un site, un blog ou autre, pour proposer ces écrits, cest bien. Mais pouquoi ne pas proposer le téléchargement dun fichier <span class="caps">PDF</span> ou lachat dun livre (pour ce qui aime avoir une version *papier* ?). Pour cela, je trouve que ces deux services en ligne (il en existe dautres surement, quelquun a des noms ?) sont trés utile.
**Bravo Why, Bravo lulu (en attendant de tester in libro veritas) !**
+28
View File
@@ -0,0 +1,28 @@
---
layout: post
title: SQLite Backup
date: 2008-01-16
---
Evolution de la [bricabox](http://www.bricabox.info) oblige, certain scripts doivent aussi évoluer. Cest la vie du code, je ne vous apprend rien. Cest donc le moment de reprendre un peu la [tache Rake de backup](/2007/08/07/rake-sauvegarde-de-base-de-donnee.html) pour y ajouter quelque morceau.
La bricabox a maintenant un site pour elle, basé sur [Radiant CMS](http://radiantcms.org/), Jean-mi a construit un [portail de la comte](http://www.lacomte.net) également basé sur RadiantCMS (oui au passage, sont blog à changé dadresse: [blog.lacomte.net](http://blog.lacomte.net)). Tout les deux nayant pas pour vocation d’être gavé de données, ni davoir beaucoup daccès en écriture, nous avons tout les deux opté pour [SQLite](http://www.sqlite.org/). <del>Une petite base de donnée</del> un petit programme de gestion de base de donnée relationnelle écrit en C, très leger, très pratique dans ce genre de cas de figure (pas de configuration complexe, pas de serveur...).
Mais voilà, la tache de backup des bases de donnée avait été écrit uniquement pour les bases de l’époque: [MySQL](http://www-fr.mysql.com/) (je vous passe lactu du jour sur le rachat de MySQLAB par Sun Microsystem ? :D). Donc il faut ajouter quelque ligne là dedans.
Un peu de recherche mamène sur [une bonne introduction pour SQLite chez IBM](http://www-128.ibm.com/developerworks/opensource/library/os-sqlite/) (enfin, vu la facilité dutilisation, est-ce nécessaire :D). Tout ça pour finalement ajouter un test et une petite ligne:
<pre>
{% highlight bash %}
sh “sqlite3 -batch #{db_config[database]} .dump &gt; #{backup_file}”
{% endhighlight %}
</pre>
Et voilà les taches de backup qui sont à nouveaux opérationnelles.
*Bon reste à voir où je place ces fichiers...*
*Jaime de plus en plus SQLite :) Attention à utiliser avec modération quand même*
@@ -0,0 +1,48 @@
---
layout: post
title: OpenBSD - USB Mount
date: 2008-02-01
---
Voici deux petit script shell pour les utilisateurs dOpenBSD et autres... Enfin uniquement ceux qui utilise ce genre de système sur leur(s) desktop(s).
Le montage/démontage (pas avec un tournevis hein, je dis ça pour Terckan surtout ;-)), en fait, cest le fait de *rendre disponible un périphérique externe sur son OS*. Et de nos jour yen a un paquet: Clef usb, baladeur numérique, apareil photo numérique, lecteur de carte, disque dur externe, imprimante, scanner...
[OpenBSD](http://www.openbsd.org) et dautres OS utilisent le démons [hotplugd](http://www.openbsd.org/cgi-bin/man.cgi?query=hotplugd&sektion=8&arch=i386&apropos=0&manpath=OpenBSD+Current) pour *surveiller* lactivité de branchement du matériel à connectique <span class="caps">USB</span>. Sous OpenBSD (utilisateurs dautres \*nix utilisant hotplug: attention, il y a peut-être des petites adaptations à faire) on modifie le */etc/rc.conf.local* pour y ajouter lactivation du démon hotplug:
<pre>
hotplugd_flags=""
</pre>
Voilà, avec ça, le démon nous remontera des infos sur la connexion de notre matériel. Dans le dmesg sous OpenBSD ça donne ça:
<pre>
umass0 at uhub1 port 1 configuration 1 interface 0 "USB 2.0 Flash Disk" rev 2.00/1.00 addr 2
umass0: using SCSI over Bulk-Only
scsibus2 at umass0: 2 targets
sd1 at scsibus2 targ 1 lun 0: &lt;USB 2.0, Flash Disk, 5.00&gt; SCSI2 0/direct removable
sd1: 4052MB, 516 cyl, 255 head, 63 sec, 512 bytes/sec, 8300032 sec total
</pre>
Et dans le log dactivité des démons (*/var/log/daemon*):
<pre>
Feb 1 20:27:39 libellule hotplugd[18399]: sd1 attached, class 2
Feb 1 20:27:39 libellule hotplugd[18399]: scsibus2 attached, class 0
Feb 1 20:27:39 libellule hotplugd[18399]: umass0 attached, class 0
</pre>
*hotplug* va donc appeler un script lors du branchement dapareil, et un lors du débranchement: */etc/hotplug/attach* pour le branchement et */etc/hotplug/detach* pour le débranchement. Ces deux scripts ne sont en général pas fourni, à chacun de ce les concocter.
On en trouve plusieurs sur le net, moi je suis parti dun trouvé sur [undeadly](http://undeadly.org/) que jai un peu modifier. Vous les trouverez dans ma zone: [zone.typouype.org/attach](http://zone.typouype.org/attach) et [zone.typouype.org/detach](http://zone.typouype.org/detach).
Je risque très certainement de les retoucher encore (aahh le refactoring, quel plaisir ! :)), je tacherais de vous le signaler (si vous décidé de les utiliser, ça pourrais servir. Dailleurs nhésitez pas à me signaler les améliorations diverses que vous pourriez apporter dessus hein ! :)
En gros, ces scripts *monte* la ressources branché dans */mnt* puis crée un lien dans le */home* de lutilisateur actuellement connecté au système (faudrais voir avec plusieurs personne loggué ce que ça donne :-/) dans un repertoire */home/${user}/mount*.
Jaimerais bien changer certaines chose rapidement comme les droits des fichiers ainsi disponible, les points de montages, et bien dautres chose que je nai pas en tête.
Amusez vous bien :)
*edit: Correction des blockquote textile. Merci Zifro de mavoir signalé les “bq.” qui trainait.*
@@ -0,0 +1,24 @@
---
layout: post
title: Guyane et Orpaillage
date: 2008-02-02
---
Loin de mes sujets habituel, je vais quand même vous parler de [Guyane](http://fr.wikipedia.org/wiki/Guyane) et d"orpaillage":http://fr.wikipedia.org/wiki/Orpaillage.
On netend pas souvent parler de la Guyane, sauf pour un lancement de fusée, et lorpaillage, on a tout de suite une image du far-west en tête... Mais pourtant, ça se passe *en france* ou plutôt sur les territoires colonisé par la france il y a bien longtemps. Cest le livre dune connaissance dont je veux vous parler aujourdhui, cest sont livre qui ma permis den apprendre plus sur un sujet que je ne connaissait pas, sur un sujet dont on ne parle pas, sur un sujet qui ninteresse pas (en métropole du moins): **Lorpaillage en Guyane**
[Axel May](http://guyaneetorpaillage.over-blog.com/) a ouvert un blog pour accompagner la sortie de sont livre sur le sujet. Un sujet qui lui tiens à coeur, ayant passé quelque année de ça vie dans la région.
Un livre bien écrit sur un sujet qui meriterais plus dinterêt de la part de beaucoup de personnes. Cest dur de *découvrir* à quel point certaines personnes, certains association de circonstances détruise petit à petit notre planête nouricière. Que se soit dun point de vue écologique, dun point de vue politique, dun point de vue sociologique, le livre dAxel nous ouvre les yeux sur un problème qui voit ces racines (en tout cas pour la Guyane) démarrer dans les année 1920, et qui ne fait que sempirer depuis, et qui ne présente rien de rassurant pour lavenir.
Plutôt que de vous recopier un extrait du livre ou le 4ieme de couverture, je vous invite à parcourir sont blog ainsi que larticle wikipedia traitant du sujet et apportant des informations plus *technique* (un bon complément au livre): [Orpaillage en Guyane](http://fr.wikipedia.org/wiki/Orpaillage_en_Guyane) (Axel fait parti des contributeurs de cet article dailleurs). Tout ceci vous donnera peut-être envie de vous procurer ce livre très interessant, qui bien que nous montrant les points négatifs de lorpaillage en Guyane reste objectif et essaye de nous dresser au mieu l’état des lieux de ce phénomène.
Non mais vous y croyez vous des *cowboys en armes* et des histoires de *chercheurs dor* à notre époque ? Moi qui pensais naïvement que le plus gros problème de lamazonie cetais la déforestation ayant pour but lagriculture intensive et que le mercure n’était présent que dans nos vieux termomètres :-/
!(http://zone.typouype.org/axelmay_guyaneetorpaillage.jpg)
[Guyane Française Lor de la honte](http://www.editions-calmann-levy.com/livre/titre-249109-Guyane-francaise-l-or-de-la-honte.html) un livre à lire absolument !
+32
View File
@@ -0,0 +1,32 @@
---
layout: post
title: Openbsd-current
date: 2008-02-02
---
Cest un peu barbare comme titre, mais vous allez comprendre.
[OpenBSD](http://www.openbsd.org) permet plusieurs utilisation, plusieurs *Flavor*:
*
**-release**: cest la version qui sort tout les 6 mois. Soit sur les CDs officiel, soit depuis la 4.2 par un cd42.iso disponible sur le ftp prêt de chez vous. (*nota: remplacer le numéro de version par celui qui vous concerne :)*)
*
**-stable**: on parle de version stable quand on utilise une *saveur* release à laquelle on applique les patchs de sécurité que lon retrouve sur la page errata de chaque version: [openbsd.org/errata42.html](http://www.openbsd.org/errata42.html). Cest tout.
*
**-current**: Cest, comme sont nom lindique, la version courante. Sachant que l’équipe OpenBSD ne commit rien sans une grosse phase de relecture/analyse, on ne peut pas parler de version instable comme pour certaine distribution linux (je pense par exemple au *saveur* stable, testing et instable de Debian). Current et **la** saveur la plus sûre, la plus avancé. On m’à même conseillé de lutiliser en production.
Alors moi qui trainais en **-stable** depuis mes débuts, jai donc décidé de passer en current, sur mon *desktop* dans un premier temps. Il faut un peu de temps pour ce familiarisé avec les mises à jours plus fréquente de cette *saveur*. Mais comme beaucoup de personnes utilise -current, dans le lot, chacun a fait sont petit script qui va bien pour suivre facilement les fréquentes mise çà jour.
Plutôt que de refaire un nième script, on ma conseillé dutiliser Openbsd-binary-upgrade. Et javoue que je lai adopté facilement.
[Openbsd-binary-upgrade](http://www.xs4all.nl/~hanb/software/OpenBSD-binary-upgrade/) est le script mis à disposition par @ham qui permet moyennant une petite configuration (je vous met la mienne a titre dexemple sur ma zone: [zone.typouype.org/openbsd-bin-upgrade.rc](http://zone.typouype.org/OpenBSD-binary-upgrade.rc)) de tenir sont système à jour. Un *hook* permet dajouter quelques commandes à executé en fin de mise à jour, très pratique pour mettre à jour les paquets déjà installé.
Me voilà en OpenBSD-Current donc. Jen suis toujours ravi, de jour en jour toujours plus :).
@@ -0,0 +1,21 @@
---
layout: post
title: Yahoo! - Microsoft redondance et interopérabilité
date: 2008-02-02
---
Tout le monde en parle en ce moment. Je ne souhaite pas commenter le montant de la transaction, cest bien trop irréel pour moi, ni même le choix politique de Microsoft pour contrer Google... Non moi ce qui minteresse ce sont lavenir des applications que lon trouve chez lun et lautre de ces acteurs majeurs de la scène *informatique*.
Pour ce qui est de [Flickr!](http://flickr.com/) et [Del.icio.us](http://del.icio.us/) je pense que ça devrait aller. Micrisoft nayant pas vraiment d’équivalent, il devrait survivre. Mais que deviendrons les moteurs de recherche, les toolbars, les messageries instantanées, les webmails et autres services ?
Dun point de vue optimiste, on pourrais imaginer quune intéropérabilité entre tout ces systèmes soit mise en place, et quen même temps, ces produits **souvre** .
Dun point de vue pessimiste, on pourrais imaginer que les meilleurs services de lun ou de lautres disparaissent et que seul le pire persiste. Hypotèse peut crédible...
Un point de vue intermédiaire pourrais être de voir un remplacement des services dune des deux firmes les moins performant, les moins utilisé par leur équivalent de lautre firme.
Enfin bref, je suis globalement daccord avec [Olivier Ezratty: cest un mariage risqué](http://www.oezratty.net/wordpress/2008/un-mariage-risqu/) A surveiller donc, *pour le pire et pour le meilleur*.
*Jaime bien Flickr! et Del.icio.us, mais il se pourrais que je coupe ces services selon leur avenir....*
+18
View File
@@ -0,0 +1,18 @@
---
layout: post
title: Ruby Specs
date: 2008-02-07
---
Pour les personnes qui sinteresse à [Ruby](http://www.ruby-lang.org), qui comprennent langlais, et/ou qui souhaite participer à l’évolution, lenrichissement dun langage objet libre, je viens de découvrir un wiki-kil-est-bien:
[Ruby Spec](http://spec.ruby-doc.org/wiki/Main_Page)
Plus ou moins initié par les divers groupes cherchant à implémenter Ruby dans sur dautres machine virtuel (comme le projet [Rubinius](http://rubini.us/) ou [Jruby](http://jruby.codehaus.org/)) mais assez suivi dans la communauté en général, ce wiki permet de spécifié chaque objet/module.
Selon les pages cest soit pas encore fait, soit simple (juste du texte), soit bien complet avec des exemple très interessant avec des exempls et des petites comparaisons avec dautres objets. Comme par exemple sur l"objet Proc":http://spec.ruby-doc.org/wiki/Proc
**A consulter et enrichir !**
@@ -0,0 +1,18 @@
---
layout: post
title: Solution Linux 2008
date: 2008-02-10
---
Et oui, jy suis passé, juste le dernier jour. Jai aidé Jean-François (Underflow) a tenir le stand de lassociation [RubyFrance](http://www.rubyfrance.org). Très sympa cette manifestation. Beaucoup de monde, pas mal de question sur Ruby et/ou Rails, jespère que nous avons répondu à la pluspart.
Mon regret: ne pas avoir pris mon Laptop... A ne pas oublier pour la prochaine fois :)
Sinon, nous étions bien entouré, a gauche: php avec un teneur de stand qui est venu prendre des renseignement sur ruby pour sy mettre :D, a droite afpy: le nez dans le code toute la journée dur dur de coder en python, en face [OpenBSD](http://www.openbsd.org) alors là, j’étais ravi. Disons que [Wim de kd85](http://kd85.com/) est venu de Belgique avec tout plein de truc dans ces cartons, du coup jai un peu bavé sur les soekris... Mais cetais très agréable :)
La plupart des personnes rencontré était très sympa (elles le sont encore je pense :p). Ya quun mec qui étais plus louche que les autres. Enfin non, illuminé serais le terme. Un vendeur de Baie informatique qui était venu voir des clients (dans la partie pro il y avait pas mal dhébergeur). Il était paumé devant notre stand et nous avons du coup discuté. Il venais de découvrir ce qu’était le logiciel libre et je crois quil avait du mal à comprendre quautant de personnes puisse partager ainsi leur temps, leurs connaissances... Il nen revenait pas. Jai adoré cette rencontre avec un personnage ahuri devant lampleur dune chose quil ne connaissait pas ! :D
A lannée prochaine surement.
+14
View File
@@ -0,0 +1,14 @@
---
layout: post
title: Apero Ruby
date: 2008-02-17
---
Lassociation [RubyFrance](http://www.rubyfrance.org) organise pour la 4ième fois une rencontre autour dun verre pour parler de [Ruby](http://www.ruby-lang.org), [RubyOnRails](http://www.rubyonrails.org) et de tout ce qui peut toucher de prêt ou de loin à ce langage que nous aimons.
Rendez-vous donc à partir de 20h à [la Cantine](http://lacantine.org/). Une présentation de ce qui nous attend avec la version 1.9 de Ruby devrais être faites, et peut-être quelque *lightning talks* sur dautres sujet (en rapport avec Ruby quand même).
A mardi donc ! ;-)
@@ -0,0 +1,19 @@
---
layout: post
title: OpenBSD 4.3 - Chrooted SSH
date: 2008-02-21
---
Ca y est, on est à peine mi février que le tag 4.3-beta d"OpenBSD":http://www.openbsd.org vient d’être posé sur la ligne.
Ca promet !
Et comme si ça ne suffisait pas, voilà quun petit *addon* apparait dans [OpenSSH](http://www.openssh.org): on peut chrooter sshd très très facilement.
*Je vais devenir gardien de prison moi :D*
Bien sur, on retrouve plus de détail sur ces news chez [undeadly.org](http://undeadly.org)
* [OpenBSD turns 4.3-beta](http://undeadly.org/cgi?action=article&sid=20080220201259)
* [Chroot in OpenSSH](http://undeadly.org/cgi?action=article&sid=20080220110039)
@@ -0,0 +1,48 @@
---
layout: post
title: OpenBSD Current -> 4.3
date: 2008-02-23
---
Ah ben oui, un truc que jai oublié cest que quand [on suit OpenBSD-current](/2008/02/02/openbsd-current.html) et que le [tag de la 4.3-beta](/2008/02/21/openbsd-4-3-chrooted-ssh.html) vient d’être posé, et bien on suit 4.3 maintenant :D
Du coup, petite modif du `/etc/OpenOpenBSD-binary-upgrade.rc` pour y préciser que lon suit maintenant la version 4.3:
<pre>
{% highlight bash %}
BSDVERSION='43'
{% endhighlight %}
</pre>
On vérifie aussi niveau mirroir que lon pointe bien vers soit uniquement les snapshots soit directement dans les paquet 4.3 (enfin là tout de suite vaut mieux suivre snapshot uniquement, il ny a pas encore de paquet compilé 4.3 officiel :))
<pre>
{% highlight bash %}
# rsync mirrors
# -------------
# rsync is even cooler. It will merge the changes in binary packages!
FETCH='rsync -P -L --recursive --times'
#
# The mirror needs a trailing slash for the listing function to work.
MIRROR='rsync://rsync.mirrorservice.org/pub/OpenBSD/snapshots/i386/'
{% endhighlight %}
</pre>
*Dans mon cas jai choisi le mirroir rsync anglais, mais on peut prendre celui qui correspond le mieux bien. Je vous laisse voir la liste sur* [la liste officiel des mirroirs Rsync dOpenBSD](http://www.openbsd.org/ftp.html#rsync)
Bon, maintenant le `/etc/OpenOpenBSD-binary-upgrade.rc` est nickel. On noublie pas non plus de modifier le `PKG_PATH` dans notre `~/.profile` histoire de pouvoir continué à utilise les commandes `pkg_*`:
<pre>
{% highlight bash %}
export PKG_PATH=ftp://ftp.arcane-networks.fr/pub/OpenBSD/snapshots/packages/`machine -a`/
{% endhighlight %}
</pre>
*Pour les paquets, ya beaucoup plus de serveur. Dont 3 en france, un ftp cest plus facile à mettre en place quun serveur rsync ? Bref, pour choisir, voici* [la liste des serveurs ftp officiel dOpenBSD](http://www.openbsd.org/ftp.html#ftp)
Et voilà, un petit `sudo OpenBSD-binary-upgrade` et cest parti !
+14
View File
@@ -0,0 +1,14 @@
---
layout: post
title: OpenBSD Ports
date: 2008-02-28
---
Lancien domaine hébergeant le site dinformation sur les ports disponible pour [OpenBSD](http://www.openbsd.org) à été squatté par un vilain !
Mais plein de ressources, vous pouvez maintenant parcourir la liste des ports disponible sur [openports.se](http://openports.se/).
[OpenBSD Ports](http://openports.se/)
@@ -0,0 +1,20 @@
---
layout: post
title: OpenCVS Available
date: 2008-02-28
---
Depuis le temps que jen entends parlé de celui là ! :)
> for now it is not yet 100% ready as a replacement for gnu cvs, but it is time to let people start using it and breaking it.
*From deraadt@*
Et bien voilà, OpenCVS est dispo. Alors je sais, CVS cest *hasbeen*, et javoue être en train d’étudier quelque <acronym title="Distribued Software Configuration Management">DSCM</acronym> et plus particulièrement [Mercurial](http://www.selenic.com/mercurial/wiki/). Mais ça fait plaisir de voir des projets *Open* aboutir, enfin commencer, car comme le dit Théo, nous autres utilisateurs on va pouvoir commencer à lutiliser et à le casser :)
Alors je ne sais pas encore ce qui sera définitivement adopté sur la Bricabox, mais je vais quoiquil arrive faire des petits essais avec [OpenCVS](http://www.opencvs.org) !
News officiel sur undealy.org: [OpenCVS is connected to build](http://undeadly.org/cgi?action=article&sid=20080228093414)
@@ -0,0 +1,16 @@
---
layout: post
title: Self.migrate(5.0.3)
date: 2008-03-02
---
Et bien voilà, ce blog, toujours propulsé par "Typo":http://typosphere.org/ bénéficie maintenant de la dernière version: 5.0.3.
Impréssionnante évolution dans l'arrière boutique.
_Vous aurez remarqué, mon thème était tout cassé, du coup, je suis de retour avec Scribbish. J'adore :)_
*Un grand bravo a l'équipe !*
+37
View File
@@ -0,0 +1,37 @@
---
layout: post
title: Ruby vs Shell
date: 2008-03-05
---
Que je naime pas ce genre de comparaison. Ou plutôt ce que je naime pas cest de chercher un vainqueur. En fait je voulais vous raconter une petite histoire informatique.
Un jour, chez mon actuel client, je me suis retrouvé face a un *cas d’école*: faire un programme pour réaliser une purge de la base de donnée, mais pas entièrement, juste quelque table *fonctiono-transactionnelle*.
Une bonne chose pour moi, un programme existe déjà dans le foutoir^la boite à outil de l’équipe en place. Ce programme va me permettre dextraire la liste des tables dépendantes de celle que je veut purger. Jappel ce programme (réalisé dans un langage propriétaire, comme lapplication) en passant en paramètre la table que je souhaite supprimer, et lui va aller déclencher les divers *trigger* en interceptant les erreurs pour pouvoir faire la liste de toutes les tables dépendantes. Bien, je répète lopération pour toutes les tables que jai à *nettoyer*
A la sorti je me retrouve avec un gros fichier texte, contenant plusieurs fois le même nom de table à divers endroit du fichier, pas très pratique. Il faut que je nettoie tout ça. Apparemment mes collègues font ça à la main habituellement... Moi cest hors de question. Linformatique cest justement fais pour faciliter le travail non ?
Alors je lance [cygwin](http://cygwin.com/) (heureusement quil est autorisé chez mon client celui là, sinon jaurais pleuré !!) et je regarde quelque manpage pour vérifier les commandes à utiliser. Je trouve mon bonheur, et le dieu pipe va grandement maider sur le coup:
* La commande [cat(1)](http://www.openbsd.org/cgi-bin/man.cgi?query=cat&amp;apropos=0&amp;sektion=0&amp;manpath=OpenBSD+Current&amp;arch=i386&amp;format=html) permet de _lire_ le contenu d'un fichier.
* Dieu pipe va ensuite transférer ce contenu à la commande [tr(1)](http://www.openbsd.org/cgi-bin/man.cgi?query=tr&amp;apropos=0&amp;sektion=0&amp;manpath=OpenBSD+Current&amp;arch=i386&amp;format=html) qui elle va me mettre le contenu en minuscule (c'est plus pratique pour trier (c'est le A-Z a-z qui précise le type de transformation à appliquer au contenu).
* Dieu pipe intervient encore pour passer ce contenu minuscule à la commande [sort(1)](http://www.openbsd.org/cgi-bin/man.cgi?query=sort&amp;apropos=0&amp;sektion=0&amp;manpath=OpenBSD+Current&amp;arch=i386&amp;format=html) qui va elle, comme sont nom l'indique, trier le contenu.
* Dieu pipe une dernière fois va passer le contenu minuscule trié à la commande [uniq(1)](http://www.openbsd.org/cgi-bin/man.cgi?query=uniq&amp;apropos=0&amp;sektion=0&amp;manpath=OpenBSD+Current&amp;arch=i386&amp;format=html) qui comme sont nom l'indique encore, va éliminer les doublons.
* Dieu pipe passe la main ici à la reine &gt; qui va me permettre d'écrire le résultat de tout ça dans un fichier et non à l'écran.
Je me retrouve avec un fichier parfait pour faire ma purge.
C'est bien beau, mais une question trottais dans ma tête: Comment faire cela en Ruby ? Est-ce que j'y arriverais en une ligne aussi ?
Et bien comme d'hab, oui c'est faisable, et oui avec Ruby on peut le faire en une ligne.
Quel intérêt ? Dans le mien auccun, à part mon plaisir. Mais si ce script devais être re-utilisé, ou bien intégrer à un outil plus vaste, cela aurait tout de suite plus d'intérêt :)
Voilà ce que ça donne:
*Bon, en une ligne cest un poil abusé et pas lisible cest pour cela que je le présente sur plusieurs :), mais cest faisable*
Pour faire cela, une bonne lecture des objets [Array](http://www.ruby-doc.org/core/classes/Array.html), [IO](http://www.ruby-doc.org/core/classes/IO.html) et [File](http://www.ruby-doc.org/core/classes/File.html#M002602) iront très bien :)
+24
View File
@@ -0,0 +1,24 @@
---
layout: post
title: SLiM
date: 2008-03-12
---
Non, toujours pas de pub pour un régime, juste un peu de retour d'expérience sur l'utilisation de ce [Display Manager](http://fr.wikipedia.org/wiki/Display_manager).
Ce qui me plait le plus avec [SLiM](http://slim.berlios.de), c'est qu'il est simple, vraiment simple. Il n'y a par exemple pas 10 dépendances comme avec [GDM](http://www.gnome.org/projects/gdm/), en fait il n'y en a aucune.
Un petit `/etc/slim.conf`, c'est tout. Avec ça on est heureux ! On peut trouver (si on instal le paquet slim-themes) une série de thèmes par défaut dans `/usr/local/slim/themes`. D'ailleurs, à partir de là, c'est très simple d'en refaire un par copier/coller :). On peut aussi trouver d'autres [Slim-thème](http://slim.berlios.de/themes01.php) sur le site officiel.
Pour pouvoir choisir son gestionnaire de fenêtre, il y a dans le slim.conf une variable qui est passé ensuite au fichier `/home/user/.xinitrc` _(fichier executé au démarrage de la session graphique pour l'utilisateur)_ qui pourrais influancer le gestionnaire à lancer.
La variable `session` contient une liste séparé par des virgules. Les valeurs seront celle affiché à l'écran lors du choix. evitons donc de mettre un code débile (même si pour le script suivant, ça suffit :p).
Coté utilisation, c'est la touche `<f1>` qui est à utiliser pour switché de gestionnaire de fenêtre. Assez pratique.
On trouvé également le moyen de lancer quelque commande quand on est sur l'écran de login, comme par exemple prendre un screenshot. Mais aussi, et surtout, la possibilité de redémarrer, voir arreter la machine. Oui, bon, c'est un peu classique pour un DM _Standard_, mais quand même :p
Pour arreter la machine (pour le reboot aussi d'ailleurs) il faut saisir `halt` en guise de _username_, puis taper le mot de passe `root`. Si je dois chipotter, j'aimerais pouvoir saisir mon mot de passe à moi, puisque j'utilise [SUDO(8)](http://www.openbsd.org/cgi-bin/man.cgi?query=sudo&amp;apropos=0&amp;sektion=0&amp;manpath=OpenBSD+Current&amp;arch=i386&amp;format=html) pour ne pas avoir à utiliser le mot de passe `root`. J'hésite à jeter un coup d'oeil aux sources du projets pour ce genre de fonctionnalité car sur la documentation officiel, une petite note nous informe que cette partie évolura dans les prochaines releases:
> Note: this may change in future releases, where some more flexible reboot/shutdown option could be added to the login screen.
@@ -0,0 +1,38 @@
---
layout: post
title: Et pourquoi pas Wmii iiiiiiiii
date: 2008-03-19
---
A force de placer mes fenêtres toujours au même endroit, avec la même taille (ou presque) et de repartir ces _groupes_ sur les divers bureaux, je me suis dit qu'il étais peut-être temps de tester un autre gestionnaire de fenêtre.
"Ion":http://modeemi.fi/~tuomov/ion/ semblait un bon candidat, mais la configuration ne me donnais pas super envie, et les divers lectures au sujet de l'auteur et de la licence de l'application ont fini par me couper l'envie de l'adopté.
Alors j'ai continué à fouiller dans les gestionnaires de fenêtre accès clavier et simplicité. Sur la list misc@ d'"OpenBSD":http://www.openbsd.org il y avait eu une discussion sur le gestionnaire de fenêtre par défaut. Actuellement "FVWM":http://www.fvwm.org/ (premier du nom), certain voulais voir "cwm":http://monkey.org/~marius/pages/?page=cwm prendre la place. Du coup, il fallait que je l'essaie.
Assez sympathique ma fois. Simple, avec quelque raccourci clavier rappelant "Vi(m)":http://www.vim.org/. Très rapide, et très agréable à utiliser.
Cependant, je n'etais pas encore convaincu. J'avais entendu parlé d'un autres gestionnaire qui pourrais remplacer Ion durant mes recherches: "Wmii":http://fr.wikipedia.org/wiki/Wmii
Alors pour être dérouté, on peut l'être. C'est très interessant. Ici point de menu, d'icône, de boutons de fenêtre. Une petite barre, quelques touches et c'est parti. Un des concept est de ne pas avoir à gérer les fenêtre justement: on arrive sur une _frame_, une petite combinaison de touche et hop, un terminal en plein écran. On en lance un deuxième, pour voir, et voilà deux terminaux qui prenne chaucun une moitié d'écran, un troisième et ... non, je vous laisse deviner. Une autre combinaison de touche plus loin et paf, c'est sur deux colonnes que ça se passe, royal. Plus la peine de placer les fenêtre ! :) Plus de place à force de lancer des applications ? Une petite combinaison et paf, je met la nouvelle appli sur une autre _frame_ (on pourrais les apparentés à un bureau virtuel qui s'étend a mesure du besoin).
J'adore :)
Et pour ne rien gacher, je me rends compte qu'un figure du monde "Ruby":http://www.ruby-lang.org , "Mauricio Fernandez":http://eigenclass.org/ aime et utilise (il me semble) lui aussi ce gestionnaire de fenêtre (il a d'ailleurs commencer à faire quelque script et autre bricole en "ruby pour Wmii":http://eigenclass.org/hiki/wmii+ruby , mais c'est une autres histoire).
Et dans toute ces histoires de script et de config, je tombe sur encore une sommité du monde Ruby: "Why":http://redhanded.hobix.com/inspect/aFewWmii3Hacks.html qui apparemment aime et utilise Wmii ! _(D'ailleurs, j'ai découvert qu'il utilisais "DragonFlyBsd":http://www.dragonflybsd.org/index.shtml contrairement à tout les macaddict que l'on *voit* beaucoup dans le monde de Ruby sur les rails ;-) )_
Finalement je ne suis pas trop surpris, je trouve que l'auteur de "Wmii":http://www.suckless.org/wiki/wmii ressemble un peu à ces deux là. "Anselm R Garbe":http://www.suckless.org/~arg/ est un doux dingue du petit code efficace, c'est d'ailleurs le concept du site dont il est fondateur "sukless.org":http://www.suckless.org/wiki/about :
<blockquote>
Dedicated to software which sucks less…
The upper boundary on the size of the software we accept is 10,000 source lines of code (SLOC).
</blockquote>
J'ai encore plein de chose à découvrir, mais si vous voulez essayé un gestionnaire de fenêtre innovant, je vous conseil d'essayer "Wmii":http://www.suckless.org/wiki/wmii
_ps: j'allais oublié. le peu d'intérêt d'un screenshot avec ce genre de gestionnaire de fenêtre explique le manque d'image de ce billet :)_
@@ -0,0 +1,20 @@
---
layout: post
title: Suivre le flux de l'histoire
date: 2008-03-22
---
Quelle belle invention la "syndication":http://fr.wikipedia.org/wiki/Syndication. Que ce soit au format "RSS":http://fr.wikipedia.org/wiki/Flux_RSS ou "Atom":http://fr.wikipedia.org/wiki/Atom, cela nous permet de nous tenir au courant. Mais je ne souahite pas épiloguer sur ce point, ni sur la différence entre les deux formats, d'autres le font bien mieux que moi.
Beaucoup d'outil sont disponible pour suivre ces flux, _offline_ bien sur, mais je fais parti de ces gens qui préfère aller voir le nouveau _billet_ sur le site éméteur. J'aime voir, ressentir l'univers de l'auteur durant ma lecture. Bien souvent on comprend mieux un texte quand il est placer dans un contexte.
Pour me permettre de _veiller_ même en dehors de chez moi, même sur une autre machine que la mienne, j'ai choisi d'utiliser un _aggrégateur_ de flux en ligne. Mon choix c'est porté sur "Netvibes":http://www.netvibes.com. Le soucis avec cet outils, c'est que c'est pour ce construire un portail personnalisé, pas forcement pour aggréger 300 flux :). Du coup ça rame, ce n'est pas très pratique à utiliser. En parallèle je me suis donc mis à utiliser "bloglines":http://www.bloglines.com. Mais là encore je ne suis pas super satisfait.
Effectivement, je souhaiterais pouvoir parcourir les titres par _tag_ par exemple, que la liste des billets non lu soit constitué offline. Je ne veux pas, en venant voir les news, attendre que l'application fasse le tour des sites pour vérifier les nouveautés.
Mais est-ce que cela ne va pas à l'encontre du web justement ? Dans l'application que je souhaite mettre en place, je vais me retrouver à centraliser des informations déjà disponible sur des sites distants (la liste des billets non lu). D'un autres coté, comment faire autrement ? Cette application pourrais être vu que une gestion en ligne de marque page doté de fonctionnalitées supplémentaire.
_to be continued_
+24
View File
@@ -0,0 +1,24 @@
---
layout: post
title: Foaf ou LDAP
date: 2008-03-23
---
Je cherche depuis quelque temps à constituer mon carnet d'adresse dans un format _portable_,_ouvert_ comme il faut quoi.
La démarche normale serais de placer un serveur "LDAP":http://fr.wikipedia.org/wiki/LDAP sur la "bricabox":http://www.bricabox.info. Mais LDAP, bien qu'énormément utilisé ne me semble pas convenir à mes souhait, ou peut-être est-ce parce que je ne suit pas assez familiarisé avec l'engin. Ou peut-être me manque-t-il un bon client fait pour _administrer_ mon carnet. L'utiliser, ça c'est facile, tout les client mail peuvent se brancher sur un LDAP. Et pour ce qui est de l'authentification, c'est pareil, on trouve des tutoriaux pour chacun d'entre eux, ou presque.
Etant un petit fan d'XML, je suis un peu les discussions autour du WebSemantic également. Et j'avais noté l'existance de FOAF(Friend of a Friend) ("FOAF sur wikipedia":http://fr.wikipedia.org/wiki/FOAF). C'est un vocabulaire "RDF(Ressource Description Framework" ("RDF sur wikipedia":http://fr.wikipedia.org/wiki/Resource_Description_Framework) pour décrire des personnes et leurs relation. Interessant. Mais finalement cela me posait un problème: la mise à disposition de certaines informations personnel. Pour les adresse email il y a apparemment un mécanisme basé sur un hashage qui permet de masquer les adresse email. Mais rien n'empêcherais quelqu'un de faire un mauvais usage de simples noms.
Et a force de fouiller sur le sujet, je suis tombé sur une présentation en PDF de "Mr Sebastian Dietzold":http://aksw.org/SebastianDietzold?v=6rk dont je met à disposition une copie chez moi: "Accessing RDF Knowledge bases via LDAP clients":http://zone.typouype.org/access_rdf_know_db_ldap_client.pdf (Si ça pose un soucis je l'enleverrais). Et la je voie du LDAP ET du FOAF (en fait du RDF plutôt mais bon).
Du coup je suis paumé dans ma reflexion. Je ne sais pas trop quoi penser de tout ça. Je devrais surement poser un peu mes idées sur papier, et ensuite seulement chercher un outil qui covienne (voir en modifier un s'il le faut).
Et vous vous faites comment ? Un fichier csv tout moisi et pas à jour ? Un carnet papier ?
*edit:*
Et voilà qu'en continuant mes recherches d'infos sur le sujet, je tombe sur un post-it du "forum d'alsacreations":http://forum.alsacreations.com/forum.php rédigé par "Raphaël Goetter":http://blog.goetter.fr/ : "Qu'est-ce que FOAF":http://forum.alsacreations.com/topic-3-16402-1-Quest-ce-que-FOAF-Friend-Of-A-Friend-.html On y apprend qu'il y a une mutinerie... Ou plutôt que quelque grand monsieur du web n'apprecie pas trop la compléxité de Foaf et on créé XFN...
Mais la "critique constructive de Karl Dubost":http://www.la-grange.net/2003/12/17.html a coupé cours mes envies d'investigation dans ce nouveau venu. Il fallait cependant que je vous tienne au courant :-p
+20
View File
@@ -0,0 +1,20 @@
---
layout: post
title: Wmii 3.6
date: 2008-03-30
---
Cette après-midi, je me suis lancer dans la compile de "Wmii 3.6":http://www.suckless.org/wiki/wmii histoire de bénéficier des quelques nouveautées.
Je ne suis pas déçu :) Et dans le plus voyant, il y a maintenant la possibilité de faire quelque ajustement de fenêtre. Le mode _Float_ aussi gagne en facilité d'utilisation. Du coup, j'ai même du remettre un vrai fond d'écran (pas sur que je le vois souvent, mais bon).
Un gestionnaire de fenêtre à au moins essayer :)
"!http://farm3.static.flickr.com/2010/2375421000_dbc90684b5.jpg?v=0!":http://www.flickr.com/photos/yafra/2375421000/
"!http://farm3.static.flickr.com/2348/2375421002_9305eea5a5.jpg?v=0!":http://www.flickr.com/photos/yafra/2375421002/
_j'ai encore pas mal de truc à découvrir sur wmii. Il faut notamment que je regarde de plus prêt le binding ruby_
@@ -0,0 +1,14 @@
---
layout: post
title: EuroBSDCon - Strasbourg
date: 2008-04-02
---
C'est loin mais tout proche....
Tous à vos agenda, le 18-19 octobre prochain aura lieu l'EuroBSDCon qui aura lieu cet année à Strasbourg ! Je crois que là, je vais être obligé de me bloquer un créneau.
via "undealdy the OpenBSD Journal":http://undeadly.org/cgi?action=article&amp;sid=20080402144528
+21
View File
@@ -0,0 +1,21 @@
---
layout: post
title: Méthodes agiles
date: 2008-04-05
---
Je viens de finir le livre de "Véronique Messager Rota":http://www.eyrolles.com/Accueil/Auteur/81735/veronique-messager-rota.php?xd=b199d9f0f9a187dade3afbe1c307e31e "Gestion de projet - Vers les méthodes agiles":http://www.amazon.fr/Gestion-projet-Vers-m%C3%A9thodes-agiles/dp/2212121652/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1207386961&amp;sr=8-1 .
Un très bon complément à mes précedentes lectures sur le sujet, ainsi qu'au divers informations lu de-ci de-là sur le web.
J'aimerais maintenant une chose, c'est pouvoir participer à un projet agile :-) En tant que développeur dans un premier temps, et pourquoi pas plus tard, avec plus d'éxpérience dans le domaine, en tant que coach agile.
Messieurs les coachs et autres chefs de projets, j'étudirais très sérieusement toute proposition de rejoindre une équipe agiles !
"!http://zone.typouype.org/gest_proj-methodes-agiles.jpg!":http://www.amazon.fr/Gestion-projet-Vers-m%C3%A9thodes-agiles/dp/2212121652/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1207386961&amp;sr=8-1
_Et je vous conseil la lecture de ce bouquin_
+30
View File
@@ -0,0 +1,30 @@
---
layout: post
title: OpenBSD 4.3
date: 2008-04-12
---
Nous approchons à grand pas de la sortie officiel de la nouvelle version d'"OpenBSD":http://www.openbsd.org !
"OpenBSD 4.3":http://openbsd.org/43.html apporte comme d'habitude son lot de nouveautés:
* Le support de toutes une série de nouvelles cartes réseau
* Amélioration et nouveauté sur les drivers audio
* nettoyage de code avec notamment DiskLabel qui est passé à la machine à laver :-p
Cette version est accompagné de la version 4.8 d'"OpenSSH":http://www.openssh.org qui apporte lui aussi son lot de nouveautés. L'une d'entre elle à beaucoup fait parlé d'elle à ce sortie: l'ajout du support "chroot(2)":http://www.openbsd.org/cgi-bin/man.cgi?query=chroot&amp;sektion=2 . C'est une bonne chose qui va permettre au _admisys_ de pouvoir dévinir plus finement les repertoires accessible par les utilisateurs de la machine. Ami de la bricabox, nous allons limité les accès :-D
Comme d'habitude vous pouvez déjà précommandé les CDs officiels.
!http://zone.typouype.org/openbsd43_cover.gif!
ps:
Il y a une grosse discussion sur la chanson rituel accompagnant la sortie de cette version. Il faut dire qu'elle est directement inspiré des echanges sulfureux qui ont eu lieu sur la mailing list officiel entre Richard Stallman et l'équipe Open. Pour rappel, Mr Stallman critiquais OpenBSD sur le fait de proposé du logiciel non libre dans les Ports (on a notamment parlé d'Opéra).
Alors même si l'équipe d'Open a réagi un peu fort, je crois que Mr Stallman avait lui aussi d'autre chat à fouetter que venir emmerder la liste pour une histoire de logiciel dispo uniquement via les ports, qui en plus est disponible sur toutes les distributions linux, et même installable presque plus facilement que sous OpenBSD, le tout sans avoir forcement un message indiquant que la licence n'est pas libre...
@@ -0,0 +1,20 @@
---
layout: post
title: 5e apéro rubyFrance
date: 2008-04-19
---
_une semaine plus tard_
Cet session fût très bonne. Pas loin de 30 personnes ont fait le déplacement pour cette "apéro" qui en fait ressemblait plus à une bonne présentation.
Le thème principal de ce lundi était l'agilité, l'extreme programming, les tests. En effet, des membres de l'association "XP-France":http://www.xp-france.net sont venus nous présenter l'agilité, le développement piloté par les tests le tout dans sous la forme d'un *kata*, une des pratiques de dojo.
Ensuite, Jean-François nous a présenter une toute nouvelle librairie ruby qui gagne à être connu: Arel également appelé "ActiveRessource":http://wiki.rubyonrails.org/rails/pages/ActiveResource. Un librairie visant à permettre la création d'ORM(Object Relationnal Mapping). Disont pour résumé que cela enlèverais la couche "concaténation de chaine de caractères" dans ActiveRecord par exemple, et du coup nous aurions le moyen de construire plus joliement des requête SQL. A suivre donc.
Depuis quelque temps déjà je m'interesse aux méthodes agiles, à l'extreme programming, cette présentation à fini de me convaincre qu'il faut absoluement que j'aille en Dojo pour pratiquer le code, échanger avec d'autres personnes aguéri à ces techniques de tests et de façon de voir le code.
On en reparle plus tard ;-)
+18
View File
@@ -0,0 +1,18 @@
---
layout: post
title: Dojo
date: 2008-04-22
---
Lundi soir, comme apparemment presque tout les lundi soir, c'est rendez-vous au *dojo*. Non pas celui des arts martiaux, mais celui du développement. Pour rester *agiles*, l'association "XP-France":http://xp-france.org organise des rencontres au dojo.
Dans une salle gentillement fourni par "EpiConcept":http://www.epiconcept.com, des praticiens agiles se retrouvent pour un Kata voir un Randori.
J'ai passé une super soirée. J'ai découvert "Haskell":http://www.haskell.org/ un langage fonctionnel pur (c'est a préciser apparemment ;-)). J'ai vu des tests, et encore des tests et c'est beau. Vivement le prochain !
Si vous voulez en savoir plus: Voir "le projet Dojo":http://xp-france.net/cgi-bin/wiki.pl?LeProjetDuDojo sur le wiki de l'asso.
Moi je vais tenter d'y aller tout les lundi :-D
@@ -0,0 +1,14 @@
---
layout: post
title: OpenBSD 4.3 released
date: 2008-05-01
---
1er mai rime avec nouvelle version d'"OpenBSD":http://www.openbsd.org
Et comme d'habitude, c'est "Theo qui l'annonce pile à l'heure":http://marc.info/?l=openbsd-misc&amp;m=120959334232446&amp;w=2
L'annonce de la sortie au "journal officiel":http://undeadly.org/cgi?action=article&amp;sid=20080501002505
Je suis très content de voir que "Jean-mi essaie OpenBSD":http://blog.lacomte.net/articles/category/openbsd peut-être sera-t-il convaincu :-)
+22
View File
@@ -0,0 +1,22 @@
---
layout: post
title: Gem les packages
date: 2008-05-03
---
Les utilisateurs de [Ruby](http://www.ruby-lang.org) nous connaissent bien l'outils de gestion de paquet (ou librairies, c'est comme on veut) [RubyGems](http://www.rubygems.org/). Cet outil permet d'installer des paquets ruby enrichissant le _coeur_ de notre langage préféré.
Cependant la plus part des systèmes d'exploitations de la famille des "\*nix" (comprendre les divers distribution linux, les divers bsd et autre opensolaris) bénéficient déjà une gestionnaire de paquet permettant l'installer des applications.
Bien souvent certaines _gems_ (c'est ainsi que l'on désigne les paquet ruby disponible via RubyGems) sont porté dans le gestionnaire de paquet de système que nous utilisons. Alors pourquoi avoir deux gestionnaire de paquet pour ruby : celui du système et RubyGems ?
RubyGems à l'avantage d'être disponible sur toute les plateformes, et ne serait-ce que pour les utilisateurs de fenêtre ou de pomme, c'est indispensable pour une meilleur gestion de l'installation Ruby.
Mais je pense qu'il faut utiliser en priorité les paquets spécifique au système (pour [OpenBSD](http://www.openbsd.org) il y a aujourd'hui dans -current environ 75 paquets ruby disponible). En effet, ces paquets sont là pour s'intégrer au mieux avec le système. Et bien qu'ils s'installent de toute façon au même endroit qu'avec RubyGems, certain patch ou autres _flavor_ spécifique peuvent être mis en place pour le bien de l'installation et l'intégrité du système d'exploitation.
Alors RubyGems n'est pas inutile sur ces systèmes, loin de là, ne serait-ce que pour avoir la collection complète des applications ruby, mais j'utilise personnellement les paquets du système en priorité.
Et vous ?
_ps: RubyGems offre d'autre fonctionnalité interessante mais ce n'est pas le sujet ici :-)_
@@ -0,0 +1,29 @@
---
layout: post
title: Back to web - projet brouette
date: 2008-05-20
---
Non, je n'étais pas vraiment parti (quoique presque), mais surtout très occupé.
C'est un peu l'inconvénient d'être dans chez un client qui pratique le mode projet _brouette_. J'entends par là que l'on developpe en _sous-marin_ et que l'on déverse l'ensemble de l'application, directement en production, aux utilisateurs. Quand en plus ils n'ont pas demandé à avoir une nouvelle application, c'est pire.
Donc voilà, je suis arrivé au moment où l'on vient de verser l'ensemble du projet, et du coup, faut passer un peu la serpière, colmater les fuites... Ca me promet quelque jours bien chargé encore, mais ça commence à aller mieux.
!http://zone.typouype.org/Flag_of_the_Czech_Republic.png!
J'ai eu la chance (si on veut) d'aller avec l'équipe vider la brouette en production sur place: en République Tchèque, a Pragues. Malheureusement, je n'ai pas vu grand chose: L'hotel, la filialle, le chemin entre les deux, et les rare restaurants prêt de l'hotel qui était encore ouvert après 23h30 (quand on rentrais à l'hotel pour dormir un peu).
Ca faisait longtemps que je n'avais pas fait autant d'heures.
Je ne sais pas ce qui me gène le plus dans tout ça, le fait de _gacher_ une bonne équipe en la faisant travailler n'importe comment (grosse pertes d'energie en broutille) ou bien de _fourguer_ aux utilisateurs une application qui ne correspond pas vraiment à leurs besoins :-/ Le deuxième point est le pire je crois.
Je commence à avoir trop de mission dans le genre à mon actif, ça me fatigue. Vivement la prochaine, en espérant que je pourrais influancer un peu plus la façon de travailler au moins, voir la façon de recueillir le besoin et de mettre en place la meilleur solution *pour les utilisateurs*. Ou bien, que je tombe sur une équipe qui soit dans ce genre d'objectif !
!http://zone.typouype.org/Coat_of_arms_of_the_Czech_Republic.png!
_A suivre..._
@@ -0,0 +1,45 @@
---
layout: post
title: Courage du developpeur
date: 2008-05-24
---
Le **courage** fait parti des clefs de l'[eXtreme Programming \[wikipedia\]](http://fr.wikipedia.org/wiki/Extreme_programming). Il est nécessaire lors du ***refactoring***. Bien trop souvent les développeurs nosent pas modifier du code existant. Il existe plusieurs raisons à cela:
## Cest le code de...
AAah et bien si cest le code du grand guru maison, qui oserais modifier sont code. Il penserait surement que lon critique son code, quon ne le trouve pas assez bien. Et cest peut-être le cas, ou alors tout simplement, ce code à besoin d’évoluer. Et plutôt que dajouter de nouvelle chose, il faut reprendre, modifier une partie du code existant. Cela évitera les redondances, les erreurs, et le code mort. Je garde mon apologie du refactoring pour un autre billet.
## Trop compliqué à lire
Justement ! Cest quil faut le reécrire ce code ! Quel horreur du code illisible. Source de bugs, peut-être que ce source fait beaucoup trop de chose par rapport au besoin. Simplifions le !
## Je nai pas le temps
Je crois quil faut de temps à autre avoir le courage de prendre le temps, de perdre du temps. Cela pourrais savérer bénéfique par la suite. Si jajoute plutôt que de modifier, qui me dit que je ne vais pas devoir y revenir une fois, deux fois, n fois pour corriger un bug, un disfonctionnement, un effet de bord ?
On parle du courage du codeur, le courage de modifier du code, mais je voudrais juste aborder ici un autre courage, celui-ci cest pour les divers responsables et autres chefs de services: **le courage de revenir sur une décision quand elle savère être mauvaise**.
Trop de projets sont ecrasé contre un mur (ou alors y vont tout droit) parce qu'en haut personne nose, personne na le courage de tirer les leçons dune série d’échecs, personnes nose revenir sur une méthodologie mauvaise.
Personnellement, je fais de linformatique pour rendre service à des utilisateurs. Si je vois les utilisateurs heureux lors dune livraisons, je le suis aussi. Cest un bon moyen de vérifier que nous sommes sur la bonne route. Mais justement, je m’égare de la route du courage dont je voulais parler :-)
Nayons pas peur de modifier du code. Pour nous aider dans ce sens nous avons plusieurs outils à notre disposition:
## Outils de gestion de configuration (ou versioning)
Ces outils nous permette de revenir à une version précédente avec une facilité déconcertante. Alors bien sur il faut en choisir un qui corresponde bien à nos besoin, mais je crois quaujourdhui nous avons lembarras du choix !
## Test unitaire
Les tests ! En voilà un outil. Avec une bonne batterie de test, nous sommes sur de ne rien casser. Comment ne pas *oser* un refactoring avec ça ? On modifie, on relance les tests, ça passe ? bien ça marche alors :)
## Langage et architecture
Tout cela est bien beau, mais cest vrai quavec un langage et/ou une architecture ou tout élément et imbriqué dans lautres, une architecture ou tout est lié, une architecture ou lon gère plusieurs fonctionnalité dans un même source, cest beaucoup plus effrayant de modifier un morceau. Cest une des raisons qui me font adorer lObjet et les architectures associé. Un objet à une responsabilité, et une seul (enfin, il devrait). Pas de code cherchant à tout faire, souvent mal. Au moins cest simple.
**Courage et <acronym title="Keep It Smart Simple">KISS</acronym> <acronym title="Don't Repeat Yourself">DRY</acronym>**
@@ -0,0 +1,18 @@
---
layout: post
title: Socket versus Port
date: 2008-05-29
---
Quel est le plus performant ? Quel est le plus sécurisé ?
Aujourd'hui, nous utilisons principalement un frontal web qui redirige ensuite, au travers d'un bien souvent, les requêtes sur un serveur _d'application_. C'est le cas des techno Java avec les Tomcat et Glassfish, et par les techno Ruby avec Mongrels entre autres, mais même les petits nouveaux s'y mette: thin, ebb.
"Ebb":http://ebb.rubyforge.org/ justement est le serveur d'application auquel je m'interesse ces dernier temps, c'est apparement un des plus performants. Ce qui m'interesse également c'est la possibilité d'utiliser les _socket_ unix.
J'ai un peu de mal à mettre en place cette solution pour le moment, dès que c'est fait, je pourrais faire des test de performance.
Mais une question me harcèle: *Est-ce qu'il est _mieux_ d'utiliser les sockets ou bien les redirection de ports ?* En mettant à part cet histoire de chrootage.
@@ -0,0 +1,34 @@
---
layout: post
title: OpenBSD Installation de Grub
date: 2008-06-06
---
Cela peut parraître un peu ringare à lheure de la virtualisation tout azimut, mais pour avoir la possiblité deffectuer quelque test sous windows, jai du installer un double démarrage sur ma machine pro. Jai donc opté pour [Grub](http://www.gnu.org/software/grub/).
En 4.3 (et peut-être même avant) on dispose de grub dans les packages i386. Passons lexplication de linstallation sur les partitions.
Voilà qui devrait vous donner laccès à quelque binaire Grub. L’étape daprès est l’écriture dun bout de grub sur le premier secteur du disque:
*Remplacer donc le /dev/sd0c par votre disque*
Il faut ensuite créer un fichier de configuration pour Grub. Jai opté pour l’écriture en partant de zéro, mais un exemple est disponible sous */usr/local/share/doc/grub/README.OpenBSD*
Ce fichier de configuration (étrangement) ce place dans */grub/menu.lst*, jaurais préféré dans */etc/grub/menu.lst* voir un */etc/grub.conf* mais passons.
Voici donc un exemple, le mien, dun *menu.lst* permettant de démarrer sous OpenBSD par défaut (au bout de 10 secondes) et sinon dopté pour un démarrage sous Windows:
Bonne installation ;-)
*ps: jai une excuse bidon, mais lenvironnement de dev propriétaire dont une partie de la boite est spécialiste ne marche pas sous OpenBSD, ni même GNU/Linux, cest null, mais cest comme ça :-(*
+15
View File
@@ -0,0 +1,15 @@
---
layout: post
title: TypoGardenParty
date: 2008-06-08
---
"TypoGarden":http://typogarden.org/ se paie une refonte. Ce site regroupe divers thème disponible pour la plateforme de blog "Typo":http://typosphere.org (également connu sous le nom de "typosphere":http://typosphere.org).
Mais voilà, il faut que quelqu'un maintienne ce jardin, arrose les fleurs, enlève les mauvaises herbes et plantes les nouvelles fleurs. Rien de bien compliqué.
"Frederic l'explique très bien":http://t37.net/typogrden-se-cherche-un-jardinier.
@@ -0,0 +1,20 @@
---
layout: post
title: OpenBSD et OpenJDK
date: 2008-06-10
---
L'annonce ce "Sun":http://www.sun.com commence à dater un peu, mais les effets se font doucement ressentir.
Du coté "OpenBSD":http://www.openbsd.org, qui contrairement à ce que dit ce trolleur RMS ;-), faitr très attention au licence utilisé sur chacun des paquets mis à disposition, l'installation de Java se simplifie !
Plus la peine d'installer la JDK via les ports depuis la version 1.7 de cette dernière. Effectivement, en préparation d'OpenBSD 4.4 et donc dans la 4.3-current, nous disposont maintenant d'un paquet , directement !
Pour les versions antérieur, et toujours distribué sous licence _Sun_, il faut continuer à aller accepter la licence sur le site de sun et télécharger quelque 5 paquet pour compléter l'installation...
Je me demandais ce qui me pousserais à tester cette dernière version de VM, mais c'est tout vu !
_ps: C'est en fait une vieille news de "Kurt Miller (kurt@) sur journal officiel d'OpenBSD_":http://www.undeadly.org/cgi?action=article&amp;sid=20080321023803
@@ -0,0 +1,14 @@
---
layout: post
title: Typo et le jardinier
date: 2008-06-10
---
Ca y est, l'équipe de "Typo":http://typoesphere.org a trouvé sont jardinier pour le "TypoGarden":http://typogarden.org/ !
Bienvenue à "Damien Mathieu":http://www.kazhar.org/ !
_L'annonce officiel sur le "blog de Typo":http://blog.typosphere.org/2008/06/09/typogarden-is-now-our-new-official-themes-repository_
@@ -0,0 +1,20 @@
---
layout: post
title: Drapeaux en pagaille
date: 2008-06-22
---
En disant drapeau, je pense aux eternels *flags* qui font fureur dans beaucoup d'applications de gestion (et peut-être d'autres). On en met un par là pour dire que _ça c'est fait !_, un autre par ici pour signaler _c'est à faire_, un autre là bas pour un _peut-être qu'il faudrais s'en occuper_. J'avoue ne pas aimer du tout ce genre de donner. Et depuis longtemps une des question qui revient souvent dans mon esprit est *Mais pourquoi utiliser des flags ? Et comment pourrait-on s'en sortir sans ?*
Je pense que les flags sont là pour nous permettre de _mettre à plus tard_ un traitement, effectuer une sorte de désynchronisation. Soit pour dire _c'est à faire_, soit pour dire _c'est fait_. Alors pourquoi ne pas faire les choses tout de suite ?
Je pioche un exemple dans l'application sur laquelle je travail aujourd'hui: la facturation. Un facture est créée dans le système, on la stock dans la base. Jusqu'ici, c'est classique. Mais voilà, le système doit communiquer avec 2 voir 3 système externe (selon les filialles dans lesquels on installe l'application). Alors on lui colle des flags logique: _0_,_1_ ou carement des flags textuel _send_,_ready_,_send_. Le tout pour que lors de l'execution d'un batch, un peu plus tard dans la journée, voir à la fin du mois, le programme soit capable de savoir quelle facture il doit prendre en compte.
Mais finalement, pourquoi ne pas, au moment de la création de la facture, de son annulation ou tout autres évènement, créer des objets propre au batch devant s'executer plus tard ? Pourquoi ne pas faire les choses tout de suite ? On pourrais me dire: "Oui mais tu comprends ça fait créer une table pour chaque application externe et tout ça". Bah, aujourd'hui on se bat avec des flags à initialiser, à mettre à jour, à modifier sur chaque évènement, alors bon. Pourquoi ne pas travailler tout de suite sur une structure qui facilite l'execution du batch ? En plus cela découplerais la facture de notre système et l'image d'elle même que l'on doit envoyer aux autres (qui souvent n'est pas vraiment la même). On pourrais aussi du coup modifier, sans impacter le système courant, l'image que l'on doit envoyer quand l'application externe change de mode de fonctionnement.
Vous en pensez quoi vous ? Il y a beaucoup de flag chez vous ? Avez vous une autre idée pour s'en passer ?
_A chaque fois que ces flags sont sources de problème, je me lève dans l'openspace pour faire des signes, comme quand sur les portes avions, les petites mains font signe au avion avec des drapeau pour les remettre à l'horizontal :-), que je suis chiant des fois_
+14
View File
@@ -0,0 +1,14 @@
---
layout: post
title: OpenBSD LiveCD
date: 2008-06-29
---
Il existait déjà quelques versions officieuses, mais cette fois, c'est la bonne. Suite à plusieurs discussion sur la _mailling list_ @misc@@ l'équipe de "BSDAnywhere":http://bsdanywhere.org/ propose maintenant une version _live_ d'"OpenBSD":http://www.openbsd.org.
Ce live CD contient, outre OpenBSD, un bureau sous "Enlightenment":http://www.enlightenment.org/, "AbiWord":http://www.abisource.com/, "Firefox":http://www.mozilla.com/en-US/firefox/, "Thunderbird":http://www.mozilla.com/en-US/thunderbird/, "Gimp":http://www.gimp.org/, et toute une liste de paquet que vous pouvez consulter sur leur site: "http://bsdanywhere.org/software":http://bsdanywhere.org/software
_via "Undealy.org, le journal officiel d'OpenBSD_":http://undeadly.org/cgi?action=article&amp;sid=20080629134031
@@ -0,0 +1,26 @@
---
layout: post
title: OpenBSD, JDK1.5 et l'abre des ports
date: 2008-07-01
---
Bien que le projet [OpenJDK](http://openjdk.java.net/) porte doucement ces fruits afin de permettre la mise en place de lenvironnement Java sous licence libre. Et bien qu"OpenBSD":http://www.openbsd.org propose pour la 4.4 et en 4.3-current [un paquet pour la jdk 1.7](http://www.typouype.org/articles/2008/06/10/openbsd-et-openjdk). On a des fois besoin dacceder à une plus ancienne version du <span class="caps">JDK</span>, jai nomé la 1.5 (assez courante dans les applications pas toute neuve ;-)).
Cest toujours possible dans OpenBSD, il suffit de passer par les [ports](http://openports.se/devel/jdk/1.5). Il faut également, pour des problèmes de licence, télécharger un tas de path supplémentaire après avoir accepter la dite licence.
Mais surtout, surtout ! ce quil ne faut pas oublier, cest **de mettre à jour son arbre des ports** !!! Ca évite de ne pas comprendre pourquoi ça ne veut pas compiler, et pourquoi la version requise diconv est la 4.0 alors que la 5.0 à été trouvé sur la machine *grrrbbllll*
Alors pour mettre à jour larbre des ports, rien de plus facile:
Le -r est le tag [Cvs](http://fr.wikipedia.org/wiki/CVS) qui correspond à la version 4.3, quand on suit *-current*, il faut lenlever.
Une liste des serveurs *anoncvs* est disponible sur le site officiel à ladresse [http://www.openbsd.org/anoncvs.html#CVSROOT](http://www.openbsd.org/anoncvs.html#CVSROOT)
Et je peut vous dire quavec larbre des ports à jour, ça marche vachement plus meilleur la compilation de la <span class="caps">JDK</span> sur Open :)
**PS: A noter que la jdk 1.3 et 1.4 seront supprimer prochainement. Cest dans le [rapport hebdo sur l’état des ports dans larbre chez undeadly.org](http://undeadly.org/cgi?action=article&sid=20080701033934)**
@@ -0,0 +1,19 @@
---
layout: post
title: Les design patterns en ruby
date: 2008-07-08
---
C'est le titre de la traduction du livre "Design pattern in Ruby":http://www.amazon.fr/Design-Patterns-Ruby-Russ-Olsen/dp/0321490452/ref=sr_1_2?ie=UTF8&amp;s=english-books&amp;qid=1215551725&amp;sr=8-2 . J'en avais déjà parlé: "Ruby Design Pattern":http://www.typouype.org/articles/2008/01/13/ruby-design-pattern.
J'attendait de finir "L'art du beau code":http://www.amazon.fr/s/ref=nb_ss_eb?__mk_fr_FR=%C5M%C5Z%D5%D1&amp;url=search-alias%3Denglish-books&amp;field-keywords=l%27art+du+beau+code&amp;x=0&amp;y=0 un pavé magnifique, riche en information, pour le commander en Anglais, mais voilà, je n'aurais finalement pas à faire travailler mon cerveau dans la langue de Shakespear, un trio magique, bien connu des raillers surtout, j'ai nomé: Laurent Julliard, Mikhail Kachakhidze et Richard Piacentini ce sont occupé de la traduction !
Et bien messieurs, merci bien ! Je pré-commande la version française qui devrait être dispo d'ici la fin du mois de juillet, ROYAL !
!http://ecx.images-amazon.com/images/I/51vOlmC%2BWTL._SL500_AA240_.jpg!:http://www.amazon.fr/design-patterns-en-ruby/dp/2744022691/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1215552170&amp;sr=1-1
Les passionné de la "Programmation Orientée Objet":http://fr.wikipedia.org/wiki/Programmation_objet et/ou de "Ruby":http://www.ruby-lang.org seront comblé.
@@ -0,0 +1,19 @@
---
layout: post
title: Fête en grande Pompe
date: 2008-07-11
---
On connait (ou pas) ce merveilleux petit _framework_ d'interface graphique en "Ruby":http://www.ruby-lang.org : "Shoes":http://code.whytheluckystiff.net/shoes/ (une oeuvre signé "_Why":http://whytheluckystiff.net/ encore une fois !).
!http://hackety.org/images/nks-small.png!:http://code.whytheluckystiff.net
2 grandes rencontres virtuelles vont avoir lieu pour partager, tester, discuter, découvrir, documenter autour de ce _framework_: l'une à lieu en ce moment (vendredi 11 Juillet) et l'autre aura lieu dans 2 semaines (le vendredi 25 Juillet). C'est toute la journée, ça se passe sur "IRC":http://fr.wikipedia.org/wiki/Irc : #shoes@freenode.net , c'est ouvert à tous: développeur, testeur, documenteur, partageur, découvreur; du _framework_ ou bien d'application l'utilisant. _Vu le coté international, ça se passe en Anglais bien sur._
Si vous ne connaissez pas Shoes, c'est peut-être le moment d'aller découvrir ce _framework_. D'ailleurs, c'est un évènement qui précède la prochaine grosse release qui devrait avoir lieu à la fin du mois.
L'annonce officiel de l'évènement: "7/11 &amp; 7/25 ShoesFests with Why The Lucky Stiff":http://ihack.us/2008/06/27/shoesfests-on-july-11th-and-july-25th/
L'annonce sur RubyInside: "Join Why The Lucky Stiff (And Others) For an Online “ShoesFest”":http://www.rubyinside.com/shoesfest-announcement-948.html
+12
View File
@@ -0,0 +1,12 @@
---
layout: post
title: Jruby 1.1.3
date: 2008-07-17
---
[Jruby](http://jruby.codehaus.org/) vous connaissez ? C'est l'implémentation [Java](http://java.sun.com) du langage de programmation [Ruby](http://ruby-lang.org). Une implémentation qui à mon avis séduit ou séduira la plus part des entreprise ayant déjà une infrastructure basé sur la technologie Java.
Et bien cette semaine, c'est la dernière ligne droite, [Tom](http://www.bloglines.com/blog/ThomasEEnebo) a déclenché les _hostilitées_ en annonçant la sortie d'ici la fin de semaine de la nouvelle version 1.1.3 de cette implémentation, et du coup propose à tous de signaler ce qu'ils souhaitent voir dans cette version (archives de l'annonce: [\[jruby-dev\] JRuby 1.1.3 by end of week...Nominate problems here...](http://archive.jruby.codehaus.org/dev/21ef583e0807141035v622ce2aao7364aa2f3467491a%40mail.gmail.com). [Charles Oliver Nutter](http://headius.blogspot.com/) a surenchéri en faisant suivre le message sur la mailing list User ([The reason we're pushing 1.1.3 now is so we can finally branch 1.1 into full maintenance mode and start hitting Java integration hard](http://archive.jruby.codehaus.org/user/487B944E.4090707%40sun.com).
Les demandes pleuvent, je vous prévient un peu tard peut-être pour participer, mais essayé toujours. Au pire on fera les tests sur cette nouvelle mouture.
+16
View File
@@ -0,0 +1,16 @@
---
layout: post
title: OpenBSD 4.4 beta
date: 2008-07-17
---
Quel honte, j'ai laissé passer l'information sans vous tenir au courant !
Mösieur "Théo":http://fr.wikipedia.org/wiki/Theo_de_Raadt a posé le tag 4.4-beta dans l'arbre CVS d'"OpenBSD":http://www.openbsd.org ! C'est tôt, mais apparemment le "Hackathon":http://en.wikipedia.org/wiki/Hackathon de cet année à permis beaucoup de bonne avancé.
Ce numéro de release sonne une grande étape. C'est le dernier numéro de la version initial des système "BSD":http://fr.wikipedia.org/wiki/Berkeley_Software_Distribution. L'équipe d'OpenBSD s'investi énormément pour en faire une grande version !
_"OpenBSD turns 4.4-beta":http://undeadly.org/cgi?action=article&amp;sid=20080702151935 sur "undealy.org":http://undealy.org évidemment._
+19
View File
@@ -0,0 +1,19 @@
---
layout: post
title: Typo Upgrade
date: 2008-08-01
---
Ce blog tourne maintenant avec la version 5.1.2 du moteur de blog "Typo":http://typosphere.org/projects/show/typo (également appeler "typoesphere":http://typosphere.org/projects/show/typo). Comme d'habitude, du bon boulot.
*Bravo à l'équipe !*
*Merci Cartier Bresson !*
L'annonce officiel: "Typo 5.1 Cartier Bresson is out":http://blog.typosphere.org/2008/07/21/typo-5-1-cartier-bresson-is-out
Et pour compléter ce billet, je tiens à vous signaler/rappeler que l'équipe de Typo à mis en place "Redmine":http://www.redmine.org/ un gestionnaire de projet écrit en "RubyOnRails":http://rubyonrails.org et que vous pouvez trouver tout plein de thème dans le "jardin de typo":http://typogarden.org.
_D'autres nouveauté devrait arriver d'ici le 15 aout dans les parrages..._
+21
View File
@@ -0,0 +1,21 @@
---
layout: post
title: Retour en ligne
date: 2008-08-14
---
bq. Toutes les bonnes choses ont une fin
Les vacances ne sont pas encore tout à fait fini pour moi, mais me revoilà avec un ordinateur connecté à internet dans les mains :-)
Quelques images de la Bretagne, les "Côtes d'Armor":http://fr.wikipedia.org/wiki/C%C3%B4tes-d%27Armor pour être plus précis. Cela faisait un moment que je n'avais pas vu la Bretagne, ça fait du bien :-)
!http://farm4.static.flickr.com/3200/2762412663_fcb9282ca0.jpg?v=0!:http://www.flickr.com/photos/yafra/2762412663/
!http://farm4.static.flickr.com/3007/2762412667_e483b9a1fe.jpg?v=0!:http://www.flickr.com/photos/yafra/2762412667/
_C'est très beau la côte de granite rose, nous avons parcouru le GR34 par petit morceau pour la découvrir, je vous le conseil !_
+156
View File
@@ -0,0 +1,156 @@
---
layout: post
title: "Ruby : Test Unitaire"
date: 2008-08-15
---
Ruby bénéficie comme beaucoup d'autres langages modernes de son framework de test. Voici donc une petite documentation sur *comment écrire un test unitaire* pour Ruby.
_Pour ceux qui ne savent pas ce qu'est un test unitaire, je vous renvoie sur l'article_ [Test Unitaire \[wikipedia\]](http://fr.wikipedia.org/wiki/Test_unitaire)
Pour commencer il nous faut importer la librairie `Test::Unit`
<pre>
{% highlight ruby %}
require "test/unit"
{% endhighlight %}
</pre>
Rien que cela nous permet déjà de faire un premier test en executant notre script.
<pre>
{% highlight bash %}
yannick@libellule:~/Code/RubyFrance/testUnit $ ruby testUnit.rb
Loaded suite testUnit
Started
Finished in 0.000607 seconds.
0 test, 0 assertions, 0 failures, 0 errors
{% endhighlight %}
</pre>
Le fait d'inclure la librairie de test unitaire permet d'avoir un comportement par défaut qui va:
* Charger la suite de test à executer
* lancer les tests
* faire l'affichage des resultats de test
* faire un compte rendu de cette execution
Ajoutons un test maintenant
<pre>
{% highlight ruby %}
require "test/unit"
class StringTest < Test::Unit::TestCase
def test_length
s = "Bon test à tous !"
assert_equal(17, s.length)
end
end
{% endhighlight %}
</pre>
Nous avons défini une classe, celle-ci doit étendre TestCase. Cela permet au framework de test de s'y retrouver.
Chaque méthode de test définie ensuite doit contenir `test` en début de nom (le caractère `_` n'est placé que pour une meilleur lisibilité et selon les conventions couramment appliquées en Ruby)
Les méthodes assert (ici `assert_equal`, mais il en existe beaucoup d'autres) permettent d'effectuer un test. Ici un test d'égalité, mais nous pourrions également vérifié une différence, un bouléen répondant vrai ou faux et d'autres encore (voir la documentation sur le [module Test::Unit::Assertions](http://www.ruby-doc.org/stdlib/libdoc/test/unit/rdoc/classes/Test/Unit/Assertions.html)).
Après execution, voici le résultat:
<pre>
{% highlight bash %}
yannick@libellule:~/Code/RubyFrance/testUnit $ ruby testUnit.rb
Loaded suite testUnit
Started
.
Finished in 0.000802 seconds.
1 test, 1 assertions, 0 failures, 0 errors
{% endhighlight %}
</pre>
Un test a été executé avec succès.
Ajoutons encore un test pour avancer:
<pre>
{% highlight ruby %}
require "test/unit"
class StringTest < Test::Unit::TestCase
def test_length
s = "Bon test à tous !"
assert_equal(17, s.length)
end
def test_expression_substitution
assert_equal("", "#{'ah! ' * 3}")
end
end
{% endhighlight %}
</pre>
Après exécution nous obtenons:
<pre>
{% highlight ruby %}
yannick@libellule:~/Code/RubyFrance/testUnit $ ruby testUnit.rb
Loaded suite testUnit
Started
F.
Finished in 0.000827 seconds.
1) Failure:
test_expression_substitution(StringTest) [testUnit.rb:12]:
<""> expectedbut was
<"ah! ah! ah! ">.
2 test, 2 assertions, 1 failures, 0 errors
{% endhighlight %}
</pre>
Et voilà, comme vous l'aviez deviné, nous avons une erreur. Dans notre cas, l'erreur viens de notre test.
On vois ici l'interêt de mettre chaque test sur un domaine différent dans une méthode différente: on vois facilement quel type de test nous voulions effectuer. Dans le développement d'une application complète, avec plusieurs dizaines d'objets à tester, et plusieurs dizaines de méthodes sur chacun d'eux, les erreurs d'exécution de test peuvent devenir un vrai casse-tête.
Effectuons la correction:
<pre>
{% highlight ruby %}
require "test/unit"
class StringTest < Test::Unit::TestCase
def test_length
s = "Bon test à tous !"
assert_equal(17, s.length)
end
def test_expression_substitution
assert_equal("ah! ah! ah! ", "#{'ah! ' * 3}")
end
end
{% endhighlight %}
</pre>
exécution du test:
<pre>
{% highlight ruby %}
yannick@libellule:~/Code/RubyFrance/testUnit $ ruby testUnit.rb
Loaded suite testUnit
Started
..
Finished in 0.001273 seconds.
2 test, 2 assertions, 0 failures, 0 errors
{% endhighlight %}
</pre>
Et voilà. Vous devriez être capables de commencer à écrire quelques tests, mais ce n'est qu'un début !.
_*Cet article a été écrit pour le site de l'association [RubyFrance](http://www.rubyfrance.org), vous pourrez le retrouver dans les documentations proposées par l'association:*_ [RubyFrance\: TestUnitaire](http://rubyfrance.org/documentations/test-unitaire/)
@@ -0,0 +1,44 @@
---
layout: post
title: Choisir un ordinateur portable
date: 2008-08-16
---
Quand on a l'habitude d'utiliser une bonne grosse tour avec un écran gigantesque, un bon clavier et de la place autour de tout ça, c'est dur de choisir un ordinateur portable correctement, voici quelque pièges dans lesquels je suis tombé, et comment j'ai eu l'occassion de rectifié le tir.
Il y a quelque mois, me voici dans _l'obligation_ de *choisir un ordinateur portable*. *Le contexte*, c'est important pour le choix d'une machine: un nouveau job dans une SSII qui m'amènera à me déplacer souvent.
Ok, alors il me faut un bon processeur et de la ram, il ne faut pas déconner, je vais quand même faire un peu de developpement sur cette machine ! Un bon disque dur aussi, les portable sont souvent équipé d'un disque qui tourne pas très vite, je vais prendre un 7200 tours/minutes, comme ça, ça va _envoyer la purée_. Il me faut un belle écran aussi, je vais me prendre un truc trop bien en utlra bright view wild très large avec tout plein de pixels affiché et l'écran qui brille ! Je me restreint à un beau 15 pouces en écran large quand même. Bien sur niveau connectique, il me faut tout, et le lecteur/graveur de cd/dvd aussi.
A tiens ils (dans mon cas, Dell) fournissent un sac à dos ? C'est original (_c'est là que ça aurait du me mettre la puce à l'oreille_).
Bon, je vous passe le prix de la configuration, et je vous montre ce que j'ai du coup (_fait_) acheter:
!http://farm3.static.flickr.com/2054/2146300114_15faecdfcb.jpg?v=0!:http://www.flickr.com/photos/yafra/2146300114/
_ps: C'est celui de droite bien sur_
Alors la super configue qui va bien, c'est sur, posé sur le bureau c'est top de chez top. Mais alors dès que je part en déplacement, c'est la misère. Je me retrouve avec une carapace de tortue géante sur le dos de *pas loin de 5 kilos*. Je ne parle même par de l'*autonomie, a peine plus de 2 heures*...
Au bout de 3 déplacements, j'ai commencé à raler sur mon choix... Une opportunité plus loin, et voilà que je peut changer de machine ! On me propose de refaire une commande !
Bien, cette fois je ne vais pas utiliser les même critères, mon contexte c'est le *mobilité*. Quitte à prendre moins puissant, avec un écran moins grand, il me faut *de la légèreté, un faible encombrement, de l'autonomie*
Me voilà cette fois dans le coin des 12 pouces de chez Dell, ou plutôt dans la catégorie des moins de 2 kilos. Voilà, je craque pour le petit là, oui oui le tout petit...
!http://farm4.static.flickr.com/3129/2762608879_7a0ea9d01c.jpg?v=0!:http://www.flickr.com/photos/yafra/2762608879/
_ps: toujours celui de droite hein :)_
Alors c'est sur j'ai pas un écran brillant machin truc qui fait 3 kilomètres de large. Jai pas de lecteur/graveur cd/dvd intégré, c'est un lecteur externe qui est fourni avec, d'ailleurs je le laisse à la maison en général. Mais le gros avantage, le grand _trip_ c'est quand je le glisse dans la house du MacBookAir (ben oui c'est ce que j'ai trouvé de mieux adapté) et que je met ça entre deux pochettes dans mon sac habituel. Avec ça et presque 4 heures d'autonomie, je suis tranquille, et la machine me suit partout ! :)
*Alors faite attention quand vous choississez un ordinateur portable. Prenez bien en considération le contexte d'utilisation de votre machine.* _Vous allez pas me dire qu'il n'y a que moi pour m'être planté de la sorte ?_
Pour information:
* La première machine que j'avais commandé est un "Dell Precision M4300":http://www1.euro.dell.com/content/products/productdetails.aspx/precn_m4300?c=ch&amp;l=fr&amp;s=bsd&amp;cs=chbsdt1 , une très belle machine, mais il ne faut pas avoir à trop ce déplacer. Pour l'heure elle fait le bonheur d'un collègue sédentaire :)
* La seconde est un "Dell Latitude D430":http://www.dell.com/content/products/productdetails.aspx/latit_d430?c=us&amp;l=en&amp;s=bsd&amp;cs=04 machine que j'utilise aujourd'hui depuis un gros mois et qui me convient très bien :)
@@ -0,0 +1,16 @@
---
layout: post
title: Shoes change de pompes
date: 2008-08-19
---
Le micro framework graphique initié par "_Why":http://whytheluckystiff.net/ "Shoes":http://shoooes.net/ a un nouveau site dédié: "http://shoooes.net/":http://shoooes.net/
!http://zone.typouype.org/shoes-stone2.jpg!:http://shoooes.net/
Un petit rappel également pour le très intessant "The Shoebox":http://the-shoebox.org/ qui est une _gallerie_ d'application Shoes.
_On en reparlera plus tard ;-)_
+27
View File
@@ -0,0 +1,27 @@
---
layout: post
title: JRuby 1.1.4
date: 2008-08-29
---
La nouvelle version de [JRuby](http://http://jruby.codehaus.org/) viens de sortir: [Jruby 1.1.4](http://dist.codehaus.org/jruby/) .
Au programme, pas mal de chose dont
* Un gros *refactoring* de la couche dintégratiohn java.
* de 2 à 20 fois plus rapide sur la plus part des fonctionnalitées
* Les exceptions java peuvent être maintenant récupérer directement dans Ruby
* Amélioration de la gestion mémoire
* Début du support de Ruby 1.9 (vivement les fibres dans jruby ! je veux voir ça)
* Amélioration des performances
* Pool de Thread amélioré
* Accès concurent sur les tableaux amélioré
* Et 72 bug résolu depuis la version 1.1.3
Dans les prochain mois, l’équipe va travailler pour essayer de sortir des release plus fréquement (quelque chose comme une fois par mois). Le but étant de corriger au plus vite les divers problème, et apporté les évolutions plus rapidement aux utilisateurs.
Un bon projet toujours sur un bon rythme :)
@@ -0,0 +1,14 @@
---
layout: post
title: Des shoes propres avec Ajax
date: 2008-08-30
---
Voilà que [Shoes](http://shoooes.net/) se pare dune nouvelle fonctionnalitée: xmlHttpRequest. En gros, et pour reprendre sont exemple, vous pouvez lancer une opération de *download* tout en continuant à travailler...
Je vous laisse voir cela plus en détail sur le blog d'[hackety.org: threadedDownloadsInShoes](http://hackety.org/2008/08/15/threadedDownloadsInShoes.html)
Merci qui ? Merci [\_Why](http://whytheluckystiff.net/) !
@@ -0,0 +1,18 @@
---
layout: post
title: OpenBSD 4.4 precommande
date: 2008-09-05
---
[Après la beta](http://www.typouype.org/2008/07/17/openbsd-4-4-beta) voici qu"OpenBSD 4.4":http://www.openbsd.org/44.html est “disponible en precommande”. Je vous passe les [détails de tout ce qui bouge](http://www.openbsd.org/plus44.html), ya du monde, vous irez voir par vous même :-)
[![SourceWars](http://www.openbsd.org/images/SourceWars.jpg)](http://www.openbsd.org/44.html)
*Vous pourrez noter que le thème est basé sur StarWars cette année, cest toujours mieux quAsterix*
Javoue que je me tate, car en même temps que cette version au numéro si symbolique, l"euroBSDConf 2008":http://2008.eurobsdcon.org/ à lieu en France, à Starsbourg, et je compte bien y aller. Du coup, est-ce que jattend d’être sur place pour me lacheter, ou bien je fait une pré commande ?
[OpenBSD 4.4 is available for preorder](http://undeadly.org/cgi?action=article&sid=20080904204021) via [undeadly, le journal officiel](http://undeadly.org).
@@ -0,0 +1,18 @@
---
layout: post
title: REST maintenant, SOAP quand tu veux
date: 2008-09-13
---
Jai lu il y a quelques jours un billet de [Jean-François Helie: REST ou SOAP](http://jfhelie.blogspot.com/2008/09/rest-ou-soap.html) . Jaimerais ajouter ici mon petit piment, ma petite reflexion sur ces deux *mode de communication*.
Pour ce qui ne le savent pas encore, [REST](http://fr.wikipedia.org/wiki/REST) est une architecture basé sur ce qui fait le web: [URI](http://fr.wikipedia.org/wiki/Uniform_Resource_Identifier) , [HTTP](http://fr.wikipedia.org/wiki/Hypertext_Transfer_Protocol) et un concept dobject, ou plutôt de ressources bien pensé. Cest une architecture légère et relativement facile à mettre en place. Elle est de plus très ouverte et simple à utiliser.
Quant à [SOAP](http://fr.wikipedia.org/wiki/SOAP), cest un protocole de communication très utilisé (le seul?) dans la construction darchitecture de type [SOA](http://fr.wikipedia.org/wiki/Service_Oriented_Architecture). Basé sur <span class="caps">XML</span>. Très verbeux, il est souvent opposé à <span class="caps">REST</span> (mêms si cest plutôt la <span class="caps">SOA</span> qui soppose à <span class="caps">REST</span>).
Je rejoint Jean-François sur le fait que finalement, selon ce que nous voulons mettre en place, lune ou lautre des solutions sadapte mieux. Mais jajouterais que pour moi, <span class="caps">SOAP</span> est interessant dans une architecture où les échanges sont asynchrone. Effectivement, <span class="caps">REST</span>, basé sur le protocole <span class="caps">HTTP</span>, donne une réponse immédiate. <span class="caps">SOAP</span> peut-être utilisé comme tel, mais finalement, <span class="caps">SOAP</span> utilisé sur le protocole <span class="caps">HTTP</span>, ça faut un peu double emploi: *Une enveloppe dans une enveloppe*. <span class="caps">SOAP</span> dans une utilisation asynchrone prend du sens. Utilisé sur un protocole spécifique (beurk ! je préfère les *formats ouverts* !) ou bien du type smtp/imap/pop cela devient légitime.
Donc pour moi, outre laspect gestion de sécurité (il me semble quavec une architecture <span class="caps">REST</span>, il existe des solutions pour la gestion de la sécurité), le choix entre lutilisation de <span class="caps">REST</span> et lutilisation de <span class="caps">SOAP</span>, cest plutôt une question de *timing* :-)
+72
View File
@@ -0,0 +1,72 @@
---
layout: post
title: TDD C'est quoi ? (En ruby bien sur !)
date: 2008-09-28
---
*Voici un petit billet dinitiation au Développement piloté par les Test (dit <span class="caps">TDD</span> pour Test Driven Development) avec Ruby. Initialiement publié sur le site de lassociation "RubyFrance*":http://rubyfrance.org
Imaginons que nous ayons besoin dun petit objet nous permettant dafficher un nom. En bon développeur, nous allons dabord écrire notre test.
Executons le test:
<notextile>
Mince une erreur. Vous allez me dire, c’était couru davance, on a encore rien codé. Bien. Allons-y alors. Dabord nous allons ajouter le fichier contenant lobjet que nous allons créer.
</notextile>
Ensuite créons ce fichier:
<notextile>
Cela suffira largement pour empecher lerreur précedente. Cest un point important dans lunivers <span class="caps">TDD</span>. Il ne faut rien faire de plus que ce que les tests nous demande. Cela rejoint également un autre concept: <span class="caps">YAGNI</span> (You Aint Gonna Need It).
Executons encore ce test:
</notextile>
Hmm, encore une erreur, mais cette fois ce sont les paramètres de notre objet qui pose problème. Bien, corrigeons notre objet.
<notextile>
Executons encore ce test:
</notextile>
Encore une erreur. Mais cette fois c'est la method nom qui est manquante pour MonObjet. Ajoutons la:
<notextile>
Executons le test (oui, en tdd, on passe notre temps à tester ! :-)):
</notextile>
Voilà qui deviens interessant. Cette fois, ce n'est pas une erreur, c'est un echec du test. La méthode "nom" ne renvoi pas la bonne valeur.
La situation d'echec dans le test unitaire est aussi appelé "la barre rouge". Et quand il y a une barre rouge, le principe est de la faire redevenir verte le plus rapidement possible (en ajoutant très peu de code voir en enlevant du code).
Modifions donc rapidement notre code pour répondre au besoin du test:
<notextile>
Doucement, doucement, je vous vois venir, oui jai mis une valeur en dur, executons le test (cest barre rouge), nous en parlons juste après.
</notextile>
Voilà, le test passe. Nous pouvons maintenant parler. J'ai mis une valeur en dur dans la méthode "nom", cela vous dérange ? Et bien pas moi. Je répond ici au besoin exprimé dans le test. Mais je n'ai pas dit que nous allions nous arreter là ! Ajoutons un test pour bien préciser notre besoin.
<notextile>
Executons le test unitaire maintenant enrichi dun test.
</notextile>
Forcement, avec une valeur en dur, cela ne vas pas. Faisons passer la barre au vert avant de discuter:
<notextile>
Executons le test:
</notextile>
Parfait ! Barre verte !
Bien, maintenant, on peut laisser étaler nos connaissance en ruby pour effectuer un petit refactoring:
<notextile>
Executons le test a nouveau pour être sur que ce refactoring na pas changé la donne:
</notextile>
Un des interêt de faire un développement piloté par les tests cest de tendre une sorte de filet de sécurité permettant de donnée plus de courage, ou au moins de tranquillité pour effectuer le refactoring. Mais il existe bien dautre avantage à ce mode de développement. Notamment celui de ne pas faire plus que nécessaire.
Les tests ainsi écrit, modifié, mis à jour permette de disposer à tout moment dune documentation sur lexecution du programme.
@@ -0,0 +1,24 @@
---
layout: post
title: OpenBSD wicontrol
date: 2008-09-30
---
_Pour vous evitez de vous prendre les pieds dans le tapis..._
Je ne suis pas un grand utilisateur de wifi... Mais j'apprend maintenant que j'ai un petit portable de moins de 2 kilos que j'enmène partout :D
Quand je cherche un peu de doc sur comment ocnfigurer le wifi pour OpenBSD, je tombe souvent sur des articles qui parlent d'une comande "@wicontrol(8)@":http://www.openbsd.org/cgi-bin/man.cgi?query=wicontrol&amp;apropos=0&amp;sektion=0&amp;manpath=OpenBSD+Current&amp;arch=i386&amp;format=html . Mais voilà, impossible de l'avoir sur ma machine. J'ai beau chercher dans les paquets, les ports, je ne trouve rien.
Finalement, a force de fouiller, je suis tombé sur une petite phrase dans la doc des nouveautés de la version 4.0 d'OpenBSD:
bq. La configuration sans-fil pour wi(4) est désormais totalement supportée par ifconfig(8). L'utilitaire wicontrol(8) est désormais obsolète et a été supprimé de l'arbre CVS.
("Mise à jour 3.9 -&gt; 4.0 : Application userland":http://www.openbsd.org/faq/fr/upgrade40.html#apps)
Ne cherchez plus, tout est sur votre machine :)
_ps: C'est quand même dommage que l'on ai toujours la commande disponible dans les pages "man" disponible en ligne_
+20
View File
@@ -0,0 +1,20 @@
---
layout: post
title: déçu
date: 2008-10-06
---
Au vu du tarif, je ne vais finalement pas me rendre à
l"EuroBSDCon 2008":http://2008.eurobsdcon.org/ à Strasbourg. Tant pis.
Je suis vraiment surpris
[par la grille de tarif](http://eurobsdcon2008.eventbrite.com/) :
255 € ça fait un peu chère.
Peut-être que je me consolerais en allant au
[JDLL](http://www.jdll.org/) (cest le même week-end, à Lyon).
@@ -0,0 +1,43 @@
---
layout: post
title: Quel type de développeur je suis ?
date: 2008-10-16
---
La question du moment: "Quel développeur êtes vous ?":http://www.miximum.fr/culture/99-quel-developpeur-etes-vous.
Ce n'est pas facile de se définir. Je me retrouve assez bien dans la "categorie Laurent Jouanneau":http://ljouanneau.com/blog/post/2008/10/16/Quel-type-de-developpeur-suis-je :
* Le Ninja
* Le pragmatique
* Le libriste
Avec des nuances:
*Ninja 10%*, mais pas trop: ne suis pas à la recherche de l'outil ultime, je ne connais pas _tout_ les raccourci de "vim":http://www.vim.org/ , je ne pense pas être dangereux, je ne méprise que les cons, par contre c'est promis, dès que j'ai le temps, je m'essaie à Dvorak !
*Libriste 20%* Deux grosse nuances. La première, c'est que je ne travail pas dans un environnement très libre. Disons que je parle peu de licence (un tord peut-être ?). Je suis un peu comme TF1 pour Coca: je vend mon temps de cerveaux disponible à mes clients. Je les aident comme je peut en leur conseillant en général d'utilisé un outil libre quand c'est mieux pour lui. Mais si ces contraintes ou autre lui fond préférer du sources fermé, tant pis, je continue à l'aider. A la maison c'est tout autre chose, on passe à beaucoup plus ! J'ai une petite barbe, j'aime l'entreaide, une petite tendance écolo, et je n'ai aucun logiciel propriétaire sur mon système @home (ni aucun blob d'ailleurs :p).
*Pragmatique 70%* Faire ce qu'il faut pour que cela marche, ni plus ni moins. Plus peut engendrer des problèmes bien souvent, moins ne suffit pas. Après, le coté rentrer à la maison c'est tout... De toute façon à la maison, je continue, du coup c'est moins pragmatique...
* *Os* : "OpenBSD":http://www.OpenBSD.org / "Windows Vista":http://www.microsoft.com/windows/windows-vista/default.aspx
* *Editeur* : "Vim":http://www.vim.org , "Eclipse":http://www.eclipse.org / "Vim":http://www.vim.org, "SciTE":http://www.scintilla.org/SciTE.html, "Eclipse":http://www.eclipse.org
* *Langage Favori* : "Ruby":http://ruby-lang.org / "Java":http://java.sun.com/, "Progress":http://www.progress.com/fr/index.ssp
* *VCS* : "Mercurial":http://www.selenic.com/mercurial/wiki/ / "Mercurial":http://www.selenic.com/mercurial/wiki/, "CVS":http://fr.wikipedia.org/wiki/Concurrent_versions_system
* *Navigateur* : "Firefox":http://www.mozilla-europe.org/fr/firefox/ / Firefox, "IE":http://www.microsoft.com/france/windows/products/winfamily/ie/default.mspx
*Edit: pour être honnête, je suis obligé d'ajouter les outils/environnements qu'il m'arrive d'utiliser en journée, parfois toute la journée :-/*
En regardant la liste, je me demande si tout colle à mon profile... :-D
Je reprend maintenant la question de base, *et vous quel développeur êtes vous ?*
_Merci à "Thibault":http://www.miximum.fr/ pour ce billet très interessant !_
*Edit* : Pour être tout à fait honête, je doit ajouter windows, progress et compagnie..
*Edit 2* : JRuby n'est effecitvement pas un langage à part entière, c'est une simple implémentation de Ruby sur la JVM.
@@ -0,0 +1,40 @@
---
layout: post
title: "1er novembre : OpenBSD 4.4"
date: 2008-11-01
---
On y est ! Comme d'habitude, pile à l'heure. "OpenBSD 4.4":http://marc.info/?l=openbsd-announce&amp;m=122547376504077&amp;w=2 est disponible.
Pas mal de nouveautés pour cette version à la numérotation mythique ! Je vous laisse découvrir cela.
!http://zone.typouype.org/openbsd44_cover.gif!:http://openbsd.org/44.html
Je vous ajoute une info paru sur la mailling-list de l'"April":http://www.april.org:
<blockquote>
Bonjour,
Dimanche 2 novembre 2008 de 14H à 15H30, Symbiose recevra Miod Vallat et Marc Espie du projet OpenBSD. Au menu, présentation de ce système d'exploitation et de sa philosophie.
Symbiose est diffusée sur radio libertaire 89.4 en région parisienne, audible également en streaming :
MP3 qualité ADSL : "http://ecoutez.radio-libertaire.org:8080/radiolib.m3u":http://ecoutez.radio-libertaire.org:8080/radiolib.m3u
MP3 qualité modem : "http://ecoutez.radio-libertaire.org:8080/radiolib-modem.m3u":http://ecoutez.radio-libertaire.org:8080/radiolib-modem.m3u
OGG qualité ADSL : "http://ecoutez.radio-libertaire.org:8080/radiolib.ogg.m3u":http://ecoutez.radio-libertaire.org:8080/radiolib.ogg.m3u
OGG qualité modem : "http://ecoutez.radio-libertaire.org:8080/radiolib-low.ogg.m3u":http://ecoutez.radio-libertaire.org:8080/radiolib-low.ogg.m3u
L'enregistrement de l'émission (sous licence CC by-nc-nd) sera disponible au téléchargement et en podcast : "http://archive.symbiose.free.fr":http://archive.symbiose.free.fr "http://www.onirik.net":http://www.onirik.net
</blockquote>
Une émission qui sera sûrement très interessante.
"L'annonce dans le journal officiel d'OpenBSD":http://undeadly.org/cgi?action=article&amp;sid=20081031165518
_a noter: un très bon thème basé sur StarWars pour cette version ! :)_
@@ -0,0 +1,8 @@
---
layout: post
title: "Note de service: Bricabox upgrade"
date: 2008-11-02
---
La machine qui héberge ce site (entre autres) viens de passer en version 4.4 d'[OpenBSD](http://openbsd.org). Si vous lisez ce message c'est que tout c'est bien passé.
@@ -0,0 +1,26 @@
---
layout: post
title: Rails Party le 30 novembre 2008
date: 2008-11-22
---
Avec les feuilles qui tombent vient le temps de "ParisOnRails":http://paris.onrails.info/ . Et cette année, plutôt que d'organiser un apéro Ruby la veille au soir, l'association "RubyFrance":http://rubyfrance.org a décider d'organiser une "Rails Party":http://rubyfrance.org/evenements/rails-party-2008/
*Au programme*
L'après-midi sera consacré à des ateliers, sûrement autour de "Typo":http://typosphere.org, peut-être de "Pictrails":http://pictrails.rubyforge.org/, "RSpec":http://rspec.info/ et sûrement bien d'autres !
La soirée sera ouverte au Lightning talks (présentation courte d'une dixaine de minutes).
L'évènement se veut conviviale, c'est avant tout un moyen de ce retrouver entre raillers avant les conférences du lendemain.
Rendez-vous donc le dimanche 30 novembre 2008 de 16 heures à 22 heures au Dune, 18 avenue Claude Vellefaux, dans le 10ème arrondissement de Paris.
"Cyril y sera (Pictrails, Typo, et plein de rails dans la tête)":http://blog.shingara.fr/2008/11/21/la-before-paris-on-rails-cest-la-rails-party-le-30-novembre-2008, "Frederic viens aussi (Typo, Ergonomie, Web, et plein de chose à dire":http://t37.net/rails-party-le-30-novembre-2008-i-paris, bien sur l'association "RubyFrance":http://rubyfrance.org avec tout plein de membre motivé autour de l'organisateur des évènements Ruby Parisien Jean-François !
A dimanche alors !
@@ -0,0 +1,32 @@
---
layout: post
title: April, pas encore adhérent ?
date: 2008-11-23
---
Vous ne connaissez pas encore l'"April":http://www.april.org ?
<blockquote>
Pionnière du logiciel libre en France, l'April, constituée de 3069 adhérents (2854 individus, 215 entreprises, associations et organisations), est depuis 1996 un acteur majeur de la démocratisation et de la diffusion du logiciel libre et des standards ouverts auprès du grand public, des professionnels et des institutions dans l'espace francophone.
</blockquote>
Les objectifs de l'April sont simple:
<blockquote> L'April a pour objectifs de :
* Promouvoir le logiciel libre dans toutes les sphères de la société ;
* Sensibiliser le plus grand nombre aux enjeux des standards ouverts et de l'interopérabilité ;
* Obtenir des décisions politiques, juridiques et réglementaires favorables au développement du logiciel libre et aux biens communs informationnels ;
* Favoriser le partage du savoir et des connaissances.
</blockquote>
"Pour en savoir plus sur l'April":http://www.april.org/fr/association/
Plus le temps avance et plus la mission de l'April prend de l'importance. Pour pouvoir la mener à bien, l'association a besoin de nouveaux adhérents. Vous pouvez Adhérer toute l'année bien sur, mais vous pouvez aussi vous faire un beau cadeau de noël en soutenant l'April, le logiciel libre et donc vous !
h4. "Adhérer à l'April":http://www.april.org/adherer?referent=Yannick+FRAN%C3%87OIS+%28yfrancois%29
!http://www.april.org/files/images/banniere_campagne-adhesion-objectif-5000-adherents.png!:http://www.april.org/adherer?referent=Yannick+FRAN%C3%87OIS+%28yfrancois%29
@@ -0,0 +1,48 @@
---
layout: post
title: Retour sur un bon week-end Ruby et Rails
date: 2008-12-04
---
h3. Dimanche: "RailsParty":http://rubyfrance.org/evenements/rails-party-2008/
J'ai décidé de me rendre au Dune, lieu de l'évènement en voiture plutôt qu'en transport, pensant que pour le soir ça serait plus rapide. J'ai donc proposé à "Guillaume":zlab.fr de passer le prendre à l'hotel, porte de la villette. Avec les 10 minutes de retard habituelle du au embouteillage du périph, Guillaume arrive accompagné de "Yann Lugrin":http://www.sans-savoir.net/a-propos/ venu de Suisse pour ParisOnRails ET la RailsParty (Nouveau membre de "RubyFrance":http://rubyfrance.org depuis d'ailleurs , Bienvenue ;-)).
Mais voilà, trop de bouchon, Guillaume ne fera pas de discour d'intro.
Finalement avec plus d'une heure de retard, nous arrivons dans un Dune bien rempli, avec, comme d'habitude dans les réunions Ruby et Rails, l'impression d'être dans une boutique Apple. Deux vidéoprojecteurs, un comptoir, des gens en train de pianoter : c'est bien _décontracté_, un évènement communautaire quoi.
Beaucoup de présentations, plutôt courte mais bien mené, Petite difficulté pour suivre puisque les deux se déroule presque cote à cote.
J'ai bien discuté avec "Frederic":http://t37.net/ et "Cyril":http://blog.shingara.fr/ au sujet de "Typo":http://typosphere.org. Ils m'ont présenté l'énorme boulot accompli pour la version 6. Cette mouture devrait voir le jour depuis quelque semaine déjà, mais trop de nouvelle fonctionnalité semble manquer à Frederic ;-).
On a pu y voir aussi "Eric Daspet":http://performance.survol.fr/, "Nicolas Merouze":http://boldr.fr/, "Sunny":http://sunfox.org/ et plein d'autres ! Les sponsors sont venu en force, il me semble que "Novelys":http://www.novelys.com/ a dépéché sur place 5 ou 6 personnes, et "AF83":http://www.af83.com/ a innondé la salle de badge.
Merci à Jean-François d'avoir réussi à mettre cette évènement sur pied en a peine plus d'un mois.
h3. Lundi: "ParisOnRails":http://paris.onrails.info/
Pas fou, cette fois j'y vais en transport en commun ! Du coup je suis à l'heure. Prise de badge, bonjour à plusieurs personnes déjà vu la veille (Yann, cette fois tu es à l'heure ;-)). Je suis avec une personne qui, avec un passif sur une techno propriétaire, s'interesse à Ruby depuis une petite année. Du beau monde, et une cité de science vide car fermé le lundi. Ca fait bizarre, je ne l'avais jamais vu comme ça.
Après une introduction assez breve de "Richard et Laurent":http://www.nuxos.fr/ organisateur de l'évènement, Guillaume attaque direct sur les nouveautés qui nous attende dans la version 1.9 de "Ruby":http://ruby-lang.org . Du bon, du moins bon, mais on sent que le "Matz" et la _CoreTeam_ de Ruby corrige certaine erreur de jeunesse, propose de nouvelle possibilité de syntaxe (c'est surtout là le bon et le moins bon je trouve), mais surtout apporte le support de l'unicode, propose une solution de gestion de Thread interessante (Fibre). A noter surtout, YARV qui va remplacé la MRI actuel: amélioration de performance a venir !
Ensuite, présentation du framework "Mootools":http://mootools.net/. Interessant, mais je crois que je me contenterais de "prototype.js":http://www.prototypejs.org/ pour le moment. Ceci dit, c'est bon de savoir que cela existe ! :)
Vient ensuite une conf de "Russ Olsen":http://jroller.com/rolsen/ qui c'est levé très très tôt pour nous parlé de Ruby et de son expérience dans les langages en général. Exellent ! J'adore la façon dont il a traité des designs patterns en Ruby, et j'ai beaucoup aimé sont intervention à ParisOnRails. Respect.
L'après midi reprend avec deux conférences parlant de "Selenium":http://selenium.seleniumhq.org/. J'ai un peu raté la première (trop de temps à table), mais la deuxième à été très agréablement présenté. Cependant, et même si je suis convaincu que mettre en place des test d'acceptance est important, je crois qu'il faudrait d'abord avoir une bonne habitude des tests unitaires dans les équipes... ça serait déjà pas mal. Mais pour l'étape suivante, j'ai bien noté, Selenium Grid ! :)
"Michael Koziarski":http://www.koziarski.com/ en passage à Paris depuis cette été (repartant dans les jour qui vienne) nous a fait une présentation sur les performances d'un application Web. Partant du plus important: le resultat que l'utilisateur voit et s'enfonçant jusqu'au memcahe et autre système d'optimisation. Très riche, très dense, très rapide... grosse présentation.
Intervention de DHH himself. c'est sympa de le voir, mais finalement, nous n'apprenons pas grand chose. Une présentaiton de Liquid. Un moteur de template... Mouais. Je ne suis pas convaincu, pas assez KISS(Keep It Smart Simple) pour mes besoins.
_Une petite table ronde et puis s'en vont_... Un peu dommage finalement la fin de cette journée. Je ne suis pas déçu, mais après la très bonne matinée, j'avoue que l'après midi ma paru un peu fade. Ca ne peut pas être à mon gout toute la journée, nous étions quand même prêt de 250.
h3. Lundi soir "Apéro Ruby #8":http://rubyfrance.org/articles/2008/11/28/huitieme-apero-ruby-special-paris-on-rails-2008/ le soir de ParisOnRails...
Je n'y suis pas aller, no comment.
@@ -0,0 +1,28 @@
---
layout: post
title: "Shoes : vendange tardive"
date: 2008-12-11
---
La communauté s'active beaucoup sur "Shoes":http://shoooes.net (le microframework graphique en "Ruby":http://ruby-lang.org) depuis un bon moment, et la nouvelle mouture nommé "Raisins":http://shoooes.net/about/raisins/ en montre une partie du résultat. Très impressionnant. De quoi faire de bien belle application:
* Un manuel intégré (Alt+? ou pomme+? pour les clavier mac).
* Un outil de création de paquet (là comme ça on se demande bien à quoi cela peut servir).
* Un loader de gem au cas ou votre application nécessite quelques gems pour son fonctionnement (bien surle chargement ne s'effectuera qu'une seul fois au démarrage ;-))
* Une sort de console pour la gestion des messages d'erreurs.
* Une méthode de téléchargement asynchrone (dans le style de XMLHttpRequest)
* La visualisation d'image distante
* L'utilisation de font externe
* De nouveaux effets pour les images, une gestion par block
* Et plein de petits truc en plus...
Avec l'outil de création de paquet, l'installation des gems et le téléchargement asynchrone, on voit déjà l'outil façon javawebstart en plus petit et plus jolie ;-) Ou alors une sorte d'application dans l'esprit de Rebol.
!http://zone.typouype.org/shoes-splash.png!:http://shoooes.net/about/raisins/
Merci encore "_why":http://whytheluckystiff.net/ , et merci à toute la communauté qui oeuvre pour shoes, vous faite un travail exellent ! :)
@@ -0,0 +1,25 @@
---
layout: post
title: WindowMaker come back
date: 2008-12-14
---
On a cru pendant un moment que "WindowMaker":http://windowmaker.info/, le gestionnaire de fenêtre basé sur "GnuSTEP":http://www.gnustep.org/, était mort:
* Site quasi indisponible
* Dernier message de 2006
* Peut d'activité sur la liste
* Eternel version 0.92
Mais voilà, il y a quelque mois, c'est reparti. Reprise d'activité du site (doucement, mais au moins il est en ligne). La mailing list déborde d'annonce de patch et autres. Pour le moment ça sent la stabilisation de l'existant, mais l'équipe en place semble parti pour faire avancé le tout vers une version 1.0 ! :-)
Le dépot de version est passé sous "Mercurial":http://www.selenic.com/mercurial/wiki/ : "hg.windowmaker.info":http://hg.windowmaker.info/
A suivre donc !
!http://farm2.static.flickr.com/1205/1411878360_6bbbaf86b7.jpg?v=0!:http://www.flickr.com/photos/yafra/1411878360/in/set-72157594188207460/
+15
View File
@@ -0,0 +1,15 @@
---
layout: post
title: JRuby 1.1.6
date: 2008-12-21
---
J'ai raté ça, mais le 17 décembre, "Thomas E Enebo annonçait la sorti de JRuby 1.1.6":http://docs.codehaus.org/display/JRUBY/2008/12/17/JRuby+1.1.6+Released.
Cette version corrige pas mal de bug, notemment sur l'objet IO (qui ces dernier mois a été l'objet de pas mal de remonté de bug). Cette version prépare également le support de la version 1.9 de Ruby: le parseur est complet, la pluspart des objets du _core_, des _standard lib_ sont supporté.
Le projet est toujours aussi actif. C'est bon pour Ruby et c'est bon pour les développeurs. J'espère que les entreprises frileuses qui ont déjà adopté Java accepterons plus facilement l'utilisation de Ruby par ce biais.
+37
View File
@@ -0,0 +1,37 @@
---
layout: post
title: Git ou Mercurial
date: 2008-12-22
---
Cela fait un moment qu'un nouveau troll à pointé son nez. Après _vim versus emacs_, _gnome versus kde_ et tant d'autres, on a maintenant _git versus mercurial_.
Derrière ces deux noms se cache un outil de "gestion de versions":http://fr.wikipedia.org/wiki/Syst%C3%A8me_de_gestion_de_versions. Contrairement à "CVS":http://fr.wikipedia.org/wiki/Concurrent_versions_system ou "SubVersion":http://fr.wikipedia.org/wiki/Subversion_(logiciel) ces deux là (et quelques autres) sont dit "décentralisé":http://fr.wikipedia.org/wiki/Gestion_de_version_d%C3%A9centralis%C3%A9e. Ce mode permet de nouvelles possibilités dans la manière dont les équipes travaillent.
On trouve beaucoup de comparatif entre ces deux outils, et je ne suis pas convaincu par les uns ou les autres. Pour moi les seules différences que je vois aujourd'hui c'est:
* langage source : Git est écrit en C, Mercurial en Python
* Commande: Git utilise trois lettre @git@, Mercurial en utilise deux @hg@
Une des grandes forces de la communauté des utilisateurs de Git est d'avoir eu très rapidement accès à un outil d'hébergement : "github":https://github.com/ . De plus, l'équipe du framework "RubyOnRails":http://rubyonrails ayant adopté Git, la communauté Rails l'a également adopté. Bien sur, beaucoup d'autres projets utilisent Git, notamment le noyau Linux.
Mais Mercurial n'est pas en reste (contrairement à ce que l'on pourrait croire).
La communauté d'utilisateur de Mercurial a également un outil d'hébergement: "bitbucket":http://www.bitbucket.org/ ou encore "freeHg":http://freehg.org/, et pour ce qui est des projets phare ayant choisi mercurial on retrouve "mozilla":http://hg.mozilla.org/ , "NetBeans":http://hg.netbeans.org/ , "OpenJDK":http://openjdk.java.net/ , "OpenSolaris":http://opensolaris.org/, "Xen":http://xenbits.xensource.com/ , et "beaucoup d'autres":http://www.selenic.com/mercurial/wiki/index.cgi/ProjectsUsingMercurial
Pour le moment mon choix c'est porté sur Mercurial (allez savoir pourquoi). Cependant, je crois qu'avant de faire un choix définitif, il me faut apprendre à me servir des deux. Je me suis donc créé un compte sur GitHub, un sur BitBucket et un sur freeHg. GitHub et BitBucket propose tout deux une utilisation de type _premium_. Par exemple:
* "*GitHub*":http://github.com/plans propose un nombre *illimité de repository public* associé à *un nombre illimité de collaborateur* le tout avec 100MB d'espace disque. Ensuite c'est une location par mois avec une augmentation des repository privée associé à un nombre restreint de collaborateur et une augmentation de l'espace disque disponible.
* "*BitBucket*":http://www.bitbucket.org/plans/ propose lui *un repository privé* et un nombre *illimité de repository public* le tout devant tenir sur *150 MB*. Ensuite, ce sont des tarifs par MB et fonction du nombre de repository privée.
Ces deux là sont partis sur des offres payantes assez différentes. Chacune d'entre elle peut avoir sont intérêt selon les besoins.
* "*freeHg*":http://freehg.org/tos/ semble plus libre en apparence (je n'ai rien vu au sujet de ma carte bleu, à part un bouton _donate_). Par contre il impose l'utilisation de licence libre pour les projets hébergé, et décline toute responsabilité en cas de problème.
Pour être honnête, je viens de découvrir freeHg en écrivant ce billet... Je crois que tout ceci est un peu _frais_ pour moi, je vous en dirais plus quand j'aurais manipulé un peu.