Blogounage

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

dimanche 15 mars 2009

Abattre des cloisons non porteuses en briques

Dans les travaux de notre maison actuellement, je me suis enfin décidé à expliquer comment nous avons procédé pour l'abattage de cloisons. Plusieurs personnes ont semble-t-il été étonnées que je n'en parlasse point avant :-).

Abattre des cloisons en brique

Nous avions environ 30 à 40 mètres linéaires à abattre, sur des hauteurs de 2m50 ou 2m80. L'objectif était d'abattre absolument toutes les cloisons, parce que nous n'avions pas de mur porteur (seuls les murs extérieurs sont porteurs sur cette maison). Ces cloisons étaient en brique de 7cm d'épaisseur.

Première étape : se faire une idée de la difficulté des opérations

J'ai commencé par créer un passage entre les pièces pour faciliter la circulation. Ce premier perçage avait aussi pour objectif d'avoir une idée de la vitesse à laquelle nous pourrions abattre le reste.

J'y suis allé franco : à grands coups de masse. (J'avais acheté cette "masse trancheuse" chez Casto. Le côté "tranchant" est effectivement bien pratique.).

Note à ce propos : faites très attention à ce qu'il n'y ait rien qui craigne les projections de gravats de l'autre côté de la cloison sur laquelle vous vous acharnez. En effet, taper à coup de masses dedans a dans mon cas projeté des gravats largement jusqu'au mur suivant (situé à environ 4 mètres). Réfléchissez donc aux fenêtres qui peuvent se trouver derrière, ou simplement aux personnes qui travaillent avec vous. Dans ce dernier cas, hurlez simplement tiiimbeeeer avant de taper, ça fonctionne généralement plutôt bien :-).

Deuxième étape : industrialiser le processus

La technique du "c'est moi que vlà avec ma masse", c'est bien. Mais si vous cassez progressivement et simplement autour du point initial, ça va vous faire des tonnes de gravats à transporter par petits morceaux. Je vous la déconseille donc.

Je vous recommande en effet plutôt une technique que j'ai adoptée ensuite : casser le mur en faisant des grosses saignées pour réaliser des carrés de briques transportables. C'est plus simple à transporter dans la voiture que tout casser en petits bouts...

Pour vous, j'ai testé plusieurs techniques :

  1. Ma tête après le meulage À la meuleuse d'angle et disque diamant (on l'appelle aussi souvent "disqueuse") : bof. Je vous la déconseille plutôt, sauf si vous avez besoin d'une découpe au millimètre. Mais ATTENTION : si vous partez sur cette technique, préparez vous à faire de la poussière. Mais quand je dis poussière, je ne plaisante pas. La pièce sera remplie de poussière après 5 minutes de meulage...
  2. à la masse petit bout par petit bout : vous faites un trou, puis vous l'élargissez progressivement. Cette technique a le gros inconvénient de vous imposer un long et fastidieux ramassage de gravats après coup. Je vous la déconseille aussi. Vous devrez aussi investir à mon avis dans un nombre très important de "sacs de gravats" (j'y reviens plus bas) ;
  3. à la masse, avec des saignées pour essayer d'obtenir des plaques de par exemple environ 1m² plus facilement transportables ;
  4. à la masse et au marteau, par pan de cloison entier... On part toujours sur le principe des saignées, sauf qu'on part du sol, on va jusqu'au plafond. On fait la saignée au ras du plafond avec escabeau et marteau, puis on redescend jusqu'au sol au bout de quelques mètres. Vous l'aurez compris. Cette technique est de loin la plus rapide. Un conseil toutefois : soyez plusieurs et au moment où vous faites descendre la cloison, retenez la le plus longtemps possible. Par exemple, à trois, nous retenions sans aucun souci une cloison de 2m50 par environ 3m. Pensez aussi à mettre au sol des tapis ou toute chose de ce genre pour amortir le choc de la chute lorsque vous ne pouvez pas retenir jusqu'au bout. Nous avons utilisé cette technique pour les derniers 90% des cloisons sans soucis. Son gros avantage est qu'on peut ensuite simplement récupérer des morceaux de taille assez importante au sol sans trop de petits morceaux.

