Looking at the path so far…

Final Fantasy I Starting Peninsula

Now that I finally completed my PhD studies, I started rethinking about my path up here. This is a path I started a long time ago. For some reason, this was the path I traced for myself since my childhood. When I was 10 (or earlier, I don’t really know for sure) I answered for the first time the question: “what do you want to do as a grown up?”. And the answer was “I’ll make games” (“I’ll make Mario’s game”, to be very precise).

And that’s what I did. I was lucky that my father was a tech lover and we had a PC at home, and that my uncle was a math nerd who coded in BASIC on his old Apple II. I literally learned running program in DOS before I could read.

One of the implementations for the LOGO programming language.

It was my uncle to introduce me to programming at the time. And my first language was the didactic language LOGO. Don’t ask me which implementation was, I don’t remember. I only remember me sitting at the PC looking at that triangular “turtle” moving around the screen under my commands. It was like magic. I started with all the usual crap such as “draw a square”, “draw a circle”, “draw some path”, “oh, look, that’s a fractal” and so on. However, in no time, I started going much deeper.

Without going into much details, I ended coding a game in there. It was a fighting game, a horrendous one, of course. It had only two characters drawn with my mouse in MSPaint that were unable to move, and two attacks: kick and punch. Everything was hardcoded and GOTOs were present everywhere in the 500 lines long functions of my code. It was bad, but was my first game ever. And I was 11, so I am still very proud of it. I would really like that the code was still somewhere and not lost in the oblivion.

Then Pokémon stroke. I spent too much time playing it. But, in the end, it was very influential to me and the reason because I convinced myself that the way to go was to code an RPG. How you can easily imagine, this was a huge step. RPGs are high-ranked into the list of “hardest game to make for a newbie”. I spent I don’t know how much time trying to implement something in LOGO and Visual Basic (a language I recently moved to). As you can imagine, both languages were not very suitable for the task. Moreover, the task was way out of my league. But I learned a lot, especially the golden rule of game development: “things are always 100 times more complicated than how initially appear”.

Rpg Maker 2k3 Splash Screen

Next step, RPG Maker. In my challenge of developing an RPG, years later, I end up with RPG maker. That was the obvious next step. Being able to achieve so easily what I spent so much time trying to make with other tools was liberating.

The RPG maker period lasted a long time and I achieved a lot. Developing as a single man a 20 hours long high quality RPG was still way out of my reach. But I enjoyed every little step along the way. Every small step was inebriating. I started many small projects, small 1-hour games as demos or tech demo. I contributed consistently to an Italian RPGMaker community, modding graphic, sharing projects, doing pixel art (I feel sad that I did not continued to practice this), doing coding work for other high-budget project (“high” respect to the community standard level). It was nice and one of the time I felt to be deep in the game making community. One of the happiest period of my life (at least in the dev field).

Then depression came and ate 10 years of my life.

However, the point is that looking back at the path I walked in makes me feel uncomfortable. I had everything planned until this very moment. I had a detailed plan that helped me not losing track of the goal even in my darkest years. But now, looking forward I see the mist. A dark-soul kind of mist: dense and that it is probably hiding a boss fight, or a bone fire. Who knows. I feel a bit lost and scared. But I also feel a spark of excitement deep into my guts.

I think it is time for me to try to do a new plan, trace a new route into the mist. In the meanwhile, if you are reading this, you are path of the path. Thanks for sharing part of this path with me. Ah… You get bonus points if you followed me from the Slashcode times! :)

PS: Not programming related stuff. I had a couple of year during middle school in which I designed a Collectible Card Game in the Dragonball setting. It was quite successful and I started selling cards in the backyard. All the cards were hand drawn by me. It was an epic challenge. Well, it was fun. I say this just in case Wizard of the Coast is looking for hiring me… or Bird Studio/Shueisha to suing me… :O

I am killing comments. I will not kill discussion.

final Fantasy IV - PSP - Silence Status

I am removing comments from this blog. There are several reasons for this decision. First, it is hard to find value in comments anymore. In 3 years I think I have collected something like 10 comments. Most of my interaction with readers and other people happens on Twitter, in the Facebook comments or in the Reddit threads. Second, the existing main solutions for comments are unappealing.

