Posted on 30-01-2008 | By: Jérémie Laval
Category : English
Tags: DBus Explorer, release
A little update for 0.3 fixing some reported issues and adding new features.
What’s new :
- New improved Parser, support complex D-Bus type expression
- Search function modified to behave more naturally
- Synced icons with MD
- Various cosmetic & bugs fixes (including the two issues reported by Anders Rune Jensen
)
Download :
Posted on 30-01-2008 | By: Jérémie Laval
Category : General, Life, School
En direct du oueb :
CM11 – ADMIS (E )
LO10 – ADMIS (A )
MG00 – ADMIS (E )
MT11 – ADMIS (B )
PM11 – ADMIS (C )
PS12 – ADMIS (A )
Quelques impressions :
- J’ai apparement majoré en LO10 (final expédié en 1h, c’est bien le seul d’ailleurs
) et en PS12 (!). Maintenant je peux oublier toute ma connaissance impie de VBA (enfin, juste après le stage vu que mes collègues en sont fan et que je dois faire une interface de stock avec).
- CM11 et MG00 validés de justesse (6 et 9.5 aux médians respectivement). Bonne surprise pour CM11 qui est, paradoxalement, un des finaux que j’ai trouvé les plus faisables. Pour MG00 ça illustre bien l’intérêt des sujet d’examen (proche de 0) alors que les cours sont (pour la plupart) intéressants.
- Et enfin MT11 réussi avec B, ce qui est pas mal sachant le mauvais feeling que j’avais du final en sortant (je pense qu’ils ont du remanier le barème vu les notes). Merci Petitjean \o/ .
Posted on 26-01-2008 | By: Jérémie Laval
Category : School
Juste un petit script Python à mettre en anacron :
#!/usr/bin/python
from urllib import *
from os import *
from os.path import *
import filecmp
import dbus, gobject, dbus.glib
url = "http://services.utbm.fr/ACTU/resuv/index.php"
name = "nom"
ine = "numéro d'ine"
save_directory = "/tmp/"
save_name = "exam.html"
save = join(save_directory, save_name)
posts = { "nom" : name, "motdepasse" : ine }
post_request = urlencode(posts)
f = urlretrieve(url, data=post_request)
if not exists(save):
rename (f[0], save)
else:
if not filecmp.cmp(f[0], save, False):
no = dbus.SessionBus().get_object('org.freedesktop.Notifications', '/org/freedesktop/Notifications')
ni = dbus.Interface(no, 'org.freedesktop.Notifications')
ni.Notify("python", 0, '', "Resultats UTBM", "Votre page des notes d'examen a ete mise a jour\n\n", {}, {}, 0)
rename (f[0], save)
Posted on 20-01-2008 | By: Jérémie Laval
Category : General, Life
Strasbourg : after a little momentum during when I thought that, in the end, C# was not admissible in the exams, I received today a mail telling that I had been selected for the semi-finals of Prologin in February. Yay !
Brussels : if everything go smoothly I should be able to attend this year FOSDEM in Brussels meeting folks like Antti (who should really be there
) and Alp. Pretty sure it’s going to rocks
.
Posted on 12-01-2008 | By: Jérémie Laval
Category : General, Life
1:=> (define old-age 18)
old-age
1:=> (define current-age (+ 1 old-age))
current-age
1:=> (print current-age)
19
Why Scheme ? Because parentheses are funny and because I hope this year to be as funny as the precedent.
(BTW: It also marks the first birthday of this blog
)
Posted on 09-01-2008 | By: Jérémie Laval
Category : General, Life, QoTD
Trying hard to write good and functional Scheme, while you come from a totally imperative world, is like recursively shooting yourself in the foot.
Posted on 04-01-2008 | By: Jérémie Laval
Category : C#, DBus Explorer, Mono
First of all, happy new year everyone.
ParserNg is the name of the new parser that I committed today in git. It’s a somehow more flexible redesign of the precedent parser which allow to parse D-Bus type expressions to other things than just string and will, thus, facilitate the coding of, both, the code autogenerator and the langage-agnostic prototype viewer, the two main features I want to add for next release.
ParserNg uses a forward-only approach with IEnumerator instead of the old List.GetRange way resulting in no temporary List creation. Moreover the parser now display correctly complicated expressions like the ones in Telepathy (e.g : a{u(ua{sa{sv}})} → Dictionary<UInt32, struct { UInt32; Dictionary<String, Dictionary>; }> ), expressions that were borked with the precedent code.
The actual processing is also deferred to an external class via a sort-of Visitor pattern allowing easier customization of the produced result (though for the moment I just rewrote a CSharpVisitor class to behave like the ancient parser).
Code available in latest git pull.