Kamelot Blog

Aller au contenu | Aller au menu | Aller à la recherche

lundi 31 août 2009

lun
31
aoû '09

Comment démarrer un Cluster Mysql 7.0 avec 2 noeuds ?

Une explication pour démarrer à partir de zéro un cluster MySQL 7.0.7 (ou supérieur) avec 2 noeuds de gestion. C'est dans l'article How to start MySQL Cluster 7.0 with 2 magement nodes? de notre compatriote Geert.

samedi 29 août 2009

sam
29
aoû '09

Quality Assurance in PHP Projects

Quality Assurance in PHP Projects
De sebastian_bergmann



SlideShare Link

dimanche 23 août 2009

dim
23
aoû '09

Prodigy vs White Stripes

YouTube - prodigy vs white stripes (mash-up video)

jeudi 20 août 2009

jeu
20
aoû '09

mon checkout ne fonctionne pas via cron

J'ai mis en place un serveur de développement avec un script qui checkout le code.

Pour ce faire j'avais fait un script shell qui fait tout mes checkout générait quelques infos de logs.

Ce script appelé régulièrement par cron devait garder mon serveur de test synchrone.

Problème...

quand j'appelais ce script en direct tout fonctionnait correctement, mais le cron lui ne mettait jamais à jour.

Je me suis alors décidé de regarder les mails envoyés par cron et j'y ai vu ceci

 svn: Can't convert string from 'UTF-8' to native encoding

Une recherche sur le web m'a permi de trouver cet article et la lumière fut.

Ce qui se passe c'est que sur le svn il y avait dans un sous-répertoire des noms de fichier contenant des caractères utf8 !!!.

un set en console m'indiquait LC_CTYPE=en_US.UTF-8 mais pas en cron.

Solution

Dans mon script appelé par le cron, J'ai juste ajouté

export LC_CTYPE=en_US.UTF-8

à mon script et tout à fonctionné correctement

samedi 15 août 2009

sam
15
aoû '09

Ne croyez pas tout ce que je vous raconte

En lisant ce post : Devoirs de vacances, ou comment se coucher moins bête en lisant son propre blog sur Presse-Citron

J'ai répondu en commentaire

C'est assez vicieux et vrai.  Personnellement, moi qui blogue 
principalement à propos de php, parfois mysql, le libre, la musique, ... 

Je me dit souvent que je blogue avant-tout 
pour mettre mon propos à l'épreuve.

Mais l'ego est tel, je le reconnais qu'il m'arrive encore 
de ne pas poster quand je ne suis pas "confiant" dans ce que je dis. 
C'est dommage parce que j'aurais pu ouvrir les débats. 

Et si je commençais tous mes posts par une phrase du style
"Ne croyez pas tout ce que je vous raconte"
ca le fait pas non plus.

Tiens je vais bloguer ce commentaire...

Donc voilà. Quand je poste un avis c'est pour avoir le vôtre. Quand j'affirme un truc, c'est en toute ouverture à la contre-affirmation ou à l'ajout de précision.

Je blogue avant tout pour moi en espérant que mon propos soit enrichi de vos commentaires.

Je vais même ajouter ce post pour être présent en permanence dans le menu de gauche.

mardi 11 août 2009

mar
11
aoû '09

PHPBenelux meeting Houthalen (B) August 26 2009 | phpbenelux.eu

PHPBenelux meeting Houthalen (B) August 26 2009

PHPBenelux propose une nouvelle réunion prévue le 26 août 2009.

Cette fois, c'est dans l'Est de la Belgique, à Houthalen.

Au programme

  • 20:00 - accueil
  • 20:30 - à déterminer
  • 21:00 - break
  • 21:10 - Design Patterns par Andries Seutens
  • 22:00 - goodies, drinks & socializing

lundi 10 août 2009

lun
10
aoû '09

Et en voilà 1000.

1000eme post sur ce blog.

Ca en fait des heures passées.

