Cette page appartient aux archives web de l'EPFL et n'est plus tenue à jour.
This page belongs to EPFL's web archive and is no longer updated.

Jean-Christophe Fillion-Robin

How to guess the Bank Identified Code (BIC) using the IBAN.

This afternoon, I wanted to wire some money on a bank account. Using the International Bank Account Number (IBAN, see en.wikipedia.org/wiki/IBAN), the beneficiary provided me, I have been to the Swiss Post office. I was told that it was also missing the Bank Identified Code (BIC) or SWIFT number (see en.wikipedia.org/wiki/ISO_9362). While I was waiting for the required information, I wanted to  discover such an information using only the IBAN. 

By "beneficiary", I means the person who will receive the money.

As depicted below, the "french" IBAN is composed of different parts: FRkk BBBB BGGG GGCC CCCC CCCC CKK

  • B = bank number
  • G = office number
  • C =  account number
  • K = key

Using Google and the "bank number", I manage to discover what was the name of the banque. I also did an assumption on the area france the beneficiary was coming from. Then, using the following file: SCT_Participants_Register.pdf , I was able to obtain the BIC number.


While I was reading the BIC numbers from the PDF list, I obtained a mail from the beneficiary and it reveals I was right about the name of the bank and wrong about theguess related to the french area the beneficiary was coming from.

Posted by Jean-Christophe Fillion-Robin at 23:50
Google Treasure Hunt 2008 - Solution part 3 (network)
This problem doesn't require any hardcore mathematical computation, it relies mostly on the ability to understand the basics of routing table.

There is two things leading to a successful resolution of the problem:

  • The matching of the IP with an address like

  • The matching of the IP if the default gateway address

Posted by Jean-Christophe Fillion-Robin at 14:03
Google Treasure Hunt 2008 - Solution part 2 (zip)
The email I am using is "74forever+gth@gmail.com", when the time to download the zip archive came. I got on error explaining my email wasn't valid.

Whereas Gmail promote the "+" feature as way to track spams, it seems the Google developer forgot to urlencode the emails.

Since I didn't want to register with an other email, I took the url used to trigger the download (right click on the "download" link -> copy link location) and I updated the "+" sign with the corresponding URL encoded symbols "%2B".

After I unzip the archive using the free tool '7zip', the challenge could start.

First step: Collect the file name - Since Cygwin was installed on my windows box, I used the 'find' command to create two list of files matching the following criteria:

  • *def*.xml, using the command find . -ipath "*def*.xml" > list1 to create a file list1

  • *abc*.xml, using the command find . -ipath "*abc*.xml" > list1 to create a file list2

Second step: I wanted to used sed unix command to extract the lines 4 and 3 of the file list1 and list2, and then sum over the two new files list1nums and list2nums. But since the number of files was small, I open them one by one and did the computation.

Additional links:
Posted by Jean-Christophe Fillion-Robin at 13:43
Google Treasure Hunt 2008 - Solution part 1 (robot)
As usual, checking my mail for the tenth time of the day, the so called 'web clips' located on the upper part of the gmail page catched my attention. The "Google Treasure Hunt" got me.

The first problem I tackled was the "primes" one, but I will give the solution of the four problems in that order:

* Robot (part 1)

* zip (part 2)

* network (part 3)

* primes (part 4)

Later on, the solution of the following not yet disclosed problems will also be explained (if I manage to solve it !).

To solve efficiently the robot problem, the key concept if to look at the question as an arrangement of possible movements.

On a board of 52*48 slots, the different paths allowing to reach the lower-right corner starting from the upper-left are combination of 51 R(ight) movements and 47 D(own) movements.

Recalling the high-school math, it's basically the permutation of (51+47) elements with 2 indiscernible classes: R moves and D moves.

The solution is: (51+47)! / (51! * 47!)

The last step is to solve the calculus without any approximation. Say differently, we want an exact result, not something like 2.3499e+028. While it's possible to compute it using the windows calculator, I also want to point the matlab symbolic toolbox allowing to do computation using very large number. Indeed the string the representation of the number is used, and the only limit is the amount of available memory able to store the string. In the same time, the computation are also longer.

res = sym('(51+47)!') / (sym('51!') * sym('47!')) will return the exact result.

res =


For further information, check the following sites:
Posted by Jean-Christophe Fillion-Robin at 13:17
Restrict Google Desktop indexing to one folder
Working on my MSc thesis, I collected quite a huge number of scientific publications, ppt presentations, documentations, archives, ...

