About me

I’m a Physics scientist (PhD), data science practitioner and a Linux explorer.
Right now I work as Data Scientist in the industry.
In physics, my work mainly involved data analysis and simulations related to space weather: mainly, the “weather” conditions in the interplanetary environment that lies between the Sun and the Earth.
Specifically, I used to do data analysis of spacecraft in situ measurements, which gives us information about the state of the interplanetary environment, and we can filter such data to study specific “events” of interest to conclude some physics about the dynamics of the plasma (i.e. the solar wind) in such regions.
During my Postdoc research, I was also working on simulations related studies of particle acceleration in such scenarios.

On the other side (in background mode), I’m a Linux enthusiast.
I like to explore the freedom of choices it gives us, to entertain my creativity, to undestand computers, the evolution of software development, and because I like seeing ideas in code.
For the last two years, I’ve been using the distro Arch Linux, which has very little ab initio configuration, in comparison with most Linux distributions.
This gave me a “push” to explore the pipelines of configurations available to the user.
It can be a pain, but it’s worth it.
As Arch Linux is a “rolling” distribution (i.e. there are no “versions”, but only plain releases), I must keep at the bleeding edge of software development if I want a dynamic maintainance of my box.
But as a scientist, I care much about reproducible work and for relatively “static” development environments.

This is where the “Docker” part of my life comes in.
This project becomes interesting to me since it offers the bleeding edge tech on security, Linux container-related implementations, and it offers the right scenario for reproducible work!
In computational physics (i.e. simulation and data science), we usually are not worried about hardware emulation (e.g. network interfaces, hard disk, or the whole OS kernel).
Instead, we care about compiling code, linking dynamic library dependencies, and software versions in order to run custom code that we develop/get.
That is, “process isolation” is all we care about most of the time, and the most common solutions we come up with is creating virtual machines (VMs).
The advantage of Docker, over VirtuaBox, is that it doesn’t have the overhead of the Hypervisor (the layer that virtualizes the hardware)…
This is and advantage because it means our codes can run faster since it’s talking directly to the host kernel.

In this context, I find Arch Linux a perfect home for a Docker installation since we can constantly keep up with its development without the need of periodically re-installing the whole operative system, or sparce random libraries on the “real” host.


Publications

My main scientific publications are listed below.
For a more complete list, please visit my Google Scholar.