Chute de cloison accompagnée...Saignée dans les cloisons à abattre À propos des petits morceaux, les nombreux "bouts" de gravats que ce genre de travaux va vous produire, un conseil important : achetez des "sacs à gravats" (comme ceux-là). Ce sont des sacs en plastique extrêmement épais qui sont très utiles lorsqu'il faut balayer puis convoyer jusqu'à la déchetterie les bouts de briques cassées sur le sol. Attention, ne les jetez pas avec les gravats... Videz les simplement et réutilisez les jusqu'à ce qu'ils rendent l'âme (jusqu'ici, je dirais que nous avons utilisé chaque sac environ 5 à 10 fois, nous en avions acheté 24...)

Si vous avez des questions, n'hésitez pas.

Dans le prochain épisode, si vous êtes sage : abattre un plafond en plafonnette ou en lattis (oui, j'ai les deux).

mercredi 25 février 2009

Eclipse Killer Feature (un de plus) : formatage automatique du code modifié

Voilà pourquoi j'utilise Eclipse, pour ce genre d'apports qui peut paraître mineur au premier abord, mais qui en fait nous change la vie.

Lorsqu'on développe dans une équipe, on souhaite généralement appliquer entre autre des normes communes de formatage. Dans Eclipse, le Ctrl-Shift-F permet d'exécuter le formatage sur le fichier (ou sur toute une arborescence) selon le modèle qu'on aura défini et chargé au préalable.

Le Ctrl-Shift-F a cependant un défaut : sans sélection préalable, il va formater le fichier complet. La fois suivante que vous envoyez vos modifications aux gestionnaires de version (commit avec svn, par exemple), les développeurs qui récupèrent votre modification peuvent se demander pourquoi vous êtes allé modifier tout le fichier pour une simple faute de frappe...

Autre cas encore plus problématique : vous faites du développement MDA. Une partie plus ou moins importante de votre code est donc générée. Vous ne devez donc a priori surtout pas toucher au code en dehors de ce qu'on appelle généralement le code utilisateur (on retrouve ce principe avec acceleo il me semble). Du genre

// Ici, le code modifié manuellement sera écrasé par le générateur.
  // [DEBUT:METHODES]
// Là, le code ne sera pas écrasé à la régénération suivante.
  // [FIN:METHODES]

Depuis la 3.3 d'Eclipse, dans la partie Java/Editor/Save Actions de Window/Preferences, on peut demander à ce que le code qu'on vient de modifier soit automatiquement formaté... C'est pas formidable, ça ? À chaque Ctrl-S, le code modifié et uniquement celui-ci va subir le formatage adéquat... Via cette fonctionnalité, vous pouvez automatiser tout plein d'autres choses au moment de la sauvegarde, je vous laisse jouer avec :-).

java-editor-saveactions.png

vendredi 30 janvier 2009

Java User Group Toulouse

Via Sami, j'apprends ce matin que ça y est, le JUG Toulouse est né. Je me suis d'ores et déjà inscrit à liste de diffusion.

J'espère que je trouverai le temps de participer à ce groupe malgré les importants travaux à faire dans la maison que nous venons d'acheter.

PS : Sami, merci encore pour la bétonnière :-).

lundi 22 décembre 2008

Drop sequences for Oracle

Adam already showed how to generate all the drop table statements (impossible to trackback):

SELECT 'drop table '||table_name||' CASCADE CONSTRAINTS;' FROM USER_TABLES

As I just needed to drop sequences, based on Adam's query, here's the necessary:

SELECT 'drop sequence '||sequence_name||';' FROM USER_SEQUENCES;

Quite straightforward indeed.

Hope this helps.

vendredi 28 novembre 2008

À quelle vitesse vous tapez ?

41 mots

Speed test

vendredi 17 octobre 2008

L'image du jour

Reçu ça il y a quelques jours, ça m'a beaucoup fait rire : tapette.jpg

mardi 30 septembre 2008

Leçon de politique politicienne à l'américaine

Je viens de lire cet article du monde à propos du rejet du plan Paulson. Très fort, ce Douglas Holtz-Eakin...

Si M. McCain a évité de s'en prendre trop frontalement à Obama, son conseiller économique, Douglas Holtz-Eakin, n'a pas pris de pincettes.

