What's this thing?

I use this space to try new things. Hopefully, some of them might be of your interest.

PCA with Missing Values

PCA is a very simple but useful technique to reduce data dimensionality. One of the main reasons to reduce the dimensionality is that it helps finding patters in our data. However, in several of the applications where PCA is useful, we encounter that missing data.

For example, assume we have set of measurements for a group of elements. It is common to have some missing measurements for some of those elements. Maybe it was not possible to make that measurement, or measuring is not under our control, and the measurement wasn't done yet.

For this kind of applications a PCA analysis able to deal with missing values is of key interest. There's a 2010 paper by A. Ilin and T. Raiko that addresses exactly this issue, and the corresponding Matlab code is available here. I was interested in applying their algorithm in some web based (client-side) data visualization, so I ported their algorithm into JavaScript.

You can play with it here PCA-MV


There's a really cool cooperative board game called Hanabi. I often play this game with my friends during lunch, and thought it would be nice to do an online version as a coding exercise. This allowed me to learn coding in JavaScript (even those details like when things are copied by value or by reference), and it is also my very first attempt at doing an online application. If you take a look at the client-side code, you can clearly see a huge evolution on the coding techniques used throughout the (spaghetti like) code.

So, if you have came here to play Hanabi, here's the link: Play Hanabi

If you like the online version of the game you can buy a physical one here

PLaying with MathJax

The other day I learnt about a javascript library called MathJax. It's a library for parsing and rendering $\LaTeX$ (math mode) in html documents resulting in really beautiful equations.

I wanted to try out this library, so, here's an equation And here's a set of equations, a little bit more related to my research

Rubik's Cube

The amazing people from the Rubik's cube official website made available a virtual rubik cube to play online. I think it's the same version used by Google on their doodle from May 2014.

As the Rubik's cube geek I am, I wanted to try that on my own website. So, here it is!

You can play with the mouse, or using the keyboard. The keys L, R, U, D, F, B and their corresponding lowercase turn left, right, up, down, front and back, clockwise and counterclockwise repectively. The keys X, Y and Z to turn the cube on the different axes.

Sorry, Cubers broken