<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>F.E.E.K.S</title>
	<atom:link href="http://www.feeks.org/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.feeks.org</link>
	<description>Sécurité, développement et autre joies...</description>
	<lastBuildDate>Sat, 16 Jan 2010 23:19:54 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>La réflexivité en ingénierie du logiciel&#8230;</title>
		<link>http://www.feeks.org/2010/01/14/la-reflexivite-en-ingenierie-du-logiciel/</link>
		<comments>http://www.feeks.org/2010/01/14/la-reflexivite-en-ingenierie-du-logiciel/#comments</comments>
		<pubDate>Thu, 14 Jan 2010 16:52:00 +0000</pubDate>
		<dc:creator>F-eeks</dc:creator>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[Ingénierie]]></category>
		<category><![CDATA[Course-of-action]]></category>
		<category><![CDATA[espoused theory]]></category>
		<category><![CDATA[reflective practitioner]]></category>
		<category><![CDATA[software engineering processes]]></category>
		<category><![CDATA[theory-in-use]]></category>

		<guid isPermaLink="false">http://www.feeks.org/?p=84</guid>
		<description><![CDATA[Pour bien commencer l&#8217;année, un article que nous avons rédigé en Ingénierie du Logiciel par Immersion et qui a été publié à l&#8217;EuroSPI 2009. Ce qui suit est un résumé, l&#8217;article original est accessible auprès de l&#8217;éditeur :
Article complet (anglais)
Construire un Observatoire des Cours d&#8217;Action en Ingénierie du Logiciel : Vers un lien entre la [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_83" class="wp-caption alignleft" style="width: 160px"><img class="size-full wp-image-82 alignleft" title="Un peu d'ingénierie" src="http://www.feeks.org/wp-content/uploads/2010/01/48.jpg" alt="Un peu d'ingénierie" width="150" height="100" /><p class="wp-caption-text">Crédits : photo-libre.fr</p></div>
<p>Pour bien commencer l&#8217;année, un article que nous avons rédigé en Ingénierie du Logiciel par Immersion et qui a été publié à l&#8217;EuroSPI 2009. Ce qui suit est un résumé, l&#8217;article original est accessible auprès de l&#8217;éditeur :</p>
<p style="text-align: center;"><a class="aligncenter" title="Building an Observatory of Course-of-Action in Software Engineering: Towards a Link between ISO/IEC Software Engineering Standards and a Reflective Practice" href="http://www.springerlink.com/content/p0585x64602x1304/" target="_blank">Article complet (anglais)</a></p>
<h3>Construire un Observatoire des Cours d&#8217;Action en Ingénierie du Logiciel : Vers un lien entre la norme d&#8217;Ingénierie du Logiciel ISO/ESC et une Pratique Réfléxive</h3>
<address> François-Xavier Bru , Gaëlle Frappin, Ludovic Legrand, Estéban Merrer, Sylvain Piteau, Guillaume Salou, Philippe Saliou and Vincent Ribaud </address>
<address> </address>
<p>Afin de rester compétitif dans un marché en évolution, les petites entreprises de développement logiciel peuvent s&#8217;aider d&#8217;un observatoire des aspects observables de l&#8217;activité de chaque participant. Cette analyse fournit une description de l&#8217;activité de chacun et permet d&#8217;exprimer des recommandations concernant à la fois les situations individuelles et la situation collective de l&#8217;équipe. L&#8217;observatoire proprement dit est un ensemble articulé de méthodes de collecte de données, reposant sur un wiki sémantique et une application dédiée. Une étude de cas, basée sur l&#8217;activité d&#8217;une équipe de 6 jeunes ingénieurs de développement, décrit quelques aspects de la construction et du remplissage de l&#8217;observatoire d&#8217;activités. Au vu des premiers résultats de ce travail, nous pouvons penser qu&#8217;observer et analyser l&#8217;activité d&#8217;ingénieurs de développement aide à révéler ce qui régit tacitement leur comportement face aux tâches. Ceci peut aider les ingénieurs à établir des liens entre les process utilisés pour le projet et un modèle de référence de process, et contribue à améliorer l&#8217;adéquation entre le projet en action et la norme d&#8217;ingénierie logicielle utilisée.</p>
<h3>Building an Observatory of Course-of-Action in Software Engineering: Towards a Link between ISO/IEC Software Engineering Standards and a Reflective Practice</h3>
<address>François-Xavier Bru , Gaëlle Frappin, Ludovic Legrand, Estéban Merrer, Sylvain Piteau, Guillaume Salou, Philippe Saliou and Vincent Ribaud </address>
<p>As a help to compete in an evolving market, small software companies may use an observatory of their course-of-action. The course of action considers the observable aspect of the actor’s activity. Its analysis provides a description of actors’ activity and it can express recommendations concerning both the individual situations and the collective situation. The observatory is an articulated set of data collecting methods supported with semantic wikis and a dedicated application. A case study, based on the activity of a team of 6 young software engineers, depicts some aspects of the building and the filling of the course-of-action observatory. As primary results of this work, we may think that observing and analyzing software engineer’s activity help to reveal his/her theory-in-use – what governs engineers’ behavior and tends to be tacit structures – That may help engineers to establish links between “Project Processes-in-use” and a simplified Process Reference Model and contribute to reduce the fit between a project-in-action and espoused SE standards.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.feeks.org/2010/01/14/la-reflexivite-en-ingenierie-du-logiciel/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bind9 sur Debian Lenny</title>
		<link>http://www.feeks.org/2009/05/06/bind9-sur-debian-lenny/</link>
		<comments>http://www.feeks.org/2009/05/06/bind9-sur-debian-lenny/#comments</comments>
		<pubDate>Wed, 06 May 2009 11:18:35 +0000</pubDate>
		<dc:creator>F-eeks</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[bind]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[lenny]]></category>

		<guid isPermaLink="false">http://www.feeks.org/?p=81</guid>
		<description><![CDATA[Petite note express :
Un serveur Bind sur une Debian Lenny ne marchera pas tant que cette ligne du fichier /etc/bind/named.conf.options :
listen-on { 127.0.0.1; };
N&#8217;aura pas été supprimée ou remplacée par :
listen-on { any; };
Ben oui, sinon le serveur DNS ne sera utilisable que par la machine qui l&#8217;héberge. Aucun intérêt, mais c&#8217;est la configuration par [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_82" class="wp-caption alignleft" style="width: 74px"><img class="size-full wp-image-82" title="Debian" src="http://www.feeks.org/wp-content/uploads/2009/05/openlogo-nd-50.png" alt="Debian" width="64" height="78" /><p class="wp-caption-text">Crédits : debian.org</p></div>
<p>Petite note express :</p>
<p>Un serveur Bind sur une Debian Lenny ne marchera pas tant que cette ligne du fichier /etc/bind/named.conf.options :</p>
<pre style="padding-left: 30px;">listen-on { 127.0.0.1; };</pre>
<p>N&#8217;aura pas été supprimée ou remplacée par :</p>
<pre style="padding-left: 30px;">listen-on { any; };</pre>
<p>Ben oui, sinon le serveur DNS ne sera utilisable que par la machine qui l&#8217;héberge. Aucun intérêt, mais c&#8217;est la configuration par défaut.</p>
<p>Merci aux gens des forums Kimsufi, je ne l&#8217;aurai pas trouvé tout seul ce piège-là&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.feeks.org/2009/05/06/bind9-sur-debian-lenny/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP : Le grand test</title>
		<link>http://www.feeks.org/2009/05/04/php-le-grand-test/</link>
		<comments>http://www.feeks.org/2009/05/04/php-le-grand-test/#comments</comments>
		<pubDate>Mon, 04 May 2009 13:23:16 +0000</pubDate>
		<dc:creator>F-eeks</dc:creator>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[libre]]></category>
		<category><![CDATA[MVC]]></category>
		<category><![CDATA[objet]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[template]]></category>
		<category><![CDATA[vcs]]></category>

		<guid isPermaLink="false">http://www.feeks.org/?p=36</guid>
		<description><![CDATA[Houa, ce titre fait vraiment très racoleur, on se croirait presque sur France2 avec des tas d&#8217;invités-stars !
Bref. Vous êtes un particulier, une petite entreprise ou une société de services. Vous avez créé un site web en PHP. Il est super, il répond au besoin, il y a des tas de gens qui viennent dessus, [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_37" class="wp-caption alignleft" style="width: 160px"><img class="size-thumbnail wp-image-37" title="L'éléphant PHP" src="http://www.feeks.org/wp-content/uploads/2009/04/animaux127-150x150.jpg" alt="Crédits : photo-libre.fr" width="150" height="150" /><p class="wp-caption-text">Crédits : photo-libre.fr</p></div>
<p>Houa, ce titre fait vraiment très racoleur, on se croirait presque sur France2 avec des tas d&#8217;<a href="http://accel10.mettre-put-idata.over-blog.com/0/00/83/07/PIC_0108.JPG" target="_blank">invités-stars</a> !</p>
<p>Bref. Vous êtes un particulier, une petite entreprise ou une société de services. Vous avez créé un site web en PHP. Il est super, il répond au besoin, il y a des tas de gens qui viennent dessus, tout le monde l&#8217;aime, tout le monde vous trouve génial, bref, c&#8217;est un succès.</p>
<p>Mais votre site PHP est-il bien fait ? Est-il vraiment robuste ? Est-il évolutif ? Est-ce que quelqu&#8217;un d&#8217;autre peut le maintenir sans tomber malade, sans sombrer dans une grave dépression ? Pour le savoir, positionnez votre site en le faisant rentrer dans une des catégories suivantes…</p>
<h2>Niveau 0 : Néant</h2>
<h3>&laquo;&nbsp;Pas de PHP chez moi !&nbsp;&raquo;</h3>
<h4>Résumé :</h4>
<p>Votre site reste simple. Il n&#8217;y a pas besoin de dynamiser le contenu. Vous êtes manifestement seul à le mettre à jour ; vous connaissez bien le HTML, donc vous ne rencontrez aucun problème particulier. Il y a certes des redondances, des copier-coller ici et là pour uniformiser la charte, mais cela ne vous dérange pas outre mesure.</p>
<h4>Résultat :</h4>
<p>Si vous n&#8217;avez pas besoin de plus, restez dans cet état ! Vous avez le mérite de maîtriser tous les mécanismes de votre site, sans recourir à un <a href="http://fr.wikipedia.org/wiki/Content_management_system" target="_blank">CMS</a> qui serait disproportionné par rapport à vos besoins.</p>
<h4>Organisation type :</h4>
<pre style="padding-left: 30px;">+ www/
  - index.html
  - menu.html
  - article.html</pre>
<h2>Niveau 1 : Scripts dispersés</h2>
<h3>&laquo;&nbsp;Je suis un débutant un peu perdu&nbsp;&raquo;</h3>
<h4>Résumé :</h4>
<p>Votre site a commencé au niveau 0. Mais à partir d&#8217;un moment, par je ne sais quelle folie, vous avez voulu rajouter quelques fantaisies, comme afficher la date du jour, ou compter le nombre de visiteurs. Certes, cela donne immédiatement une <a href="http://www.bellapix.com/STORAGE2/BELLAPIX/ALBUMS/USER43/USER435b/USER435b488d63ed3/images/100_6668.jpg" target="_blank">classe folle</a> à votre site, mais attention : vous venez de rentrer dans l&#8217;engrenage sans fin d&#8217;un site en PHP !</p>
<p>Vous avez tout d&#8217;abord inséré en plein milieu de votre code HTML des petits bouts de code trouvés de-ci, de-là lors de vos pérégrinations sur l&#8217;Internet. Puis vous avez commencé à apprendre la syntaxe de PHP, sans trop vous préoccuper de futilités comme le typage, l&#8217;indentation, les commentaires, MVC, la POO, etc. Vous avez rajouté vos propres morceaux de code, pour par exemple permettre aux visiteurs de s&#8217;inscrire, de laisser des commentaires ou de participer au contenu.</p>
<h4>Résultat :</h4>
<p>Votre site est un sacré bazar. Il a pris plus d&#8217;ampleur que ce que vous n&#8217;aviez prévu au début, et maintenant vous avez sur les bras tout plein de bouts de ficelles raccordés les uns aux autres. D&#8217;ailleurs, vous avez laissé tomber et votre site est à l&#8217;abandon.</p>
<h4>Organisation type :</h4>
<pre style="padding-left: 30px;">+ www/
  - index.php
  - script_kikoo_by_PHPCS.php
  - menu.php3
  - article.php4</pre>
<h2>Niveau 2 : Scripts factorisés</h2>
<h3>&laquo;&nbsp;Je suis un amateur, mais avisé&nbsp;&raquo;</h3>
<h4>Résumé :</h4>
<p>Dégoûté par votre expérience du niveau 1, vous avez décidé de faire un brin de refactoring, en rassemblant toutes vos précédentes petites horreurs en un seul endroit. Organisées en fonctions distinctes, vous venez de créer une vraie petite bibliothèque de fonctions !</p>
<p>Désormais, vous avez un gros fichier avec une nom très cool, comme &laquo;&nbsp;fonctions.php&nbsp;&raquo;, qui contient tous vos traitements PHP. Du coup, vos pages HTML se contentent d&#8217;appeler les fonctions qui leur plaisent, et c&#8217;est tout de suite plus lisible. En plus, cela vous a permis de factoriser un peu certaines redondances, comme les connexions à la base de données.</p>
<h4>Résultat :</h4>
<p>Vous avez bien rattrapé le coup, votre code redevient à peu près maintenable. En revanche, votre fichier faisant office de bibliothèque devient de plus en plus long. Mais cela ne vous perturbe pas, vous avez <a href="http://www.vim.org/" target="_blank">le dernier éditeur à la mode</a> qui permet de &laquo;&nbsp;collapser&nbsp;&raquo; les fonctions à volonté !</p>
<h4>Organisation type :</h4>
<pre style="padding-left: 30px;">+ www/
  - index.php
  - menu.php
  - article.php
  - fonctions.php</pre>
<h2>Niveau 3 : Mi-script, mi-objet</h2>
<h3>&laquo;&nbsp;Je suis un gros cool avec mon PHP et mes objets partout&nbsp;&raquo;</h3>
<h4>Résumé :</h4>
<p>Très satisfait des progrès apportés par votre passage au niveau 2, vous avez décidé de ne pas vous arrêter en si bon chemin. D&#8217;ailleurs, vous venez de lire sur <a href="http://www.siteduzero.com" target="_blank">un site quelconque plutôt mauvais</a> que la programmation orientée objet, c&#8217;est ou&#8217;achement bien. Il paraît que cet oiseau là il permet de faire du code clair, structuré, réutilisable et donc… maintenable ! En plus, c&#8217;est la grosse nouveauté de PHP5, alors c&#8217;est forcément à la mode !</p>
<p>Ni une, ni deux, vous foncez sur <a href="http://www.siteduzero.com/tutoriel-3-115140-introduction-a-la-poo.html" target="_blank">un tutoriel plutôt mauvais pris au hasard</a>, et paf ! Vous devenez expert en POO (même si c&#8217;est marqué que non). Vous rajoutez des classes à droite, à gauche, portant des noms qui prouvent que vous avez porté une attention toute particulière à la modélisation : &laquo;&nbsp;class PageAccueil {}&nbsp;&raquo;, &laquo;&nbsp;class FonctionsDiverses {}&nbsp;&raquo;, &laquo;&nbsp;class MotDePasse {}&nbsp;&raquo;. Par la même occasion, vous avez rempli la racine de votre site avec une multitude de nouveaux fichiers aux noms fumeux, qui contiennent vos classes fraîchement créées.</p>
<h4>Résultat :</h4>
<p>Vous ne voyez pas l&#8217;intérêt de faire de l&#8217;objet par rapport à votre bonne vieille bibliothèque. Vous êtes bien embêté car vous avez l&#8217;impression que quelque chose ne va pas, que quelque chose cloche dans votre &laquo;&nbsp;architecture&nbsp;&raquo;, bref, que tout ça n&#8217;est pas très logique. En plus, vous vous retrouvez avec pleins de fichiers. Votre code est redevenu immaintenable.</p>
<h4>Organisation type :</h4>
<pre style="padding-left: 30px;">+ www/
  - index.php
  - PageAccueil.php
  - mot_de_passe.class.php
  - fonctionsDiverses.php
  - article.php
  - menu.php</pre>
<h2>Niveau 4 : Objet</h2>
<h3>&laquo;&nbsp;Les objets, c&#8217;est mon dada&nbsp;&raquo;</h3>
<h4>Résumé :</h4>
<p>Après plusieurs périodes de dépression impliquées par votre passage par le niveau 3, vous avez décidé d&#8217;apprendre la programmation orientée objet autrement qu&#8217;en lisant simplement la syntaxe d&#8217;une classe en PHP. Vous avez alors découvert de nouveaux horizons, et vous rigolez bien en lisant votre code de niveau 3 : &laquo;&nbsp;Haha, comment j&#8217;étais un gros naze&nbsp;&raquo;.</p>
<p>Typiquement, vous êtes un étudiant qui a appris le Java ou le C++ en cours, et vous vous êtes acheté un livre sur le PHP, parce-qu&#8217;à après tout, tout cela se ressemble drôlement.</p>
<p>Vous avez donc entièrement ré-écrit votre code PHP. Vous avez désormais des classes qui représent quelque chose de concret : &laquo;&nbsp;class Utilisateur {}&nbsp;&raquo;, &laquo;&nbsp;class BaseDeDonnees {}&nbsp;&raquo;, &laquo;&nbsp;class Article {}&nbsp;&raquo; etc. Comble du luxe, vous avez même fait du <a href="http://fr.wikipedia.org/wiki/Polymorphisme_(informatique)" target="_blank">polymorphisme</a>, avec des tas d&#8217;héritages, de surcharges et de redéfinitions. Vous avez rassemblé tout ça dans un répertoire &laquo;&nbsp;class&nbsp;&raquo; pour faire plus propre.</p>
<h4>Résultat :</h4>
<p>Votre code ressemble de nouveau à quelque chose. Vous êtes satisfait de votre modèle objet ; il est clair, logique et bien commenté. Toutes mes félicitations.</p>
<h4>Organisation type :</h4>
<pre style="padding-left: 30px;">+ www/
  - index.php
  - menu.php
  + class/
    - BaseDeDonnees.class.php
    - Utilisateur.class.php
    - Administrateur.class.php
    - Article.class.php
  - article.php</pre>
<h2>Niveau 5 : Modèle, Vue et Contrôleur</h2>
<h3>&laquo;&nbsp;Du HTML dans du PHP, ou du PHP dans du HTML ?&nbsp;&raquo;</h3>
<h4>Résumé :</h4>
<p>Maintenant que vous avez passé le niveau 4 et que votre modèle objet est sans défauts, vous jetez un oeil du côté de votre code HTML. Et là, vous vous posez une question existentielle : &laquo;&nbsp;Pourquoi c&#8217;est illisible ?&nbsp;&raquo;. En effet, vous voyez des tas de if/else, de boucles, d&#8217;appels de méthodes, de créations d&#8217;objets éparpillés au milieu de balises HTML. À d&#8217;autres endroits, c&#8217;est l&#8217;inverse : des tas d&#8217;&nbsp;&raquo;echo&nbsp;&raquo; qui génèrent du code HTML, ce qui rend la structure de la présentation parfaitement incompréhensible.</p>
<p>Alors, qu&#8217;est-ce qu&#8217;il faut faire ? Du PHP dans du HTML, ou du HTML dans du PHP ? Et bien je vais vous le dire : du PHP dans du HTML. Sinon, il est inutile de faire du PHP, n&#8217;importe quel langage avec CGI serait beaucoup plus adapté. L&#8217;avantage de PHP étant en effet de pouvoir s&#8217;intégrer directement dans le code source d&#8217;une page web. Les &laquo;&nbsp;echo(&laquo;&nbsp;&lt;h1&gt;Coin coin&lt;/h1&gt;&nbsp;&raquo;)&nbsp;&raquo; sont donc à bannir ! Bien sûr, il est quand même nécessaire pour la lisibilité de minimiser les appels PHP dans votre page web, en créant un maximum de classes/méthodes dans des fichiers à part.</p>
<p>Par exemple, tous les traitements qui suivent la validation d&#8217;un formulaires sont beaucoup mieux en dehors du fichier de la page HTML. De même, toutes les variables calculées utilisées dans la page seront aussi bien dans un fichier PHP à part, qui affichera ensuite la page HTML en lui passant les variables en paramètre (par exemple).</p>
<h4>Résultat :</h4>
<p>Bravo ! Sans vous en rendre compte, vous avez appliqué la structure <a href="http://fr.wikipedia.org/wiki/Mod%C3%A8le-Vue-Contr%C3%B4leur" target="_blank">MVC </a>à votre site ! Votre modèle objet est bien séparé de votre vue HTML, elle-même séparée des différents traitements de contrôle.</p>
<h4>Organisation type :</h4>
<pre style="padding-left: 30px;">+ www/
  - index.php
  + modele/
    - BaseDeDonnees.class.php
    - Utilisateur.class.php
    - Administrateur.class.php
    - Article.class.php
  + vue/
    - article.php
    - menu.php
    - edition.php
  + controleur/
    - article.ctrl.php
    - menu.ctrl.php
    - identification.ctrl.php</pre>
<h2>Niveau 6 : Collaboratif</h2>
<h3>&laquo;&nbsp;Je me sens un peu seul&nbsp;&raquo;</h3>
<h4>Résumé :</h4>
<p>Maintenant que vous avez séparé le modèle de la vue du contrôleur (!), il devient assez simple pour n&#8217;importe qui de venir vous aider. On peut très bêtement imaginer trois personnes travaillant sur votre site : la première se charge du modèle, la deuxième du contrôleur et la troisième de la vue.</p>
<p>Et bien en fait, cela ne marche pas. Le modèle n&#8217;est pas amené à beaucoup changer, donc il y aura deux personnes sur le contrôleur. Et quand les interfaces seront terminées, il y aura trois personnes travaillant possiblement sur le même fichier. Soit vous jouez à celui qui enregistrera le fichier en dernier, soit vous utilisez un <a href="http://fr.wikipedia.org/wiki/Logiciel_de_gestion_de_versions" target="_blank">VCS</a> <a href="http://subversion.tigris.org/" target="_blank">pas trop mal bien que discutable</a>. Vous optez pour la deuxième solution, et tout devient plus simple : vous pouvez tous envoyer allègrement vos modifications sans craindre des conflits insolubles, revenir à une ancienne version, faire des développements parallèles, visualiser l&#8217;historique des modifications et <a href="http://svnbook.red-bean.com/en/1.0/re02.html" target="_blank">plein d&#8217;autres choses</a> encore.</p>
<p>Par la même occasion, vous utilisez un &laquo;&nbsp;<a href="http://fr.wikipedia.org/wiki/Syst%C3%A8me_de_suivi_de_probl%C3%A8mes" target="_blank">bugtracker</a>&nbsp;&raquo; pour permettre aux utilisateurs de remonter les problèmes, pour vous répartir les tâches à faire et pour en discutailler joyeusement (au lieu de travailler).</p>
<h4>Résultat :</h4>
<p>C&#8217;est bien. Vous êtes plusieurs, vous allez plus vite.</p>
<h4>Organisation type :</h4>
<pre style="padding-left: 30px;">+ trunk/
  + modele/
  + vue/
  + controleur/
+ branches/
+ tags/</pre>
<h2>Niveau 7 : Templates</h2>
<h3>&laquo;&nbsp;Les &lt;?php &#8230; ?&gt; c&#8217;est rigolo 5 minutes&nbsp;&raquo;</h3>
<h4>Résumé :</h4>
<p>Vous avez admiré votre strucutre MVC pendant des semaines durant, et maintenant vous êtes un peu lassé. Vous voulez aller plus loin. D&#8217;ailleurs, vous trouvez que votre code HTML n&#8217;est pas encore assez séparé du code PHP, et que certaines parties de votre contrôleur (celles qui appellent les pages HTML), pourraient être automatisées. En fait, vous voudriez que votre code HTML ne soit plus qu&#8217;un squelette, un gabarit&#8230; bref : un <a href="http://fr.wikipedia.org/wiki/Template" target="_blank">template</a>. Et parfois même, vous vous surprenez à rêver d&#8217;un système de cache qui accélèrerait l&#8217;affichage de vos pages pour vos visiteurs.</p>
<p>Il vous faut donc un moteur de template ! Vous en prenez <a href="http://www.smarty.net/" target="_blank">un au hasard</a>, lisez un minimum de documentation et paf ! C&#8217;est fini. Puisque vous aviez déjà séparé au maximum le PHP du HTML, en réduisant le PHP dans le HTML à de simples appels de fonctions, la transition a été immédiate.</p>
<h4>Résultat :</h4>
<p>Votre code a tout de suite une allure beaucoup plus scintillante. Et désormais, n&#8217;importe quel <a href="http://upload.wikimedia.org/wikipedia/commons/7/79/Lacroix_rip_juillet08.jpg" target="_blank">designer</a> pourra relooker vos pages sans avoir à se soucier une seule seconde de votre code PHP !</p>
<h4>Organisation type :</h4>
<pre style="padding-left: 30px;">+ www/
  - index.php
  + modele/
    - BaseDeDonnees.class.php
    - Utilisateur.class.php
    - Administrateur.class.php
    - Article.class.php
  + smarty/
  + vue/
    - article.tpl
    - menu.tpl
    - edition.tpl
  + controleur/
    - article.ctrl.php
    - menu.ctrl.php
    - identification.ctrl.php</pre>
<h2>Niveau 8 : Framework</h2>
<h3>&laquo;&nbsp;Marre de réinventer la roue (carrée)&nbsp;&raquo;</h3>
<h4>Résumé :</h4>
<p>Voilà maintenant longtemps que votre site est en ligne. Au fur et à mesure de vos développements, vous vous êtes aperçu que certaines parties auraient pu être générées, car elles sont en fait très classiques. Par exemple : vos classes de gestion des utilisateurs, des identifications, etc. et les requêtes à la base de données correspondantes.</p>
<p>Par ailleurs, vous aimeriez être guidé pour vos développements futurs afin de mettre en place les &laquo;&nbsp;<a href="http://en.wikipedia.org/wiki/Best_practices" target="_blank">best-practices</a>&nbsp;&raquo; qui ont fait leur preuves, et non plus vos propres conventions que vous seul connaissez.</p>
<p>Vous décidez donc d&#8217;utiliser <a href="http://www.symfony-project.org/" target="_blank">un framework rien chouette</a> ! En trois coups de cuillère à pot, vous indiquez <em>via</em> <a href="http://fr.wikipedia.org/wiki/Yaml" target="_blank">yaml</a>, <a href="http://fr.wikipedia.org/wiki/Xml" target="_blank">xml </a>ou autre le modèle de votre architecture, et le bazar vous génère tout comme un grand ! Il ne vous reste plus qu&#8217;à compléter avec vos morceaux de codes spécifiques, la plupart des traitements étant déjà implémentés pour vous. De plus, le framework vous propose des tas de facilités, comme des appels Ajax simplifiés. La classe américaine quoi.</p>
<h4>Résultat :</h4>
<p>Votre code est devenu terriblement agréable à lire. Le framework vous a forcé à faire les choses de la meilleure façon, la plupart des traitements complexes sont cachés, la structure est claire et compréhensible.</p>
<h4>Organisation type :</h4>
<pre>+ www/
  + sf_sandbox/
    + apps/
      + frontend/
    + cache/
    + config/
    + data/
    + doc/
    + lib/
    + log/
    + plugins/
    + test/
    + web/
      + css/
      + images/
      + js/</pre>
<p>(Qui a dit que j&#8217;ai tout <a href="http://www.symfony-project.org/tutorial/1_2/my-first-project" target="_blank">lâchement copié/collé</a> ?)</p>
<h2>Niveau 9 : Utilisateur</h2>
<h3>&laquo;&nbsp;C&#8217;est déjà fait et c&#8217;est mieux&nbsp;&raquo;</h3>
<h4>Résumé :</h4>
<p>Vous venez de découvrir qu&#8217;un système déjà tout prêt fait exactement la même chose que votre site. Mais en mieux. Et en plus joli. Et en moins buggé. Du coup, vous téléchargez (ou achetez ?) le <a href="http://fr.wikipedia.org/wiki/Content_management_system" target="_blank">CMS</a>/<a href="http://fr.wikipedia.org/wiki/Blog" target="_blank">Blog</a>/<a href="http://fr.wikipedia.org/wiki/Wiki">Wiki</a>/<a href="http://fr.wikipedia.org/wiki/Progiciel_de_gestion_int%C3%A9gr%C3%A9" target="_blank">ERP</a> qui fait ce dont vous avez besoin. Comble du luxe, vous pouvez y adjoindre des modules pour qu&#8217;il fasse <a href="http://drupal.org/project/blocks404" target="_blank">des choses </a>auxquelles vous n&#8217;auriez jamais pensé.</p>
<h4>Résultat :</h4>
<p>C&#8217;est l&#8217;idéal : vous n&#8217;avez plus de code à maintenir ! Vous utilisez le logiciel en tant qu&#8217;utilisateur, comme une boîte noire. Vous n&#8217;avez plus à vous souciez de rien, sauf de votre contenu. Vous gagnez en tout, et surtout en temps.</p>
<h4>Organisation type :</h4>
<pre style="padding-left: 30px;">+ www
  - wordpress</pre>
<p>(Oui, je me foule de moins en moins).</p>
<h2>Niveau 10 : Logiciel Libre</h2>
<h3>&laquo;&nbsp;Je suis libre d&#8217;utiliser, d&#8217;étudier, de modifier et de redistribuer&nbsp;&raquo;</h3>
<h4>Résumé :</h4>
<p>Le logiciel que vous avez choisi au niveau 9 est <a href="http://www.gnu.org/philosophy/free-sw.html" target="_blank">libre</a>. Joie ! Quand certaines fonctionnalités manquent pour votre site, vous pouvez les ajouter, et même en faire profiter la communauté !</p>
<p>Mieux : c&#8217;est votre logiciel (celui qui date du niveau 0 et que vous avez rendu open-source), que les gens utilisent, étudient, modifient et redistribuent ! Vous êtes devenu une sorte de guru du logiciel libre. Félicitations.</p>
<h4>Résultat :</h4>
<p>Vous avez tout compris, vous êtes trop fort. Vous êtes l&#8217;avenir de l&#8217;informatique.</p>
<h4>Organisation type :</h4>
<p>(Heu, ça dépend)</p>
<h2>Et voilà</h2>
<p>Comme dirait l&#8217;instructeur de tir : &laquo;&nbsp;Au résultat !&nbsp;&raquo;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.feeks.org/2009/05/04/php-le-grand-test/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Un chronomètre pour le Nokia 5800 XpressMusic</title>
		<link>http://www.feeks.org/2009/04/16/un-chronometre-pour-le-nokia-5800-xpressmusic/</link>
		<comments>http://www.feeks.org/2009/04/16/un-chronometre-pour-le-nokia-5800-xpressmusic/#comments</comments>
		<pubDate>Thu, 16 Apr 2009 18:37:48 +0000</pubDate>
		<dc:creator>F-eeks</dc:creator>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[chronomètre]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[midp]]></category>
		<category><![CDATA[nokia 5800 xpressmusic]]></category>
		<category><![CDATA[stopwatch]]></category>
		<category><![CDATA[touchemon5800]]></category>

		<guid isPermaLink="false">http://www.feeks.org/?p=44</guid>
		<description><![CDATA[Hop, d&#8217;emblée et sans introduction (elle viens après car elle n&#8217;intéresse personne) :
Télécharger l&#8217;application ToucheMonChrono pour Nokia 5800 XpressMusic.
Note pour les utilisateurs d&#8217;Internet Explorer : votre imbécile de navigateur ne comprend rien et renomme en douce le fichier en *.zip. Ne vous laissez pas faire et renommez-le en *.jar une fois téléchargé !
Ensuite l&#8217;application s&#8217;installe [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_46" class="wp-caption alignleft" style="width: 160px"><img class="size-thumbnail wp-image-46" title="Nokia 5800 XpressMusic" src="http://www.feeks.org/wp-content/uploads/2009/04/nokia-5800-xpressmusic1-150x150.jpg" alt="Crédit : mea.nokia.com" width="150" height="150" /><p class="wp-caption-text">Crédit : mea.nokia.com</p></div>
<p>Hop, d&#8217;emblée et sans introduction (elle viens après car elle n&#8217;intéresse personne) :</p>
<p><a href="http://www.feeks.org/wp-content/uploads/2009/04/touchemonchrono.jar" target="_blank">Télécharger l&#8217;application ToucheMonChrono pour Nokia 5800 XpressMusic</a>.</p>
<p><span style="text-decoration: underline;">Note pour les utilisateurs d&#8217;Internet Explorer</span> : votre imbécile de navigateur ne comprend rien et renomme en douce le fichier en *.zip. Ne vous laissez pas faire et renommez-le en *.jar une fois téléchargé !</p>
<p>Ensuite l&#8217;application s&#8217;installe bêtement avec le logiciel PC Suite de Nokia. Promi plus tard je ferai un article plus détaillé avec les sources et les trucs à savoir pour bien faire une application JavaME/MIDP. Ho et puis non, pas promi. Peut-être.</p>
<p>Voilà, on peux commencer. Donc. Je me suis acheté il y a peu avec mes petits sous <a href="http://www.nokia.fr/A41299038" target="_blank">un smartphone, pas trop cher et plutôt bien équipé</a>. Vous trouverez plus d&#8217;informations sur <a href="http://touchemon5800.canalblog.com/" target="_blank">un blog pas trop prétentieux que j&#8217;aime bien</a> : le bloggeur (Nicolas) n&#8217;est pas un <a href="http://ktheory.com/archives/gwbush-phone.jpg" target="_blank">expert en téléphonie </a>mobile, juste un passionné de Nokia qui passe un temps fou à entretenir un blog amateur et à répondre à tous les emails qu&#8217;on lui envoie. Chapeau.</p>
<p>Mais il manque à ce téléphone une application toute bête : un chronomètre ! Du coup je me suis retrouvé bien embêté le jour où j&#8217;ai voulu répéter une présentation en public qui ne devait pas dépasser 10 minutes. Qu&#8217;à cela ne tienne, j&#8217;ai développé moi-même un petit chronomètre basique, mais fonctionnel. Certes, il existe déjà pléthore de chronomètres écrits en Java qui doivent fonctionner sur ce smartphone. Mais le Nokia 5800 a une résolution très particulière ainsi qu&#8217;un écran tactile, alors il serait dommage de se contenter d&#8217;un affichage minuscule et de petits boutons. Il existe aussi des chronomètres adaptés au Nokia 5800, mais ils sont payants. Oui, je trouve ça stupide de payer pour un bête chronomètre. Bon d&#8217;accord trêve d&#8217;excuses bidon, la vraie raison c&#8217;est que j&#8217;avais envie de faire un truc en JavaME/MIDP.</p>
<p>Donc voilà une petite application de chronomètre, pas très avancée mais bon. La version en téléchargement plus haut est estampillée &laquo;&nbsp;touchemon5800.canalblog.com&nbsp;&raquo;, histoire de faire un petit geste pour le fameux Nicolas. Bref. Voilà un petit screenshot :</p>
<p>(Ha ben non en fait, pas de screenshot. Mon appareil photo a l&#8217;air de faire grêve. Bon c&#8217;est pas grave, cela m&#8217;aura quand même fais passer un coup de chiffon sur l&#8217;écran de mon téléphone, qui avait l&#8217;air d&#8217;avoir été astiqué à coups de couennes de jambon de campagne.)</p>
<p>Mode d&#8217;emploi express (=bâclé) :</p>
<p>Pour lancer le chronomètre, on appui sur le triangle, pour le mettre en pause sur les deux barres verticales et pour le remettre à zéro surle carré. Si on appuie sur le texte du temps, le marqueur juste en-dessous se met à jour. Si on bascule le téléphone en mode paysage, l&#8217;affichage s&#8217;adapte (à son rythme, faut pas être trop pressé). On peut changer de couleur à la volée : bleu, rouge ou argent (les trois coloris actuels du smartphone, oui ça ne sert à rien). Ha oui, et les millisecondes sont surtout là pour rigoler, le téléphone n&#8217;a pas l&#8217;air de supporter trop de raffraîchissements avec du Java&#8230; logique.</p>
<p>Voilà, bon c&#8217;est pas très intéressant mais un jour je ferai un article sur les détails plus techniques.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.feeks.org/2009/04/16/un-chronometre-pour-le-nokia-5800-xpressmusic/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>La documentation selon Microsoft</title>
		<link>http://www.feeks.org/2009/04/09/la-documentation-selon-microsoft/</link>
		<comments>http://www.feeks.org/2009/04/09/la-documentation-selon-microsoft/#comments</comments>
		<pubDate>Thu, 09 Apr 2009 14:51:14 +0000</pubDate>
		<dc:creator>F-eeks</dc:creator>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[documentation]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[vba]]></category>

		<guid isPermaLink="false">http://www.feeks.org/?p=13</guid>
		<description><![CDATA[Il m&#8217;arrive de développer avec des technologies Microsoft. Ce n&#8217;est pas que ça me plaise particulièrement, mais quand on me le demande gentiment je ne refuse pas.
Il arrive même que ces technologies soient plutôt agréables à utiliser. La plateforme .NET ne manque pas de charme par certains aspects. Il faut bien l&#8217;avouer. Et puis surtout, [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_32" class="wp-caption alignleft" style="width: 160px"><img class="size-thumbnail wp-image-32" title="Documentation" src="http://www.feeks.org/wp-content/uploads/2009/04/13a-150x150.jpg" alt="crédits : photo-libre.fr" width="150" height="150" /><p class="wp-caption-text">Crédits : photo-libre.fr</p></div>
<p>Il m&#8217;arrive de développer avec des technologies Microsoft. Ce n&#8217;est pas que ça me plaise particulièrement, mais quand <a href="http://www.depresdeloin.eu/wp-content/uploads/argent.jpg" target="_blank">on me le demande gentiment</a> je ne refuse pas.</p>
<p>Il arrive même que ces technologies soient plutôt agréables à utiliser. La plateforme .NET ne manque pas de charme par certains aspects. Il faut bien l&#8217;avouer. Et puis surtout, elle est bien documentée. <a href="http://msdn.microsoft.com/fr-fr/default.aspx" target="_blank">Le site MSDN</a> est vraiment complet, on y trouve à peu près tout ce qu&#8217;on cherche.</p>
<p>Sauf si on utilise un langage <a href="http://www.youhumour.com/123Images/contenu/minet.jpg" target="_blank">un peu démodé</a>. Par exemple : VB6. Et oui, MSDN ne parle que de VB10. &laquo;&nbsp;Places au jeunes !&nbsp;&raquo;. Et du coup, on est bien embêté.  Et il faut faire avec les moyens du bord quand il s&#8217;agit de se documenter sur une fonction particulière.</p>
<p>Une première solution consiste à utiliser <a href="http://www.google.fr" target="_blank">un moteur de recherche douteux</a> pour trouver ce dont on a besoin. Le risque est de voir apparaître 95% des résultats pointant vers <a href="http://www.vbfrance.com/" target="_blank">des sites pas cool du tout</a>, avec des gens qui &laquo;&nbsp;postent leur premier code source alors soyez indulgents&nbsp;&raquo;, et d&#8217;autres qui critiquent mais qui manifestement ne s&#8217;y connaissent pas plus.</p>
<p>Une deuxième solution est de se souvenir qu&#8217;à une époque <a href="http://histoire.info.online.fr/images/eniac4.jpeg" target="_blank">l&#8217;Internet était lent et peu garni</a>. Du coup, les gens regardaient dans la rubrique &laquo;&nbsp;Aide&nbsp;&raquo; du logiciel. Pour VB6, cette documentation est très bien intégrée à l&#8217;IDE Visual Basic. Il suffit de faire un clic-droit sur la fonction qui nous intrigue, de cliquer sur &laquo;&nbsp;Définition&nbsp;&raquo;, et paf une documentation, sommaire mais pratique, s&#8217;affiche.</p>
<p>Sauf que dans certains cas, on y découvre des plaisanteries typiquement Microsoft : par exemple si on cherche la documentation de la méthode &laquo;&nbsp;Hide&nbsp;&raquo; des Forms.</p>
<div id="attachment_27" class="wp-caption aligncenter" style="width: 456px"><img class="size-full wp-image-27" title="Impossible d'aller à Hide qui est caché" src="http://www.feeks.org/wp-content/uploads/2009/04/plop14.png" alt="&quot;Impossible d'aller à Hide qui est caché&quot;" width="446" height="317" /><p class="wp-caption-text">&quot;Impossible d&#39;aller à Hide qui est caché&quot;</p></div>
<p>C&#8217;est d&#8217;une logique implacable. Hélas, si on essaie avec la méthode &laquo;&nbsp;Show&nbsp;&raquo;, le résultat ne prend pas un air plus intelligent :</p>
<div id="attachment_28" class="wp-caption aligncenter" style="width: 434px"><img class="size-full wp-image-28" title="Impossible d'aller à Show qui est caché" src="http://www.feeks.org/wp-content/uploads/2009/04/plop21.png" alt="&quot;Impossible d'aller à Show qui est caché&quot;" width="424" height="315" /><p class="wp-caption-text">&quot;Impossible d&#39;aller à Show qui est caché&quot;</p></div>
<p>Nous voilà bien avancé maintenant.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.feeks.org/2009/04/09/la-documentation-selon-microsoft/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>On installe un blog et on devient un gros cool.</title>
		<link>http://www.feeks.org/2009/04/08/on-installe-un-blog-et-on-devient-un-gros-cool/</link>
		<comments>http://www.feeks.org/2009/04/08/on-installe-un-blog-et-on-devient-un-gros-cool/#comments</comments>
		<pubDate>Wed, 08 Apr 2009 12:30:35 +0000</pubDate>
		<dc:creator>F-eeks</dc:creator>
				<category><![CDATA[Logiciel Libre]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[ovh]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.feeks.org/?p=3</guid>
		<description><![CDATA[Je confirme : n&#8217;importe qui peut créer un blog aujourd&#8217;hui. Même moi.
Mais en fait, il y a trop de choix quand on arrive au moment de choisir la plate-forme. Enfin, je dis trop mais en fait c&#8217;est bien. Si on avait pas de choix je râlerai encore plus. De toutes manières, je râle sans arrêt.
Il [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_5" class="wp-caption alignleft" style="width: 160px"><img class="size-thumbnail wp-image-5" src="http://www.feeks.org/wp-content/uploads/2009/04/421-150x150.jpg" alt="Installer un blog avec WordPress et OVH, c'est facile." width="150" height="150" /><p class="wp-caption-text">Crédits : photo-libre.fr</p></div>
<p>Je confirme : n&#8217;importe qui peut créer un blog aujourd&#8217;hui. Même moi.</p>
<p>Mais en fait, il y a trop de choix quand on arrive au moment de choisir la plate-forme. Enfin, je dis trop mais en fait c&#8217;est bien. Si on avait pas de choix je râlerai encore plus. De toutes manières, je râle sans arrêt.</p>
<p>Il y a d&#8217;un côté les blogs &laquo;&nbsp;clefs en main&nbsp;&raquo;. Il sont hébergés gratuitement et en trois clics le blog est en ligne, tout prêt à être rempli d&#8217;articles passionnants. C&#8217;est ce qu&#8217;il y a de plus rapide et de moins cher. C&#8217;est même ce qu&#8217;a choisi <a href="http://torvalds-family.blogspot.com/" target="_blank">Linus Torvald</a>. Et il s&#8217;y connaît.</p>
<p>Au menu, on a du choix :</p>
<ul>
<li><a href="http://www.blogspot.com" target="_blank">Blogspot</a>,</li>
<li><a href="http://www.over-blog.com" target="_blank">OverBlog</a>,</li>
<li><a href="http://www.canalblog.com" target="_blank">Canalblog</a>,</li>
<li><a href="http://www.hautetfort.com" target="_blank">Hautetfort</a>,</li>
<li><a href="http://www.oldiblog.com" target="_blank">Oldiblog</a>,</li>
<li><a href="http://www.blogger.com" target="_blank">Blogger</a></li>
<li>etc.</li>
</ul>
<p>Et puis il y a de l&#8217;autre côté les blogs &laquo;&nbsp;clefs en main&nbsp;&raquo;. C&#8217;est fou, tout est &laquo;&nbsp;clefs en main&nbsp;&raquo;. Sauf que ceux-ci ne proposent pas d&#8217;hébergement, ils proposent &laquo;&nbsp;juste&nbsp;&raquo; le programme du blog. A nous de l&#8217;installer et de l&#8217;héberger.</p>
<p>Rien de bien compliqué, en quelques clics on s&#8217;offre  un hébergeur et un domaine chez <a href="http://www.ovh.com" target="_blank">quelqu&#8217;un de pas trop mal</a>. On peut même héberger le site chez soi, parce-qu&#8217;après tout un blog n&#8217;a pas besoin de 500 Go de bande passante. Hop, on fais glisser le blog par FTP avec <a href="http://www.konqueror.org/" target="_blank">un logiciel un peu pratique</a>, et trois clics et demi plus tard le blog est créé, prêt à être rempli avec des articles passionnants.</p>
<p>Là aussi, il y a du choix. Mais il y a surtout :</p>
<ul>
<li><a href="http://fr.dotclear.org" target="_blank">Dotclear</a>,</li>
<li><a href="http://www.wordpress-fr.net" target="_blank">WordPress</a>.</li>
</ul>
<p>N&#8217;étant pas vraiment pour le <a href="http://fr.wikipedia.org/wiki/Cloud_computing" target="_blank">cloud-computing</a>, j&#8217;ai choisi d&#8217;héberger moi-même le blog. Et même d&#8217;utiliser WordPress. Ne cherchez pas pourquoi il y a un &laquo;&nbsp;même&nbsp;&raquo; dans la phrase précédente : je serai incapable de vous dire qui est le plus fort en Dotclear et WordPress.</p>
<p>Et voilà ! Il ne reste plus qu&#8217;à se fendre d&#8217;un thème qui va faire passer le blog au rang d&#8217;oeuvre d&#8217;art, et le tour est joué. Le thème que j&#8217;ai choisi est au top, parce-qu&#8217;il propose une barre en haut avec un texte libre.</p>
<p>En plus, cette barre n&#8217;accepte pas les apostrophes. Ou plutôt : elle les accepte volontiers, mais elle rajoute <a href="http://fr.php.net/manual/fr/function.addslashes.php" target="_blank">astucieusement</a> des anti-slashs avant pour pour pouvoir les enregistrer dans la base de données sans tout casser. Et évidemment, rajouter des anti-slashs, c&#8217;est bien. Mais penser à les <a href="http://fr.php.net/manual/fr/function.stripslashes.php" target="_blank">enlever pour l&#8217;affichage</a>, c&#8217;est mieux.</p>
<p>Du coup, il faut ruser. Bon d&#8217;accord, il faut bricoler, en remplaçant toutes les apostrophes par leur entité HTML correspondante : &amp;apos;. C&#8217;est pas terrible, mais cela fonctionne.  Tous les navigateurs comprennent, sauf devinez qui ? Bien vu : Internet Explorer ! Cet imbécile affiche &amp;apos; et ne veut rien entendre. Et bien tant pis, vous n&#8217;avez qu&#8217;à utiliser un navigateur civilisé.</p>
<p>Bon, voilà pour un premier article. Je suis d&#8217;accord : il n&#8217;a aucun intérêt. Ce que j&#8217;ai dis, tout le monde le sait. Mais c&#8217;est pas grave personne ne lit mon blog. C&#8217;est une sorte de blog intime. Pour les prochaines fois, ce sera peut-être plus intéressant. Ou alors il n&#8217;y aura pas de prochaine fois, et ce sera <a href="http://nulle.part.free.fr/des_bidules/blog/" target="_blank">un blog mort</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.feeks.org/2009/04/08/on-installe-un-blog-et-on-devient-un-gros-cool/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