Si l'adoption du plan de relance a échoué, explique-t-il, c'est "à cause de Barack Obama et des démocrates, qui mettent la politique avant le pays". [...] Sur les 433 élus de la Chambre basse, 228 ont voté contre, dont 133 républicains et 95 démocrates.

Refaisons le compte, d'après wikipedia, la chambre des représentants des États-Unis, aussi appelée chambre basse, est composée de 435 membres, répartis comme suit :

  • Républicains : 202 sièges
  • Démocrates : 233 sièges

Et on nous dit donc qu'ont voté contre le plan Paulson :

  • 133 républicains
  • 92 démocrates

Comptons les votes pour :

  • Républicains : 69 votes, soit 34% des républicains
  • Démocrates : 141 votes, soit 60% des démocrates

En résumé, Douglas Holtz-Eakin, républicain, accuse les démocrates qui ont voté massivement pour (autant en nombre qu'en pourcentage) d'avoir fait échouer le plan Paulson... C'est pas un rien malhonnête, ça, mon petit monsieur ?

mercredi 10 septembre 2008

Citation du soir, bonsoir !

Écoutant la radio, je vous la livre ici. Laurent Gerra imite Le Pen et parle de sa femme. Ça donne en gros :

À l'âge où je l'ai ramassée, elle n'avait déjà plus la nurserie, il ne lui restait plus que la salle de jeux.

Finesse, quand tu nous tiens :-).

dimanche 13 juillet 2008

How to retrieve the Hibernate Session from the EntityManager interface

Well, as I myself fell into this stupid gap, I guess I'll try to help. I was quite pushed in this trap by a fallacious part of the jboss documentation :

@PersistenceContext EntityManager entityManager;
public void someMethod();
{
  org.jboss.ejb3.entity.HibernateSession hs = (HibernateSession)entityManager;
  org.hibernate.Session session = hs.getHibernateSession();
}

Let's be clear : this is totally WRONG! Yes, it will work under JBoss, but as there's a standard way to do this, this is not the right way to do this.

In fact, there's a dedicated method that lets you retrieve the underlying persistence manager : EntityManager.getDelegate(). If you read this method's javadoc, you'll see the following :

/**
 * Return the underlying provider object for the EntityManager,
 * if available. The result of this method is implementation
 * specific.
 * @throws IllegalStateException if this EntityManager has been closed.
 */

public Object getDelegate();

And the "underlying provider", for Hibernate, is obviously the Hibernate Session instance...

So, the right way to retrieve the Session is something like the following instead :

@PersistenceContext EntityManager entityManager;
public void someMethod();
{
  org.hibernate.Session session = (Session)entityManager.getDelegate();
}

Under JBoss, using this code won't make a big difference. But using the standard way will let you run your code under several appservers (namely, it works like a charm[1] under JBoss 4.2.2.ga and Glassfishv2ur1 for example). If you use the bad way above, this will just crash under Glassfish, for example...

I reported the corresponding documentation bug in the JBOSS tracker.

Hope this helps...

Notes

[1] ça, c'est pour Seb

Comment gérer la rétro-compatibilité avec l'API d'Eclipse

Dans cet article, Eugene présente un cas où une API évolue. Une méthode est ajoutée qu'il serait bien de pouvoir utiliser. Problème : le faire rendrait le code non rétrocompatible. Donc, pour le faire tout de même sans casser la compatibilité, il utilise la reflection. Et pour le faire proprement, il met en œuvre un Proxy afin que ce code soit bien externalisé.

Une solution très classe de la part d'Eugene Kuleshov.

lundi 30 juin 2008

Comment réinitialiser manuellement les pages chargées par firefox au démarrage

Si, comme moi depuis 10 minutes, vous êtes dans l'impossibilité de relancer Firefox parce que la page sur laquelle vous étiez provoquait un plantage de FF, ce qui suit est pour vous.

Dans les options de Firefox, vous pouvez demander à ce que celui-ci réouvre les onglets ouverts avant la dernière fermeture (Onglet Général, le premier combobox). Une fois cette option sélectionnée, mon firefox qui gelait avait pour bonne idée de redémarrer sur la page en question et de regeler...

Et là, bizarrement, la proposition de "restaurer les onglets" ou de "démarrer une nouvelle session" n'était même pas offerte. Donc, bien bien bloqué.

