From ab579b6fcaf20bc9b90e39fc33bac6ec3ea5e6a0 Mon Sep 17 00:00:00 2001 From: Leandro Lucarella Date: Thu, 19 Jul 2007 19:55:36 +0000 Subject: [PATCH] Initial resume import. --- SConscript | 25 +++++++ SConsext/__init__.py | 0 SConsext/rst.py | 32 +++++++++ SConstruct | 65 ++++++++++++++++++ resume-en.rst | 145 +++++++++++++++++++++++++++++++++++++++++ resume-es.rst | 152 +++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 419 insertions(+) create mode 100644 SConscript create mode 100644 SConsext/__init__.py create mode 100644 SConsext/rst.py create mode 100644 SConstruct create mode 100644 resume-en.rst create mode 100644 resume-es.rst diff --git a/SConscript b/SConscript new file mode 100644 index 0000000..01deecc --- /dev/null +++ b/SConscript @@ -0,0 +1,25 @@ +# vim: set filetype=python encoding=utf-8 : + +# Ver el SConstruct para más detalles + +# Importamos el entorno que nos da el SConstruct +# http://www.scons.org/doc/0.97/HTML/scons-user/x2122.html#AEN2162 +Import('env') + +for lang in ('es', 'en'): + + # Copio el entorno + e = env.Clone() + + # Agrego idioma + e.Append(RSTFLAGS=' --language=' + lang) + + # Construcción de LaTeX desde reST + latex = e.ReST2Latex('resume-' + lang) + + # Construcción de PDF desde DVI + pdf = e.PDF('resume-' + lang, 'resume-' + lang + '.latex') + + # Por default (usando scons -U) queremos construir el manual en PDF + Default(pdf) + diff --git a/SConsext/__init__.py b/SConsext/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/SConsext/rst.py b/SConsext/rst.py new file mode 100644 index 0000000..6155c6e --- /dev/null +++ b/SConsext/rst.py @@ -0,0 +1,32 @@ +# vim: set filetype=python encoding=utf-8 : + +# Manejo de archivos rst. + +# Importar todos los símbolos que tienen importados los SConstruct/SConscript +from SCons.Script import * + +# Compilación de rst a latex +def rst2latex_generator(target, source, env, for_signature): + rst2latex = env.get('RST2LATEXCOM', 'rst2latex') + opts = env.get('RSTFLAGS', '') + opts2 = env.get('RST2LATEXFLAGS', '') + return '%s %s %s %s > %s\n' \ + % (rst2latex, opts, opts2, source[0], target[0]) + +ReST2Latex = Builder( + generator = rst2latex_generator, + suffix = '.latex', + src_suffix = '.rst' +) + +# Chequeador de existencia de rst2latex +def CheckReST2Latex(context, rst2latex=None): + if rst2latex is None: + rst2latex = context.env.get('RST2LATEXCOM', 'rst2latex') + context.Message('Checking for rst2latex command: %s... ' % rst2latex) + result = context.TryAction(rst2latex + ' < /dev/null') + if result[0]: + context.env['RST2LATEXCOM'] = rst2latex + context.Result(result[0]) + return result[0] + diff --git a/SConstruct b/SConstruct new file mode 100644 index 0000000..66f5080 --- /dev/null +++ b/SConstruct @@ -0,0 +1,65 @@ +# vim: set filetype=python encoding=utf-8 : + +# Esto es un script de python. Los comentarios empiezan con '#'. +# Mando un poco verborrágico/expandido para poder comentar mejor. + +# El SConstruct es análogo al configure.ac +# Los SConscript son análogos a los Makefile.am + +# Importamos nuestro módulo custom para compilar reST a LaTeX. +import SConsext.rst + +# Creamos opciones (leyendo opcionalmente el archivo de configuración) +opts = Options('SConsoptions') + +# Agregamos la posibilidad de elegir la ubicación del comando rst2latex +opts.Add('RST2LATEXCOM', 'Ubicación del comando rst2latex', 'rst2latex') + +# Seteamos el entorno de building. Más en: +# http://www.scons.org/doc/0.97/HTML/scons-user/c1051.html +env = Environment(options=opts, # opciones de línea de comandos + # Donde debe buscar includes el preprocesador + CPPPATH=[ + '.', # Primero que mire en el directorio actual + '#', # Después que mire en el directorio 'toplevel' + ], + # Opciones generales para reST + RSTFLAGS='--section-subtitles', + # Opciones particulares para rst2latex + RST2LATEXFLAGS='--use-latex-footnotes --use-latex-citations ' \ + '--use-latex-docinfo --use-verbatim-when-possible', +) + +# Además usamos nuestro builder custom +env.Append(BUILDERS = { 'ReST2Latex': SConsext.rst.ReST2Latex }) + +# Si están haciendo un scons -c (clean), al pedo configurar... +if not env.GetOption('clean'): + + # Empezamos la "configuración" (onda configure de autotools). Más en: + # http://www.scons.org/doc/0.97/HTML/scons-user/c2801.html + conf = Configure(env, + # Agregamos nuestro chequeo custom para rst2latex + custom_tests = { + 'CheckReST2Latex': SConsext.rst.CheckReST2Latex + }) + + # Chequeos de rst2latex custom nuestro + if not conf.CheckReST2Latex(): + print 'Debe tener instalado rst2latex para continuar!' + Exit(1) + + # Termina la configuración + env = conf.Finish() + +# Generación automática de ayuda +env.Help(opts.GenerateHelpText(env)) + +# Exportamos el entorno para que lo puedan usar los SConscript hijos +# http://www.scons.org/doc/0.97/HTML/scons-user/x2122.html +Export('env') + +# Le decimos que procese estos SConscript +# http://www.scons.org/doc/0.97/HTML/scons-user/c2032.html +SConscript(['SConscript']) + diff --git a/resume-en.rst b/resume-en.rst new file mode 100644 index 0000000..97193a1 --- /dev/null +++ b/resume-en.rst @@ -0,0 +1,145 @@ + +======================== +Leandro Matías Lucarella +======================== + +:Contact: llucax+resume at gmail dot com + + +Profile +======= + +Versatile developer with a wide range of application coverage (from base +library and system programming in low-level languages to graphic and web +applications in high-level languages; enjoying the most working in the +former). + +Proactive self-taught, able to work on own motivation or as part of both +small or big teams, specially using FLOSS_ (Free *Libre* Open Source +Software) development methodologies and tools. Good skills and interest in +working on distributed and concurrent systems design and implementation. + +.. _FLOSS: http://flossworld.org/ + + +Skills +====== + +- Programming languages theory with deep practical knowledge of modern + C++, C and Python. +- Wide range of web development knowledge. +- Concurrent and network programming, including POSIX threads, BSD + sockets, TCP/IP and some TIPC_ (Transparent Inter Process Communication) + experience. +- GUI programming using GTK+ (glade/libglade included). +- Object-oriented design and programming. +- Shell scripting and Linux system administration. +- Training people on programming topics. + +.. _TIPC: http://tipc.sourceforge.net/ + + +Achievements +============ + +- Founding and actual member of LUGFI_ (2002) and LUGMEN_ (1998) + Linux/FLOSS_ users groups, making several conferences. +- Several FLOSS_ projects collaborations: + + Linux_: + Bugfix in ``bttv`` module for Leadtek WinView 601 TV card (2001). + + LIRC_ (Linux Infrared Remote Control): + Debug of ``lirc_gpio`` module (2002). + + PEAR_ (PHP Extension and Application Repository): + Added ``Date_Span`` class and bugfixes (2003). + + xmi2code_ (a roundtrip code generator from XMI): + Added PHP support and other minor features and bugfixes. + Became project maintainer (2003). + + dia2code_ (small utility used to generate code from a Dia diagram): + Added PHP support (2003). + + SQLObject_ (object relational manager for Python): + Minor features and bugfixes (2006-2007). + + TurboGears_ (rapid web development megaframework): + Minor features and bugfixes (2006). + + Gnomad2_ (GTK+ music manager for devices using PDE protocol): + Minor GUI improvements (2005). + +- Hooks_, a PHP mini-framework for Unix-like console based website + administration, project founder and co-leader, mainly used for LUGFI_ + and LUGMEN_ and related projects websites (2001-date). +- Development and maintenance of LUGFI_ and LUGMEN_ websites + (1999-2004). +- Developed an OO PHP framework based on PEAR_ and several applications + using it to build an intranet (2001-2004). +- Published several articles on the web (1999-2005). Two of them were + published on `Linux Free Magazine`_, year 1, number 1 (2003). +- Developed an ISA NE2000 compatible network adapter driver and a small, + custom IP/UDP stack for 8051 microcontrollers in C and ASM (2005). +- Design, development and maintenance of an automated compilation and + testing system for programs written in C/C++ to speed up the correction + process of programming exercises (2004-date). + +.. _Linux: http://www.kernel.org/ +.. _LUGFI: http://www.lug.fi.uba.ar/ +.. _LUGMEN: http://www.lugmen.org.ar/ +.. _LIRC: http://www.lirc.org/ +.. _PEAR: http://pear.php.net/ +.. _xmi2code: http://xmi2code.sourceforge.net/ +.. _dia2code: http://dia2code.sourceforge.net/ +.. _SQLObject: http://www.sqlobject.org/ +.. _TurboGears: http://www.turbogears.org/ +.. _Gnomad2: http://gnomad2.sourceforge.net/ +.. _Hooks: http://hooks.gforge.lug.fi.uba.ar/hooks/docs/html/index.html +.. _`Linux Free Magazine`: http://www.kernelproduktion.com/newfile24.htm + + +Experience +========== + +1997-date: + Freelance independent professional. + +2001-2004: + Ministerio de Economía - Internship - LAMP (Linux, Apache, MySQL, + PHP) web development and some Linux_ system administration. + +2004: + `My Way` - LAMP web development and some Linux_ system + administration. + +2004-date: + FIUBA_ (Facultad de Ingeniería, `Universidad de Buenos Aires`_) + - Assistant teacher, teaching programming topics covering C, C++, + POSIX threads, BSD sockets and GTK+ GUI and more. + +2006-date: + `Integratech S.A.`_ - HA (High Availability) related programming for + a softswitch for Siemens (C/C++). + +.. _FIUBA: http://www.fi.uba.ar/ +.. _`Universidad de Buenos Aires`: http://www.uba.ar/ +.. _`My Way`: http://www.myway.com.ar/ +.. _`Integratech S.A.`: http://www.integratech.com.ar/ + + +Education +========= + +1992-1997: + Secondary school diploma, specialized in exact sciences, technology + and design - CNBA_ (Colegio Nacional de Buenos Aires), Argentina. + +1998-date: + Computer engineering - FIUBA_ (Facultad de Ingeniería, `Universidad de + Buenos Aires`_), Argentina. Working on the thesis. + +.. _`CNBA`: http://www.cnba.uba.ar/ + +.. vim: set sw=2 sts=2 ts=2 et: diff --git a/resume-es.rst b/resume-es.rst new file mode 100644 index 0000000..3f57e7c --- /dev/null +++ b/resume-es.rst @@ -0,0 +1,152 @@ + +======================== +Leandro Matías Lucarella +======================== + +:Contacto: llucax+resume en gmail punto com + + +Perfil +====== + +Desarrollador versátil capaz de cubrir un amplio rango de aplicaciones, +desde bibliotecas de base o frameworks en lenguajes de bajo nivel hasta +aplicaciones gráficas o web en lenguajes de alto nivel, prefiriendo +-en términos generales- las primeras. + +Autodidacta proactivo, con buena aptitud para trabajar solo, en pequeños +grupos autosuficientes o grupos grandes utilizando metodologías y +herramientas del mundo FLOSS_ (Free *Libre* Open Source Software). Buena +capacidad y gran interés en el diseño e implementación de sistemas +distribuidos y concurrentes. + +.. _FLOSS: http://flossworld.org/ + + +Habilidades +=========== + +- Muy buenos conocimientos de lenguajes de programación + (teoría de lenguajes). Excelentes conocimientos prácticos de C++ + moderno, C y Python. +- Buenos conocimientos de HTTP/HTML y desarrollo web en general. +- Buen conocimiento de programación concurrente y distribuida, incluyendo + hilos POSIX, sockets BSD, TCP/IP y en menor medida TIPC_ (Transparent + Inter Process Communication). +- Programación de GUI utilizando GTK+ (glade/liblade inclusive). +- Diseño e implementación orientada a objetos. +- Buenos conocimientos de *shell scripting* y administración de servicios + en Linux/UN*X. + +.. _TIPC: http://tipc.sourceforge.net/ + +Logros +====== + +- Miembro fundador y actual de los grupos de usuarios de FLOSS_ LUGFI_ + (2002) y LUGMen_ (1998), organización de varios eventos y encargado de + varias disertaciones. +- Colaboración en varios proyectos de FLOSS_: + + Linux_: + Bugfix en el módulo ``bttv`` para la placa Leadtek WinView 601 TV + (2001). + + LIRC_ (Linux Infrared Remote Control): + Debug del módulo ``lirc_gpio`` (2002). + + PEAR_ (PHP Extension and Application Repository): + Agregado de clase ``Date_Span`` y bugfixes (2003). + + xmi2code_ (a roundtrip code generator from XMI): + Agregado de soporte de PHP y otras mejoras menores, bugfixes y + mantenimiento del proyecto (2003). + + dia2code_ (small utility used to generate code from a Dia diagram): + Agregado de soporte PHP (2003). + + SQLObject_ (*object relational manager* para Python): + Mejoras menores y bugfixes (2006-2007). + + TurboGears_ (megaframework de desarrollo web rápido): + Mejoras menores y bugfixes (2006). + + Gnomad2_ (administrador de música para dispositivos con protocolo PDE): + Mejoras menores a la interfaz gráfica en GTK+ (2005). + +- Hooks_, un mini-framework en PHP para administración por consola de + sitios web al estilo Unix. Fundador del proyecto y co-líder. Utilizado + principalmente por el sitio web del LUGFI_, LUGMEN_ y otros proyectos + afines (2001-actualidad). +- Desarrollo y mantenimiento de los sitios web del LUGFI_ y LUGMEN_ + (1999-2003). +- Desarrollo de un framework OO en PHP basado en PEAR_ y varias aplicaciones + sobre él para construir una intranet (2001-2004). +- Publicación de varios artículos en la web (1999-2005). Dos de + ellos fueron publicados en la revista española `Linux Free Magazine`_, + año 1, número 1 (2003). +- Desarrollo de un driver par placas de red NE2000 compatibles ISA y un + stack pequeño y personalizado de IP/UDP para microcontroladores 8051 + en C y ASM (2005). +- Diseño, implementación y mantenimiento de un sistema de compilación + y prueba automática de programas escritos en C/C++ para agilizar el + proceso de corrección de ejercicios de programación (2004-actualidad). + +.. _Linux: http://www.kernel.org/ +.. _LUGFI: http://www.lug.fi.uba.ar/ +.. _LUGMEN: http://www.lugmen.org.ar/ +.. _LIRC: http://www.lirc.org/ +.. _PEAR: http://pear.php.net/ +.. _xmi2code: http://xmi2code.sourceforge.net/ +.. _dia2code: http://dia2code.sourceforge.net/ +.. _SQLObject: http://www.sqlobject.org/ +.. _TurboGears: http://www.turbogears.org/ +.. _Gnomad2: http://gnomad2.sourceforge.net/ +.. _Hooks: http://hooks.gforge.lug.fi.uba.ar/hooks/docs/html/index.html +.. _`Linux Free Magazine`: http://www.kernelproduktion.com/newfile24.htm + + +Experiencia +=========== + +1997-actualidad: + Profesional independiente *freelance*. + +2001-2004: + Ministerio de Economía - Pasantía - Desarrollo web en LAMP (Linux, + Apache, MySQL, PHP) y tareas de administrador de sistemas Linux. + +2004: + `My Way` - Desarrollo web en LAMP y tareas de administrador de + sistemas Linux. + +2004-actualidad: + FIUBA_ (Facultad de Ingeniería, `Universidad de Buenos Aires`_) + - Ayudante interino de 2da con dedicación parcial, enseñando C, + C++, hilos POSIX, sockets BSD, interfaces en GTK+ GUI y otros temas + de programación. + +2006-actualidad: + `Integratech S.A.`_ - Programación de HA (Alta disponibilidad) para + un softswitch para Siemens en C/C++. + +.. _FIUBA: http://www.fi.uba.ar/ +.. _`Universidad de Buenos Aires`: http://www.uba.ar/ +.. _`My Way`: http://www.myway.com.ar/ +.. _`Integratech S.A.`: http://www.integratech.com.ar/ + + +Educación +========= + +1992-1997: + Bachiller especializado en ciencias exactas, tecnología y diseño - + CNBA_ (Colegio Nacional de Buenos Aires), Argentina. + +1998-actualidad: + Ingeniería en Informática - FIUBA_ (Facultad de Ingeniería, + `Universidad de Buenos Aires`_), Argentina. Trabajando en la tesis. + +.. _`CNBA`: http://www.cnba.uba.ar/ + +.. vim: set sw=2 sts=2 ts=2 et: -- 2.43.0