Everyone has his own CV. CV is a fundamental asset to move in the world of work. And I have mine, so nothing wrong till now. I’m using a git repository to host its sources, as it’s written in LaTeX, and keeping every version using a dedicated repository release. Still, no problem till now. One day, a friend of mine told me about the issue of having a hipster-like CV, without providing any universally approved version.

Read more →

Have you ever had the needing to integrate informations from not-directly-handled sources into your application? Assume you’re developing a social network. Assume you’re following the MVC architectural pattern logic. You will probably have an entity that will define every standard user behavior and specification. Among all the properties a user could be defined from, which is the field that bestly describes it? Better: which is that field that usually uniquely describes it?

Read more →

The other day I was bored, and I don’t know what normal people do when they are bored, but I usually do one thing… code. Actually it all starts with me wondering about some problem, a random problem, then thinking about a solution in my head, and it ends with me implementing it in a random programming language. It all started this way with this little program. I was thinking about how often I use regular expressions every day on my Linux installation, without really knowing how they work.

Read more →

Let’s start the game. Assume you have - boss obligation - to migrate thousand terminals from Debian to Ubuntu. From Squeeze to Xenial Xerus. If I’m not wrong, Xenial Xerus got release on April 2016. On the other hand, the good old Squeeze - older than good -, on February 2011. Actually it represents my first Debian powered environment (yup, I’m just a teenager). Between 2011 and 2016 lots of things happened and changed, but do not digress: you have to make a migration.

Read more →

Note: this article will show you some good ways to build a port scanner. Not the best way. Not the entire, fully-working, ready-for-copypasta port scanner that maybe you’ll expect. So, if you’re looking for ideas and some nice snippets with their explanation, go on and read this; else: go away. Yesterday, you noticed some ports were open where they shouldn’t have been. Nothing serious for that server, but you have to know if it’s an isolated case or maybe repeated for other servers before your boss (which, unfortunately, is a senior developer and was his own sysadmin before your hiring) gets to know it.

Read more →

In this post we’re going to implement a 2D «godrays» effect using shaders in LibGDX. This article is based on the 13th chapter of nvidia’s GPU Gems series. Since we’re using LibGDX we’re going to use the OpenGL Shading Language (GLSL), but the basic concept remains the same for any other shading language. Introduction This effect aims to reproduce how the light interacts with the atmosphere in the real world.

Read more →

Why the fuck you should implement a custom telnet library in python? Don’t you know how telnet protocol is obsolete, unsecure and - above all - already implemented by telnetlib? Yup, I obviously know it. But two reasons guided me into the - simple, indeed - adventure of rewriting the standard telnetlib using socket? library: I needed it, as telnetlib didn’t support passing source IP to the socket creation. This caused the application to use always the same IP (the default one), even if the machine I was running it on owned several IPs.

Read more →

Assume you’re a systems administrator. And you made a mistake. A terrible mistake. The kind of mistake that make you think you’re a horrible and incompetent sysadmin. Ok, it’s me. I was at the head of the systems from a year and was working on a bash migration script for a web-server. I just needed something to move websites and SQL instances from a server to another. Oh, useless details: I was testing that script on the same machine which I would have moved everything from.

Read more →