Je ne blogue pas si souvent que ça il aura fallu 6 ans et un mois pour y arriver.

J'avais commencé pendant 6 posts sur la plateforme de blog 20six.fr pour rapidement installer un dotClear et poster SILENCE SUR LE PLATEAU, ON TOURNE Clap.

En moyenne je passe 2 à 4 h sur un post avant de vraiment le publier. (puis je passe encore 2 - 3 a retrouver des fautes ou des imprécisions à corriger.) Ce qui me prend souvent beaucoup de temps c'est d'illustrer ou d'ajouter des liens, mais c'est aussi ce qui me semble important à faire.

De 4 catégories,

  • Just a belgian life
  • SNCB
  • technos du libre
  • Débilités de l'actualité

Je suis passé à 17

  • Général
  • PHP / PEAR
  • Mysql
  • Méthodes Agiles
  • Techno du web
  • Logiciels
  • J'aime l'info
  • le monde est fou
  • Horreur et tranquillité
  • Prof et TIc
  • Musique
  • Who's who
  • SNCB-STIB
  • Revue (de presse)
  • Scoutisme
  • Claroline
  • Skynet

Avec une préférence particulière pour PHP / PEAR, Mysql, Techno du web, J'aime l'info, musique et le monde est fou.

Souvent je me demande si ce blog sert à quelque chose, à quelqu'un. J'ai posé la question et j'ai toujours quelques réponses, et je vois à mes stats que quand je parle de php ou mysql, Les visites sont dopées par les planet et par Nexen.

Certaines catégories n'ont rien à voir (c'est aussi ce qu'on reproche à mon blog, D'être "pointu" dans des trucs qui n'ont rien à voir ensemble.

J'aime parler de musique, parce que j'aime la musique, avec une belle brochette de CD, et d'écoute en ligne; ... avec les bootlegs, et les vieux brols dénichés sur youtube pendant mes soirées "coton-tige"... et "Horreur et tranquillité" reprend ce que j'ai écris. Avec ma fille

Depuis que j'ai changé de boulot, plus de Claroline (on m'a demandé de ne plus contribuer), plus de Skynet (je pourrais blesser les amis qui m'y reste avec des propos entachés de dégoût pour cette boite et certain de leurs managers), plus de sncb-Stib, (maintenant je pollue seul dans ma kindermobile).

Prof-eTic avait commencé en même temps que le blog, parce que j'ai fait mon CAP pour être prof. Mais les salaires proposés ont vite éteint l'étincelle de l'enseignement.

Pour la suite ?

J'ai envie de continuer ma série PHP_Scan, et d'être plus prolifique sur mysql et sur l'agile.

Mes coup de gueules sur l'actu viendront tout seul. Et de temps en temps un truc hors contexte, juste parce que j'ai envie de le dire et que c'est mon blog. Pendant mon CAP Mon fils

Conférence Claroline à l'UCL Coupe de savoyard

lun
10
aoû '09

J'aime plus tintin.

Ce post reflète un manque d'objectivité et de discernement de ma part, mais il reste aussi le reflet de la réalité.

J'aime plus tintin.

J'en parlais récemment avec Tom Cruise et la scientologie. J'associe tellement les deux que je n'arrive plus à regarder un film avec l'acteur sans y penser et avoir du mal à aimer le film. Tant ca me dégoute.

Avec Tintin c'est pareil.

Tout ce trafic autour de l'œuvre d'Hergé, me touche tellement (négativement) que j'en viens à prendre en grippe ma tintinophilie.

Quand je pense à Tintin, je pense plus à Moulinsart, Rodwell et Cie qu'à Georges Rémi et j'ai la nausée.

-edit- Ils ont retiré le post avec un mot d'excuse bidon (ce qui les gênait ce n'est pas le post de Rodwell mais les commentaires) Pas content vous pouvez continuer à leur dire : info@tintin.com. Moi en tout cas, tintin.com n'est pas le site officiel de tintin mais de .com

