My love for computers started at the age of 5, when my dad brought home a beautiful Mac Classic. By then it was all games and fun. By the age of 9, my dad bought a new powerful computer: a PowerMac 5200. After finishing 2 awesome games that came bundled with it (Daedalus Encounter and Myst), I had nothing that was fun enough to do, so I started exploring some CDs with demos and free software. Somehow I found a piece of software called Logomation which allowed me to draw pictures by typing text. I was so amazed with it that I started reading the user manual (and learning english in the process) and found out that I could actually make it do much more than just drawing. I was programming for the first time in my life.
It took me little time to start looking for some alternatives. I had some books at home that taught how to program on a ZX Spectrum, so I tried to get my father to get one for me, but he told me it would be hard to get one to work nowadays. Instead, my father took me to his office at University of Coimbra and got me on the internet. I was amazed with it. And eventually found out how to get a ZX Spectrum emulator for the Mac.
In 1996, my father "brought" internet home. It was awfully slow (56K), compared to what I saw at UC, and I could only use only for a short time (cause it was pricy). But I learned that I could build my own webpage and host it at sites such as Geocities.
A few years later I started looking for something more powerful, that allowed me to actually build some software that I could send my friends. The main problem was that I only had Macs at home and the rest of the world was Windows. But it didn't stop me from looking up stuff.
I found this really awesome software, called RealBASIC which allowed me to drag and drop interface components to a window and double click on them to write their behavior. And that was not all: it would actually compile my software to Windows if I wanted to (and eventually they added Linux to the picture). It was 1999.
I kept at it for 3 years, until I decided to start learning Java and C simultaneously, just a year before going to the university. :)
I like stuff related with mobile platforms (mostly iOS and Android platforms), network (communication), advanced web development and graphics programming (mainly OpenGL).
I have had some experience building some cross compilers, and I actually loved the experience, so I like anything related with semantic/syntactic analysis and low level programming. I have also had some (very little) experience in CUDA and OpenCL development and I'm somewhat curious about using the GPU for math intensive operations.
I'm deep into NodeJS.