Esteban Manchado Velázquez

zoso@demiurgo.org — Phone: +34-928-243428

Personal Information

Name

Esteban

Surnames

Manchado Velázquez

Phone/Mobile

+34-928-243428 / +34-636-798343

E-mail Address

zoso@demiurgo.org

Homepage (Spanish)

http://www.demiurgo.org

Blogs (Spanish)

http://www.zingzang.org and http://www.feRoRcarril.com

Address

c/ Blasco Ibáñez, 6, 2º

35006 Las Palmas de Gran Canaria

Canary Islands

Spain

Nationality

Spanish

Date of Birth

8/8/1977

Gender

Male

Profile

Linux developer with almost 10 years of experience, Debian Developer since 2002. Scripting language expert (especially Ruby and Perl), but also good knowledge of C, C++ and others.

I have years of experience designing and writing cross-platform custom applications, both web-based and GUI-based (using Qt, WxWidgets and Tk). I am also very experienced in customisation and maintenance of Free Software, and I am one of the lead developers for mEDUXa, a Linux distribution for Canarian schools. My main focus, as a developer, is on code quality, through automated tests, development tools (frequently developed in-house), documentation, workshops, ready-to-use packages and reusable libraries.

Work Experience

Fotón Sistemas Inteligentes (Jul 2002 - Now)

Description

Analysis, design and implementation of custom applications, mostly web-based.

Server administration, software packaging, internal tools development.

Technologies Used

Web development: Perl CGIs, Perl + Mason, Ruby on Rails, PHP, Javascript.

System administration: Debian package development, Debian package repositories, Jabber servers, chroot-based "virtual machines", Cygwin, VMWare, UML and Xen.

Cross-Platform GUIs: Perl/Tk, Perl/wxWidgets, Python/Qt, Windows Intaller Compilers.

Databases: MySQL, PostgreSQL.

Highlights

Design and development of a next-generation web widget system (DJWidgets, in Perl, and RemixWidgets, later, in Ruby).

One of the main developers of the Meduxa project (a Linux distribution for the Canary Islands government), based on Ubuntu and KDE. Lead developer of the automatic update system.

Development of a small call center based on a Jabber daemon system, written in Python, with a Qt interface.

Development of several internal code generation tools.

Testing evangelist, test development with Perl, Ruby and Python.

Development of an extensible build/configuration/install system for web applications, involving reusable, complex Makefiles.

TWiki patches (including PhotonSkin and PhotonSearch).

One of the advocates of having a public SVN repository for the Free Software produced inside the company. The repository is at BerliOS, in the fotonsi project (WebSVN view) and includes several interesting utilities.

Several talks and seminars.

COINPRE (Nov 2001 - Jul 2002)

Description

Design and implementation of a tax system (RecaNET).

Technologies Used

PHP, Javascript, PostgreSQL, Perl.

Highlights

Deployment and Evangelisation of a Source Configuration Management System and a Bug Tracking System (there was none when I arrived).

Refactoring and redesign of some important parts of the application, started a tiny Javascript-based widget system.

OptymaNet (Jul 2001 - Oct 2001)

Description

Web developer for "Camelot", an application for a law firm.

Technologies Used

Firebird database server, and the Mason web component system and Javascript for the application.

Highlights

Use of Perl+Mason for the application coding, a very modern web component system at the time.

Development of a context-sensitive help system.

Subdirección de Comunicaciones ULPGC (Oct 2000 - Oct 2001)

Description

System administrator support.

Technologies Used

Perl, DNS, DHCP, Mail servers, System Monitoring Tools.

Highlights

Development of a system administration program called PICA.

Published article about PICA on the SysAdmin magazine.

Education and Training

Degree Name

Licenciado en Informática

Institution

Facultad de Informática de la ULPGC

Number of Years

5

Dates

1 Oct 1995 - 10 Oct 2000

ISCED level

5

Main Subjects

Programming, Software Engineering

Final Degree Work

"RTHC: Un conversor de RTF a HTML" ("RTHC: An RTF to HTML converter") was given the highest degree ("Matrícula de Honor", A+).

Design and implementation of a generic RTF parsing library in C++, using Design Patterns and UML for the design and the STL for the implementation.

Design and implementation of an RTF to HTML converter utility, using the above library for parsing, and gettext for i18n. The conversion utility was translated into several languages.

Study and documentation of the RTF format.

Study of the Free Software Community history, resources and way of work.

Packaging of the above software for RPM-based systems and Debian-based ones.

A talk describing all of this was presented at Hispalinux III.

Skills

Languages

Mother Tongue

Spanish

Other Languages (Legend)
Language Listening Reading Spoken Interaction Spoken Production Writing
English B2Independent C1Proficient B2Independent B2Independent B2Independent
French A1Basic A1Basic A1Basic A1Basic A1Basic

Computer Skills

Operating Systems

Windows (medium user level, basic administration).

Linux (advanced user level, medium administration).

FreeBSD (medium user level, very basic administration).

Programming Languages

Ruby, Perl, Python, PHP, Javascript, C, C++, UNIX scripting languages (sh, bash, sed, awk) and several others.

Other Skills

Social Skills

Good communication skills (especially written).

Experience giving talks and seminars.

Organizational Skills

Used to work in volunteer organizations (Debian, Gulic and Amnesty International).

Talks, Courses and Writings

Talks

