iPad Wifi + HTC Hero 2.2 = iPad 3G

Oui, c’est possible de profiter de la 3G avec un  iPad Wifi ! Bon ça on le sait depuis la présentation Google I/O 2010 avec la démo en live de la fonctionnalité de tethering de Froyo.

Mais comment fait-on quand on est frustré d’avoir un HTC Hero officiellement en 2.1 ? La réponse en quelques étapes.

Lire la suite…

Catégories:outil Tags:,

Configuration Maven2 : ready for Java EE6 (JSF 2.0, EJB 3.1, Servlet 3.0 et Glassfish 3.0.1)

Je démarre mon nouveau projet perso et je compte utiliser Java EE 6.

J’utilise Netbeans 6.9 comme IDE mais j’aime aussi utiliser Maven2 pour compiler/builder et intégrer mes projets dans Hudson et Sonar.

Je vous livre ici mon pom.xml configuré pour utiliser les dépendances JSF, EJB, Servlet, … ça vous évitera de perdre du temps à chercher les repositories, les numéros de version et les dépendances adéquates.

</pre>
<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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>fr.kaddath.apps</groupId>
<artifactId>fluxx</artifactId>
<packaging>war</packaging>
<version>1.0</version>
<name>Fluxx</name>
<url>http://www.fluxx.fr.cn/</url>

<properties>
<junit-version>4.7</junit-version>
<eclipselink-version>2.0.0</eclipselink-version>
<glassfish-version>3.0.1</glassfish-version>
<jsf-version>2.0</jsf-version>
<rome-version>0.9</rome-version>
<log4j-version>1.2.14</log4j-version>
<commons-lang-version>2.3</commons-lang-version>
</properties>

<scm>
<connection>scm:svn:https://kaddath.googlecode.com/svn/trunk/fluxx_netbeans/</connection>
<developerConnection>scm:svn:https://kaddath.googlecode.com/svn/trunk/fluxx_netbeans/</developerConnection>
<url>http://code.google.com/p/kaddath/source/browse/#svn/trunk/fluxx_netbeans</url>
</scm>

