What happens when I create a class in Ruby?

That Ruby is strongly object-oriented is common knowledge. Everything is an object, from integers to the nil value. But what does that mean exactly? If everything is an object, what is the class of a class? Let’s review for a...

Making a game with Functional Programming - Part 1

Games are essentially stateful mediums: there are levels, items, character statuses, camera position, etc. The world state changes on every game loop, dozens of times per second, not only reacting to events but constantly. They are also very easy to...

Functional Programming - Pure Functions

Functional programming made a huge comeback in the recent years, after decades of being little more than an academic curiosity for most of the industry (Haskell’s unofficial slogan is “avoid success at all costs”). Its fame is well deserved, but...

Reverse engineering Pokémon Go's API as a non-hacker - part 1

Finally, after months of wait, I was able to install Pokémon Go in my Zenfone 2 with an Intel processor. As someone who grew up playing Pokémon, I must say the game didn’t impress me so far. This is not...

The poor, misunderstood decorator

This is an old pet peeve of mine: again and again I see people failing to grasp what a decorator is. I don’t have any data to back me up here, but I would say that it is the most...