Due to my recurrent laziness, I was keeping the interesting information in a side-corner of my already damaged brain. After a while, I was still remembering the main ideas I read ... but there was no way to query my brain and get nor the paragraph, pages or corresponding PDF filename.

FLASBACK - """Few years ago, I installed Google desktop (GDS), then (few year ago + 5 days) i un-installed it. The reason leading my decision was the fact GDS was indexing all my documents, I tried to setup the preferences but I didn't manage to get the appropriate set of folder inclusion/exclusion. """

Since the deadline for my Msc thesis is running fast (almost backward in time), I decided to investigate the concept of using GDS to index all the related materials I downloaded under the following condition: "Limit the indexing capabilities to a given folder".

Eureka! The key is to use the dos command "subst" (see http://en.wikipedia.org/wiki/Subst). Typing in:

>> subst x: "C:\Documents and Settings\J-Chris\My Documents\dossiers"

I was able to map a specific folder to a virtual drive named, in our case, "X:".

Then, creating/editing the file "c:\autoexec.bat" and appending the subst command automated the mapping of the directory.

Finally, after I upgraded and cleared the cached indexes of GDS using TweakGDS (see http://desktop.google.com/plugins/i/tweakgds.html), I also excluded all the folder from being indexed and I added only the "X:" drive.
Posted by Jean-Christophe Fillion-Robin at 2:21
Looking for Master Thesis in Software Engineering (November 2007 - April 2008)
Dear Recruiters,

Interested in the following areas:

  • Software design of innovative application involving cutting-edge technologies.

  • Biologically inspired systems approach applied to robotic application.

Looking for doing my Master Thesis in software engineering, rich from my international and multi-disciplinary experiences, I am ready to invest and challenge myself in the most ambitious project.

Discover more reading my Linkedin profile:
View Jean-Christophe Fillion-Robin's profile on LinkedIn

Feel free to contact me:

Posted by Jean-Christophe Fillion-Robin at 13:46
SI project: Earh Quake detection using mobile robots
In association with Nathan Evan from Seattle, I am working on Earth Quake detection using mobile e-pucks.

This is a project supported by the Swarm-Intelligent Systems Group of EPFL: http://swis.epfl.ch/

The wiki: http://wiki.epfl.ch/equaked (Be indulgent, i just create it :p)

What is an E-Puck? Click here: http://www.e-puck.org/index.php?option=com_content&task=view&id=13&Itemid=31
Posted by Jean-Christophe Fillion-Robin at 2:29
Cognitive Psychology - Round one
DVA or Dynamic Visual Acuity will lead my research in cognitive psychology. It deals with patient having vestibular problems. Associated with Roberto Cardona, an other grad student from EPFL, our goal will be the quantification of that disease.

An overview of the vestibular system is available on wikipedia: http://en.wikipedia.org/wiki/Vestibular_system

You ll find here:
- Transformed Up-Down methods in psychoacoustics , H Levitt
- Two-, three-, and four-interval forced-choice staircase procedures: Estimator bias and efficiency / Robert s. Schlauch, Richard M. Rose
- "Acuite Visuelle Dynamique" - 2006 / Cyntia Duc, Fiorenzo Morini

GENEVA, December 15th, will be the first "big" step of the project. A meeting with two specialists on the subject:
- Prof Pelizzone
- Prof Guyot
Posted by Jean-Christophe Fillion-Robin at 0:43
Classe selection done !
The big list:

Swarm intelligence - http://swis.epfl.ch/

Models of biological sensory motors - http://birg.epfl.ch/page25468.html

Technology strategy and entrepreneurship - http://moodle.epfl.ch/course/view.php?id=344

Information Distributed Systems - http://lsirwww.epfl.ch/students.htm

Cryptography and security - http://lasecwww.epfl.ch/cs2007/

Cognitive Psychology - http://shs.epfl.ch/master_english.php#Cognitive
Posted by Jean-Christophe Fillion-Robin at 15:36
Paint in action
A friend point me that amazing video http://haha.nu/amazing/sport-car-drawn-entirely-with-ms-paint/

This one show how it's possible to draw a Carrera using only a basic drawing software.

Looking at the comments, i found an interesting one:

I'm not sure why this is amazing.? Anyone with some artistic skill can do all of that and much, much more with rudimentary paint software like Paint. Some of us grew up in an era where a program like Paint would have been an absolute *dream* to work with for computer art.

I give the whole thing a hearty "meh."

Comment written by "Rico", November 12th, 2006 17:14

What do you think?
Posted by Jean-Christophe Fillion-Robin at 10:04
Page : 1 2 Next »