<dependencies>
<dependency>
<groupId>javax.faces</groupId>
<artifactId>jsf-api</artifactId>
<version>${jsf-version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>rome</groupId>
<artifactId>rome</artifactId>
<version>${rome-version}</version>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>${commons-lang-version}</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>${log4j-version}</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit-version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>javax.persistence</artifactId>
<version>${eclipselink-version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>eclipselink</artifactId>
<version>${eclipselink-version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.glassfish</groupId>
<artifactId>javax.ejb</artifactId>
<version>${glassfish-version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>6.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>jdom</groupId>
<artifactId>jdom</artifactId>
<version>1.0</version>
</dependency>
</dependencies>
<build>
<sourceDirectory>${basedir}/src/java</sourceDirectory>
<testSourceDirectory>${basedir}/test</testSourceDirectory>
<outputDirectory>${basedir}/target/classes</outputDirectory>
<testOutputDirectory>${basedir}/target/test-classes</testOutputDirectory>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<inherited>true</inherited>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<webXml>${basedir}/web/WEB-INF/web.xml</webXml>
<warName>fluxx</warName>
</configuration>
</plugin>
</plugins>
</build>

<repositories>
<repository>
<id>glassfish-maven-repository.dev.java.net</id>
<name>GlassFish Maven Repository</name>
<url>http://download.java.net/maven/glassfish</url>
</repository>
<repository>
<id>EclipseLink Repo</id>
<name>Eclipse maven repository http://eclipse.ialto.org/rt/eclipselink/maven.repo/</name>
<url>http://mirror.csclub.uwaterloo.ca/eclipse/rt/eclipselink/maven.repo/</url>
</repository>
</repositories>
</project>
<pre>
Catégories:outil Tags:, ,

Retour sur la certification SCJP 5.0 & SCBCD 5.0

Suite à l’annonce des jduchess hier soir au Paris JUG, je ressorts deux billets de mon ancien blog concernant les certifications que j’ai passées en 2007 et 2008. J’espère que ça aidera les futurs candidats à la certification.

Note : Les liens ne sont peut-être plus à jour.

Sun Certified Java Programmer 5.0

J’ai obtenu la certification Sun Certification Java Programmer 5 (CX-310-055) avec un score de 87% de réussite. Voici comment je me suis préparé :

Tout d’abord, je vous conseille ce livre de référence pour préparer la certification :

Certes il est en anglais mais le niveau est tout à fait abordable. Il faut le lire intégralement et faire les tests de fin de chapitre. Il contient un CD avec 2 examens électroniques blancs.

Ensuite, j’ai utilisé 2 logiciels de tests, le logiciel de Whizlabs :

Pour finir, il existe un forum dédié aux certifications Sun à cette adresse : http://www.javaranch.com

En ce qui concerne la préparation elle-même, j’ai lu le livre l’année dernière à raison d’un chapitre par week end, ce qui n’était pas vraiment une bonne chose. Puis j’ai pratiqué les tests tous les jours durant 1 mois et demi avant de passer l’examen. Je notais mes mauvaises réponses et je les révisais tous les matins.

Le jour de l’examen je n’ai eu aucune surprise au niveau de la forme du questionnaire, les 3 logiciels de tests se complètent parfaitement et couvrent tout le programme et toutes les formes de questions possibles (QCM, QRM, Drag n Drop).
Concernant les questions elles-mêmes, il n’y a de parties plus simples que d’autres, tout dépend de vos affinités personnelles.
Pour finir, l’obtention de cette première certification vous ouvre les portes vers de nouveaux objectifs plus intéressant tels que les EJB3, certification que je prépare actuellement. Si vous avez des questions, à votre dispo !

Sun Certified Business Component Developper 5.0

L’examen dure 145 minutes et comporte 61 questions. Il faut 59% pour être certifié (36 bonnes réponses). Personnellement j’ai tout bouclé en 1h20, sans effectuer de relecture pour ne pas douter de mes réponses.

Voici comment je me suis préparé :

Tout d’abord, il n’y a pas de livre officiel d’aide à la préparation (contrairement à la SCJP ou la SCWCD par exemple). Il faut donc se procurer différents documents :

Ensuite, j’ai utilisé 2 logiciels de tests :

Pour finir, il existe un forum dédié à la certifications SCBCD à cette adresse : http://saloon.javaranch.com/cgi-bin/ubb/ultimatebb.cgi?ubb=forum&f=70

En ce qui concerne la préparation en elle-même, j’ai lu le livre Oreilly EJB3, à un rythme d’un chapitre par soir. Ensuite j’ai commencé les tests Whizlabs pour connaître mes lacunes. Après avoir fait tous les tests Whizlabs j’ai fait les tests d’Enthuware. Comme pour la SCJP5, je notais dans un PowerPoint mes erreurs ou des rappels. Cela constitue une fiche de révision personnelle.

Catégories:certification Tags:

Mieux coder …

Je suis en train de lire Clean Code et j’en suis à un peu plus de la moitié et aujourd’hui j’ai codé mieux que jamais!
J’ai appliqué plusieurs conseils distillés par le livre et je pense que mon code est meilleur : plus lisible, plus concis, mieux architecturé, et la testabilité a été grandement améliorée.
Voici ce que j’ai fait en boucle …

10 questions à un indépendant

30/05/2010 1 commentaire

Le statut d’indépendant m’intéresse de plus en plus et j’ai posé quelques questions à un ami freelance. Il a rédigé une synthèse de nos échanges par mail et en a fait un billet.

Vous pouvez consulter le billet Consultant web en indépendant sur le blog de Jean François Naud.

Si vous aussi, vous êtes intéressé par le sujet, je vous conseille les épisodes des castcodeurs :

Les Cast Codeurs Podcast – Episode 19 – Interview independents partie 1 – Mathilde Lemee, Nicolas Martignole

Les Cast Codeurs Podcast – Episode 21 – Interview independents partie 2 – Aucune SSII n’a ete martyrisee pendant l’enregistrement

Bonne lecture et bonne écoute.

Catégories:freelance Tags:

Bon code vs Mauvais code

29/05/2010 5 commentaires

On est samedi, il pleut, et pourtant le moral est bon car je viens de visionner la présentation de Robert C. Martin a.k.a Uncle Bob : Bad Code, Craftsmanship, Engineering, and Certification.

Robert C. Martin has been a software professional since 1970 and an international software consultant since 1990. He is founder and president of Object Mentor Inc., a team of experienced consultants who mentor their clients worldwide in the fields of C++, Java, OO, Patterns, UML, Agile Methodologies, and Extreme Programming.

- Antony : Alors JVeille, de quoi ça parle cette conférence qui t’a tant enthousiasmé?

- JVeille : Mon cher Antony, dans cette conférence on parle principalement de code, le mauvais code et le bon code. D’ailleurs, la conférence commence par le mauvais code avec la projection du film suivant (attention les yeux, ça pique) :

Lire la suite…

Conseils sur la gestion d’équipe

Hier soir, soirée cinéma InfoQ. Je regardais la vidéo intitulée Code Leaders and Beautiful Teams. C’est une présentation animé par Roy Osherove.

Je conseille cette présentation aux chefs de projets junior comme moi, à ceux qui ont peu d’expérience et qui sont à la recherche de conseils et d’astuces pour bien démarrer. Roy Osherove revient sur les réussites et les échecs de sa vie professionnelle. Il parle notamment de la fois où il avait été recruté par une société qui lui avait confié un problème à résoudre. Pendant des semaines il est resté bloqué dessus, sans avertir ses responsables ou les membres de son équipe. Un jour, il est s’est fait porter pâle et les gars de son équipe ont réussi en très peu de temps à trouver une solution. L’égo de Roy en a pris un coup, il s’est fait virer …

Pouor éviter d’en arriver là, Roy Osherove distille son savoir, son approche pragmatique à travers différents slides et anecdotes issues du terrain.

Deux slides m’ont marqué particulièrement. Le premier est tellement bien fait :

Le deuxième est une liste de questions à se poser ou à poser à l’équipe tous les jours ou une fois par semaine :

Dans la présentation, vous verrez également qu’on parle de Kanban, de tests unitaires, de programmation par binôme, de revue de code, etc.

Et en bonus final … vous aurez droit à une chanson des Guns n Roses revisitée et adaptée par le speaker …

Bon visionnage !

Suivre

Recevez les nouvelles publications par mail.