La solution que j'ai trouvée est la suivante :

  • Tuez firefox
  • dans votre répertoire profile (dans quelque chose comme $HOME/.firefox/1d5s1.default sous Linux ou C:\Documents and Settings\votreuser\Application Data\Mozilla\Firefox\Profiles\1d5s1.default sous windows), supprimez simplement le fichier sessionstore.js.
  • Relancez firefox...

Voilà, en espérant que ça serve...

mardi 24 juin 2008

Quelques déclarations XSD ou DTD de formats XML connus

C'est le genre de chose qu'il est sympathique d'avoir écrit en tête de ce type de fichier pour disposer de l'auto-complétion XML dans son IDE favori. Lorsque j'utilise un nouveau format XML, la première chose que je cherche est en effet à ajouter cet entête pour me faciliter la vie (et aux autres une fois commité :)).

Note : dans la liste ci-dessous, je ne mets pas le prologue XML pour gagner en concision. Toutefois, ça ne fait jamais de mal de le mettre. Personnellement j'essaie de le mettre systématiquement.

Hibernate : mappings hbm.xml

Même s'il vaut mieux à mon avis passer aux annotations lorsqu'on en a la possibilité, voici une déclaration de DTD qui fonctionne chez moi pour ceux qui ont encore des mappings hibernate à la sauce XML :

<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" 
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping package="net.batmat.domaine">
...
</hibernate-mapping>

Java Persistence : persistence.xml

Pour ceux qui utilisent Java Persistence, cette "sous-spécification" des EJB3 devenue une spécification autonome dans sa version 2 :

<persistence xmlns="http://java.sun.com/xml/ns/persistence"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="
                http://java.sun.com/xml/ns/persistence
                http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"

        version="1.0">

...
</persistence>

Spring : fichier de contexte XML

Depuis la version 2, ils ont subdivisé leur format XML en différents namespaces. Voici un exemple fonctionnel qui met en œuvre un certain nombre de ces espaces de nommages XML. Je laisse en exercice le passage à Spring 2.5 (que nous utilisons, d'ailleurs, mais on n'a pas mis à jour le XML) ou l'ajout d'un autre namespace dont vous auriez besoin :-).

<beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:util="http://www.springframework.org/schema/util"
        xmlns:aop="http://www.springframework.org/schema/aop"
        xmlns:tx="http://www.springframework.org/schema/tx"
        xsi:schemaLocation="
                http://www.springframework.org/schema/beans
                http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
                http://www.springframework.org/schema/util
                http://www.springframework.org/schema/util/spring-util-2.0.xsd
                http://www.springframework.org/schema/tx
                http://www.springframework.org/schema/tx/spring-tx-2.0.xsd
                http://www.springframework.org/schema/aop
                http://www.springframework.org/schema/aop/spring-aop-2.0.xsd"
>

...
</beans>

Maven : pom.xml

Celui-là, il est sacrément pratique vu la taille du truc :

<project xmlns="http://maven.apache.org/POM/4.0.0"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
                      http://maven.apache.org/maven-v4_0_0.xsd"
>

...
</project>

Voilà déjà pour cette fois. Une fois cet entête ajouté, dans Eclipse par exemple, tapez juste "<" quelque part et vous verrez la liste des balises apparaître et leur documentation si les auteurs l'ont indiquée (après qu'Eclipse ait pu récupérer le XSD sur Internet, bien sûr) : Auto-complétion du XML avec Eclipse

Si vous en avez d'autres, n'hésitez pas à les poster (ou à les demander, si je suis dans un bon jour) dans les commentaires.

Update 01/10/2008, ajout du application.xml des EAR :

<!DOCTYPE application PUBLIC "-//Sun Microsystems, Inc.//DTD J2EE Application 1.3//EN" 
     "http://java.sun.com/dtd/application_1_3.dtd">

<application id="mon appli">
...
</application>

mercredi 4 juin 2008

FIA : les œillères de la connerie

Sans déconner, c'est pas un ramassis de neuneus à la FIA ?

Lorsque Sébastien Loeb, le multiple champion du monde de rally, monte une fois de plus sur un podium sans prendre soin de passer devant les maquilleuses auparavant, il est des gens assez chiants pour trouver à redire ! Surinder Thatti, via Libé :

