Koders, la bibliothèque de codes

Lorsqu'on code, il est parfois utile de s'appuyer sur ce qui a déjà été réalisé par ailleurs, que ce soit pour s'en inspirer ou pour éviter de s'acharner à rien.

Le hic, c'est que les bouts de code utiles sont dispersés. Le temps de recherche est donc considérable.

Koders résoud partiellement cette problématique en proposant plus de 2 milliards de morceaux de code open source dans tous les langages.

Koders

On peut toutefois regretter la difficulté d'emploi du moteur de recherche ; il a tendance à ramener trop de résultats.

Il n'empêche que ce site est pratique et carrèment indispensable aux bons fainéants qui se respectent.



Regexp pour les caractères accentués en PHP

Juste pour ne pas oublier, et parce que ça peut servir à quelqu'un, un petit bout de PHP qui permet de transformer les caractères accentués en caractères... non accentués :

function DegagerUrlPourries($str){
   $pattern = Array("/é/", "/è/", "/ê/", "/ç/", "/à/", "/â/", "/î/", "/ï/", "/ù/", "/ô/");
   $sans_pattern = Array("e", "e", "e", "c", "a", "a", "i", "i", "u", "o");
   $str_sans = preg_replace($pattern, $sans_pattern, $str);
   return preg_replace("/^0-9a-zA-Z+/", "_", $str_sans);
}

Ce qui donne pour "Lot de 30 réfrigérateurs" :

http://www.lolib.fr/-1/posts/3_Bonnes_affaires/22_Electromenager/122_lot_de_30_refrigerateurs_.html

assisté en plus du ModRewrite, s'entend :)

PS : Tant que j'y suis, lolib.fr, le site de Petites Annonces Gratuites décolle correctement avec 200 annonces en lignes 10 jours après lancement, et toujours sans référencement correct (toujours pas d'amateur pour me faire une petite pub ?)



Construisez vos formulaires en quelques clics

Pour être un bon fainéant, il faut beaucoup travailler. Sauf qu'il n'est pas toujours nécessaire de bosser des masses pour s'adonner à la meilleure des activités qui soit : la glande !

Preuve en est le service phpform, qui simplifie la conception de formulaires web.

En trois étapes et quelques ajustements, le tour est joué, contrôles de champ inclus.

Son fonctionnement ? Sélectionnez la couleur de votre template de formulaire, choisissez les types de champs requis ainsi que leurs propriétés et de téléchargez le pack. C'est tout.

phpform

Phpform.org ne nécessite aucune inscription. Il est entièrement gratuit.

Encore un site à bookmarker d'urgence !



Refactor :my => 'code'

Lorsque l'on code, il arrive parfois que l'on soit maladroit dans la manière dont on appréhende certaines boucles ou traitements de données. Souvent, même, on se dit qu'on y reviendra plus tard, qu'on fera plus joli puis, par manque de temps ou fainéantise, on zappe l'idée.

Pour parer à cet état de fait, le site Refactor :my => 'code' fournit une merveilleuse assistance.

Je m'explique : Après avoir pondu votre bout de code, et vous être enregistré sur le site bien entendu, vous le soumettez à la communauté de développeurs. Ces derniers le reprendront et soumettront en retour, sous forme de commentaires, leurs méthodes propres pour gérer ce même traitement.

refactor my code

Simple et pratique, j'enrage de ne pas y avoir pensé avant :p. Un "must have" !



Fast API Search - Simplifiez vous la programmation

Codeur, codeuse, programmeur, programmeuse, mon lapin,

Combien de fois as-tu ramé à la recherche de la syntaxe à même de te tirer d'affaire ? Combien d'heures as-tu perdu à parcourir les documentations dans l'espoir, parfois vain, de trouver la petite astuce qui t'aurait évité des nuits d'insomnies ? Combien de noeuds à l'estomac as-tu eu alors que tu devais rendre un boulot urgent basé sur un langage que tu maîtrisais peu ? Combien de fois, au terme de 2 paquets de clopes et 3 cafetières, alors que tu étais exténué, t'es-tu demandé "Rhaaa mais putain, elle retourne quoi déjà cette foutue fonction ?"

Souvent, n'est-ce pas ? Ca t'a gonflé, gavé, saoûlé. Tu t'es même dit quelquefois en avoir marre de ce boulot de con.

Sache mon bichon que ton calvaire est fini parce que maintenant, il y a ça :

api search

Fast API Search, c'est LE machin qu'il faut avoir systématiquement ouvert dans un onglet de navigateur. Son rôle ?

Un renvoi vers les documentation HTML, CSS, Javascript, Ajax et certains frameworks associés, XML, XSL, C/C++, PHP & frameworks les plus populaires, Ruby et l'incontournable Rails, Python, Perl, Erlang, Java, Mysql, PostgreSQL[1], ...

