July 24th, 2008 @ 00:24

Hurrah, farewell Classes Préparatoires !
The first results are out, and I’m 5th at École Normale Supérieure Paris (a.k.a. Ulm), 9th at ENS Lyon, 7th at ENS Cachan, and 114th at École Polytechnique (a.k.a. X). More results to come in the upcoming hours, but I’m surely going to Ulm next year :)

The great news there is that I can now get on coding without any bad thought about the fact that I /ought/ to be working maths or physics.

July 12th, 2008 @ 11:05

Exams are finished, at last \o/ _o/ \o_
I’m waiting for the results now :)

May 31st, 2008 @ 13:03

Compiz Fusion Logo
We have just released Compiz Fusion 0.7.6, based on Compiz 0.7.6 which was released just two days ago. This is a new development release, introducing a few – yet shiny – new plugins, some new features, and a bunch of ccsm and simple-ccsm changes, alongside the usual translations updates and bug fixes.

The official announcement is available in Compiz Fusion Community list archives.

Just for fun, here is the global git diffstat:

Diffstat:

  • bcop : 1 files changed, 1 insertions, 1 deletions
  • libcompizconfig : 5 files changed, 52 insertions, 7 deletions
  • compizconfig-backend-gconf : 2 files changed, 18 insertions, 42 deletions
  • compizconfig-backend-kconfig : 2 files changed, 1 insertions, 19 deletions
  • compizconfig-python : 2 files changed, 10 insertions, 4 deletions
  • ccsm : 86 files changed, 7147 insertions, 5553 deletions
  • simple-ccsm : 25 files changed, 714 insertions, 320 deletions
  • plugins-main : 102 files changed, 12461 insertions, 5841 deletions
  • plugins-extra : 81 files changed, 12557 insertions, 5818 deletions
  • plugins-unsupported : 37 files changed, 3159 insertions, 1428 deletions
  • emerald : 39 files changed, 353 insertions, 1208 deletions
  • Total : 382 files changed, 36473 insertions, 20241 deletions

Have fun using Compiz Fusion!

April 30th, 2008 @ 20:34

It’s not just about living forever, Jackie. It’s about living with yourself forever.

At World’s End

April 20th, 2008 @ 22:40

The board is set, the pieces are moving, we come to it at last…

Examinations are starting on Wednesday 23rd, and will end on May 26th around 6:30pm. 115 hours (114 and a half, to be accurate) of exams :( See you next month, world!

April 13th, 2008 @ 08:45

For a project of mine (involving LEJOS-OSEK, mostly), I’m forced (well, almost) to use Windows, which my dear VirtualBox virtualizes fairly well on my clean Linux host. I obviously setup vim for my coding needs, but its default behavior isn’t quite what we are used to on other platforms. For instance visual mode selection with arrows requires you to hold Shift, while it doesn’t elsewhere and backup files are created upon write.

So, let’s edit the .vimrc file, which actually is at VIM_INSTALL_PATH\_vimrc (for instance C:\Program Files\vim\_vimrc with the default install options).
Disabling backup files is as simple as adding

set nobackup

Getting visual mode arrows selection is a bit different, as explained in vim tip 864 comments, you can either add

set keymodel-=stopsel

around the end of the file
or drop the

behave mswin

line from the default vimrc.

Here are two other (non windows-specific) tips:
Bash like filename completion:

set wildmode=longest:full
set wildmenu

Pythonic smart indent:

autocmd BufRead *.py set ai et ts=4 sw=4 sts=4
autocmd FileType python set ai et ts=4 sw=4 sts=4
autocmd BufRead *.pyx set ai et ts=4 sw=4 sts=4
autocmd BufRead *.py set smartindent cinwords=if,elif,else,for,while,try,except,finally,def,class

See also this pretty Tango color scheme for vim.

April 12th, 2008 @ 08:35

I love them all. This movie is really great.

What we do in life echoes in eternity.

Death smiles at us all. All a man can do is smile back.

We mortals are but shadows and dust.

There was a dream that was Rome. It shall be realized.

Is Rome worth one good man’s life? We believed it once. Make us believe it again. He was a soldier of Rome. Honor him.

Last but not least, the last lines of the movie:

And now we are Free. I will see you again… but not yet… Not yet!

French ones:

Ce que l’on fait dans sa vie résonne dans l’éternité.

La Mort nous sourit à tous, nous tout ce qu’on peut faire c’est sourire à la Mort.

Nous mortels ne sommes qu’ombre et poussière.

Il y avait un rêve qui s’appelait Rome. Il doit être réalisé.

Est-ce que Rome vaut la vie d’un homme de bien ? Nous l’avons cru autrefois. Il faut le croire à nouveau. Il était un soldat de Rome. Honorez-le.

Maintenant nous sommes libres. Nous nous reverrons… Mais pas encore… Pas encore!

April 12th, 2008 @ 08:24

Ever heard of Gogh? This is a really nice drawing tool for graphic tablets owner (such as those by Wacom). However it stopped working on my Hardy system after some recent update. After some investigation, it appeared that it was due to python-xml being moved away of Python path because it interfered with stuff in Python core ; the whole python-xml package being scheduled for deprecation as soon as the reverse depends would be cleared. I figured it out and dropped the reference to python-xml package in gogh/settingsmanager.py, using a method provided by Python core xml stuff instead. It seems that quite a bunch of people are currently using xml.doc.ext.PrettyPrint from pyxml to output an XML document to a file, so I figured that posting this little tip might help someone :)

So, let’s say you currently have something like this to output your xml document “doc” to a file at path “path”, doc being an xml.dom.minidom.Document object (or similar):

        f = open(path, "w")
        xml.dom.ext.PrettyPrint(doc, f)
        f.close()

All you need to change is PrettyPrint call to make use of the .toxml() method of your document object instead:

        f = open(path, "w")
        f.write(doc.toxml())
        f.close()

Here you go, hope this might save someone’s day someday :)

April 11th, 2008 @ 18:07

Have you ever mistakenly shut down or rebooted your operation-critical server while you were willing to halt your desktop computer through ssh before going to bed, or anything like this? If so, and if you are on Debian/Ubuntu, molly-guard is designed for you: this nifty bash script gets between you and the shutdown/reboot/halt tools, checking if you are connecting through ssh and if so asking for the hostname of the machine before proceeding.

Wondering how it looks? Here is the output of a little test:

ixce@timmy:~$ sudo shutdown -r
W: molly-guard: SSH session detected!
Please type in hostname of the machine to shutdown:
Good thing I asked; I won't shutdown timmy ...

Since it doesn’t correctly handle sudo yet (actually sudo is at fault here, since it drops SSH_CONNECTION environment variable when doing its stuff), you might want to add PRETEND_SSH around the beginning of /usr/sbin/shutdown as specified on Nico “nion” Golde’s blog.

You might also want to grab the molly-guard 0.3.2 etch package I backported from sid (all I changed is downgrade debhelper build-dep version and debhelper compatibility level in debian/compat since etch only has debhelper 5 and the sid package required debhelper 6 ; this shouldn’t break anything since the newer debhelper just seems to be needed to recognize a few fields in debian/control about where the package is maintained). Sources are also available, anyway.

Thanks hr for the tip :)

April 8th, 2008 @ 22:46

This one is really interresting and raises a lot of questions. Did you know…

YouTube Preview Image

See also Did you know 2.0, an updated (with facts which were up to date in June 2007) and redesigned version of this video.

I acknowledge these videos are quite old and famous, but I couldn’t help posting them here, sorry.