Au fait le jeune homme c'est le successeur de Jean-Pierre Talbot

-edit-

D'autres en parlent :

mercredi 5 août 2009

mer
05
aoû '09

PHP scan : array intersect

Il y bien bien longtemps (8-9 ans), j'écrivais un tuto sur les tableaux en php(3)... que d'eau passées sous les ponts depuis, avec surtout la révolutionnaire arrivée des itérateurs.

Pourquoi je parle de ceci ?

Une question au boulot hier  : j'ai une liste et un tableau. Je veux récuperer les valeurs du tableau en question pour lesquelles les clés sont dans la liste.
Et ce sans faire de boucle en php.

Première réponse qui me vient à l'esprit : filterIterator ou array_ intersect_???

Ca c'était pour la petite histoire et pour un post ulterieur, mais là je vais d'abord passer en revue la famille des array_intersect_*

Fonction                  |  PHP 4    | PHP 5
- - - - - - - - - - - - - | - - - - - | - - - - - 
array_intersect           | >= 4.0.1  |  oui   
array_intersect_assoc     | >= 4.3.0  |  oui
array_intersect_key       |   non     | >= 5.1.0
array_intersect_uassoc    |           |  oui
array_intersect_ukey      |   non     | >= 5.1.0
array_uintersect_assoc    |   non     |  oui
array_uintersect_uassoc   |   non     |  oui

Points communs

  • retournent toutes un tableau
  • les valeurs retournées sont toujours celle du premier tableau
  • les clés retournées sont toujours celle du premier tableau
  • le nombre de tableau supplémentaires est libre
  • pour les _intersect_u le nom de la fonction call back est à la fin.
  • pour les _uintersect_u le nom des 2 fonctions callback est à la fin.
  • toutes disponibles à partir de 5.1.0 (et vous n'utilisez pas une antiquité donc vous les avez toutes :)

array_intersect

  • array_intersect ( array $array1 , array $array2 [, array $ ... ] )
retourne un tableau contenant toutes les valeurs qui sont présentes dans tous les autres arguments array2 , ...

array_intersect_assoc

  • array_intersect_assoc ( array $array1 , array $array2 [, array $ ... ] )
retourne un tableau contenant toutes les valeurs qui sont aussi présentes dans tous les autres arguments array2 , ... 
Notez que les clés sont utilisées durant la comparaison, contrairement à array_intersect().

array_intersect_key

  • array_intersect_key ( array $array1 , array $array2 [, array $ ... ] )
array_intersect_key() retourne un tableau contenant toutes les valeurs du tableau array1 
qui contiennent des clés présentes dans tous les arguments.

array_intersect_uassoc

  • array_intersect_uassoc ( array $array1 , array $array2 [, array $ ... ] , callback $key_compare_func )
retourne un tableau contenant toutes les valeurs du tableau array1 
qui sont présentes dans tous les arguments. 
Notez que les clés sont utilisées dans la comparaison par opposition à la fonction array_intersect().
La comparaison d'index est effectuée en utilisant la fonction de rappel fournie. 
Elle doit retourner un entier, plus petit que, égal à ou plus grand que zéro 
si le premier argument est considéré comme étant, respectivement, plus petit que, égal à ou plus grand le second.

array array_intersect_ukey

  • array_intersect_ukey ( array $array1 , array $array2 [, array $ ... ] , callback $key_compare_func )
retourne un tableau contenant toutes les valeurs du tableau array1 
qui contiennent des clés présentes dans tous les arguments array2 , ... 
Cette comparaison est effectuée en utilisant une fonction de rappel fournie par l'utilisateur. 
La fonction de rappel doit retourner un entier plus petit que, égal à ou plus grand que 0 si la première clé est considérée, 
respectivement, comme plus petite que, égale à ou plus grande que la seconde.
exemples

Lire la suite...

Tags