Learning ncurses

Implementing a snake game in the terminal

6 minute read

tsnake, a snake game in the terminal

Lately, I have been kicking the dust off my C++ skills, and decided to start by learning to use a library which I have been eyeing for a while, ncurses. ncurses is a C library which lets you create text-based UI programs for the terminal, in the same fashion as the gif above. Basically, you can use the terminal to implement text-based user interfaces. Since I seem to have an obsession with snake games, I figured I’d create a snake game for the terminal.

Scripting Gaia Sky

Random thoughts on the Gaia Sky scripting system

6 minute read

Scripting Gaia Sky with Py4J

Gaia Sky has a quite powerful Python scripting system which has gotten a revamp lately. The system exposes an API which can be used from Python scripts to interact with an instance of Gaia Sky running in the same machine (so far). But to understand where we are, we need to know where do we come from.

New simpler design

New less bloated website design

1 minute read

I’ve once again changed the design of the site to make it cleaner, more simple and above all, less bloated. I’ve removed a bunch of javascript code (for instance, MathJax is no longer loaded by the main template but by the actual pages that really need it). Also, I’ve simplified the color palette settling on a black on white scheme with green for links and titles. Old (left) and new (right) design side-by-side.

My Linux setup (as of 03/2019)

Description of my daily Linux setup as of March 2019

7 minute read

In this post I’m documenting the current (March 2019) software setup I use in my machines. This has been converging for a long time but It will surely evolve in the future. However, right now, it works well for me. I use this configuration in the following machines: ARI desktop - hidalgo, i7-7700, 16 Gb RAM, GTX 1070, Ubuntu 18.04 IWR desktop - herschel, i7-4790K, 16 Gb RAM, GTX 970, Manjaro Linux Home laptop - simian, Dell XPS 13 9370 13”, i7-8550U, 16 Gb RAM, Intel UHD 620, Arch Linux Home desktop - bonobo, i5-4460, 16 Gb RAM, GTX 970, Antergos Linux That is what my work PC looks like.

Keyframe-based camera paths

Gaia Sky gets keyframe-based camera paths

4 minute read

During the last months I have been working on a QOL improvement for Gaia Sky video production. Currently, Gaia Sky offers a couple of ways to persist and reproduce camera behaviours: scripting and camera paths. Scripting offers a high level API which allows for the interaction and manipulation of the internal state. Conceptually, a running script is no different from a regular user. A script runs in its own thread and, like a user, interacts with Gaia Sky’s core through the event manager, a message-passing entity which encapsulates the core functionality.