LanzaOS, 24/11/2006
"TWiki: plataforma de colaboración empresarial" ("TWiki: enterprise collaboration platform"). Entry level talk about TWiki and use of Wikis in enterprise environments. It covered several uses of TWiki for collaboration purposes, Wiki culture and deployment tips.
ULPGC, November 2006 (6-23)
"Ruby on Rails, desarrollo web sobre ruedas" ("Smooth web development with Ruby on Rails"). Entry level 40-hour crash course on Ruby and Ruby on Rails. I gave five days, 15 hours total: the Ruby language introduction (four days) and the introduction to automated testing, covering Rails unit and functional testing, and browser functional testing with Selenium (one day).
Fotón S.I., 20/10/2006
Introduction to automated testing with Ruby and Rails. Introductory talk/demo on Ruby automated testing, covering Ruby unit testing, Rails unit and functional testing, and browser functional testing with Selenium.
I Encuentro de S.L., 18/09/2006
"Disección de una aplicación Rails" ("Dissecting a Rails application"). Introductory talk/demo about modifying real, complete Rails applications, at the I Encuentro de Software Libre de la ULL.
I Encuentro de S.L., 18/09/2006
"Un vistazo a Rails: La plataforma de desarrollo web de los samurais" ("A look at Rails: the samurai web development framework"). Introductory talk/demo about Rails, at the I Encuentro de Software Libre de la ULL.
ULL, 19/05/2006
"Ruby on Rails: una revolución en el desarrollo web" ("Ruby on Rails: a revolution in web development"). Introductory talk/demo about Ruby and Rails, at the University of La Laguna.
Jabber, 5/5/2006
Una introducción a Darcs ("Introduction to Darcs"), via Jabber. The linked document was prepared from the conversation log by the attendees.
ULPGC/OSL, March 2006 (15 - 24)
Ruby on Rails crash course for the "Oficina del Software Libre" ("Free Software Office") of the Universidad de Las Palmas de Gran Canaria.
La Caja, November 2005 (22 - 24)
Intermediate level Rails seminar for La Caja de Canarias, one of the most important local banks in the Canaries.
LanzaOS, 14/10/2005
"Demostración de Ruby on Rails" ("Ruby on Rails demo")
LanzaOS, 13/10/2005
"Formatos abiertos y programas libres" ("Open formats and Free Software"). Talk about open formats and their importance, software patents, and the role Free Software plays in the spreading of open and better formats.
FiCIT 12/8/2005
"Ruby: un lenguaje dinámico moderno" ("Ruby: a modern dynamic language") for the "Fiesta Canaria de la Informática y Telemática" ("Canarian Computer and Telecommunications Party"). A 3-hour tour de force through most Ruby features.
ULPGC/GCC, JJTT 12/5/2005
Ruby on Rails demo for the "Jornadas Técnicas de Internet" ("Internet technical days"), organized by Gran Canaria Campus, a student organization in the University of Las Palmas de Gran Canaria
ULPGC/GCC, JJTT 6/5/2004
"La charla más divertida sobre patentes de programación" ("The funniest software patents talk"). Talk about the dangers of software patents, presented in a funny way.
FiCIT, 22/8/2003
"TWiki: trabajo en grupo, libre" ("TWiki: free teamwork"). Introductory and intermediate talk, showing both Wiki culture and history, and a little TWiki-specific programming.
laspalmasparty, 21/12/2002
"Jabber: mensajería instantánea y más" ("Jabber: instant messaging and more"). A mostly user-level introduction to Jabber, with a couple of references to its uses for developers (besides instant messaging per se).
FiCIT, 4/8/2002
"La comunidad de los programas libres" ("The Free Software Community"). An introduction to Free Software, both from the software point of view and from the human point of view.
ULPGC/GCC, JJTT, 15/5/2002
"Debian: un proyecto organizado por internet" ("Debian: an Internet-based project"). Introduction to the Debian organization, with some final notes about software patents.
Hispalinux IV, 16/10/2001
"PICA: Una solución inteligente para administrar sistemas". Talk explaining PICA, a system administration program.
Hispalinux III, 12/10/2000
"Libertad para el RTF" ("Freedom for RTF"). Talk explaining my final degree work, an RTF parser written in C++, using design patterns; and RTHC, an RTF to HTML converter, built with that library and "l10n"able via gettext.
ULPGC/GCC, sometime in 2000
Basic HTML crash course given for the Gran Canaria Campus student organization.

Writings

Essay about technology
"Reflexiones sobre la tecnología", from Nov 2002
Shell programming tutorial
"Manual de programación en shell", from Nov 1998
Linux survival guide
"Curso básico de supervivencia en Linux", from Nov 1998
VI tutorial
"Otro Curso de VI Más" ("Yet Another Vi Course"), from Dec 1998

Spare Time

Debian Work

Dates

Debian Developer since April 2002.

URLs of interest

Debian personal Homepage, my (co-)maintained packages, bug reports for my packages.

Highlights

Development of two proposals for a testing framework for dpkg, one using DejaGNU, and the other using Perl's Test::Unit (both integrating C unit tests, using the check library, and functional tests). The latter will probably become the official dpkg testing framework.

Part of the Debian/Ruby Extras team. Lead developer for the generic Makefile used to compile Debian packages for Ruby libraries and programs.

Currently rewriting dhelp_parse (part of dhelp, a documentation integration program) from C to Ruby, fixing bugs and adding enhancements in the way, like a templating system and making it fully l10nable with gettext.

Part of the Spanish translation team.

Pet Projects

PatchServer

Small web application to store and manage text patches. Very useful to keep, search, publish, store revisions of, and mark them as applied upstream. Built with Ruby on Rails.

R-Pass

The "Ruby Presentation Assistant", a bundle of utilities and configuration files to ease both talk slide writing and talk giving. It features a sample code highlighter, a konsole launcher (preconfigured with big fonts and fullscreen) and other minor goodies. Built with Ruby and shell.

Interests

Computers

Functional languages, OOP, metaprogramming, DSLs and compilers.

Communities; software packaging; Free Software QA, testing, i18n and documentation.

Distributed SCMs.

Music

Rhythm and experimental music.

Basic knowledge of several instruments.