Mais attention, pas n'importe comment le renvoi. La recherche est guidée et restrictive au périmètre de langages ou technos désiré. De plus, au fil de la frappe de l'expression souhaitée, une jolie liste indiquant les grandes lignes par segment de recherche s'affiche, permettant d'affiner ou explorer d'autres pistes.

Bref, ce truc est tout simplement génial tant dans le soutien réel qu'il apporte que dans son fonctionnement et sa présentation.

Notes

[1] Je la cite sinon je vais me faire frapper



Ruby on .NET

4 mois après l'annonce de son lancement par Microsoft, IronRuby sort. Il devrait être disponible vers la fin août.

IronRuby, c'est quoi ? C'est une adaptation du langage de scripting Ruby par Microsoft pour utilisation sous .NET, disponible sous license MPL (Microsoft Permissive License), dont le code source est mis à disposition de la communauté, en l'occurrence RubyForge[1].

Vous trouverez plus d'infos chez John Lam, concepteur du RubyCLR[2] et Scott Guthrie, general manager de Microsoft.

Notes

[1] Pour Python, c'est IronPython

[2] CLR : Common Language Runtime



ftp récursif (suite)

Il y a environ un mois, j'évoquais l'utilisation de wget en vue de récupérer récursivement une arborescence ftp.

Bien que cette solution se soit avérée pratique, elle présentait un grave inconvénient : la fiabilité de wget qui présentait un comportement hératique.

Je me suis alors rabattu sur la commande lftp qui, outre la faculté de récupérer un ftp en récursif, possède un mode mirroring fiable correspondant plus à mes attentes.

Voici la commande :

lftp -c \"open ftp://login:password@adresse_ftp; cd /repertoire/destination; mirror -c -e --allow-suid --no-umask --parallel=4 --verbose=3 --use-cache ./ \"

et son détail :

Lire la suite



Client FTP récursif avec Wget

Il me faut faire une moulinette infernale. Le travail consiste à récupérer récursivement une arborescence monstrueuse sur un serveur ftp avant de procéder à l'agrégation et au traitement des données.

D'ordinaire, pour un script complet allant de la récupération des données à leur intégration en base de données, j'aurais utilisé totalement Ruby. Je dis bien "j'aurais" car ce n'est pas le cas.

J'ai utilisé Ruby pour le traitement des fichiers et l'alimentation de la base mais, vu les limitations des fonctionnalités FTP imposées par Ruby, il me semblait beaucoup trop contraignant de perdre un temps fou, sur une chose aussi triviale, à triturer ce langage.

J'ai donc porté mon dévolu sur la commande wget qui fait parfaitement office de ftp récursif en... une ligne.

$ wget -r -P/home/demoi/ -nH --cut-dirs=8 --ftp-user nom_login --ftp-password mot_de_passe ftp://ftp.prout.fr/../../arbo/des/fichiers/*'

Descriptif des options utilisées :

-r : récupération récursive de l'arborescence

-P/home/demoi : Le répertoire (/home/demoi) dans lequel vont attérir les fichiers downloadés

-nH : Désactive la génération de la racine des répertoires avec le nom de l'hôte. Par défaut, l'invocation de wget avec -r http://ftp.prout.fr/ crée une hiérarchie de répertoires avec ftp.prout.fr/ comme racine. L'option -nH désactive ce comportement.

--cut-dirs=5 : Ignore 5 niveaux du répertoires distant pour la copie en local.

Maintenant, reprenons notre exemple pour illustrer l'utilisation des options -nH --cut-dirs=n. la récupération de "ftp://ftp.prout.fr/../../arbo/des/fichiers/*" donnerait

Sans option : ftp.prout.fr/../../arbo/des/fichiers/

-nH : ../../arbo/des/fichiers/

-nH --cut-dirs=1 : ../arbo/des/fichiers/

-nH --cut-dirs=4 : fichiers/

Maintenant, examinons le comportement avec --cut-dirs sans -nH :

--cut-dirs=4 : ftp.prout.fr/fichiers/


Et enfin, les informations de connexion

--ftp-user : le login ftp

--ftp-password : le mot de passe ftp

Pour plus d'infos, consultez la manpage de wget ou allez jeter un oeil ici.


Affaires à faire

Categories

Contact et recommandation

Pub

Divers

  • Ce site est listé dans la catégorie Internet : Blog de l'annuaire Forum sur le referencement naturel Google et Définitions Dicodunet

Syndication

On en parle à c't'heure


Les 10 derniers billets publiés


Rechercher sur le blog :

« juin 2009
lunmarmerjeuvensamdim
1234567
891011121314
15161718192021
22232425262728
2930


Eud'la lecture saine


En relation avec fourre-tout



Archives:.

Related Posts with Thumbnails