<?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>VieSurIP &#187; Développement</title>
	<atom:link href="http://www.viesurip.fr/tag/developpement/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.viesurip.fr</link>
	<description>Mes idées, mes projets, mes observations sur internet, les réseaux, et l&#039;informatique</description>
	<lastBuildDate>Mon, 29 Mar 2010 13:58:38 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>fr</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Surveillance de trafic avec accélération matérielle : NetFPGA</title>
		<link>http://www.viesurip.fr/2010/03/29/netfpga-hardware-accelerated-network-monitoring/</link>
		<comments>http://www.viesurip.fr/2010/03/29/netfpga-hardware-accelerated-network-monitoring/#comments</comments>
		<pubDate>Mon, 29 Mar 2010 13:58:38 +0000</pubDate>
		<dc:creator>twisterss</dc:creator>
				<category><![CDATA[TELECOM Bretagne]]></category>
		<category><![CDATA[Verilog]]></category>
		<category><![CDATA[Développement]]></category>
		<category><![CDATA[FPGA]]></category>
		<category><![CDATA[Matériel]]></category>
		<category><![CDATA[Projets]]></category>
		<category><![CDATA[Réseau]]></category>

		<guid isPermaLink="false">http://www.viesurip.fr/?p=178</guid>
		<description><![CDATA[
Pendant ma 3ème année à Télécom Bretagne, j&#8217;ai travaillé avec deux collègues sur un projet pour développer un outil de surveillance de trafic avec accélération matérielle en utilisant un NetFPGA. Ce projet bas-niveau s&#8217;est révélé très intéressant et m&#8217;a permis de découvrir les subtilités du développement matériel avec le langage Verilog.
Pour vous faire découvrir ce [...]


No related posts.]]></description>
			<content:encoded><![CDATA[<a href='http://www.viesurip.fr/wp-content/uploads/2010/03/netfpga.jpg' ><img src="http://www.viesurip.fr/wp-content/uploads/2010/03/netfpga-150x150.jpg" style="border:0; float:right; margin: 0 0 .5em 1em;" alt="NetFPGA" title="NetFPGA"/></a>
<p>Pendant ma 3ème année à Télécom Bretagne, j&#8217;ai travaillé avec deux collègues sur un projet pour développer un outil de surveillance de trafic avec accélération matérielle en utilisant un <a title="Site officiel NetFPGA (en Anglais)" href="http://www.netfpga.org/">NetFPGA</a>. Ce projet bas-niveau s&#8217;est révélé très intéressant et m&#8217;a permis de découvrir les subtilités du développement matériel avec le langage <a title="Article Wikipedia sur Verilog" href="http://fr.wikipedia.org/wiki/Verilog">Verilog</a>.</p>
<p>Pour vous faire découvrir ce projet, j&#8217;ai collé ci-dessous le résumé de notre rapport final.</p>
<h3>Résumé</h3>
<p>Internet se popularise de plus en plus et les nouveaux services, tels que le streaming ou le Peer-to-Peer, sont toujours plus gourmands en bande passante. Ceci, renforcé par les évolutions technologiques en terme de débit, mène à un trafic en croissance permanente. Les outils de surveillance réseau doivent suivre cette évolution et être capables d’analyser de plus en plus de données de plus en plus vite. L’utilisation d’implémentations matérielles d’algorithmes de surveillance est une réponse à ce nouveau défi.</p>
<p>Notre projet de troisième année à Télécom Bretagne fut l’occasion de travailler sur une telle implémentation matérielle. Nous avons utilisé pour cela un NetFPGA, une carte PCI contenant un FPGA et quatre ports Ethernet. Nous avons commencé par transformer le NetFPGA en hub Ethernet pour ensuite lui ajouter une fonctionnalité de détection de paquets TCP SYN aﬁn de lui permettre de détecter les attaques de type SYN ﬂooding. Aﬁn de réduire l’empreinte mémoire nécessaire à cette détection, nous avons utilisé un algorithme spécial de stream mining : l’algorithme CMS.</p>
<h3>Plus d&#8217;informations</h3>
<p>Tout ce que nous avons fait sur ce projet est disponible en ligne <a title="Trac du projet NetFPGA" href="http://trac.benoute.fr/netfpga">sur le Trac de notre projet</a>. <a title="Rapport final du projet NetFPGA" href="http://trac.benoute.fr/netfpga/raw-attachment/wiki/Livrables/rapport_technique.pdf">Le rapport  final</a> est aussi disponible.</p>


<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://www.viesurip.fr/2010/03/29/netfpga-hardware-accelerated-network-monitoring/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Django mieux qu&#8217;un CMS ?</title>
		<link>http://www.viesurip.fr/2009/12/14/django-mieux-quun-cms/</link>
		<comments>http://www.viesurip.fr/2009/12/14/django-mieux-quun-cms/#comments</comments>
		<pubDate>Mon, 14 Dec 2009 10:23:24 +0000</pubDate>
		<dc:creator>twisterss</dc:creator>
				<category><![CDATA[Autres]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Site internet]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[Développement]]></category>
		<category><![CDATA[Django]]></category>
		<category><![CDATA[site]]></category>

		<guid isPermaLink="false">http://www.viesurip.fr/?p=113</guid>
		<description><![CDATA[J&#8217;ai du récemment réécrire un site web que je gère pour une très petite entreprise : Le fil à soi. Cette entreprise comprend 3 animatrices qui proposent des ateliers et stages de massage chinois, qi gong et Gestalt-thérapie à Bordeaux. Les spécifications du site sont assez simples :

présentation du lieu, des animatrices et informations de [...]


No related posts.]]></description>
			<content:encoded><![CDATA[<p><img class="alignright size-thumbnail wp-image-117" title="Logo Django" src="http://www.viesurip.fr/wp-content/uploads/2009/12/django-logo-negative-small.png" alt="Logo Django" width="160" height="73" />J&#8217;ai du récemment réécrire un site web que je gère pour une très petite entreprise : <a title="Site du fil à soi" href="http://www.lefilasoi.fr">Le fil à soi</a>. Cette entreprise comprend 3 animatrices qui proposent des ateliers et stages de massage chinois, qi gong et Gestalt-thérapie à Bordeaux. Les spécifications du site sont assez simples :</p>
<ul>
<li>présentation du lieu, des animatrices et informations de contact ;</li>
<li>pages pour chaque atelier et stage classées en catégories ;</li>
<li>gestion automatique des dates de stages et génération d&#8217;un flux RSS ;</li>
<li>une interface d&#8217;administration simple pour modifier les infos sur les ateliers et stages (qui devrait être utilisée par les animatrices, même si en réalité elles ne sont pas fans d&#8217;informatique et préfèrent m&#8217;envoyer un mail&#8230;).</li>
</ul>
<p>La version que je voulais remplacer était un site web fait à la main en PHP à partir de rien. Je l&#8217;avais commencée il y a des années avant de savoir grand chose sur la conception de sites web. Elle était donc devenue plutot difficile à gérer. Je voulais une version plus propre pour pouvoir laisser quelqu&#8217;un d&#8217;autre maintenir ce site.</p>
<h3>Utiliser un CMS : Drupal ou WordPress</h3>
<p>Un CMS (Content Management System : système de gestion de contenu)est une plateforme qui simplifie la création d&#8217;un site web. <a title="Site web officiel de WordPress" href="http://fr.wordpress.org/">WordPress</a> a été créé pour faire des blogs, mais il existe plein d&#8217;extensions qui permettent de créer n&#8217;importe quel type de site web. <a title="Site de Drupal (Anglais)" href="http://drupal.org/">Drupal</a> a vraiment été prévu pour créer n&#8217;importe quel type de site web. Il possède aussi de nombreuses extensions qui pourvoient à tous types de besoins  (calendrier, magasin en ligne&#8230;)</p>
<p>La force de ces CMSs est qu&#8217;il gèrent les deux parties du site web : la partie utilisateurs et la partie administration. L&#8217;administration donne aux responsables du site de nombreux moyens de personnaliser et de surveiller la partie utilisateurs.</p>
<p>J&#8217;ai donc commencé deux petits prototypes utilisant chaque CMS et j&#8217;en suis venu à la même conclusion :  aucun des deux ne répond parfaitement à mes besoins, pourtant très simples.</p>
<p>Par exemple pour la gestion des dates de stages : des tas d&#8217;extensions font des choses très proches de ce que je veux, mais aucun ne le fait tout à fait. Il va donc falloir que je personnalise une extension, dont le code n&#8217;est probablement pas vraiment documenté. Ensuite cette extension sera mise à jour (à nouveau sans documentation) par son auteur, et je devrais maintenir mes modifications&#8230;</p>
<p>Même chose pour le thème : de nombreux thèmes sont disponibles mais il ne serait pas sérieux d&#8217;utiliser un design tout fait sans l&#8217;adapter.</p>
<p>Je peux donc faire mon petit site web avec un CMS mais :</p>
<ul>
<li>le résultat sera énorme, avec plein de fonctionnalités dont je ne me servirai pas (pas besoin de blog, de gestion des utilisateurs&#8230;) ;</li>
<li>il sera difficile à maintenir, et il faudra que je surveille toutes les mises à jour des extensions que j&#8217;aurai modifiées ;</li>
<li>je devrai faire des mises à jour régulières quand le CMS sera mis à jour, car les failles de sécurité connues des grands CMSs sont très rapidement utilisées par des &laquo;&nbsp;pirates&nbsp;&raquo;.</li>
</ul>
<p>Ça fait beaucoup de travail pour un tout petit site.</p>
<h3>Utiliser Django</h3>
<p><a title="Site web de Django (Anglais)" href="http://www.djangoproject.com/">Django</a> n&#8217;est pas vraiment un CMS. C&#8217;est un framework Python pour créer des sites web (comparable à PHP Zend, Ruby on Rails&#8230;). Cela veut donc dire qu&#8217;il faut écrire du code pour l&#8217;utiliser.</p>
<p>La grosse différence avec d&#8217;autres frameworks web est que Django a été développé à l&#8217;origine pour un site web d&#8217;actualité, la gestion du contenu était donc primordiale. C&#8217;est pourquoi un fonction très impressionnante est disponible : la génération automatique de la zone d&#8217;administration du site.</p>
<p>J&#8217;ai juste eu à définir mes modèles (ce qu&#8217;est un stage, une animatrice, une date de stage, une catégorie&#8230;). C&#8217;était ensuite lié à ma base de données et la partie administration était générée. J&#8217;ai enfin défini mes vues, c&#8217;est à dire la façon dont ces modèles sont affichés aux utilisateurs (avec des outils simples pour générer des flux RSS, des sitemaps&#8230;)</p>
<p>Les avantages de cette approche sont :</p>
<ul>
<li>l&#8217;application finale est très petite, sans fonctions inutiles ;</li>
<li>on obtient exactement ce qu&#8217;on veut : pas besoin de s&#8217;adapter aux extensions trouvées sur Internet ;</li>
<li>on sait exactement ce que chaque ligne de code fait (même si on omet de documenter&#8230;) ;</li>
<li>les seules mises à jour à surveiller sont celles de Python et de Django, qui sont rares et plutôt bien gérées.</li>
</ul>
<p>Les seuls inconvénients que je vois :</p>
<ul>
<li>il y a beaucoup moins de gnes qui connaissent Python Django que de gens qui connaissent WordPress, il sera donc plus difficile de trouver des gens pour gérer le site (mais ils seront meilleurs :p) ;</li>
<li>Python doit etre supporté par votre hébergeur. J&#8217;utilise <a title="Site d'OVH" href="http://www.ovh.com">OVH</a>, qui ne supporte Django qu&#8217;en CGI, mais ça suffit pour un si petit site ;</li>
<li>il n&#8217;y a pas d&#8217;éditeur WYSIWYG par défaut dans l&#8217;adminstration générée par Django : ça peut être un problème pour éditer des articles (ou des descriptions de stages dans mon cas). Mais il est <a title="Ajouter un éditeur WYSIWYG dan Dango (Anglais)" href="http://code.djangoproject.com/wiki/AddWYSIWYGEditor">plutôt simple</a> d&#8217;ajouter <a title="Site officiel de TinyMCE (Anglais)" href="http://tinymce.moxiecode.com/">TinyMCE</a> qui est purement en javascript.</li>
</ul>
<h3>Conclusion</h3>
<p>Si vous voulez créer un blog simple et complet, utilisez WordPress. Si vous voulez faire des choses compliquées comme un magasin en ligne, utilisez Drupal.</p>
<p>Mais si vous voulez construire un site web simple, dynamique et facile à maintenir, et si coder ne vous fait pas trop peur, utilisez Python Django. Vous obtiendrez exactement ce que vous voulez sans trop d&#8217;efforts, et le résultat sera vraiment simple à maintenir.</p>
<div id="attachment_131" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.viesurip.fr/wp-content/uploads/2009/12/lefilasoi-accueil.png"><img class="size-medium wp-image-131" title="Accueil du site du fil à soi" src="http://www.viesurip.fr/wp-content/uploads/2009/12/lefilasoi-accueil-300x154.png" alt="Accueil du site du fil à soi" width="300" height="154" /></a><p class="wp-caption-text">Accueil du site du fil à soi</p></div>
<div id="attachment_142" class="wp-caption aligncenter" style="width: 309px"><a href="http://www.viesurip.fr/wp-content/uploads/2009/12/lefilasoi-admin-pages.png"><img class="size-medium wp-image-142" title="Administration des pages du fil à soi" src="http://www.viesurip.fr/wp-content/uploads/2009/12/lefilasoi-admin-pages-299x153.png" alt="Administration des pages du fil à soi" width="299" height="153" /></a><p class="wp-caption-text">Administration des pages du fil à soi</p></div>


<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://www.viesurip.fr/2009/12/14/django-mieux-quun-cms/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Mes widgets UWA</title>
		<link>http://www.viesurip.fr/2008/06/10/mes-widgets-uwa/</link>
		<comments>http://www.viesurip.fr/2008/06/10/mes-widgets-uwa/#comments</comments>
		<pubDate>Tue, 10 Jun 2008 13:47:28 +0000</pubDate>
		<dc:creator>twisterss</dc:creator>
				<category><![CDATA[AJAX]]></category>
		<category><![CDATA[UWA]]></category>
		<category><![CDATA[Développement]]></category>
		<category><![CDATA[Projets]]></category>

		<guid isPermaLink="false">http://www.viesurip.fr/?p=44</guid>
		<description><![CDATA[
Je suis encore en train de migrer sur ce blog tous les projets que je maintiens actuellement. Dans ce but, je viens de migrer tous les widgets UWA que j&#8217;ai créés ici.
Les widgets UWA sont de petites applications Web qui s&#8217;insèrent sur des plateformes comme Netvibes, IGoogle, Live.com, Opera, la barre latérale de Vista et [...]


No related posts.]]></description>
			<content:encoded><![CDATA[<a href='http://www.viesurip.fr/2008/06/10/mes-widgets-uwa/' ><img src="/wp-content/uploads/2008/06/uwa.png" style="border:0; float:right; margin: 0 0 .5em 1em;" alt="[lang_fr]Widgets UWA : write once, run everywhere[/lang_fr][lang_en]UWA widgets: write once, run everywhere[/lang_en]" title="[lang_fr]Widgets UWA : write once, run everywhere[/lang_fr][lang_en]UWA widgets: write once, run everywhere[/lang_en]"/></a>
<p>Je suis encore en train de migrer sur ce blog tous les projets que je maintiens actuellement. Dans ce but, je viens de migrer tous les <a title="Site de développement de widgets UWA Netvibes (anglais)" href="http://dev.netvibes.com">widgets UWA</a> que j&#8217;ai créés ici.</p>
<p>Les widgets UWA sont de petites applications Web qui s&#8217;insèrent sur des plateformes comme Netvibes, IGoogle, Live.com, Opera, la barre latérale de Vista et le dashboard d&#8217;Apple.</p>
<p>Je décris tous ces widgets dans <a href="http://www.viesurip.fr/mes-projets/widgets-uwa/" title="Widgets UWA">la catégorie "Widgets UWA"</a>.</p>
<p>N&#8217;hésitez pas à tester ces widgets, et à me dire dans les commentaires sur la page dédiée au widget s&#8217;il y a des problèmes.</p>


<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://www.viesurip.fr/2008/06/10/mes-widgets-uwa/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

