First try (does not compile)

This commit is contained in:
Yann Esposito (Yogsototh) 2010-11-27 18:26:23 +01:00
parent f54c293bb7
commit a7c208de06
7 changed files with 443 additions and 339 deletions

View file

@ -1,13 +1,12 @@
# Use this file to configure some general variables
@title='\Huge{\textbf{Krambook}}\\\\\\' + "\n" +
'\small\textit{Write Books like an }'+
'\texttt{UB3R 1337}\textit{ (Hacker)}'
@title='\Huge{\textbf{Yann Esposito}}\\\\\\' + "\n" +
'\small\textit{Expert en Machine Learning}'
@author="Yann Esposito"
# file name
@pdfname="krambook"
@pdfname="cv"
# LaTeX headers (before \begin{document})
@latex_headers=''
@ -29,5 +28,5 @@
# change the template file in case latex_headers is not enough
# Remember to not remove lines begining by %%#
# look at include/template.tex for example
@template_file="include/template.tex"
@template_file="include/cv_template.tex"

View file

@ -1,140 +0,0 @@
MACRO(markdown) = `markdown` ENDMACRO
MACRO(kramdown) = [`kramdown`](http://kramdown.rubyforge.org) ENDMACRO
MACRO(krambook) = [`krambook`](http://krambook.espozito.com) ENDMACRO
POSTMACRO(beginbox) = LATEX: \medskip\fbox{\colorbox{boxcolor}{\begin{minipage}{.80\linewidth}% HTML: <div class="encadre"> ENDMACRO
POSTMACRO(endbox) = LATEX: \end{minipage}}}\medskip HTML: </div> ENDMACRO
POSTMACRO(xelatex) = LATEX: \XeLaTeX HTML: <span style="text-transform: uppercase">X<sub style="vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em">&#x018E;</sub>L<sup style="vertical-align: 0.15em; margin-left: -0.36em; margin-right: -0.15em; font-size: .85em">a</sup>T<sub style="vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em">e</sub>X</span> ENDMACRO
POSTMACRO(xelatex_) = LATEX: \XeLaTeX{} HTML: <span style="text-transform: uppercase">X<sub style="vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em">&#x018E;</sub>L<sup style="vertical-align: 0.15em; margin-left: -0.36em; margin-right: -0.15em; font-size: .85em">a</sup>T<sub style="vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em">e</sub>X</span> ENDMACRO
POSTMACRO(latex) = LATEX: \LaTeX HTML: <span style="text-transform: uppercase">L<sup style="vertical-align: 0.15em; margin-left: -0.36em; margin-right: -0.15em; font-size: .85em">a</sup>T<sub style="vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em">e</sub>X</span> ENDMACRO
POSTMACRO(latex_) = LATEX: \LaTeX{} HTML: <span style="text-transform: uppercase">L<sup style="vertical-align: 0.15em; margin-left: -0.36em; margin-right: -0.15em; font-size: .85em">a</sup>T<sub style="vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em">e</sub>X</span> ENDMACRO
POSTMACRO(tex) = LATEX: \TeX HTML: <span style="text-transform: uppercase">T<sub style="vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em">e</sub>X</span> ENDMACRO
POSTMACRO(tex_) = LATEX: \TeX{} HTML: <span style="text-transform: uppercase">T<sub style="vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em">e</sub>X</span> ENDMACRO
# Introduction
%krambook provide you a _cool_ way to write a book.
You use a markdown syntax and the book can then be generated:
- as [PDF](http://krambook.espozito.com/krambook.pdf) using %xelatex
- into a static [HTML](http://krambook.espozito.com/) website
- into a website that display you PDF in [SVG](http://svgkrambook.espozito.com/)
## Why this project?
### Markdown is easier to read than %latex
The best typesetting system I know is [%latex](http://latex-project.org).
Unfortunately %latex was created a long time ago and its syntax is full of backslashes. Here is an example of a standard minimal %latex document:
\documenttype{article}
\usepackage[utf-8]{inputenc}
\usepackage{fontenc}
\usepackage{amsmath}
... % This is the ritual header
\begin{document} % ---- end of the preamble
\section{First section}
I begin by making a list of bullet points:
\begin{itemize}
\item the first point is
\LaTeX is a bit verbose
\item the second point is
\Latex has \textem{more} \textbackslash{} than Markdown
\item I believe you understood now.
\end{itemize}
\end{document}
To achieve a similar result using %markdown syntax:
First section
=============
I begin by making a list of bullet points:
- the first point is LaTeX is a bit verbose
- the second point is LaTeX has _more_ \ than Markdown
- I believe you understood now
The HTML end result using the markdown will be:
%beginbox
> ### First section
>
> I begin by making a list of bullet points:
>
> - the first point is %latex is a bit verbose
> - the second point is %latex has _more_ \ than Markdown
> - I believe you understood now
%endbox
Then I believe this example should be enough to convince you
that the %markdown is more natural than the %latex one.
### Markdown does not scale
%latex has many incredible properties that makes it scalable even for very long document.
On the other hand Markdown wasn't created for this purpose.
Markdown was done to provide a standard syntax to transform some text file into HTML.
Markdown lack many features that many other project have added to it.
One of this project is [Kramdown](http://kramdown.rubyforge.org).
There is many other project that expanded the abilities of Markdown.
But I believe not any of these project is scalable because the power of these language is _stricly_ inferior to the power of the %tex_ language.
In fact %tex_ is Turing complete -- considering we have the ability to make many compilations until reaching a fixed point.
How can %latex_ be Turing complete?
Simply with the power of provided by _macros_.
In %latex you can declare macros like this:
\newcommand{\un}{\sum_{n=0}^\infty u_n}
And each time you type:
Here is a formula $\un = \pi$
It will be equivalent to:
Here is a formula $\sum_{n=0}^\infty u_n = \pi$
Imagine a thesis where this formula is present a hundred times and you begin to understand why macros are a necessity for long documents.
But in %latex you could also declare macros with parameters and that use other declared macros:
\newcommand{\ratlang}[2]{\mathcal{S}_{#1}^{\mathrm{rat}}(#2)}
\newcommand{\sr}[2]{\ratlang{\mathbb{R}}(\Sigma)}
...
Let us denote $\sr$ the class of rationnal
stochastic language over $\mathbb{R}$ with alphabet $\Sigma$.
Now you see the power of %latex.
There is also another thing that make %latex scalable. You can include other source files. This make it easy to separate work and also to work with many other people.
Another good point with %latex and markdown is that you write only in text file and you can then version these file using `git` for example.
The purposes of this project are
- Handle long documents by:
- adding macros to kramdown
- working with many small and versionnable text files
- generate high-quality PDF _and_ HTML documents.
For now, the power of this superset of kramdown syntax is _not_ Turing complete.
You can declare macros, but without any parameters and you cannot use already declared macros inside other macros declaration.
But this simple addition to markdown is already powerful enough for most of usage.

View file

@ -1,44 +0,0 @@
# Install
## Prerequisite
If you are reading these lines
chances are great that your system contains all necessary packages.
But here are the dependencies:
- ruby,
- rake,
- %kramdown[^1]
Optionally you'll need:
- %latex (more precisely %xelatex) to generate PDF output,
- MathJax to draw correctly math formulae inside HTML website,
- `pdf2svg` to generate the SVG oriented website.
[^1]: %kramdown is an amelioration of the original markdown format.
## The steps
1. You'll need to install ruby and rake.
They should be present on your system.
But if you are using Ubuntu the following command line should be enough:
<pre>[Ubuntu]> sudo apt-get install ruby rake</pre>
2. In order to install the %kramdown gem:
<pre>> gem install kramdown</pre>
3. To install %xelatex, I suggest you to use [TexLive](http://www.tug.org/texlive/) full install to be certain not lacking anything.
Of course you are free to use any other distribution that suit you better.
4. Download [MathJax](http://www.mathjax.org)
5. Finally Download the [source code](http://github.com/yogsototh/krambook) and copy the MathJax directory into `site/js/`.
Verify if all work correctly by running:
> rake
> rake html
Congratulation you are ready.

View file

@ -1,150 +0,0 @@
# Tutorial
## Firsts steps
I suppose you have a correct install of %latex.
If you had not yet verified try to launch the following:
> rake
It should create a `krambook.pdf` file.
Now it is time to create your own book:
- Edit the `config.rb` file (set title, author name and the pdf filename)
- Create and write files in the `content` folder.
You should write them using the [kramdown](http://kramdown.rubyforge.org/) format.
Very close to the %mardown format.
Remark:
: by default file are sorted by name. I suggest you to name your files and folder with number prefixes. For example like `00_intro.md`, `01_section/01_subsection.md`, etc... You can make a bit of `ruby` (search `@filelist` in the `Rakefile` file) to change this behaviour.
- run `rake` (or `rake compile`) to create and show a `.pdf` file.
- run `rake html` and launch `unicorn` (`gem install unicorn`) then look at the website at `http://localhost:8080/`,
- run `rake clean` to remove temporary files,
- run `rake clobber` to remove all generated files
With just that you can already write a book.
You can make as many as file as you want.
Every file of the form: `content/**/*.md` will be used to create the book.
## Macros
Now you can write the content of your book mostly in %kramdown format.
But with some simple additions: _macros_.
Remark:
: For now Krambook accept only macros _without_ any parameter. Here are some examples:
<pre>
&#x004d;ACRO(simple) = A Simple Macro ENDMACRO
&#x004d;ACRO(amacro) = a
macro
on many lines ENDMACRO
&#x004d;ACRO(code) = ruby: "a"*3 ENDMACRO
&#x004d;ACRO(complex) = ruby: (1..5).map do |x|
x*x
end.join(" : ") ENDMACRO
</pre>
These transformations will occur on the markdown file before it is transformed in %latex.
You can also declare macro that will be processed after the file was transformed in %latex or in HTML.
<pre>
&#x0050;OSTMACRO(tex) = LATEX: \TeX HTML: TeX ENDMACRO
&#x0050;OSTMACRO(tex_) = LATEX: \TeX{} HTML: TeX ENDMACRO
</pre>
To use them simply write \%macroname or \%code
and it will be transformed correctly in your pdf or HTML.
## Some other macros examples
MACRO(tldr) = _Too long don't read:_ ENDMACRO
MACRO(multiline) = a
multiline
macro ENDMACRO
MACRO(ruby) = ruby: "a"*3 ENDMACRO
MACRO(complex) = ruby: (1..5).map do |x|
x*x
end.join(" : ") ENDMACRO
POSTMACRO(latex) = LATEX: \LaTeX HTML: LaTeX ENDMACRO
It is a simple demonstration of how macros are working.
They were declared inside the markdown like this:
<pre>
&#x004d;ACRO(tldr) = _Too long don't read_ ENDMACRO
&#x004d;ACRO(multiline) = a
multiline
macro ENDMACRO
&#x004d;ACRO(ruby) = ruby: "a"*3 ENDMACRO
&#x004d;ACRO(complex) = ruby: (1..5).map do |x|
x*x
end.join(" : ") ENDMACRO
&#x0050;OSTMACRO(latex) = LATEX: \LaTeX HTML: LaTeX ENDMACRO
</pre>
Now if I write:
> \%tldr A simple demonstration of how macros are working.
It renders as:
%beginbox
> %tldr A simple demonstration of how macros are working.
%endbox
The \%multine macro render as:
%beginbox
> %multiline
%endbox
The output should be in %latex &nbsp; and
was compiled from a markdown-like format.
- Simple list ;
- Example ;
- Another one item.
~~~~~
Hello there
this is some code block
~~~~~
%latex
: Some %latex &nbsp; definition
A simple math mode $$x_i$$ and a protected one \$$x_i\$$
A long formula now:
$$ \sum_{i=0}^n\sqrt{x_i + y_i} $$
Even with some ruby code inside:
Here is the result of the \%ruby macro:
%beginbox
%ruby
%endbox
and a more complex one (\%complex):
%beginbox
%complex
%endbox

385
content/cv.md Normal file
View file

@ -0,0 +1,385 @@
MACRO(markdown) = `markdown` ENDMACRO
MACRO(kramdown) = [`kramdown`](http://kramdown.rubyforge.org) ENDMACRO
MACRO(krambook) = [`krambook`](http://krambook.espozito.com) ENDMACRO
POSTMACRO(beginbox) = LATEX: \medskip\fbox{\colorbox{boxcolor}{\begin{minipage}{.80\linewidth}% HTML: &lt;div class="encadre"&gt; ENDMACRO
POSTMACRO(endbox) = LATEX: \end{minipage}}}\medskip HTML: &lt;/div&gt; ENDMACRO
POSTMACRO(xelatex) = LATEX: \XeLaTeX HTML: <span style="text-transform: uppercase">X<sub style="vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em">&#x018E;</sub>L<sup style="vertical-align: 0.15em; margin-left: -0.36em; margin-right: -0.15em; font-size: .85em">a</sup>T<sub style="vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em">e</sub>X</span> ENDMACRO
POSTMACRO(xelatex_) = LATEX: \XeLaTeX{} HTML: <span style="text-transform: uppercase">X<sub style="vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em">&#x018E;</sub>L<sup style="vertical-align: 0.15em; margin-left: -0.36em; margin-right: -0.15em; font-size: .85em">a</sup>T<sub style="vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em">e</sub>X</span> ENDMACRO
POSTMACRO(latex) = LATEX: \LaTeX HTML: <span style="text-transform: uppercase">L<sup style="vertical-align: 0.15em; margin-left: -0.36em; margin-right: -0.15em; font-size: .85em">a</sup>T<sub style="vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em">e</sub>X</span> ENDMACRO
POSTMACRO(latex_) = LATEX: \LaTeX{} HTML: <span style="text-transform: uppercase">L<sup style="vertical-align: 0.15em; margin-left: -0.36em; margin-right: -0.15em; font-size: .85em">a</sup>T<sub style="vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em">e</sub>X</span> ENDMACRO
POSTMACRO(tex) = LATEX: \TeX HTML: <span style="text-transform: uppercase">T<sub style="vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em">e</sub>X</span> ENDMACRO
POSTMACRO(tex_) = LATEX: \TeX{} HTML: <span style="text-transform: uppercase">T<sub style="vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em">e</sub>X</span> ENDMACRO
POSTMACRO(metapost) = LATEX: \MP HTML: METAPOST ENDMACRO
POSTMACRO(metapost_) = LATEX: \MP{} HTML: METAPOST ENDMACRO
# Yann Esposito
Docteur en Informatique (expert en Machine Learning)
## Domaines de Compétence
- Développement Web 2.0/Ajax/Réseaux Sociaux
- Développement Ruby
- Développement Java/Swing/Java 2D
- Développement C++/STL
- Conception et Développement de Protocoles Réseaux
- Formation Informatiques
- Recherche Scientifique (Machine Learning)
- Technologies Mac OS X
# Connaissances Techniques
Langages objets
: Ruby, Javascript, Perl, C++, Java, Python, PHP, Objective-C
Web
: Ajax (xmlHTTPRequest, prototype.js, jQuery, scriptaculous...), XML, JSON Ruby (nanoc), PHP/MySQL, Python (Django), REST, SOAP, XML-RPC
Normes
: HTML, XHTML, CSS, SVG
Bibliothèques (API)
: C++(STL), Java (Swing/Java 2D), Python (PySQLite, wxPython, crypto, socket), Objective-C (Cocoa, iOS, Core Data, Quartz Composer)
Autres langages
: C, camL
Outils `UNIX`
: Scripts shell (zsh, bash), awk, %latex, %context, %metapost
Méthodes de conception
: UML, Merise
Outils de développement
: XCode, Environnement Unix (make, gcc,...)
Outils décisionnels
: Entreprise Miner (SAS), weka, SVMlight
Outils de contrôle version
: git, Bazaar (DCVS), subversion (svn), CVS
Matériel et systèmes
: Mac OS X, Unix/Linux (Solaris, Ubuntu, Debian), Windows XP
IHM
: jQuery, scriptaculous, prototype.js, Java Swing, wxPython, Cocoa
Protocoles réseaux
: Ethernet, TCP/IP, UDP, FTP, DNS, DHCP
Outils réseaux
: ifconfig, tcpdump, wireshark (ehtereal),lsof...
Sécurité
: AES, DES, 3DES,Codes de Hamming, PGP, GPG, réseaux certifiant lanoymat, Certificats...
Bases de données
: DataMapper, MySQL, PostgreSQL, SQLite
## Experience
### Développeur Freenlance pour GridPocket© depuis janvier 2010
Mission
: Création de larchitecture serveur dune application mobile.
Rôle
: Conception, Organisation, Développement, Tests et Installation de la solution serveur.
Technologies utilisées
: Ruby, REST, JSON, HTML, CSS, Javascript, AJAX, jQuery
### Consultant Astek en mission pour AirFrance, Sophia Antipolis, depuis juillet 2007
Mission
: Gestion de loutil interne dAirFrance de Gestion de contenu WEB. Cet outil interne basé sur TeamSite permet de gérer la contribution des auteurs, la validation par des éditeurs ainsi que les déploiements du site vers les serveurs de productions.
Projets spécifiques:
- GPNet _3 mois_
- Refonte du site intranet GPNet dAirFrance pour utiliser les standards modernes
- XHTML, Javascript, CSS
- JTS _9 mois_
- Transformation complète du site airfrance.biz en vue de lintégration de celui-ci dans le système CMS de KLM.
- Modification de masse des templates à laide de scripts shell et awk.
- Wadis v2 _juillet 2008_
- Transformation complète du look and feel du site `airfrance.biz`.
- Ajout de nombreuses fonctionnalités. Maintenance et améliorations depuis juillet 2009.
- Création de nouveaux pays notamment `NL`, mais aussi des marchés utilisant des langues exotiques comme le japonais et le coréen.
Developpements Transverses :
- Amélioration des développements internes dAirFrance relatif aux déploiements vers les serveurs de productions ainsi quau fonctionnement du CMS (Perl, Workflow Teamsite ; XML)
- Intégration dun système de versionning moderne (Bazaar DCVS) pour la gestion des développements internes AirFrance.
- Maintenance du système CMS dans son ensemble.
- Création dun script automatisant lalimentation des données entre différents environnements
Technologies utilisées
: TeamSite, Perl, XML, XHTML, CSS, javascript, JSP, Unix (Solaris/Linux), Bazaar
Environnement
: Windows (Cygwin), Sun Solaris, Linux
### Post Doctorat, Université Jean Monnet, Laboratoire Hubert Curien, Saint-Etienne _10/2006 - 3/2007_
#### Développement
application lourde en JAVA: _11 000 lignes commentaires javadoc compris_
Principales fonctionnalités
- apprentissage de matrices de coûts d'éditions,
- calcul de distance d'édition entre arbres ou séquences de caractères,
- visualisation d'arbres ou de séquences (JAVA 2D),
- classification en utilisant les K plus proches voisins,
- Génération d'échantillons de couples d'arbres,
Des captures décran sont aussi disponibles à l'adresse suivante : [www.lif.univ-mrs.fr/~esposito/sedil.php](http://www.lif.univ-mrs.fr/~esposito/sedil.php?lang=fr)
#### Recherche scientifique mesures de similarité entre séquences ou entre arbres XML
Contact
: [Marc Sebban](mailto://marc.sebban@univ-st-etienne.fr)
Technologies utilisées
: UML, Java 1.5, Swing, Java 2D, Java Web Start, Applet, subversion, XML, XHTML, PHP
Environnement
: Mac OS X, Linux (Debian), Windows XP
### Attaché Temporaire dEnseignement et de Recherche, Université de Provence, Marseille _10/2004-9/2006_
1/2 enseignement, 1/6 recherche, 1/3 développement/maintenance `C++`
#### Enseignement _Bac+3 à Bac+5_
Enseignements dispensés
Réseaux
: (Master 1) mise en place matérielle, programmation client-serveur, législation, Projet système danonymat (routage en oignons comme TOR) (langages de programmation C, Python + outils shell)
Systèmes
: (Licence 3) compréhension de la programmation système (langage de programmation C)
Fouille de données
: (Master 2) SAS et Entreprise Miner
Logiciels professionnels
: (Licence 3) POO, UML, CVS, SVN, Merise, SQL, Eclipse, Java, JSP
Recherche Opérationnelle
: (Master 1) résolution de contraintes linéaires
stage de C
: (Licence 3) Langage C
TER
: Encadrement d'un projet d'étude et de recherche à des Master 1 (Multi-agent)
#### Recherche
Machine Learning, Modèles de Markov, Automates à Multiplicité
#### Développement/maintenance
Application écrite en C++ _7 500 lignes, 10 000 avec les commentaires_
principales fonctionnalités
- Inférence d'automates à multiplicité,
- Inférence d'automates probabilistes résiduels (inférence de Chaînes de Markov cachées ; apprentissage des paramètres et de la structure),
- Inférence d'automates probabilistes déterministes,
- Algorithme de Baum Welch (Apprentissage des paramètres d'un HMM à partir d'un échantillon de séquences),
- Exportation au format GraphViz,
- Génération d'échantillons à partir d'un MA,
Langages
: C++
API
: STL
Matériel
: environnement Linux (Debian) et Windows XP
### Moniteur des Universités, Université de Provence, Marseille _10/2001-9/2004_
1/3 d'enseignement, 1/3 de recherche, 1/3 de développement.
#### Enseignement _Bac +1 à Bac +2_
- Initiation à l'informatique (environnement UNIX, scripts shell, LOGO),
- Algorithmique,
- Stage de C,
- Soutien C++,
- Internet et Bases de Données (PHP/MySQL),
- Apprentissage automatique (Master 1)
#### recherche
Machine Learning, statistiques, Hidden Markov Models, bio-informatique
#### Développement
Développement d'une application en C++ _(10000 lignes de codes environ)_.
Principales fonctionnalités
- Inférence d'automates à multiplicité,
- Inférence d'automates probabilistes résiduels (inférence de Chaînes de Markov cachées ; apprentissage des paramètres et de la structure),
- Inférence d'automates probabilistes déterministes,
- Algorithme de Baum Welch (Apprentissage des paramètres d'un HMM à partir d'un échantillon de séquences),
- Exportation au format GraphViz,
- Génération d'échantillons à partir d'un MA ...
Langages
: C++
API
: STL
Environnement
: Linux (Debian) et Windows XP
#### Divers travaux dété, environs de Marseille _1995-2000_
- Eurocopter (un peu de Visual Basic pour automatiser des tâches sous Excel)
- Nettoyage des canadairs à la sécurité civile
- Pompiste à Naphtachimie
- Caissier au Crédit Lyonnais
- Divers emplois manœuvres
## Publications scientifiques
### Internationales
Journaux [Fundamenta Inforamticæ vol. 86 2008] [Pattern Recognition, 2004]
Conférences [ECML 2008] [COLT 2006] [ICGI 2006] [COLT 2004] [ICALP 2003] [ICGI 2002]
Workshop [TAGI05]
Nationales
Journaux [JEDAI, 2003]
Conférences [CAP 2006] [CAP 2004] [CAP 2003]
Thèse [Université de Provence 2004]
## Projets
### YPassword _2008-2010_
Ensemble d'applications pour la gestion sécurisée des mots de passes sur Internet.
Il s'agit d'une application iPhone, d'un widget sur les Dashboard Mac des interfaces web réalisées avec jQuery et Cappuccino.
### Rubyzome _2009-2010_
Conception et développement dun framework Web orienté mobile
Conception avec un collègue de travail dun framework Web qui peut sapparenter à du Ruby On Rails, mais complètement orienté vers des applications Web dont les clients sont des applications mobiles. Son nom est Rubyzome et il nest pas encore ouvert à la communauté open source mais devrait bientôt lêtre.
Ce projet a été utilisé avec succès dans la conception de l'infrastructure pour GridPocket.
Langages
: Ruby, Javascript
API
: Rack, jQuery
Formats de données
: JSON, XML, XHTML/CSS
Paradigme
: REST, Mobile
Matériel
: Linux, Mac OS X
### Réseaux anonymes _2006_
Jai conçut un protocole permettant de communiquer et de surfer de façon anonyme. Le système est basée sur lidée de l_Onion routing_ (comme le réseaux [TOR](http://www.torproject.org)). Lidée était de donner à mes étudiant ce protocole et quils limplémentent.
Je leur ai proposé dutiliser le langage de leur choix, en leur conseillant dutiliser Python pour la vitesse de développement.
Le projet se résume en une mini RFC, les détails de la partie chiffrement étant suffisamment vague pour pouvoir discerner les élèves qui avaient compris comment le chiffrement devait avoir lieu.
Langages
: C, Python, Java
API
: socket en C et python. crypto en python
Sécurité
: Chiffrement AES, RSA
Matériel
: Parc de machines sous Linux et Sun Solaris
### Maintenance et amélioration dun site sous PHP/MySQL de gestion de conférence scientifique _2003_
Langages
: PHP/MySQL
Site
: (plus en progrès, je nai pas géré lapparence) CAp03, [http://www.grappa.univ-lille3.fr/cap2003/](http://www.grappa.univ-lille3.fr/cap2003/)
### Projets personnels diffusés sur Internet
_2008_ Conception et développement dune application web simple
Cette application est léquivalent dun mini forum, qui ressemble à twitter mais de façon anonyme. Le site est disponible sur demande.
Langages
: Javascript(Prototype.js, Scriptaculous), CSS, PHP/MySQL
_2003-2004_ Conception dun package %metapost permettant de faire de laffichage dautomates probabilistes
Langages
: Metapost
_2003-2004_ Conception déconomiseurs décran pour Mac OS X
Langages
: Objective-C/Quartz Composer/Cocoa
### Projets personnels non diffusés sur Internet
_2005_ Conception dune application pour conserver mes notes personnelles (fonctionnel mais non finalisé)
Langages
: Objective-C
API
: Core Data
Matériel
: Mac OS X, XCode, Interface Builder
_2005_ Conception dun langage personnel pour la diffusion de documents sous format
PDF / HTML / Application Lourde (pas encore fonctionnel)
Langages
: Python
API
: re
Matériel
: [Vim](http://www.vim.org)
_2004-2005_ Conception dun framework RAD en Python (non finalisé)
Langages
: Python
API
: wxPython, pySQLite
Matériel
: windows, Mac OS X, Linux
## FORMATION
- _2004_ Doctorat en Informatique à lUniversité de Provence, domaine Machine Learning
- _2001_ D.E.A. dInformatique (mention bien)
- _2000_ Maîtrise dInformatique (mention bien)
- _1999_ Licence dInformatique (mention bien)
- _1998_ DEUG MIAS option mathématiques
- _1995_ BAC S option mathématiques
## Divers
- Anglais courant
- Permis B et véhicule
- Nationalité française

54
include/cv_template.tex Normal file
View file

@ -0,0 +1,54 @@
\include{include/main}
% -- Personal style --
%%# LATEX HEADER FROM config.rb #%%
% -- Redefinition of memoir chapters --
%
% standard is:
% \chapterheadstart
% \printchaptername \chapternamenum \printchapternum
% \afterchapternum
% \printchaptertitle{Title goes here}
% \afterchaptertitle
\definecolor{hrulecolor}{rgb}{0.8,0.8,0.8}
\makechapterstyle{combined}{
\renewcommand*{\chapterheadstart}{%
{\normalsize\textcolor{hrulecolor}{\vspace{2ex}\hrule\vspace{.2ex}\hrule}}}
\renewcommand*{\afterchaptertitle}{%
{\vspace{-2.5ex}\normalsize\textcolor{hrulecolor}{\hrule\vspace{.2ex}\hrule\bigskip\bigskip}}}
\renewcommand*{\afterchapternum}{}
\renewcommand*{\printchaptername}{}
\renewcommand*{\printchapternum}{}
\newcommand{\styleprintchapternum}{\textcolor{hrulecolor}{\Huge\thechapter\hspace{.5em}}}
\renewcommand*{\printchaptertitle}[1]{\medskip\begin{center}\styleprintchapternum \hfill\begin{minipage}{.9\linewidth}\begin {center}\Huge##1\end{center}\end{minipage}\end{center}\medskip}
}
\chapterstyle{combined}
% -- END CHAPTER STYLE --
% -- Hyperref setup --
\definecolor{linkcolor}{rgb}{0.4,0.0,0.0}
\hypersetup{
colorlinks=true, %
linkcolor=linkcolor, %
urlcolor=linkcolor, %
citecolor=linkcolor, %
filecolor=linkcolor, %
pdfcreator=author, %
}
% --
\author{}
\title{}
\begin{document}
% obvious title making
\maketitle
% Do not modify the following line
% unless you really know what you are doing!
%%#INCLUDES#%%
\end{document}

Binary file not shown.