Je me dois d’exprimer mon opinion à propos du piètre passage de Sébastien Loeb à la TV lors de l’arrivée du rallye du Mexique. Il n’était pas rasé, dépenaillé avec une chevelure négligée.

Jusque là, rien d'anormal. Il y a plein de gens aux mœurs différentes sur la planète. Ça peut éventuellement se comprendre.

Là où j'hallucine, c'est lorsqu'un débile de la direction de la Fédération Internationale de l'Automobile, j'ai nommé Morrie Chandler, se dit que vraiment oui, c'est pas normal, c'est une honte aux vrais mâles et tout et tout :

Malheureusement, ce n’est pas un problème propre à notre sport, vu que la même chose arrive dans le football et d’autres sports de "mâles". Bien sûr, ces personnes sont une insulte aux vrais mâles Ma seule solution c’est que nous suggérions à ISC (NDLR: International Sportsworld Communicators, la société détentrice des droits commerciaux et de retransmission) qu’ils aient la couverture à laquelle ils ont droit en tant que vainqueurs, mais sans gros plans et sur un laps de temps réduit.

Comme le dit Libé, après les récentes révélations au sujet de Max Mosley et ses frasques sado-masochistes nazi, il y a de quoi se demander dans quelle réalité des types comme Chandler vivent ! Qu'un champion soit pas très frais et un peu ébouriffé après une course de plusieurs heures et le port d'un casque, ça c'est inadmissible.

Par contre, que le président de toute la fédé s'amuse en privé à papoter en allemand avec des prostitués qui le traitent comme un prisonnier, là c'est le black out. (Précisons que Max Mosley n'est pas allemand et que son père avait créé l'Union Fasciste Britannique, le deuxième point peut donner une idée de l'origine de ce genre de fantasme...)

Et nouvelle fraîche : Max Mosley a donc bien été réélu hier à la tête de la FIA.

Plutôt douteuse cette histoire, vous avouerez...

mercredi 28 mai 2008

40 000 ans de prison

En triant mes vieux mails, je viens de me marrer un bon coup. Merci à Yoyo sur ce coup-là :

mardi 5 février 2008

Danseuse : quel côté de votre cerveau utilisez-vous le plus ?

Je viens de recevoir cette image par mail, je vous mets le texte explicatif, sans préjuger de la véracité des propos. Ce qui est sûr, c'est que le résultat parmi les collègues que j'ai autour de moi est déroutant. Certains voient tourner cette danseuse dans un sens, d'autres dans l'autre sens, d'autres la voient changer régulièrement...

Nous utilisons les hémisphères gauche et droit de notre cerveau pour des tâches bien différentes. Pas étonnant dès lors, que notre caractère détermine l'hémisphère que l'on sollicite le plus souvent. Ca vous laisse dubitatif ? Faites le test ! Le test est simple. Regardez cette danseuse et dites-nous dans quel sens elle tourne.

Pour une grande majorité, la danseuse tourne dans le sens contraire des aiguilles d'une montre; ceux-là utilisent surtout l'hémisphère gauche. Pour les autres en revanche, elle tourne dans le sens des aiguilles d'une montre ; ces derniers utilisent plus souvent l'hémisphère droit.

Mais qu'est-ce que cela signifie ?

* L'hémisphère gauche du cerveau est le côté de la logique, des sciences et des faits purs et durs. Vous faites attention aux détails, aux mots que vous utilisez et reconnaissez des patrons. Vous êtes ancré dans la réalité, et vous basez sur ce que vous savez et comprenez. Vous vous préoccupez du présent, et du passé et avez tendance à ne prendre aucun risque. Vous êtes concret et élaborez des stratégies.

* L'hémisphère droit du cerveau est caractérisé par les sentiments, l'imagination, la philosophie et la religion. Vous vous préoccupez des images, des symboles et des concepts. Vous n'avez pas besoin de tout savoir ; parfois, il vous suffit de croire. Vous êtes compréhensif, impulsif et prenez des risques. Vous êtes plus préoccupé par l'avenir que par le passé.

Personnellement, jusqu'à présent, ça ne tourne QUE dans le sens des aiguilles d'une montre.

- page 2 de 21 -