About me

I'm a full-stack web developer with a passion for UX.

I also do a lot of native coding (Windows/Android), game development and cooking.

Native development, the early days

I learned programming with Visual Basic 6 on the early 2000s. But as the complexity of my projects increased I was in dire need of a new tool and that's when I started to learn Visual C++.

MFC was a great revelation to me, but it felt a bit old and was not as object-oriented as I wanted, so I ended up creating a custom framework for my Win32 projects. It had everything from the base message-pump to a custom, double-buffered, composite widget rendering and layout calculation, with built-in data-access and file-system abstraction.

I did some Delphi and Java coding too, but then Delphi started to feel outdated and Java was very slow, so they were not really an option.

Then I learned C# and tried a bit of the new Visual Basic. Currently I code almost all my desktop utilities with C# as it is very quick to create the UI and a breeze to bind the events to the actual code. It also compiles quickly.

Web development

And so Internet was a thing. And web development became an interesting topic to learn.

So I started with PHP. It was simply awesome: not having to wait for compilation to see the results felt almost as magic. WordPress was my go-to CMS, but now I have my own CMS platform in the works.

JavaScript? It was a dumb, slow language once. But then came along the browser revolution. Firefox, Chrome, Opera; they all executed JavaScript really fast and included debuggers that improved a lot the quality of code. And with jQuery for DOM manipulation, the sky was the limit. Over the years I've worked with lots of plugins, libraries and tried all the major frameworks.

Today I still use PHP, for which I've coded a lightweight framework; I use it for sites, APIs, dashboards and everything in-between. For JavaScript I prefer jQuery for DOM manipulation and a custom-built object-oriented web application framework that does not require transpiling.

Mobile apps

With a smartphone in the hands of almost every human being, the mobile app market is today at its peak.

I work with Android Studio primarily, but have worked with Cordova/Phonegap and Xamarin for simple apps. When a backend or API is required I use my PHP tools for the server implementation.

Java is not the fastest language and surely Android Studio is slower with each new version, but they are the most straightforward way to develop for the Android platform, once you finish fiddling with incompatible or missing SDK/Support library versions, that is.

Currently I don't have any interest in writing apps for iPhone because I don't want to learn Objective-C nor Swift (and neither having to pay for the privilege of being an iOS developer).

Game development

I love playing games. Console, PC or Mobile, I like them all. And what's better than just playing? Making your own games!

I've tried a lot of different tools and frameworks over the time, but I currently develop my games using GameMaker Studio for mobile/desktop and my own engine for web games. Unity was simply not for me, even though I like C# a lot.

ImpactJS was my weapon of choice for web games, but it is now outdated, so I tried with Phaser and, while it has a lot of potential, it requires ES6 as most of the samples use it. And transpiling is cumbersome when you work with a lot of projects.

So now I'm currently working on my own JavaScript game engine, with a PIXI.js renderer for maximum performance. It's been a very complex project but I've learned a lot.

Future developments

A few years ago I founded Vecode, an organizational umbrella for the development of all my crazy experiments and to this day, a lot of that tech is currently in use in several projects, from simple web pages to complex administration systems; they have supported dozens of international, promotional campaigns for well-known brands and even a music label; each with thousands of active users.

My main focus today is Hummingbird Lite, my lightweight web framework, and its satellite projects, like the CMS platform or the JavaScript app framework.

Oh, and I love cooking!