The default WordPress comment system is very spam prone and hard to manage. On the other hand, Disqus looks like a more technologically advanced solution. Unfortunately, in practice, it is a resource hog, it forces you to have your experience shared among different domains, and, in other words, a giant tracking system. I do not want to force my readers to load a third-party potentially tracking  system every time. Even because it make hard to me to enforce a serious privacy policy for this place.

Well… I am killing comments, then. However, I do not want to kill discussion.  I still want to discuss articles by mail, on Twitter or any other channel you like (I am open to suggestions). I am still looking for a nice way encourage readers towards these communication channels. In the meantime, I will also look for alternatives for comment solutions and I may bring them back in case there is something simple and safer.

In any case, thank you for reading.

How to generate passphrases with an RPG Dice Set

Times ago, I was reading something on numerical systems and password generators and I find myself discovering Diceware, a system for generating a passphrase using several 6-side dice. I think it was funny, so I looked for some dice in my house to try the system. Unfortunately, I have just one d6. Diceware requires five throws just for a single word and a good passphrase requires 3 or 4 words, plus some modifiers here and there. In total, I should throw that single die 20 times to get a good passphrase.
However, just on top of my desk, I have a full d20 RPG dice set (where that d6 belongs). I thought: it is possible to use an RPG dice set to do something similar to Diceware? After all, an RPG set spans over 4,608,000 possible outcomes per word while six d6 can obtain “just” 7,776 different results. There is more than enough room to make the system work. So, that is the system I propose.

Continue reading “How to generate passphrases with an RPG Dice Set”

You need to decide your decisions

If there is something that I learned from my daily struggle with procrastination, is that every day you just have a limited amount of decisions. Every day, you can only do 5, 8, maybe 10 meaningfully decisions. After that you will start doing mistakes, get tired and, in general, doing wrong.

What can be surprising of this, is that doesn’t matter how important the decision is. Look at a traditional day: you wake up and you need to decide what to eat for breakfast, what clothes to wear, if it is better to go to work using the car or public transportation. You have literally just waked up and you have already depleted the big part of you decision pool for the day. And none of that decision is meaningful for your work, your career, your family, your affections.

Continue reading “You need to decide your decisions”

The Primes Ancestor Tree

This will be just a small theoretical article on the Primes Ancestor Tree. We will explore the possibility to label a generic tree in such way that it will be possible to verify if a node is an ancestor of another node (or to find the common ancestor of two nodes) just by applying integer arithmetic.

In fact, sometimes ago I was trying to implement some fancy algorithm that, given two nodes from the open list of a search algorithm, finds their common ancestor. While I was doing this I asked myself if it was possible to use prime numbers in order to provide a labeling system that encodes the “descendant” relation of the nodes.

I think that I have found a theoretical system. Even if it can not be used in real-world applications, I had fun playing with it looking for the properties of the resulting labeled tree. So, I thought it could be interesting to share.

Continue reading “The Primes Ancestor Tree”

When cheating with a robot is really cheating?

Hi guys. I wrote a small reflection on the future of Artificial Intelligence. The question is always the same: when would we consider a robot as a “living beings” with self-awareness, emotions and all the human equipment? My point is that we could stop asking ourselves this question because soon or later sex-robots will provide us the answer. Anyway, this is the article I wrote on Medium. Take a look. :)

When cheating with a robot is really cheating?

A Month of Writing: August ’15

A month ago I started questioning my ability to stay focused on thing I like. Kill the procrastination monkey is the first thing to achieve any goal in life and I felt that I was losing that battle. Last year was not easy, mostly because I started feeling incapable to achieve anything useful in work. This, in turn, feeds the procrastination monkey, causing more frustration and so on. An evil infinite explosive mental and motivational cycle that drown you, slowly, silently. I had to break the cycle!

But where I could start? I decided to stress myself on an old obsession of mine: writing. As you know I have stories in mind and I have a deep need to tell these stories. There are many ways to express these stories (music or gamedev are the most important one for me!) but writing it is much less complex: it is just you, the story and a piece of paper. There is no technology involved, no extra abilities such as visual arts, no constraints, no distractions. I did not want to feed p-monkey with a lot of fake-problems to justify myself for not doing anything every day. So, I took a piece of paper and I wrote on it: I’ll write One Million Word of fiction. It is important to have some kind of metric to measure your progress and the number of words written is a perfect metric! Every night, at the end of the day, I can update the counter, see the target approaching and feel good about myself.

A month is passed and I want to share this small step with you.

Continue reading “A Month of Writing: August ’15”