I've been using Python for more than 10 years and still find it as nice as the first day. From little scripts to full blown applications, I use it everyday and it's one of the reasons I love coding.
SAML, Oauth, PKI, x509 certificates, just to name a few, are the standards and techniques I use in my attempt to handle authentication and authorization in a robust and secure way.
I've been always passionated about representing data in a way humans can understand. Usually it means creating and using visualization tools. I've created several ones for this purpose.
I'm very picky about the use of the right tag to add as much semantic meaning as possible to a web page. I cry and scream when content, behaviour and appearance are not separated.
CSS is a hard language. It took me a while to understand its box and layout model and all its implications but once you know the tricks it's amazing what you can do.
I like to integrate systems in a seamless way building bigger and better products. REST APIs, Message Queues, SSO are some of the tools for this craft. I always try to avoid reinventing the wheel.
Since the beginning of my career I've been a pasionated activist of open source. It all started as a weirdos' movement and fortunately it has evolved into the mainstream.
Courses and talks given
- TNC2012 Asyncronous provisioning using SAML2 Attribute Query. Reykjavík (Iceland). May 2012.
- REFEDS Meeting PEER demo and project status. Helsinki (Finland). September 2011.
- InCommon Advanced CAMP: The Second Identity Services Summit Raleigh (USA). June 2010
- Primeras Jornadas de la Federación CONFIA Antequera (Spain). January 2010.
Conferences I've been to
- Software Engineer and Project Manager at Yaco Sistemas. September 2008 to present.
- Software Engineer at Async Open Source. March 2005 to June 2005.
- Software Engineer at Sicem. February 2003 to August 2008.
- Udacity Applied Cryptography. Certificate of Accomplishment
- The AI Class Introduction to Artificial Intelligence. Statement of Accomplishment
- University of California, Irvine A grant allowed me to study the fifth year of a Computer Science degree in UCI
- University of Granada BSc in Computer Science (5-years degree). Computer Graphics speciality
- Yith Library Web password manager
- djangosaml2 Bridge between pysaml2 and Django. It allows a Django project to act as a SAML2 Service Provider
- moinmoinsaml MoinMoin plugin to support SAML2 authentication.
- watc Where Are The Castles? is an HTML5 implementation of the popular Carcassonne game. Unfinished
- hghooks Set of useful hooks for a Mercurial repository.
- hamster-rc jQuery Mobile simple application to control the Hamster time tracker app remotely
- repoze.what.plugins.hgwebdir Plugin for repoze.what for easy administration of a Mercurial repository served via hgwebdir
- Conga Container of Gadgets, e.g., an OpenSocial implementation. Unfinished
- Pycha Python library for simple charts
- Gazpacho Application to design GUI for GNOME. Discontinued
- Fedora Linux Distribution. I am a Fedora Package Maintainer
- pysaml2 Python implementation of the SAML2 standard
- Etherpad Lite An Etherpad based on node.js
- Cornice Helpers to build & document Web Services with Pyramid
- jQuery Mobile
- South Intelligent schema and data migrations for Django projects
- ILIAS e-Learning PHP-based system
- SimpleSAMLphp PHP Application that deals with authentication focusing on SAML2
- pygtk GTK+ for Python
Tools I use
- Fedora Linux. I've used SuSE, RedHat, Debian, Gentoo and Ubuntu but I prefer Fedora as my default GNU/Linux distribution. I've been using it since it was called RedHat 8.
- GNOME has been always my favourite desktop environment. I was involved in the GNOME community, specially the GNOME-es community some years ago and still have good friends there.
- Firefox has been my default browser for a long long time (since it was called Mozilla milestone 11!) and even now that there are other very good browsers I still prefer Firefox for its philosophical values.
- Emacs I started using Emacs in 1999 and felt in love with it very fast. I try to learn one command every month so I'll probably call myself an Emacs expert by the end of the next century.