<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-7776826188127982181</id><updated>2012-01-02T08:36:04.818-08:00</updated><category term='ruby'/><category term='linux'/><category term='tethering'/><category term='url'/><category term='circuit'/><category term='installation'/><category term='pyrénées'/><category term='javascript'/><category term='montagne'/><category term='base de données'/><category term='ajax'/><category term='howto'/><category term='sqlite'/><category term='tutorial'/><category term='modem'/><category term='carbone'/><category term='sources'/><category term='rails 3.*'/><category term='routes'/><category term='tutoriel'/><category term='android'/><category term='ruby on rails'/><category term='namespaces'/><category term='1198'/><category term='programmation'/><category term='tips'/><category term='ducati'/><category term='moto'/><category term='internet'/><category term='debian'/><category term='windows'/><category term='ubuntu'/><category term='bdd'/><category term='rjs'/><category term='database'/><category term='pilotage'/><category term='trucs'/><title type='text'>SebtheMonster's World</title><subtitle type='html'>Chez moi ce sera Ruby on Ducati et Montagne...</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://sebthemonster.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://sebthemonster.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Seb the Monster</name><uri>http://www.blogger.com/profile/06891047437621579245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-kNpgR61ng8g/TwHc8SiniQI/AAAAAAAAGhQ/ny5UdDSP3LA/s1600/0d1ffc9430b9ff707d92e54d9e60a63e.png'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>16</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7776826188127982181.post-7485695711714805518</id><published>2011-12-20T21:38:00.001-08:00</published><updated>2012-01-01T12:43:43.212-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='url'/><category scheme='http://www.blogger.com/atom/ns#' term='trucs'/><category scheme='http://www.blogger.com/atom/ns#' term='programmation'/><category scheme='http://www.blogger.com/atom/ns#' term='namespaces'/><category scheme='http://www.blogger.com/atom/ns#' term='ruby on rails'/><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='routes'/><category scheme='http://www.blogger.com/atom/ns#' term='rails 3.*'/><title type='text'>Rails 3.* : Routes avec un param automatique</title><content type='html'>En travaillant sur les urls d'une application Rails 3 et particulièrement sur les namespaces, j'avais besoin du côté de mes controllers d'un paramètre à exploiter.&lt;br /&gt;&lt;br /&gt;Cependant ce paramètre devait être complètement transparent tant pour les controllers que les vues de l'application. En fait il devrait dépendre complètement de mes urls.&lt;br /&gt;&lt;br /&gt;Ruby on Rails, en tant que framework nous offre de nombreux moyen.&lt;br /&gt;&lt;br /&gt;Pour cet article, nous travaillerons exclusivement dans le fichier &lt;i&gt;config/routes.rb&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;Prenons comme exemple le cas d'une application pour gérer mon magasin de vente d'articles divers.&lt;br /&gt;Aussi, il me faut une interface pour gérer les stocks et une autre pour les commercialiser.&lt;br /&gt;&lt;br /&gt;Donc dans mon application, je vais avoir de la sorte deux 'namespaces' : Stock et Vente qui se traduiront au niveau des url par &lt;i&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;/stock/articles&lt;/span&gt;&lt;/i&gt; et &lt;i&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;/vente/articles&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;Pour cela nous allons utilisé les namespaces ou scopes dans le routage de Rails :&lt;br /&gt;&lt;blockquote class="code"&gt;namespace :stock do &lt;br /&gt;&lt;span style="margin-bottom: 10px; margin-left: 10px; margin-right: 10px; margin-top: 10px;"&gt;resources :articles&lt;/span&gt;&lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;namespace :vente do &lt;br /&gt;&lt;span style="margin-bottom: 10px; margin-left: 10px; margin-right: 10px; margin-top: 10px;"&gt;resources :articles&lt;/span&gt;&lt;br /&gt;end&lt;/blockquote&gt;Le problème de cette solution est que dans mes controllers, je ne sais pas aisément dans quel namespace je suis à moins de parser mon url.&lt;br /&gt;D'autre part ce n'est pas très DRY.&lt;br /&gt;&lt;br /&gt;Pour savoir systématiquement et aisément dans quel namespace je me trouve, &lt;i&gt;'stock'&lt;/i&gt; ou &lt;i&gt;'vente'&lt;/i&gt;, le mieux est d'utiliser le hash &lt;b&gt;&lt;i&gt;params&lt;/i&gt;&lt;/b&gt;, bien connu quand on traite des données transmises par formulaire.&lt;br /&gt;&lt;br /&gt;Nous utiliserons donc &lt;i&gt;&lt;b&gt;params[:namespace]&lt;/b&gt;&lt;/i&gt; que l'on retrouvera à chaque fois que nous aurons une url de la forme &lt;i&gt;/stock/articles&lt;/i&gt; ou &lt;i&gt;/vente/articles&lt;/i&gt;. Celui-ci aura la valeur &lt;i&gt;'stock'&lt;/i&gt; ou &lt;i&gt;'vente'&lt;/i&gt;.Rails offre deux possibilités.Celle que l'on trouve dans tous les guides utilise le scope : &lt;br /&gt;&lt;blockquote class="code"&gt;scope ":namespace",  :module =&amp;gt; 'stock', :as =&amp;gt; 'stock' do &lt;br /&gt;&lt;span style="margin-bottom: 10px; margin-left: 10px; margin-right: 10px; margin-top: 10px;"&gt;resources :articles&lt;/span&gt;&lt;br /&gt;end&lt;/blockquote&gt;Ainsi à chaque fois que l'on appelera l'url &lt;i&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;/stock/articles&lt;/span&gt;&lt;/i&gt;, on aura un &lt;i&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;params[:stock]='stock'&lt;/span&gt;&lt;/i&gt;.Les options &lt;i&gt;&lt;span style="color: blue;"&gt;:module&lt;/span&gt;&lt;/i&gt; et &lt;i&gt;&lt;span style="color: blue;"&gt;:as&lt;/span&gt;&lt;/i&gt; permettent d'avoir le même comportement qu'un namespace. Avec &lt;i&gt;&lt;span style="color: blue;"&gt;:module&lt;/span&gt;&lt;/i&gt; il ira chercher le controllers dans &lt;i&gt;app/controllers/stock/articles_controller.rb&lt;/i&gt;. Et avec &lt;i&gt;&lt;span style="color: blue;"&gt;:as&lt;/span&gt;&lt;/i&gt; il créera les helpers &lt;i&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;stock_articles_path&lt;/span&gt;&lt;/i&gt; et &lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;i&gt;stock_articles_url&lt;/i&gt;&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;C'est vérifiable avec la commande &lt;b&gt;&lt;i&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;rake routes&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;Cela n'étant pas très élégant, on écrira ces routes avec &lt;i&gt;&lt;b&gt;&lt;span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;namespace&lt;/span&gt;&lt;/b&gt;&lt;/i&gt; et lui définir un &lt;b&gt;&lt;i&gt;params&lt;/i&gt;&lt;/b&gt; par défaut qui existera systématiquement dans ce namespace. &lt;br /&gt;&lt;blockquote class="code"&gt;namespace :stock, :namespace =&amp;gt; :stock do &lt;br /&gt;&lt;span style="margin-bottom: 10px; margin-left: 10px; margin-right: 10px; margin-top: 10px;"&gt;resources :articles&lt;/span&gt;&lt;br /&gt;end&lt;/blockquote&gt;Et voilà avec 2 options en moins et une meilleure lisibilité de notre fichier de route, nous avons le même comportement.&lt;br /&gt;Ensuite on fait la même chose sur &lt;i&gt;'vente'&lt;/i&gt; ou on boucle sur un Array &lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;i&gt;[:stock, :vente]&lt;/i&gt;&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Cette fonctionnalité ouvre de nombreuses portes.&lt;br /&gt;En effet quelque soit le type de routes écrites avec &lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;i&gt;'match'&lt;/i&gt;&lt;/span&gt;,&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;i&gt; 'get'&lt;/i&gt;&lt;/span&gt; et tout autre verbe RESTFul, on peut définir un params par défaut pour celle-ci en ajoutant&lt;br /&gt;&lt;blockquote class="code"&gt;:nom_du_param =&amp;gt; valeur_du_param.&lt;/blockquote&gt;Voilà pour la petite astuce, en espérant qu'elle soit utile au plus grand nombre.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7776826188127982181-7485695711714805518?l=sebthemonster.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sebthemonster.blogspot.com/feeds/7485695711714805518/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7776826188127982181&amp;postID=7485695711714805518' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/7485695711714805518'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/7485695711714805518'/><link rel='alternate' type='text/html' href='http://sebthemonster.blogspot.com/2011/12/rails-3-routes-param-automatique.html' title='Rails 3.* : Routes avec un param automatique'/><author><name>Seb the Monster</name><uri>http://www.blogger.com/profile/06891047437621579245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-kNpgR61ng8g/TwHc8SiniQI/AAAAAAAAGhQ/ny5UdDSP3LA/s1600/0d1ffc9430b9ff707d92e54d9e60a63e.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7776826188127982181.post-2022266007626810214</id><published>2011-09-01T10:37:00.000-07:00</published><updated>2011-09-01T10:37:24.731-07:00</updated><title type='text'>Panne générale de mon site web</title><content type='html'>Je fais face à &lt;b&gt;une grosse panne&lt;/b&gt; internet !&lt;br /&gt;C'est la raison pour laquelle mon site web www.sebthemonster.homelinux.com est indisponible depuis 1 grosse semaine, et le sera encore jusqu'au 15 Septembre.&lt;br /&gt;&lt;br /&gt;Je suis &lt;b&gt;vraiment&lt;/b&gt; désolé. &lt;br /&gt;&lt;br /&gt;Cependant rassurez-vous, si vous avez fait preuve de patience jusque là, endurez encore un peu, car les courses que vous avez manquées seront rattrapables dès le retour à la normale.&lt;br /&gt;&lt;br /&gt;Merci à tous pour votre fidélité !&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7776826188127982181-2022266007626810214?l=sebthemonster.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sebthemonster.blogspot.com/feeds/2022266007626810214/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7776826188127982181&amp;postID=2022266007626810214' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/2022266007626810214'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/2022266007626810214'/><link rel='alternate' type='text/html' href='http://sebthemonster.blogspot.com/2011/09/panne-generale-de-mon-site-web.html' title='Panne générale de mon site web'/><author><name>Seb the Monster</name><uri>http://www.blogger.com/profile/06891047437621579245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-kNpgR61ng8g/TwHc8SiniQI/AAAAAAAAGhQ/ny5UdDSP3LA/s1600/0d1ffc9430b9ff707d92e54d9e60a63e.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7776826188127982181.post-1422733320410581582</id><published>2010-11-02T17:43:00.000-07:00</published><updated>2011-02-16T01:55:22.442-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tethering'/><category scheme='http://www.blogger.com/atom/ns#' term='modem'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='debian'/><category scheme='http://www.blogger.com/atom/ns#' term='howto'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial'/><category scheme='http://www.blogger.com/atom/ns#' term='internet'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='tutoriel'/><title type='text'>Android 2.1 "Eclair" tethering sur Linux Ubuntu avec Proxoid</title><content type='html'>Me voilà passer sous Android, venu de l'iPhone... et comme sur l'iPhone... la première chose à faire, c'est l'utilisation de ces téléphones high-tech comme modem.&lt;br /&gt;&lt;br /&gt;Après, on paye bien un forfait internet illimité (dans la limite du fairway évidemment :( )&lt;br /&gt;Tout d'abord, je précise que je suis sous Ubuntu 10.10. Mais cela devrait fonctionner tout aussi bien sous Ubuntu 10.04.&lt;br /&gt;&lt;br /&gt;Nous verrons ainsi comme installer le tethering sur le PC puis comment l'utiliser facilement.&lt;br /&gt;&lt;br /&gt;Cette méthode est fonctionnelle pour Android 2.1 "Eclair". Pour Android 2.2 "Froyo", il n'est pas nécessaire d'en passer par là. Cela fera l'objet un autre article... promis ;)&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;b&gt;&lt;u&gt;1°) L'installation&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Sur le téléphone Android, c'est très simple : rdv sur l'Android Market et installer Proxoid.&lt;br /&gt;Voilà de quoi vous faciliter encore plus la tâche :)&lt;br /&gt;Télécharger sur le &lt;a class="urlextern" href="http://fr.wikipedia.org/wiki/Android#Android_Market" rel="nofollow" style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: url(http://www-static.ubuntu-fr.org/lib/tpl/ubuntu/images/link_icon.gif); background-origin: initial; background-position: 0px 1px; background-repeat: no-repeat no-repeat; color: #436976; padding-bottom: 1px; padding-left: 16px; padding-right: 0px; padding-top: 1px; text-decoration: none;" title="http://fr.wikipedia.org/wiki/Android#Android_Market"&gt;Market&lt;/a&gt;&amp;nbsp;ou en suivant ce code barre proxoid.&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a class="media" href="http://doc.ubuntu-fr.org/_detail/proxoid.png?id=proxoid" style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; color: #436976;" title="proxoid.png"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;img alt="" class="media" src="http://doc.ubuntu-fr.org/_media/proxoid.png" style="border-bottom-style: none; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 3px; margin-left: 3px; margin-right: 3px; margin-top: 3px; text-decoration: none;" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Passons au plus intéressant, l'installation sur le PC Ubuntu ou Debian :&lt;br /&gt;Dans un premier temps, il faut connecter le téléphone en USB.&lt;br /&gt;Il n'est pas nécessaire de le monter en Mass Storage (clé USB).Par contre il faut s'être assurer de l'avoir mis en mode de Débogage USB. Pour cela aller dans Paramètres &amp;gt; Applications &amp;gt; Développement &amp;gt; cocher Débogage USB.&lt;br /&gt;Maintenant on va vérifier que Linux a bien reconnu le téléphone, taper dans la console shell :&lt;br /&gt;&lt;blockquote class="console"&gt;$ lsusb&amp;nbsp;&lt;/blockquote&gt;s'il y a la ligne suivante dans la réponse, c'est tout bon :)&lt;br /&gt;&lt;blockquote class="console"&gt;...&lt;br /&gt;Bus 001 Device 002: ID 04e8:681c Samsung Electronics Co., Ltd&lt;br /&gt;...&lt;/blockquote&gt;Bon le système est prêt à une installation en bonne et due forme.&lt;br /&gt;Passons aux choses sérieuses.&lt;br /&gt;Toujours dans la console, exécutons les commandes suivantes :&lt;br /&gt;&lt;blockquote class="console"&gt;$ sudo touch /etc/udev/rules.d/09-android.rules&lt;/blockquote&gt;&lt;br /&gt;Ici nous créons le fichier 09-android.rules qui permettra au udev de reconnaître le téléphone. En gros, udev est le système qui gère les périphériques (voir la documentation ici : &lt;a href="http://doc.ubuntu-fr.org/udev"&gt;http://doc.ubuntu-fr.org/udev&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;Il va falloir mettre ces lignes dans le fichier /etc/udev/rules.d/09-android.rules que nous venons de créer :&lt;br /&gt;&lt;blockquote class="code"&gt;SUBSYSTEM=="usb", SYSFS{idVendor}=="0422", SYSFS{idProduct}=="5222", MODE="0666", OWNER="YOURUSERNAME"&lt;br /&gt;SUBSYSTEM=="usb", SYSFS{idVendor}=="0422", SYSFS{idProduct}=="5222", MODE="0666", OWNER="YOURUSERNAME"&lt;/blockquote&gt;&lt;br /&gt;En fait la valeur de SYSFS{idVendor} et SYSFS{idProduct} doivent correspondre à celles que nous avons pu récupérer avec la commande lsusb au début du tutoriel.&lt;br /&gt;Dans notre exemple, nous avions "04e8" et "681c". Donc pour le téléphone que j'avais connecté, un Samsung Galaxy S i9000, les lignes seront :&lt;br /&gt;&lt;blockquote class="code"&gt;SUBSYSTEM=="usb", SYSFS{idVendor}=="04e8", SYSFS{idProduct}=="681c", MODE="0666", OWNER="YOURUSERNAME"&lt;/blockquote&gt;&lt;br /&gt;La source de ces indications ont été trouvées sur ubuntu-fr sur cette page :&amp;nbsp;&lt;a href="http://doc.ubuntu-fr.org/proxoid"&gt;http://doc.ubuntu-fr.org/proxoid&lt;/a&gt;&lt;br /&gt;Ailleurs, j'ai trouvé cette ligne qui a très bien fonctionner chez moi :&lt;br /&gt;&lt;blockquote class="code"&gt;SUBSYSTEM=="usb", ATTRS{idVendor}=="04e8", SYMLINK+="android_adb", MODE="0666", OWNER="YOURUSERNAME"&lt;/blockquote&gt;Dans ce cas il va falloir mettre la valeur du SYSFS{idVendor} des lignes précédentes sur le ATTRS{idVendor}&lt;br /&gt;Dans les deux exemples, pensez à modifier le OWNER en indiquant votre identifiant de session ubuntu.&lt;br /&gt;Ensuite, il n faut pas oublier de mettre les règles appropriées au fichier créé:&lt;br /&gt;&lt;blockquote class="console"&gt;$ sudo chmod a+r /etc/udev/rules.d/09-android.rules&lt;/blockquote&gt;&lt;br /&gt;On va rajouter notre user au groupe plugdev (n'oublier pas de remplacer YOURUSERNAME par le votre username)&lt;br /&gt;&lt;blockquote class="console"&gt;$ sudo gpasswd -a YOURUSERNAME plugdev&lt;/blockquote&gt;&lt;br /&gt;Et maintenant, on redémarre udev :&lt;br /&gt;&lt;blockquote class="console"&gt;$ sudo service udev restart&lt;/blockquote&gt;&lt;br /&gt;Le système est prêt pour la connexion, il ne manque plus que l'utilitaire, le logiciel qui va faire le pont entre ubuntu et le téléphone, un genre de driver ;)&lt;br /&gt;&lt;br /&gt;Téléchargeons le SDK Android qui se trouve à cette adresse :&amp;nbsp;&lt;a href="http://developer.android.com/sdk/index.html"&gt;http://developer.android.com/sdk/index.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Aller dans le répertoire où vous avez télécharger le tar.gz du SDK et exécute les commandes suivantes :&lt;br /&gt;&lt;blockquote class="console"&gt;$&amp;nbsp;tar xvzf android-sdk_r07-linux_x86.tgz&lt;br /&gt;$ sudo mv android-sdk-linux_x86/ /opt/&lt;br /&gt;$ sudo&amp;nbsp;ln -s /opt/android-sdk-linux_x86/tools/adb /usr/bin/&lt;br /&gt;$ adb forward tcp:8080 tcp:8080&lt;/blockquote&gt;&lt;br /&gt;adb est le logiciel qui permet de créer le proxy entre Ubuntu et le téléphone. Dans ce cas précis, le proxy est créé sur le port 8080. Vérifiez qu'il ne soit pas utiliser ou choisissez en un autre.&lt;br /&gt;&lt;br /&gt;Avec ces commandes, j'ai décompresser l'archive, et déplacer le contenu dans le répertoire /opt/ et créer un lien symbolique vers adb dans /usr/bin afin d'y accéder facilement.&lt;br /&gt;&lt;br /&gt;Aucun message d'erreurs ne devrait pas être retourné.&lt;br /&gt;Il ne reste que deux choses à faire, lancer Proxoid sur le téléphone, mais nous le feront en dernier. Et paramétrer votre navigateur préféré ou encore le système pour passer par le proxy.&lt;br /&gt;&lt;br /&gt;Pour Firefox, il y a l'extension SwitchProxy Tool. Pour Chrome, il y a Proxy Switchy. Créer un profil et paramétrer le ainsi :&lt;br /&gt;&lt;blockquote class="code"&gt;Configuration Proxy Manuelle&lt;br /&gt;Host : localhost Port 8080&lt;br /&gt;No proxy for : localhost, 127.0.0.1&lt;/blockquote&gt;&lt;br /&gt;Maintenant on démarre Proxoid sur le téléphone android, and cocher "Démarrer".&lt;br /&gt;Et miracle vous avez internet... n'est ce pas magnifique.&lt;br /&gt;&lt;br /&gt;Bon ce n'est pas tout. Faut pouvoir utiliser tout ça facilement maintenant.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;u&gt;2°) L'utilisation&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Personnellement je me suis fait des alias dans mon ~/.bashrc. Mais cela n'est pas obligatoire.&lt;br /&gt;&lt;br /&gt;Il vous suffit de faire Alt+F2 ou d'ouvrir une console et de lancer, après avoir brancher le téléphone android au PC par USB, pour démarrer le proxy:&lt;br /&gt;&lt;blockquote class="console"&gt;$ adb forward tcp:8080 tcp:8080&lt;/blockquote&gt;&lt;br /&gt;Pour l'éteindre, lancer la commande suivante :&lt;br /&gt;&lt;blockquote class="console"&gt;$ adb kill-server&lt;/blockquote&gt;Et voilà, vous êtes prêts à travailler, ou même que surfer, d'où vous voulez !!&lt;br /&gt;&lt;br /&gt;N'hésitez pas à laisser des commentaires...&lt;br /&gt;Si vous avez des idées pour simplifier encore plus l'utilisation, par des scripts par exemple, n'hésitez pas non plus ;), merci à tous !&lt;br /&gt;&lt;br /&gt;sources: &lt;a href="http://doc.ubuntu-fr.org/proxoid"&gt;http://doc.ubuntu-fr.org/proxoid&lt;/a&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/proxoid/wiki/installationLinux"&gt;http://code.google.com/p/proxoid/wiki/installationLinux&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.humans-enabled.com/2009/12/how-to-tether-your-verizon-droid-as.html"&gt;http://www.humans-enabled.com/2009/12/how-to-tether-your-verizon-droid-as.html&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.overclock.net/linux-unix/749612-tethering-linux-machines-android-phones-without.html"&gt;http://www.overclock.net/linux-unix/749612-tethering-linux-machines-android-phones-without.html&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.linux-magazine.com/Online/Blogs/Productivity-Sauce/Tether-an-Android-Phone-Using-Proxoid"&gt;http://www.linux-magazine.com/Online/Blogs/Productivity-Sauce/Tether-an-Android-Phone-Using-Proxoid&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7776826188127982181-1422733320410581582?l=sebthemonster.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sebthemonster.blogspot.com/feeds/1422733320410581582/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7776826188127982181&amp;postID=1422733320410581582' title='2 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/1422733320410581582'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/1422733320410581582'/><link rel='alternate' type='text/html' href='http://sebthemonster.blogspot.com/2010/11/android-tethering-sur-linux-ubuntu-avec.html' title='Android 2.1 &quot;Eclair&quot; tethering sur Linux Ubuntu avec Proxoid'/><author><name>Seb the Monster</name><uri>http://www.blogger.com/profile/06891047437621579245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-kNpgR61ng8g/TwHc8SiniQI/AAAAAAAAGhQ/ny5UdDSP3LA/s1600/0d1ffc9430b9ff707d92e54d9e60a63e.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7776826188127982181.post-4592321596075240060</id><published>2010-07-31T00:40:00.000-07:00</published><updated>2010-11-02T17:50:29.430-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='debian'/><category scheme='http://www.blogger.com/atom/ns#' term='installation'/><category scheme='http://www.blogger.com/atom/ns#' term='howto'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial'/><category scheme='http://www.blogger.com/atom/ns#' term='sources'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='tutoriel'/><title type='text'>HOW TO installer XDTV sous Ubuntu ou Debian</title><content type='html'>J'ai utilisé ce logiciel pour regarder la télévision sur mon PC depuis mon arrivée dans le monde Linux.&lt;br /&gt;&lt;br /&gt;Je n'ai jusqu'alors trouvé aucun logiciel qui soit aussi facile à utiliser et qui permette d'enregistrer aussi facilement et de programmer celui-ci.&lt;br /&gt;&lt;br /&gt;Ce programme n'a jamais été dans les dépôts, pourtant il offrait sur son site (&lt;a href="http://xawdecode.sourceforge.net/htmlpageFR/indexFR.shtml"&gt;http://xawdecode.sourceforge.net/htmlpageFR/indexFR.shtml&lt;/a&gt;) un fichier deb.&lt;br /&gt;&lt;br /&gt;Aussi à mon grand désespoir, lorsque j'ai installé Lucid Lynx (Ubuntu 10.04), j'ai appris que ce projet été abandonné... et donc plus de deb disponible.. :'(&lt;br /&gt;&lt;br /&gt;Mais il serait en cours de reprise... extra. Cependant en attendant rien de plus depuis 2009 :(&lt;br /&gt;&lt;br /&gt;J'ai persisté et finalement trouvé comment installer ce logiciel avec les sources.&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;Les sources se trouvent ici : &lt;a href="http://sourceforge.net/projects/xawdecode/"&gt;http://sourceforge.net/projects/xawdecode/&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Ensuite on passe à l'installation des bibliothèques nécessaires, celle concernant alsa-oss est mentionnée sur le site. Celles de libxaw, ben il m'a fallu les trouver tout seul, m'enfin, le principal est d'y arriver et de partager... ;)&lt;br /&gt;Donc voici les commandes :&lt;br /&gt;&lt;br /&gt;&lt;blockquote class="console"&gt;$ sudo apt-get install libxaw7 libxaw7-dev&lt;br /&gt;$ sudo apt-get install alsa-oss&lt;/blockquote&gt;&lt;br /&gt;Et maintenant on passe à l'installation de xdtv. Accessoirement, je mets la commande pour récupérer les sources, comme ça juste un Copier/Coller à réaliser ;)&lt;br /&gt;&lt;br /&gt;Je mets le lien de la version 2.4.0 car c'est celle que j'utilise et qui fonctionne très bien. Sachez cependant que la 2.4.1 est disponible et selon le site tiendrait compte de mise à jour de FFmpeg.&lt;br /&gt;&lt;br /&gt;&lt;blockquote class="console"&gt;$ cd répertoire/des_sources/xdtv&lt;br /&gt;$ wget http://sourceforge.net/projects/xawdecode/files/01%20-%20XdTV/2.4.0/xdtv-2.4.0.tar.gz/download&lt;br /&gt;$ ./configure&lt;br /&gt;$ sudo make&lt;br /&gt;$ sudo make install&lt;/blockquote&gt;&lt;br /&gt;Ben maintenant il ne reste plus qu'à lancer le programme et accessoirement, pour ceux qui aime bien le clic à se créer un lanceur.&lt;br /&gt;&lt;br /&gt;&lt;blockquote class="console"&gt;$ xdtv&lt;/blockquote&gt;&lt;br /&gt;Pour lancer la programmation des enregistrements, voici la commande :&lt;br /&gt;&lt;br /&gt;&lt;blockquote class="console"&gt;$ xdtv_record.sh&lt;/blockquote&gt;&lt;br /&gt;A priori, une fois qu'un enregistrement est programmé, il ne faut plus éteindre et redémarrer l'ordinateur avant l'échéance au risque de perdre la programmation.&lt;br /&gt;Si vous avez des solutions pour y palier, je suis preneur. A vrai dire, en toute honnêteté, je n'ai pas chercher. :)&lt;br /&gt;&lt;br /&gt;Personnellement je me suis mis cette commande dans mon ~/.bashrc avec l'alias 'magneto'. ;)&lt;br /&gt;&lt;br /&gt;Voilà voilà, et maintenant profitez en bien !&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7776826188127982181-4592321596075240060?l=sebthemonster.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sebthemonster.blogspot.com/feeds/4592321596075240060/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7776826188127982181&amp;postID=4592321596075240060' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/4592321596075240060'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/4592321596075240060'/><link rel='alternate' type='text/html' href='http://sebthemonster.blogspot.com/2010/07/how-to-installer-xdtv-sous-ubuntu-ou.html' title='HOW TO installer XDTV sous Ubuntu ou Debian'/><author><name>Seb the Monster</name><uri>http://www.blogger.com/profile/06891047437621579245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-kNpgR61ng8g/TwHc8SiniQI/AAAAAAAAGhQ/ny5UdDSP3LA/s1600/0d1ffc9430b9ff707d92e54d9e60a63e.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7776826188127982181.post-8972031847556227200</id><published>2009-12-24T15:33:00.000-08:00</published><updated>2009-12-24T15:38:22.691-08:00</updated><title type='text'>Une GSXR qui se monte tout seule</title><content type='html'>Je ne suis pas pour les motos japonaises... difficile de ne pas le remarquer ;P&lt;br /&gt;&lt;br /&gt;Mais cette vidéo est incroyablement bien faite et pleine d'humour... à voir et à revoir car il y plein de détails en arrière plan... je vous laisse les découvrir :&lt;br /&gt;&lt;br /&gt;&lt;object width="560" height="340"&gt;&lt;param name="movie" value="http://www.youtube.com/v/Zlax5L8BVGc&amp;hl=fr_FR&amp;fs=1&amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/Zlax5L8BVGc&amp;hl=fr_FR&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="560" height="340"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style='font-size:10px;font-style:italic;'&gt;source: &lt;a href="http://www.youtube.com/watch?v=Zlax5L8BVGc"&gt;Youtube&lt;/a&gt; et &lt;a href="http://www.moto-net.com/breve.php?RefBreve=2664"&gt;article vu sur Moto-net.com&lt;/a&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7776826188127982181-8972031847556227200?l=sebthemonster.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sebthemonster.blogspot.com/feeds/8972031847556227200/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7776826188127982181&amp;postID=8972031847556227200' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/8972031847556227200'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/8972031847556227200'/><link rel='alternate' type='text/html' href='http://sebthemonster.blogspot.com/2009/12/une-gsxr-qui-se-monte-tout-seule.html' title='Une GSXR qui se monte tout seule'/><author><name>Seb the Monster</name><uri>http://www.blogger.com/profile/06891047437621579245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-kNpgR61ng8g/TwHc8SiniQI/AAAAAAAAGhQ/ny5UdDSP3LA/s1600/0d1ffc9430b9ff707d92e54d9e60a63e.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7776826188127982181.post-6536692573852883202</id><published>2009-10-07T00:56:00.000-07:00</published><updated>2009-10-07T01:04:59.458-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='moto'/><category scheme='http://www.blogger.com/atom/ns#' term='ducati'/><category scheme='http://www.blogger.com/atom/ns#' term='1198'/><category scheme='http://www.blogger.com/atom/ns#' term='carbone'/><title type='text'>La Ducati 1198 en robe de soirée noire</title><content type='html'>Voilà ma dernière découverte sur la toile signée DUCATI:&lt;br /&gt;&lt;br /&gt;Une véritable merveille, la &lt;span style="font-weight:bold;"&gt;1198&lt;/span&gt; sortie d'usine est déjà une superbe moto mais alors toute vêtue de &lt;span style="font-weight:bold;"&gt;noir carbone&lt;/span&gt;... &lt;span style="font-weight:bold;"&gt;BRRRRR&lt;/span&gt;, j'en ai des frissons rien que de la voir...&lt;br /&gt;seul le prix refroidi... ;)&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://blog.jameslist.com/wp-content/uploads/2009/10/rever-corsa-ducati-2jpg_65-594x452-custom.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 594px; height: 452px;" src="http://blog.jameslist.com/wp-content/uploads/2009/10/rever-corsa-ducati-2jpg_65-594x452-custom.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-style:italic;font-size:10px;"&gt;source: http://blog.jameslist.com/2009/rever-corsa-ducati-1198-nero/&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Le Diaporama, c'est par &lt;a href="http://moto.caradisiac.com/Ducati-1198-Nero-by-Rever-Corsa-De-57-500-a-140-000-US-985/diaporama"&gt;ici&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7776826188127982181-6536692573852883202?l=sebthemonster.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sebthemonster.blogspot.com/feeds/6536692573852883202/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7776826188127982181&amp;postID=6536692573852883202' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/6536692573852883202'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/6536692573852883202'/><link rel='alternate' type='text/html' href='http://sebthemonster.blogspot.com/2009/10/ducati-1198-robe-noire.html' title='La Ducati 1198 en robe de soirée noire'/><author><name>Seb the Monster</name><uri>http://www.blogger.com/profile/06891047437621579245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-kNpgR61ng8g/TwHc8SiniQI/AAAAAAAAGhQ/ny5UdDSP3LA/s1600/0d1ffc9430b9ff707d92e54d9e60a63e.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7776826188127982181.post-1289611318335263538</id><published>2009-08-21T08:53:00.000-07:00</published><updated>2009-08-21T08:55:55.183-07:00</updated><title type='text'>Italiens réinventent le plongeon</title><content type='html'>Voici une petite vidéo partagée par un ami via chat...&lt;br /&gt;Les italiens auraient réinventé le plongeon acrobatique, extraordinaire:&lt;br /&gt;&lt;br /&gt;&lt;object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=10,0,0,0" width="640" height="510"&gt;&lt;param name="movie" value="http://tv.repubblica.it/static/swf/adv_player.swf"&gt;&lt;/param&gt;&lt;param name="allowScriptAccess" value="always" /&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param value="autostart=false&amp;amp;keyT=Vs uàf-nc teqàò,bzr);jtnqpa&amp;amp;key=.iì(ccwqeafiweà?r.esèp@dajt:p@ek,v;_ùyqvmjnita-q,pRve Mfeti?aus=agl?01c'02?ò03ex04&amp;amp;baseURL=http://tv.repubblica.it/static/images/player/&amp;amp;file=repubblicatv/file/2009/bruno1008097.flv&amp;amp;repeat=false&amp;amp;logo=1&amp;amp;strip=0&amp;amp;nielsenBrand=repubblicatv_&amp;amp;brand=brand_repubblicaradio&amp;amp;dState=normal&amp;amp;scaleMethod=fit&amp;amp;rel=false&amp;amp;fsType=fl&amp;amp;" name="flashvars"&gt;&lt;embed src="http://tv.repubblica.it/static/swf/adv_player.swf" allowScriptAccess="always"  type="application/x-shockwave-flash" allowfullscreen="true" width="640" height="510" flashvars="autostart=false&amp;amp;keyT=Vs uàf-nc teqàò,bzr);jtnqpa&amp;amp;key=.iì(ccwqeafiweà?r.esèp@dajt:p@ek,v;_ùyqvmjnita-q,pRve Mfeti?aus=agl?01c'02?ò03ex04&amp;amp;baseURL=http://tv.repubblica.it/static/images/player/&amp;amp;file=repubblicatv/file/2009/bruno1008097.flv&amp;amp;repeat=false&amp;amp;logo=1&amp;amp;strip=0&amp;amp;nielsenBrand=repubblicatv_&amp;amp;brand=brand_repubblicaradio&amp;amp;dState=normal&amp;amp;scaleMethod=fit&amp;amp;rel=false&amp;amp;fsType=fl"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7776826188127982181-1289611318335263538?l=sebthemonster.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sebthemonster.blogspot.com/feeds/1289611318335263538/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7776826188127982181&amp;postID=1289611318335263538' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/1289611318335263538'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/1289611318335263538'/><link rel='alternate' type='text/html' href='http://sebthemonster.blogspot.com/2009/08/italiens-reinventent-le-plongeon.html' title='Italiens réinventent le plongeon'/><author><name>Seb the Monster</name><uri>http://www.blogger.com/profile/06891047437621579245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-kNpgR61ng8g/TwHc8SiniQI/AAAAAAAAGhQ/ny5UdDSP3LA/s1600/0d1ffc9430b9ff707d92e54d9e60a63e.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7776826188127982181.post-2608276414311784645</id><published>2009-05-28T00:24:00.000-07:00</published><updated>2009-05-28T00:30:57.591-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='moto'/><title type='text'>Séance d'HyperMotard</title><content type='html'>Cela faisait longtemps que je n'avais pas trouvé une vidéo de moto bien sympathique!!!&lt;br /&gt;&lt;br /&gt;Celle-ci est excellente et nous révèle tout le talent de David Checa ...&lt;br /&gt;&lt;br /&gt;Je vous laisse l'apprécier :&lt;br /&gt;&lt;br /&gt;&lt;object height="344" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/aeUK6aOEJKo&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;feature=player_embedded&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/aeUK6aOEJKo&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;feature=player_embedded&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" height="344" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7776826188127982181-2608276414311784645?l=sebthemonster.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sebthemonster.blogspot.com/feeds/2608276414311784645/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7776826188127982181&amp;postID=2608276414311784645' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/2608276414311784645'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/2608276414311784645'/><link rel='alternate' type='text/html' href='http://sebthemonster.blogspot.com/2009/05/seance-dhypermotard.html' title='Séance d&apos;HyperMotard'/><author><name>Seb the Monster</name><uri>http://www.blogger.com/profile/06891047437621579245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-kNpgR61ng8g/TwHc8SiniQI/AAAAAAAAGhQ/ny5UdDSP3LA/s1600/0d1ffc9430b9ff707d92e54d9e60a63e.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7776826188127982181.post-3452874659899734658</id><published>2008-07-07T00:33:00.000-07:00</published><updated>2008-07-18T02:17:34.917-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='moto'/><title type='text'>Entrailles de la Desmocedici</title><content type='html'>Et voici à quoi ressemble les dessous de la jupe de la Desmocedici: La MotoGP rendu accessible au grand public bien fortuné...&lt;br /&gt;Suivez le lien:&lt;br /&gt;&lt;a href="http://qdiddy.myphotoalbum.com/slideshow.php?set_albumName=album01"&gt;ICI&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;C'est magnifique.. et il y a tant dans si petit.. sa force le respect pourtoute cette puissance.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7776826188127982181-3452874659899734658?l=sebthemonster.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sebthemonster.blogspot.com/feeds/3452874659899734658/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7776826188127982181&amp;postID=3452874659899734658' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/3452874659899734658'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/3452874659899734658'/><link rel='alternate' type='text/html' href='http://sebthemonster.blogspot.com/2008/07/entrailles-de-la-desmocedici.html' title='Entrailles de la Desmocedici'/><author><name>Seb the Monster</name><uri>http://www.blogger.com/profile/06891047437621579245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-kNpgR61ng8g/TwHc8SiniQI/AAAAAAAAGhQ/ny5UdDSP3LA/s1600/0d1ffc9430b9ff707d92e54d9e60a63e.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7776826188127982181.post-4779566942560983288</id><published>2008-05-17T09:57:00.000-07:00</published><updated>2008-05-17T10:09:08.492-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='moto'/><title type='text'>Comment laver sa moto et son équipement ?</title><content type='html'>Après vous avoir fourni une vidéo montrant &lt;a href="http://www.blogger.com/2008/03/garder-moto-deux-roues.html"&gt;comment garder sa moto sur 2 roues&lt;/a&gt; (petit rappel: &lt;a href="http://www.blogger.com/2008/03/garder-moto-deux-roues.html"&gt;c'est ici&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;Je vous propose, après quelque navigation sur le web, un tutoriel vidéo sur comment laver, et sa moto, et son équipement ...&lt;br /&gt;Je vous laisse la surprise de la découverte:&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;object height="336" width="420"&gt;&lt;param name="movie" value="http://www.dailymotion.com/swf/x358vx&amp;amp;v3=1&amp;amp;colors=background:DDDDDD;glow:FFFFFF;foreground:333333;special:FFC300;&amp;amp;related=0"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowScriptAccess" value="always"&gt;&lt;embed src="http://www.dailymotion.com/swf/x358vx&amp;amp;v3=1&amp;amp;colors=background:DDDDDD;glow:FFFFFF;foreground:333333;special:FFC300;&amp;amp;related=0" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" height="336" width="420"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;b&gt;&lt;a href="http://www.dailymotion.com/video/x358vx_mov06320pc_fun"&gt;MOV06320_PC&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;&lt;i&gt;envoyé par &lt;a href="http://www.dailymotion.com/lutindeberget"&gt;lutindeberget&lt;/a&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7776826188127982181-4779566942560983288?l=sebthemonster.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sebthemonster.blogspot.com/feeds/4779566942560983288/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7776826188127982181&amp;postID=4779566942560983288' title='1 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/4779566942560983288'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/4779566942560983288'/><link rel='alternate' type='text/html' href='http://sebthemonster.blogspot.com/2008/05/comment-laver-moto-et-equipement.html' title='Comment laver sa moto et son équipement ?'/><author><name>Seb the Monster</name><uri>http://www.blogger.com/profile/06891047437621579245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-kNpgR61ng8g/TwHc8SiniQI/AAAAAAAAGhQ/ny5UdDSP3LA/s1600/0d1ffc9430b9ff707d92e54d9e60a63e.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7776826188127982181.post-7491393040113083039</id><published>2008-05-15T15:08:00.000-07:00</published><updated>2010-11-02T17:51:04.198-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='rjs'/><category scheme='http://www.blogger.com/atom/ns#' term='howto'/><category scheme='http://www.blogger.com/atom/ns#' term='ruby on rails'/><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial'/><category scheme='http://www.blogger.com/atom/ns#' term='tutoriel'/><title type='text'>Javascript dans Ruby on Rails - partie 1</title><content type='html'>&lt;span style="color: rgb(102, 102, 102);"&gt;Dans ce post, je vous ferai part de ma dernière aventure dans le monde de Rails.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;J'ai eu un peu de mal à trouver des tutoriaux assez précis et en français. En réalité, je n'en ai pas trouvé.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;Voici alors que je propose le mien.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;Utiliser Ajax dans notre framework préféré, revient à écrire du javascript avec du Ruby dans les pages ou vues et à la volée.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;Tout d'abord un bref bilan sur ce qu'est le RJS. Il s'agit d'une extension pour les vues au même titre que les ".rhtml". Seulement le serveur générera à la lecture de ces vues du code javascript interprété par le navigateur.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;Les vues RJS remplaceront donc les vues RHTML pour une action du controller.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;Avec Rails 2.0, ce ne sont plus des vues ".rhtml" ou ".rjs" mais ".html.erb" et ".js.erb" .&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;Dans la suite du tutoriel, je garderai l'appellation "RHTML" et "RJS" afin d'économiser mon clavier... ;)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;Pour rendre les vues RJS efficaces, il est indispensable d'utiliser l'Ajax avec les méthodes des Helpers Javascript, Prototype ou Scriptaculous fourni dans ActionView utilisé par le framework Rails.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;Une petite énumération de ces méthodes:&lt;/span&gt;&lt;br /&gt;&lt;ul style="color: rgb(102, 102, 102);"&gt;&lt;li&gt;form_remote_tag&lt;/li&gt;&lt;li&gt;link_to_remote&lt;/li&gt;&lt;li&gt;link_to_function&lt;br /&gt;&lt;/li&gt;&lt;li&gt;remote_function&lt;/li&gt;&lt;li&gt;button_to_function&lt;br /&gt;&lt;/li&gt;&lt;li&gt;(s'il en manque, n'hésitez pas à me le signaler...)&lt;/li&gt;&lt;/ul&gt;&lt;span style="color: rgb(102, 102, 102);font-size:100%;" &gt;&lt;span style="font-weight: bold;"&gt;  Le javascript avec Ruby&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;Il y a plusieurs manières de réaliser du javascript dans le framework Ruby on Rails.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;En effet, soit il est directement écrit dans les vues... bien évidemment, je ne parle pas d'écrire du code javascript dans des balises '&lt;/span&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;script&lt;/span&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;' HTML, mais plutôt en Ruby. Il suffit alors d'utiliser les helper&lt;/span&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt; &lt;/span&gt;&lt;span style="font-weight: bold; font-style: italic; color: rgb(102, 102, 102);"&gt;button_to_function&lt;/span&gt;&lt;span style="color: rgb(102, 102, 102);"&gt; ou encore&lt;/span&gt;&lt;span style="font-weight: bold; font-style: italic; color: rgb(102, 102, 102);"&gt; link_to_function&lt;/span&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;Ces deux outils s'utilisent dans la vue afin d'y inscrire une action javascript sur un onClick de lien ou du bouton:&lt;/span&gt;&lt;br /&gt;&lt;blockquote style="color: rgb(102, 102, 102);" class="code"&gt;&lt;br /&gt;&lt;%= link_to_function "Lien", "code javascript", "options html" %&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;par exemple, un lien pour réaliser une alerte:&lt;/span&gt;&lt;br /&gt;&lt;blockquote style="color: rgb(102, 102, 102);" class="code"&gt;&lt;br /&gt;&lt;%= link_to_function "Cliquez ici", "alert("Clic réussi");", :id =&gt; "clicla", :class =&gt; "clicme" %&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;Ceci créera un lien créant une alerte avec le message "Clic réussi" sur le onClick du lien. Ce lien aura un id "clicla" et la classe css "clicme" : &lt;/span&gt;&lt;a onClick="javascript:alert('clic réussi');" id="clila" class="clicme"&gt;Le Lien&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;Mais il est également possible de réaliser un bloc contenant plusieurs actions javascript successives. Le code javascript ainsi saisi sera du pur RJS.&lt;/span&gt;&lt;br /&gt;&lt;blockquote style="color: rgb(102, 102, 102);" class="code"&gt;&lt;br /&gt;&lt;%= link_to_function "Lien", nil , "options html" do |page|                                                .... code rjs ....                                             end %&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;L'objet &lt;/span&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;'page'&lt;/span&gt;&lt;span style="color: rgb(102, 102, 102);"&gt; sur lequel s'applique spécifiquement le code rjs correspond au document. Ainsi il est possible de:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;- sélectionner un élément DOM à partir de son id &gt; page[:id_du_DOM] ou page["id_du_DOM"]&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;- sélectionner une série d'éléments en fonction de leur classe css &gt; page.select("style css") puis y ajouter les commandes que l'on veut effectuer en réalisant un page.select("").each ou page.select("").find_all ... etc ...&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;De manière générale, il est alors possible d'utiliser les outils du module ruby &lt;/span&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;Enumerable&lt;/span&gt;&lt;span style="color: rgb(102, 102, 102);"&gt; que vous trouverez &lt;/span&gt;&lt;a style="color: rgb(102, 102, 102);" href="http://www.ruby-doc.org/core/classes/Enumerable.html"&gt;ici&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;Le helper button_to_function fonctionne à l'identique.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;Dans un second temps, nous aborderons réellement ce qui fait de Ruby on Rails et de ses Helpers Ajax quelquechose de magique.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;A SUIVRE ....&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: center; color: rgb(102, 102, 102);"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7776826188127982181-7491393040113083039?l=sebthemonster.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sebthemonster.blogspot.com/feeds/7491393040113083039/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7776826188127982181&amp;postID=7491393040113083039' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/7491393040113083039'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/7491393040113083039'/><link rel='alternate' type='text/html' href='http://sebthemonster.blogspot.com/2008/05/javascript-dans-ruby-on-rails-partie-1.html' title='Javascript dans Ruby on Rails - partie 1'/><author><name>Seb the Monster</name><uri>http://www.blogger.com/profile/06891047437621579245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-kNpgR61ng8g/TwHc8SiniQI/AAAAAAAAGhQ/ny5UdDSP3LA/s1600/0d1ffc9430b9ff707d92e54d9e60a63e.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7776826188127982181.post-1155094740086560572</id><published>2008-04-13T11:41:00.001-07:00</published><updated>2010-06-13T04:27:06.486-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='ruby on rails'/><category scheme='http://www.blogger.com/atom/ns#' term='sqlite'/><category scheme='http://www.blogger.com/atom/ns#' term='base de données'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='bdd'/><category scheme='http://www.blogger.com/atom/ns#' term='database'/><title type='text'>Ruby on Rails et SQLite</title><content type='html'>Pour programmer une application en Ruby on Rails, nous avons le choix de la base de données que nous utiliserons.&lt;br /&gt;MySQL est certes la plus efficace mais il y a toujours, pour l'aspect portable de l'application le choix de SQLite qui peut s'avérer pertinent.&lt;br /&gt;Comme je développe mon premier projet entre chez moi et dans mon foyer du week-end, j'utilise à la fois MySQL et SQLite (ce dernier est fort pratique pour économiser les ressources du PC).&lt;br /&gt;&lt;br /&gt;Je vais vous faire part de la problématique que j'ai pu rencontrer.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; text-decoration: underline;"&gt;Sous Linux base Debian (j'utilise plutôt Ubuntu):&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Aucuns soucis...&lt;br /&gt;&lt;br /&gt;&lt;blockquote class="console"&gt;$ sudo apt-get install sqlite3 libsqlite3-dev&lt;br /&gt;&lt;br /&gt;$ sudo gem install sqlite3-ruby&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;Et voilà il n'y a plus qu'à modifier la configuration du projet au niveau du database.yml  comme indiquer ci-dessous&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; text-decoration: underline;"&gt;Sous Windows c'est une toute autre affaire:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;En effet il vous faut télécharger le fichier &lt;span style="font-weight: bold;"&gt;sqlite3.dll&lt;/span&gt; sur le site officiel de SQLite (ici =&gt; &lt;a href="http://www.sqlite.org/download.html"&gt;http://www.sqlite.org/download.html&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;Le fichier sqlite3.exe peut aussi être récupéré mais il ne permettra que l'administration de votre base de données en ligne de commande..&lt;br /&gt;&lt;br /&gt;Le fichier précédemment télécharger devra être &lt;span style="font-weight: bold;"&gt;obligatoirement&lt;/span&gt; placé &lt;span style="text-decoration: underline;"&gt;dans le répertoire source de ruby&lt;/span&gt; (en général &lt;span style="font-style: italic;"&gt;C:/ruby/bin&lt;/span&gt;).&lt;br /&gt;Alors comme sous linux, il faudra procéder à l'installation de la gem sqlite3-ruby... saisissez gem install sqlite3-ruby dans la fenêtre commande.&lt;br /&gt;&lt;br /&gt;Pensez à choisir la version &lt;span style="font-weight: bold;"&gt;win32&lt;/span&gt; si cela vous ait demandé&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;La particularité de Windows est qu'il faut &lt;span style="font-weight: bold;"&gt;ABSOLUMENT&lt;/span&gt; créer son projet dans un répertoire pour lequel &lt;span style="font-weight: bold;"&gt;le chemin ne contient AUCUN espaces&lt;/span&gt;... sinon le projet sera incapable d'ouvrir la base de données.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; text-decoration: underline;"&gt;Et pour finir, le fichier database.yml:&lt;/span&gt;&lt;br /&gt;Mettre ceci dans les paramètres de la base de données:&lt;br /&gt;&lt;blockquote class="code"&gt;&lt;br /&gt;development:&lt;br /&gt;adapter: sqlite3&lt;br /&gt;database: db/LPG_development.db&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; text-decoration: underline;"&gt;Quelques différences entre SQLite et MySQL:&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Pour tous les champs qui ne peuvent pas être à NULL, il est &lt;span style="font-weight: bold;"&gt;indispensable&lt;/span&gt; de déclarer la valeur par défaut dans la migration&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Dans les fixtures, il est indispensable de renseigner tous les champs, même ceux &lt;span style="font-style: italic;"&gt;created_at&lt;/span&gt;, &lt;span style="font-style: italic;"&gt;updated_at&lt;/span&gt; et &lt;span style="font-style: italic;"&gt;lock_version&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Et voilà vous avez tous les renseignements pour programmer avec SQLite, faites-vous plaisir!!!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Sources: &lt;a href="http://wiki.rubyonrails.org/rails/pages/HowtoUseSQLite"&gt;http://wiki.rubyonrails.org/rails/pages/HowtoUseSQLite&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;em&gt;modifié le 13 Juin 2010&lt;/em&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7776826188127982181-1155094740086560572?l=sebthemonster.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sebthemonster.blogspot.com/feeds/1155094740086560572/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7776826188127982181&amp;postID=1155094740086560572' title='1 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/1155094740086560572'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/1155094740086560572'/><link rel='alternate' type='text/html' href='http://sebthemonster.blogspot.com/2008/04/ruby-on-rails-et-sqlite.html' title='Ruby on Rails et SQLite'/><author><name>Seb the Monster</name><uri>http://www.blogger.com/profile/06891047437621579245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-kNpgR61ng8g/TwHc8SiniQI/AAAAAAAAGhQ/ny5UdDSP3LA/s1600/0d1ffc9430b9ff707d92e54d9e60a63e.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7776826188127982181.post-4522005823345447290</id><published>2008-03-29T15:08:00.000-07:00</published><updated>2008-03-29T15:23:18.229-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='moto'/><category scheme='http://www.blogger.com/atom/ns#' term='pilotage'/><category scheme='http://www.blogger.com/atom/ns#' term='circuit'/><title type='text'>Comment garder sa moto sur 2 roues?</title><content type='html'>En ce samedi ensoleillé, j'ai eu une &lt;span style="font-weight:bold;"&gt;GRANDE&lt;/span&gt; leçon de pilotage.&lt;br /&gt;Celle-ci s'intitulait: Comment garder sa moto sur ses deux roues?&lt;br /&gt;&lt;br /&gt;La solution la plus sage est de rouler &lt;span style="font-style:italic;"&gt;tranquillement&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Pour tous les autres, regarder cette vidéo:&lt;br /&gt;&lt;object width="425" height="350"&gt; &lt;param name="movie" value="http://www.youtube.com/v/mFa44CELNfU"&gt; &lt;/param&gt; &lt;embed src="http://www.youtube.com/v/mFa44CELNfU" type="application/x-shockwave-flash" width="425" height="350"&gt; &lt;/embed&gt; &lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7776826188127982181-4522005823345447290?l=sebthemonster.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sebthemonster.blogspot.com/feeds/4522005823345447290/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7776826188127982181&amp;postID=4522005823345447290' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/4522005823345447290'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/4522005823345447290'/><link rel='alternate' type='text/html' href='http://sebthemonster.blogspot.com/2008/03/garder-moto-deux-roues.html' title='Comment garder sa moto sur 2 roues?'/><author><name>Seb the Monster</name><uri>http://www.blogger.com/profile/06891047437621579245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-kNpgR61ng8g/TwHc8SiniQI/AAAAAAAAGhQ/ny5UdDSP3LA/s1600/0d1ffc9430b9ff707d92e54d9e60a63e.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7776826188127982181.post-4324309657546518545</id><published>2008-03-14T12:23:00.000-07:00</published><updated>2008-03-18T16:22:55.394-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='montagne'/><title type='text'>Petit Panorama sur Gavarnie</title><content type='html'>Il y a deux semaines, je suis allé skié à Gèdre-Gavarnie... évidemment il n'y avait pas beaucoup de neige... plutôt aucune neige!!! ;-\&lt;br /&gt;&lt;br /&gt;Puis après deux jours de tempête avec des vents de 110 à 130 km/h, on s'est réveillé au milieu de ça (c'est sûr, j'y étais!!! ;P ):&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-style: italic;"&gt;cliquez sur la photo pour la voir de meilleure qualité&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_h7Qkc_jZyjk/R-AN-q7hLBI/AAAAAAAAALc/U4HCdk6KJZs/s1600-h/Gavarnie_en_neige_2048.jpg"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_h7Qkc_jZyjk/R-AN-q7hLBI/AAAAAAAAALc/U4HCdk6KJZs/s200/Gavarnie_en_neige_2048.jpg" alt="Gavarnie sous la neige, Montagne" id="BLOGGER_PHOTO_ID_5179154941803047954" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_h7Qkc_jZyjk/R9rS767hLAI/AAAAAAAAAK8/S3WHk5uZbzA/s1600-h/Panorama_Gavarnie_en_neige.jpg"&gt;&lt;br /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7776826188127982181-4324309657546518545?l=sebthemonster.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sebthemonster.blogspot.com/feeds/4324309657546518545/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7776826188127982181&amp;postID=4324309657546518545' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/4324309657546518545'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/4324309657546518545'/><link rel='alternate' type='text/html' href='http://sebthemonster.blogspot.com/2008/03/petit-panorama-sur-gavarnie.html' title='Petit Panorama sur Gavarnie'/><author><name>Seb the Monster</name><uri>http://www.blogger.com/profile/06891047437621579245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-kNpgR61ng8g/TwHc8SiniQI/AAAAAAAAGhQ/ny5UdDSP3LA/s1600/0d1ffc9430b9ff707d92e54d9e60a63e.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_h7Qkc_jZyjk/R-AN-q7hLBI/AAAAAAAAALc/U4HCdk6KJZs/s72-c/Gavarnie_en_neige_2048.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7776826188127982181.post-2186035831242542170</id><published>2008-03-13T16:24:00.000-07:00</published><updated>2008-07-18T02:18:10.186-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programmation'/><category scheme='http://www.blogger.com/atom/ns#' term='ruby on rails'/><title type='text'>Les Annotations dans votre application Rails</title><content type='html'>Qui n'apprécie pas de voir d'un premier coup d'œil ce qu'il a prévu de coder ou d'améliorer dans son application Ruby on Rails.&lt;br /&gt;Jusque là, du temps de &lt;span style="font-style: italic; font-weight: bold;"&gt;Rails 1.2&lt;/span&gt; où je suis encore, l'on devait se contenter de mettre quelques commentaires, voir de les libellés avec quelques TODOs, FIXME ou autre OPTIMIZE ...&lt;br /&gt;&lt;br /&gt;Avec &lt;span style="font-style: italic; font-weight: bold;"&gt;Rails 2.0&lt;/span&gt;, il est possible de lancer une tâche rake permettant de lister les différentes annotations avec leur contexte (fichier de l'application, type de l'annotation et annotation) :&lt;br /&gt;&lt;blockquote style="background-color:#ececec; padding: 5px; border: 1px solid #d8d8d8;"&gt;&lt;span style="font-style: italic;font-size:85%;" &gt;rake notes&lt;/span&gt;&lt;br /&gt;ou &lt;span style="font-style: italic;font-size:85%;" &gt;rake notes:TODO&lt;/span&gt;&lt;br /&gt;ou &lt;span style="font-style: italic;font-size:85%;" &gt;rake notes:FIXME &lt;/span&gt;&lt;br /&gt;ou &lt;span style="font-style: italic;font-size:85%;" &gt;rake notes:OPTIMIZE&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;Le résultat obtenu serait le suivant:&lt;br /&gt;&lt;blockquote style="background-color:#ececec; padding: 5px; border: 1px solid #d8d8d8;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-style: italic;"&gt;(in /home/sebthemonster/RailsProjects/lpg-web)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;app/controllers/commande_controller.rb:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;  * [142] [TODO] Insérer un appel IPN pour vérifier si la transaction a tout de même eu lieu&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;  * [144] [OPTIMIZE] Réaliser une vue adaptée si l'échec est réel&lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;Il est possible d'utiliser cette tâche dans &lt;span style="font-style: italic; font-weight: bold;"&gt;Rails 1.2&lt;/span&gt; en téléchargeant le script de la tâche dans le répertoire&lt;span style="font-style: italic;"&gt; lib/tasks&lt;/span&gt; de votre application:&lt;br /&gt;&lt;br /&gt;sous Linux, saisissez dans le terminal les lignes suivantes:&lt;br /&gt;&lt;blockquote style="background-color:#000; padding: 5px; border: 1px solid #d8d8d8; color: #fff; font-family: arial; font-size:90%;"&gt;$ cd lib/tasks &amp;amp;&amp;amp; \&lt;br /&gt;wget http://dev.rubyonrails.org/export/7553/trunk/railties/lib/tasks/annotations.rake&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Sources: &lt;a href="http://ryandaigle.com/archives/2007/2"&gt;http://ryandaigle.com/archives/2007/2&lt;/a&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7776826188127982181-2186035831242542170?l=sebthemonster.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sebthemonster.blogspot.com/feeds/2186035831242542170/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7776826188127982181&amp;postID=2186035831242542170' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/2186035831242542170'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/2186035831242542170'/><link rel='alternate' type='text/html' href='http://sebthemonster.blogspot.com/2008/03/railles-annotations-dans-votre.html' title='Les Annotations dans votre application Rails'/><author><name>Seb the Monster</name><uri>http://www.blogger.com/profile/06891047437621579245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-kNpgR61ng8g/TwHc8SiniQI/AAAAAAAAGhQ/ny5UdDSP3LA/s1600/0d1ffc9430b9ff707d92e54d9e60a63e.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7776826188127982181.post-419547400163047045</id><published>2008-03-01T23:30:00.000-08:00</published><updated>2008-07-18T02:18:24.478-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ruby'/><category scheme='http://www.blogger.com/atom/ns#' term='moto'/><category scheme='http://www.blogger.com/atom/ns#' term='programmation'/><category scheme='http://www.blogger.com/atom/ns#' term='ruby on rails'/><category scheme='http://www.blogger.com/atom/ns#' term='montagne'/><category scheme='http://www.blogger.com/atom/ns#' term='pyrénées'/><title type='text'>Ouverture de mon blog</title><content type='html'>Comme je l'explique dans mon profil.. je suis un jeune programmeur... d'autant plus en &lt;span style="font-weight: bold;"&gt;Ruby on Rails.&lt;br /&gt;&lt;/span&gt;Mon projet actuel est un site marchand pour un petit commerce.&lt;br /&gt;&lt;br /&gt;Au fur et à mesure de mes découvertes, je ne manquerai pas ne vous en faire profiter.&lt;br /&gt;&lt;br /&gt;Les amoureux des grands espaces pourront commencer par profiter des quelques photos que j'ai commencé à mettre en ligne... celles-ci ont la grande majorité (pour ne pas dire toutes) seront prises dans les &lt;span style="font-weight: bold;"&gt;Pyrénées&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Mes petites escapades sur mon &lt;span style="font-weight: bold;"&gt;bicylindre&lt;/span&gt; préféré viendront également...&lt;br /&gt;&lt;br /&gt;Bonne lecture à tous et revenez de temps en temps... l'évolution sera dès à présent continue...&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7776826188127982181-419547400163047045?l=sebthemonster.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sebthemonster.blogspot.com/feeds/419547400163047045/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7776826188127982181&amp;postID=419547400163047045' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/419547400163047045'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7776826188127982181/posts/default/419547400163047045'/><link rel='alternate' type='text/html' href='http://sebthemonster.blogspot.com/2008/03/ouverture-de-mon-blog.html' title='Ouverture de mon blog'/><author><name>Seb the Monster</name><uri>http://www.blogger.com/profile/06891047437621579245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-kNpgR61ng8g/TwHc8SiniQI/AAAAAAAAGhQ/ny5UdDSP3LA/s1600/0d1ffc9430b9ff707d92e54d9e60a63e.png'/></author><thr:total>0</thr:total></entry></feed>
