Taille: 12690
Commentaire:
|
Taille: 7088
Commentaire:
|
Texte supprimé. | Texte ajouté. |
Ligne 7: | Ligne 7: |
{{http://perso.crans.org/besson/elfe-menu.JPG}} Adresse électronique : <<MailTo(naereen@crans.org)>>. <<TableOfContents>> | {{http://perso.crans.org/besson/elfe-menu.JPG}} Adresse électronique : <<MailTo(n a e r e e n AT crans DOT org)>>. <<TableOfContents>> |
Ligne 13: | Ligne 13: |
Je suis souvent en cours, au Cournot (troisième étage C305 / 309), au premier étage dans mon (ex)bureau au LRC, ou en salle 411. Et depuis peu, à Chevaleret pour les cours d'info. | Je suis souvent en cours, au Cournot (troisième étage C305 / 309), ou en salle 411. Et depuis peu, à Sophie Germain (P7) pour les cours d'info. |
Ligne 16: | Ligne 16: |
Je suis aussi de plus en plus au local du Cr@ns du 2B. Parfois même seul puisque j'en ai une clé ! |
J'assiste à certains séminaires le mardi soir, et depuis peu à certains "internounous" du jeudi soir. Sinon, je mange au RU assez souvent; mais vous ne me verrez peu à la KFet hors de mes permanences Cr@ns (voir [[PermanencesCrans]]). |
Ligne 19: | Ligne 19: |
J'assiste à certains séminaires le mardi soir, et depuis peu à certains "internounous" du jeudi soir. Je serais présent à l'[[InstallParty/Novembre2012|install party]] du 24 Novembre. Et je réponds souvent aux mails des adhérents en détresse sur *respbats*. Sinon, je mange au RU assez souvent; mais vous ne me verrez peu à la KFet hors de mes permanences Cr@ns (voir [[PermanencesCrans]]). |
==== Séminaire ==== J'ai fait un séminaire sur les outils de documentation de code, le mardi 19 février. Les slides et les ressources sont disponibles en ligne : ici http://perso.crans.org/besson/publis/seminaire_crans/. |
Ligne 27: | Ligne 24: |
Et au cas où, je suis au bâtiment B, numéro 216 ! | |
Ligne 31: | Ligne 27: |
Pour ceux qui ne lisent ni les décomposition en nombres premiers, ni le binaire, callto:+336.28.41.22.57 fonctionne mieux. === Wifi ? === Depuis peu (le 20/11), j'accueille une borne wifi dans ma chambre . Elle répond au doux nom de ''delling'', et permet d'arroser en wifi les adhérents du second étage du B, partie nord/ouest. Elle fait aussi office de ''switch'', me permettant d'avoir deux machines fixes en mêmes temps dans ma chambre ('''"hehehe !"'''). |
|
Ligne 41: | Ligne 33: |
J'héberge mes nouveaux projets de programmation et d'*ordinateurique* sur un site réalisé avec l'outil !GoogleSite http://sites.google.com/site/naereencorp/. | J'héberge mes nouveaux projets de programmation et d' '''ordinateurique''' sur un site réalisé avec l'outil !GoogleSite http://sites.google.com/site/naereencorp/. |
Ligne 45: | Ligne 37: |
Et enfin, quand je ne me sers pas de mon pc, mon Mac héberge une copie de mes pages persos http://naereen-corp.crans.org:93[NUMERO_DU_JOUR_*_2]/ ou http://naereen-corp.crans.org/. Je n'ai pas encore mis en place de serveur Apache, seulement un petit bidouillage en Python. Mais ça marche ! |
|
Ligne 49: | Ligne 39: |
Je suis normalien, inscrit au département de maths. | Je suis normalien, inscrit au département de ''maths''. |
Ligne 52: | Ligne 42: |
Je serais en stage en 2013 pour les mois de Juin, Juillet et Août au Royaume-Unis à l'UCL (''University College London'') à Londres, sous la direction de Jules Villard et Peter O'Hearn. Je ferais vraisemblablement de la logique de séparation, appliquée à des problèmes de vérification issus du monde des Intelligences Artificielles. |
|
Ligne 58: | Ligne 50: |
* musique et humour (fan sempiternel du Donjon de Naheulbeuk), * programmation (allez faire un tour sur mon site GoogleSite) en OCaml, Python, Bash principalement, |
* musique et humour (fan sempiternel du '''Donjon de Naheulbeuk'''), * programmation (allez faire un tour sur mon site GoogleSite) en OCaml, Python, et Bash principalement, |
Ligne 65: | Ligne 57: |
* coloration syntaxique. A propos, jetez un oeil ici : http://perso.crans.org/besson/NanoSyntax, * simulation numérique (voir mon travail de stage de maths http://perso.crans.org/besson/publis/rapport_stage.pdf), * automatisation et aide à la programmation (méta-programmation) (voir mon projet MOcaml par exemple), * applications en consoles, logiciels simples en OCaml et Python (Naereen Browser, MOcamlViewFile, ou encore RenommeALL : de petits outils pour s'entraîner à pratiquer), * maîtrise d'outils en lignes de consoles et enrobage dans des scripts Bash (voir mes nombreux scripts gedit, mes scripts Nautilus, mon bashrc/bash_aliases etc...). |
* coloration syntaxique. A propos, jetez un oeil ici : http://perso.crans.org/besson/NanoSyntax; * simulation numérique (voir mon travail de stage de maths http://perso.crans.org/besson/publis/rapport_stage.pdf, ou mes TPs d'optimisation numérique (M1,Semestre1) et d'EDP (M1,Semestre2)); * automatisation et aide à la programmation (méta-programmation) (voir mes projets MOcaml ou makePyDoc par exemple); * applications en consoles (par exemple ZenityToDialog, ou OCamlPlot ou encore ColorML); * maîtrise d'outils en lignes de consoles et enrobage dans des scripts Bash (voir mes nombreux scripts Gedit, mes scripts Nautilus, mon bashrc/bash_aliases etc...). |
Ligne 73: | Ligne 65: |
Si vous avez besoin d'aide pour quelque chose qui concerne de pas trop loin un des sujets précédents, n'hésitez pas à me demander. | Si vous avez besoin d'aide pour quelque chose qui concerne de pas trop loin un des sujets précédents, n'hésitez pas à me demander ! |
Ligne 75: | Ligne 68: |
* modification d'un bashrc pour intégrer le code de retour de la commande précédente si elle a échouée, * création d'un __daemon__ de notification pour mon mini pc sous Angstrom, afin d'informer correctement de l'état de la batterie (https://sites.google.com/site/naereencorp/liste-des-projets/angstrom), * création d'un script Bash pour automatiser la génération d'une documentation pour un projet Python (en utilisant PyDoc) (ici : https://sites.google.com/site/naereencorp/liste-des-projets/makepydoc) |
* création d'un __daemon__ de notification pour mon mini pc sous '''Angström''', afin d'informer correctement de l'état de la batterie (https://sites.google.com/site/naereencorp/liste-des-projets/angstrom); * création d'un script Bash pour automatiser la génération d'une documentation pour un projet Python (en utilisant PyDoc), et pour faciliter la maîtrise de Sphinx et Doxygen (générateurs de documentation). Enrobage avec d'autres scripts de ma conception dans le projet makePyDoc (ici : https://sites.google.com/site/naereencorp/liste-des-projets/makepydoc); |
Ligne 79: | Ligne 71: |
* modification de fichiers définissant les syntaxes des langages que j'utilise (OCaml, Python, CUDA) pour la coloration syntaxique : sous GNU Nano, gedit ou Gobby 0.5 avec GTK-SourceView, Jota Text Editor (sur Android), * développement de plusieurs modules utilitaires en Python : *ANSIColors*, Matrix, PyRlwrap, PyZenity par exemple. |
* modification de fichiers définissant les syntaxes des langages que j'utilise (OCaml, Python, CUDA) pour la coloration syntaxique : sous GNU Nano, gedit ou Gobby 0.5 avec GTK-SourceView, Jota Text Editor (sur Android); * développement de plusieurs modules utilitaires en Python : 'ANSIColors', ou Matrix par exemple. |
Ligne 86: | Ligne 78: |
* maîtrise de Sphinx et Doxygen, générateurs de documentation. Enrobage avec d'autres scripts de ma conception (update__date__.sh et makePyDoc.sh). | * En particulier, ''ANSIColors'' a pris un peu d'ampleur, et est désormais hébergé ici : (https://bitbucket.org/lbesson/ansi-colors) et est encore en développement. * Amélioration des '''plugins''' permettant d'embarquer des terminaux dans ''Nautilus'' et ''Gedit'' (sous Ubuntu, respectivement explorateur de fichiers, et éditeur de textes). Voir là pour plus de détails : https://sites.google.com/site/naereencorp/gedit/. == MPRI Bomberman == C'est un jeu de '''Bomberman''', multi-joueur, réalisé pour le cours 1-21 du MPRI (Master d'informatique). Écrit en Python, mon implémentation est légère, multi-plateforme, rapide et performante. Elle possède de plus une interface textuelle (encore en développement) et une interface graphique. Le jeu est muni d'un protocole efficace, et ouvert (clairement spécifié dans un rapport disponible en ligne), ainsi que d'une sémantique propre. Pour plus de détails, voir : * http://perso.crans.org/besson/publis/Bomberman/; * https://bitbucket.org/lbesson/mpri-bomberman/. |
Ligne 89: | Ligne 92: |
Parce que mettre ces informations sur une page wiki, c'est mieux que dans un mail random. Mais il faudrait créer une page wiki à part entière, et je ne sais pas faire. Voici quelques applications pour Android qui pourraient être utiles à un cableur. Pour les autres qui n'utilisent pas Android, voir ? (page à créer). === Le Wifi === Se connecter en wifi, c'est bien. Avoir des informations détaillées, c'est mieux. Les applis suivantes sont conçues pour ça, et sont performantes (pas de virus, légères et non bogguées, mises à jour fréquemment) : * Wifi Analyzer : permet de transformer le téléphone en analyseur wifi assez précis. Plein de fonctionnalités, permet de voir les canaux (et donc, les fréquences utilisées par les réseaux), les MACs et la qualité de la connexion avec toutes les bornes à portée. Sur le '''Google Play''', elle nécessite l'installation d'une librairie annexe. Voir : [[https://play.google.com/store/apps/details?id=com.farproc.wifi.analyzer&hl=fr|Wifi Analyzer]], et [[https://play.google.com/store/apps/details?id=com.farproc.wifi.connecter&feature=more_from_developer|Wifi Connector library]]. * Network Info II : permet d'obtenir des informations précises sur le réseau utilisés par son téléphone. Pas seulement pour le wifi, mais aussi pour le bluetooth, le 3G/H/Edge, le réseau téléphonique (GSM). Donne notamment des infos détaillés sur la borne émettant le réseau auquel on est connecté (permet de voir si c'est une nouvelle ou une ancienne borne), de voir aussi la MAC, et aussi ... la localisation de la borne ou de l'émetteur 3G ! Très pratique ! Sur le '''Google Play''', voir [[https://play.google.com/store/apps/details?id=aws.apps.networkInfoIi&hl=fr|Network Info II]]. === Le SSH === Parce qu'une fois connecté en wifi (ou en 3G chez Free qui laisse tout les ports ouverts), il est possible d'atteindre zamok, il faut pouvoir utiliser ce lien pour s'y connecter en SSH (et cabler avec son téléphone :D !). * ConnectBot : un client SSH simple, mais performant. Se décline en trois versions, chacune ayant leurs adeptes. La version originale s'appelle juste ''ConnectBot'', la version la plus populaire est ''Irssi ConnectBot'', qui gère mieux les redirections et l'identification par clé; et une autre version est ''Vx ConnectBot'', qui semble mieux gérer le clavier bluetooth (au dire de Pika). Sur le '''Google Play''', voir [[https://play.google.com/store/apps/details?id=org.woltage.irssiconnectbot|Irssi ConnectBot]]. === Le clavier === Pour les gens n'ayant pas un clavier matériel, utiliser un client SSH sans avoir certaines touches sur le clavier tactile de base peut être pénible. Un bon clavier complet est : * [[https://play.google.com/store/apps/details?id=org.pocketworkstation.pckeyboard|Hacker Keyboard]]. === Python === Pour les curieux ou les fanatiques, il est désormais possible d'installer Python, ainsi que d'autres langages de scripts (Perl, Javascript, Lua etc) sur Android ! Le projet s'appelle '''SL4A''' pour Scripting Layer For Android. Et la cerise sur le gateau, c'est que ces langages permettent d'accéder à une petite partie des fonctionnalités de son téléphone. Donc, oui, vous pourrez envoyer un texto en trois lignes de Python ou faire de la synthèse vocale avec : {{{#!highlight python droid = android.Android() droid.tts("I speak therefor I am !") }}} La projet est ici : [[http://code.google.com/p/android-scripting/|SL4A, sur Google CODE]], et la page dédiée à Python est là : [[http://code.google.com/p/python-for-android/|Python For Android, sur Google CODE]]. |
Voir la page que j'ai créée ([[VieCrans/ApplicationsAndroid]]) pour une liste (''presque exhaustive'') des '''meilleures applications utiles pour Android'''. |
Ligne 124: | Ligne 97: |
"Deux degrés, je veux monter le thermostat de deux degrés Sheldon !" [Leonard] | "Mais je peux revenir à pied si la porte se ferme ?" -- Seigneur Perceval. |
Ligne 126: | Ligne 99: |
"Deux degrés peuvent faire la différence entre de l'eau liquide et de la vapeur !!" [Sheldon] | "A pied ? Du plan démonique ? ... Non mais bien sûr !" -- Roi Arthur, le sanglier de Cornouailles. |
Ligne 128: | Ligne 101: |
" Oui ! ... Si tu vit dans une bouilloire !!" [Leonard] | "Bon ben j'y vais !" -- Seigneur Perceval. |
Ligne 130: | Ligne 103: |
-- TbbT s3 | '''Kaamelott'''. |
Ligne 133: | Ligne 106: |
== Couleurs ANSI en Python == Je viens de découvrir la possibilité d'intégrer du code et de le colorer dans le wiki. Et comme c'est beau, je m'en sers ! {{{#!highlight python __author__='Lilian BESSON (lilian.besson@ens-cachan.fr)' # Automatically update with update__date__.sh, a Naereen Corp. (c) bash script. __version__=0.4 __date__='dimanche 18 novembre 2012, at 22h:50m:00s' # Automatically update with update__date__.sh, a Naereen Corp. (c) bash script. #1############### # Usual Modules # import os # If false, the module do exactly NOTHING ANSISupported=(os.getenv('TERM') in ['xterm', 'screen', 'linux', 'xterm256']) # Colors bold black="\033[01;30m" red="\033[01;31m" green="\033[01;32m" yellow="\033[01;33m" blue="\033[01;34m" magenta="\033[01;35m" cyan="\033[01;36m" white="\033[01;37m" # Many more on https://sites.google.com/site/naereencorp/tools/ansi-colors def tocolor(string): """tocolor(string) -> string Convert a string to a color. [string] have to be in [colorList] to be recognized. Default value if [string] is not one of the color name is "" the empty string.""" res="none" exec('res=%s' % string) if string in colorList: return res else: return "" def sprint(chainWithBalises, left='<', right='>', verbose=False): """ sprint(chainWithBalises, left='<', right='>', verbose=False) -> string Parse a string containing color balises, when color is one of the previous define name, and then return it, with color balises changed to concrete ANSI color codes. Balises are delimited by [left] and [right]. By default, it's Pango style whit '>' and '<', but you can change theme. Example: ======== >>> print sprint("<blue>this is blue.<white>And <this> is white.<red>Now this is red because I am <angry> !<green><white>") """ ls = chainWithBalises.split(left) if verbose: print "\tls", ls lls = list() for s2 in ls: if verbose: print "\ts2", s2 inte=s2.split(right) if verbose: print "\tinte", inte if inte[0] in colorList: inte[0]=tocolor(inte[0]) else: if len(inte)>1: inte[0]=left+inte[0]+right if verbose: print "\tinte", inte lls.append(inte) if verbose: print "\t", lls res="" for i in range(len(lls)): for j in range(len(lls[i])): res+=lls[i][j] return res def printc(chainWithBalises): """ printc(chainWithBalises) -> () A shortcut to print sprint(chainWithBalises) : analyse balises, and print the result.""" print sprint(chainWithBalises) }}} ---- CatégoriePagePersonnelle CatégoriePagePublique |
CatégoriePagePersonnelle |
(Wiki) Naereen
Adresse électronique : naereen@crans.org.
Sommaire
- Officiellement, je suis Lilian Besson. Naereen, c'est pour les intimes :).
Quelques une de mes pages perso sont disponibles sur l'espace du Cr@ns : http://perso.crans.org/besson/.
Me trouver sur le campus
- Je suis souvent en cours, au Cournot (troisième étage C305 / 309), ou en salle 411. Et depuis peu, à Sophie Germain (P7) pour les cours d'info.
Cr@ns
- J'assiste à certains séminaires le mardi soir, et depuis peu à certains "internounous" du jeudi soir.
Sinon, je mange au RU assez souvent; mais vous ne me verrez peu à la KFet hors de mes permanences Cr@ns (voir PermanencesCrans).
Séminaire
- J'ai fait un séminaire sur les outils de documentation de code, le mardi 19 février.
Les slides et les ressources sont disponibles en ligne : ici http://perso.crans.org/besson/publis/seminaire_crans/.
Téléphone ... maison ?
On peut aussi me joindre au numéro suivant : 100101011101001100111101100001_2. Pour ceux qui préfèrent une belle décomposition : 11*179*439*727 !
Me trouver ailleurs sur le net
Voir ici http://www.dptinfo.ens-cachan.fr/~lbesson/. Et, non, on ne nous force pas avoir une page perso au département d'informatique.
J'héberge mes nouveaux projets de programmation et d' ordinateurique sur un site réalisé avec l'outil GoogleSite http://sites.google.com/site/naereencorp/.
Vous pouvez aussi me trouver sur Facebook : http://www.facebook.com/naereencorp.lbesson, ma page me sert aussi de blog où je poste de très régulier petits billets !
Mes études
Je suis normalien, inscrit au département de maths. En 2011/2012, j'ai suivi le double cursus pour les deux licences de mathématiques et d'informatique.
- Et je récidive en 2012/2013 pour les deux M1 !
Je serais en stage en 2013 pour les mois de Juin, Juillet et Août au Royaume-Unis à l'UCL (University College London) à Londres, sous la direction de Jules Villard et Peter O'Hearn. Je ferais vraisemblablement de la logique de séparation, appliquée à des problèmes de vérification issus du monde des Intelligences Artificielles.
Mes occupations
Quand je ne suis pas en cours, en permanence cr@ns, en train de manger / manger / dormir (si ça m'arrive), je m'occupe comme je peux :
musique et humour (fan sempiternel du Donjon de Naheulbeuk),
programmation (allez faire un tour sur mon site GoogleSite) en OCaml, Python, et Bash principalement,
- ordinateurique (c'est à l'informatique ce que le tunning est à la conduite).
Sujets informatiques
Je suis particulièrement intéressé par les sujets informatiques suivants :
coloration syntaxique. A propos, jetez un oeil ici : http://perso.crans.org/besson/NanoSyntax;
simulation numérique (voir mon travail de stage de maths http://perso.crans.org/besson/publis/rapport_stage.pdf, ou mes TPs d'optimisation numérique (M1,Semestre1) et d'EDP (M1,Semestre2));
- automatisation et aide à la programmation (méta-programmation) (voir mes projets MOcaml ou makePyDoc par exemple);
applications en consoles (par exemple ZenityToDialog, ou OCamlPlot ou encore ColorML);
- maîtrise d'outils en lignes de consoles et enrobage dans des scripts Bash (voir mes nombreux scripts Gedit, mes scripts Nautilus, mon bashrc/bash_aliases etc...).
Services et réalisations
Si vous avez besoin d'aide pour quelque chose qui concerne de pas trop loin un des sujets précédents, n'hésitez pas à me demander !
Exemple de réalisation cette année :
création d'un daemon de notification pour mon mini pc sous Angström, afin d'informer correctement de l'état de la batterie (https://sites.google.com/site/naereencorp/liste-des-projets/angstrom);
création d'un script Bash pour automatiser la génération d'une documentation pour un projet Python (en utilisant PyDoc), et pour faciliter la maîtrise de Sphinx et Doxygen (générateurs de documentation). Enrobage avec d'autres scripts de ma conception dans le projet makePyDoc (ici : https://sites.google.com/site/naereencorp/liste-des-projets/makepydoc);
création d'un petit clone de rlwrap en Python, pour mon mini pc sous Angstrom pour lequel je n'arrive pas à cross-compiler (si tu as déjà entendu parler de ça, écris moi :/) ici : (https://sites.google.com/site/naereencorp/liste-des-projets/pyrlwrap/),
modification de fichiers définissant les syntaxes des langages que j'utilise (OCaml, Python, CUDA) pour la coloration syntaxique : sous GNU Nano, gedit ou Gobby 0.5 avec GTK-SourceView, Jota Text Editor (sur Android);
- développement de plusieurs modules utilitaires en Python : 'ANSIColors', ou Matrix par exemple.
- ANSIColors permet d'utiliser les séquences d'échappements ANSI pour afficher du texte avec de la couleur dans un terminal ! Exemple :
- ANSIColors permet d'utiliser les séquences d'échappements ANSI pour afficher du texte avec de la couleur dans un terminal ! Exemple :
En particulier, ANSIColors a pris un peu d'ampleur, et est désormais hébergé ici : (https://bitbucket.org/lbesson/ansi-colors) et est encore en développement.
Amélioration des plugins permettant d'embarquer des terminaux dans Nautilus et Gedit (sous Ubuntu, respectivement explorateur de fichiers, et éditeur de textes). Voir là pour plus de détails : https://sites.google.com/site/naereencorp/gedit/.
MPRI Bomberman
C'est un jeu de Bomberman, multi-joueur, réalisé pour le cours 1-21 du MPRI (Master d'informatique). Écrit en Python, mon implémentation est légère, multi-plateforme, rapide et performante. Elle possède de plus une interface textuelle (encore en développement) et une interface graphique. Le jeu est muni d'un protocole efficace, et ouvert (clairement spécifié dans un rapport disponible en ligne), ainsi que d'une sémantique propre. Pour plus de détails, voir :
Applications Android
Voir la page que j'ai créée (VieCrans/ApplicationsAndroid) pour une liste (presque exhaustive) des meilleures applications utiles pour Android.
Citation du jour / de la semaine :
- "Mais je peux revenir à pied si la porte se ferme ?" -- Seigneur Perceval. "A pied ? Du plan démonique ? ... Non mais bien sûr !" -- Roi Arthur, le sanglier de Cornouailles. "Bon ben j'y vais !" -- Seigneur Perceval.
Kaamelott.