As part of my work at CGI, I participated in a project at Aimia (Aeroplan) to help create a service that evaluates the value of an Aeroplan reward versus the requested item (airplane flights).


  • Analyze business needs versus data that can be obtained and used.
  • Develop business rules based on available data.
  • Design and develop a part of the solution.


  • Application using Java and Spring Source.
  • Create jUnits tests for everything that is developed.
  • Create tools to help testing with jUnit:
    • Tool loading JSON data to compare the desired results.
    • Tool to validate the format of the REST requests and responses.
    • Tool to validate the contents of the database after a test.
  • Create the database DAO for DB2:
    • Create the domain objects classes.
    • Use JDBC Template with RowMappers to read data.
    • Use JDBC Template to write the data.
  • Create the business classes and the mappers between those classes and the DB domain classes.
    • Have the business rules to compute the useful data.
  • Access web services using RestTemplate to retrieve information such as the equivalent points of a reward and the price for trips.
  • Create XSLT to transform a JSON request to a SOAP message and the reverse for the response.
  • Create a web application to help testing manually:
    • View all the values in the tables for a specific entry in the database.
    • Delete all the values in the tables for a specific entry in the database to be able to retry inserting it.
    • Compare views and tables of the database.
    • Post a request in the queues (the entry point of the developed solution).
    • View the messages in the queues.
Technologies: , , , , , , ,

This project is a reboot of my old Eden engine in Java. The goal is to make a 2D game engine that is multi-platform for the desktop (Windows, Linux, Mac), applet and Android with an extensible editor.


  • Layer for portability between different platforms (Metal), which must be as thin as possible.
  • Layer which forms the common base (rectangles and gradient) and texture management.
  • Editor that can create / edit any class whether from jModder or specific to a game and edit them in different and customizable ways.
  • Some base classes to make top view games.

jModder engine web site

Technologies: , , ,

Use website design created by the artist and turns it into a WordPress theme to help easily change her website and her portfolio of paintings.


  • Having a slideshow of her most recent works on the home page.
  • In all sections of works (paintings, sculptures, drawings and miniatures), display all the works of the category on the left in addition to the current image on the right.

The website of the artist

Technologies: , , , , ,

As part of my work at CGI, I participated in the creation of a web application to allow graduate students to apply for master or doctorate.

Version 2 covers the entire process:

  • Allow administrators to create forms to be completed by applicants depending on the program.
  • Allow applicants to create their profile and submit applications.
  • Allow people to support the candidacy of the applicant by uploading a file.
  • Enable internal and external reviewers at McGill to search and visualize the applications according to their permissions.
  • Allow McGill’s administrators to manage permissions.


  • Occasionally:
    • Create files for the installation of the database, configuration and deployment of the package.
    • Deploy the application to the test environment.
    • Guide and answer questions from testers.


  • Grails Application.
  • Create and access web services with CXF and Groovy wslite.
  • Create daily maintenance jobs started by a call to a web service.
  • Coding integrations points:
    • With web services.
    • With stored procedures in the Oracle database.
    • By creating views in the Oracle database.
    • Create stubs to use in the development and test environments.
    • With CAS via SAML to retrieve the logged-in user attributes.
  • Generate PDF with Flying Saucer
  • Create frontend pages with ZKUI
    • Manage email templates and PDF documents containing variables.
    • Management rules for automatic approval of an application.
  • Create SQL scripts to migrate the structure and data from version 1 to version 2 of the application.
  • Create a filter to verify that the back office users have the required permission to perform certain tasks. Each controller and action can select its permission with an annotation.
Technologies: , , , , , , , , , ,

Le petit livre du Hacker focuses on IT in general. Many topics are covered there as:

  • hardware;
  • operating systems;
  • the Internet;
  • common communication protocols;
  • typical applications to use the web and to secure our computer;
  • cryptography;
  • and more.

This book is written in a simple way so that everyone can at least understand the basics of computers in all these areas, but it does not limit the depth explored to power users. There are also many links in footnotes to find out where to get more information.

You can download the electronic version or buy the paper version on the official site.