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.... ➦
As you may already know if you follow me on Twitter (why not?), I often work with pathfinding. This thing started as a small side quest during my Ph.D. and then grew up to become the main topic of my future Ph.D. thesis. I’m still quite sure that this is not what I chose back in the day but, well, now that I’m on the dancefloor I have to keep dancing.
Returning to the subject, my work is totally focused on pathfinding with cognitive capabilities. This means that I try to embed pathfinding into a more high-level reasoning pattern or, if you prefer, to push high level elements - such as reasoning with keys and equipment - down into the pathfinding level. As a consequence I use hierarchical abstraction of the map space a lot and for “a lot” I mean that in the last year and half I’ve implemented Hierarchical Pathfinding (HPA*) at least 4-5 times in different context and languages.... ➦
Hi everyone! I’m here to tell you the story of my last game jam: the Bacon Game Jam 09. It was a long time since my last game jam (and my game-dev stuff in general). I was a bit distracted by other part of my life and, in general, I wasn’t in the best mood. Because of this, I’m very happy to partecipate to this jam, also if the final result is not completely satisfying.
Anyway, let’s start!... ➦
Here we are again! For five brand new inspirational articles found on the web (mostly on Reddit to be honest, but who care). This time we will see a lot of Procedurally Contents Generation algorithms, another emulation related article, and the smallest academic paper of all time! Let’s start!... ➦
Stay inspired during the boring working week is the best way to fight procrastination and stay on board of the “do-stuff” train. There is nothing better than looking at a creative a work to say “Cool! I want to do something similar, too!” (or to lay down crying in depression, but this is another topic I suppose). For this reason I’d like to share with you 5 of the best inspirational and interesting stuff of the week that the web can provide. It is good food for your brain! (PS: Someone could say that I spend too much time reading and looking for these stuff… well… ehm… please, don’t. Let me dream.)... ➦
I don’t think I have to spend too many words on Git. Every programmer who was not on the moon in the last 5 years should already be a proficient Git user. Git is an amazing, flexible and powerful version control system. Sure, as Mercury fans often claim, its command’s syntax is often really unclear (
git reset HEAD \<file\> anyone?) and some operation are really unintuitive and hard to remember (e.g., remove a remote branch?). But Git is the most popular, successful and probably powerful tools available for VCS. That’s a fact.
Many of you use Git daily, I’m sure of this. You are using it for managing projects, tracking version of your software, personal documents or to collaborate with other colleagues and open source softwares. But I’m pretty sure that many of you don’t know that you can use Git for debug! Yes, Git can be one of your debugging tools too! Let’s see how!... ➦
To be productive, you have to be constant. To be constant, you have to be organized. To be organized, you have to be happy about what are you doing. This are three simple rules that I try to apply to my work. The first two are quite straightforward and they don’t really need explanations. The third one, however, is more delicate. What do we mean with ”to be happy about what we are doing”? Why this is connected with “to be organized”? Well, the answer is positive feedback. When I’m happy with what I’m doing I’m able to stick to the workflow I’m using. At the same time, a good workflow means less time spent debugging, less trivial bugs committed, less troubles during deployment, in other words: an happier developer!
This positive feedback loop can really increase your productivity. The real problem is, how can we find this magic smooth workflow? I don’t know. I cannot tell you the magic solution to every developer problems. You have to find this by yourselves. The only thing I can do now is telling you my actual workflow. This may be a good starting point for some of you. :)... ➦