Atproto Gave Me Superpowers to Fix My Bookhive Data
I let Claude log into my atproto PDS with a temporary password and fix my messy Bookhive reading data against my Obsidian vault. Ten minutes later, everything was in sync. Imagine …
- Workflow
Archive & search
Browse and search articles and short notes from the notebook.
I let Claude log into my atproto PDS with a temporary password and fix my messy Bookhive reading data against my Obsidian vault. Ten minutes later, everything was in sync. Imagine …
Every time I finish a draft, I need to face the reality: my draft sucks. Stiff dialogue, absent descriptions, plot holes larger than my apartment. But I can make it better. …
I spent the first week of my summer vacation redesigning this blog. Now the home page is richer and more information-dense. There is still much to do but, for now, we are open for …
This summer is a never-ending fight against heatwaves. The best I can do is accept it and make the best of it. Therefore, in this lighter issue, I will go over a fantastic Medieval …
For years I manually copied my Letterboxd reviews into Obsidian like a primitive. Then I realized that automating tasks has never been easier, so I made a skill and turned this …
June 2026 has been a mix of events and emotions. I went to Greece for work, I hurt my back, and we booked our wedding location and date. But I also read the new Dungeon Crawler …
Yes, I am getting married. A symbolic representation of how I am breaking a decade of stagnation. Moreover, in this issue, the new chapter of On the Calculation of Volume, the …
I am sharing a little Dungeons & Dragons encounter calculator I wrote in Elixir as an exercise. In the last two months I did two things: D&D and Elixir. It was only a matter of …
April wasn’t really a month of change, but it was one in which I put something in motion. In the meantime, I read Anathem and two other books, watched a 1945 movie, explored …
In a surprisinglly cold March, I read a lot not completing any book (next month!) and finally reached the final stretch of my James Bond watch-a-thon but, most importantly, I got …
February is the shortest month, and I always need to write it at the last moment. It is hard to write about what I did up to the 27th when the month has only one more day. So I am …
Every time I read about some study measuring the productivity gain of AI-assisted development, I raise an eyebrow. There is too much variability in the usage of AI tools and …
The year started with a bang. I read an Einstein biography, watched a great, century-old movie, and got caught by Polish progressive rock once again. But, most importantly, I have …
I am increasingly bothered by the fact that any piece of media that comes out is already old in less than 24 hours. Everybody feels the urge to have a strong take, to dissect it …
I constantly wrote on Mastodon for the last 4 years. The environment is increasingly hostile and far from what I would like. So there is no point in staying.
This monthly edition is shorter than usual, as I spent most of my time revising my second novel-length story, doing this year’s Advent of Code, and living the Christmas atmosphere.
October was very similar to November, with the same issues but also the same good things. I am focusing a lot on Music an RPGs as a coping mechanism. This month, I finished the …
As with many, I played around with AI agents in code. Contrary to some opinions, AI agents made me rediscover the joy of coding (for many reasons I may discuss another time). …
October felt like it lasted a week. Still, it was a nice, cozy month. In this article we’ll talk about the fifth chapter of the Dungeon Crawler Carl series, two non-gory horror …
September was a great month. I finally have a desk, and I finally changed something in my daily routine. I read another two books of the Dungeon Crawler Carl series and finished …
August was a month of recharging. I spent a week in the mountains and reconnected with myself. In this month’s issue: my first taste of litRPG, a Japanese movie about food, …
For the last year, I’ve been using a chess-inspired system to review time periods in my life. It is a stupidly simple system, but effective (in my expirience). So, I thought I …
With the upcoming Bases update in Obsidian, this may become obsolete, but for the time being I am still quite happy using Dataview to embed little graphical elements in my notes. …
It has been a month of contrasts; of light and shadows. In the midst of all that, I read three books, listened to the new Messa’s album and, of course, I watched KPop Demon Hunters …
In this scorching hot June, I started to be myself again and I am again finally able to feel enthusiasm for projects and ideas. And for this reason, I read and watched more things. …
I dont’t feel like talking much. So let’s just talke about two books abotut the Roman Empire, a movie about Bob Dylan, and how I am catching up with the Mission: Impossible …
This month has been harsh. I spent most of it in my head, unable to control a wave of anxiety and catastrophic thoughts. Yet, I tried my best. I read Nexus, watched Conclave just …
March was a month of contrasts, but, overall, I am happy with it. I wrote two articles, finally watched Flow, and read The Notebook, listen to the new clippings album. And now I am …
Critiques to vibecoding are often an example of right-Gaussian thinking. If you want to be a developer, you should avoid it. But if not, why should you not take advantage of new …
I released version 2.1.0 of my MovingAI benchmark parser for Rust. The main change is that I removed all panics from the library because idiomatic Rust code should not panic if it …
A quick 10-steps guide to have a MediaWiki instance running locally in 10 minutes with Docker. Because why not? Why should I not the most powerful wiki software to power my local …
February was a pleasant month, but perhaps not a very memorable one. I read The Two Towers and Red Team Blues, watched Silo and Mythic Quest, and played Hades 2. I also listened to …
January was a fine month, but I need to shake things up. I read a book about Socrates and another Star Trek novel. I watched the entire Fast and Furious franchise. I listened to …
Another year of reading is now in the past! As the tradition wants, I am going to collect here every single comments I wrote on every book I read during 2024. All 32 of them. …
Happy New Year! Let’s wrap up 2024 with a look back at the last month of a solid year. In the last stretch of the year, I reached 196 watched movies, 32 books, and I fell back into …
Let’s revisit last year’s article on the apps I used in 2023 and see what I changed in 2024.
After seeing many similar experiments, I am testing a way to show and comment on this blog’s articles using Bluesky network. In the best case, it will make the comment section more …
In the last couple of months, Bluesky, one of the many post-Twitter attempts to reshape the landscape of social networks, is living its best moment. Powered by Twitter’s blunders …
It was a more stable month, where I focused on NaNoWriMo and on training my writing muscle once again. I read a lot less, but I still had some good movies and series to recommend.
Another month with some wild ups and downs. I spent 5 days in Veneto, and they were wonderful days. I stumbled my way through the rest of the month. I finished the Star Trek: …
September was a month of ups and downs. At least, I read a lot of books. I watched Laura, The Post, and a lot of other movies. I listened to prograssive music and I played …
Finally, I was able to travel again! I spent four days in Edinburgh, and recharged for the “New Year”. But I also read two books, some wonderful Buñuel movies, and listened to all …
I love Calibre and I love to curate my digital library. But what about my physical books? How do I fill their gaps in my Calibre database? Luckily, there is a very easy way to …
July was a very annoying month. I was tired, my arm was hurting, and the weather was unbearable. Still, surprisingly, something happened. Three boks, 18 movies, and two games.
Why do we feel attraction for the past? Why do we look at the ‘old web’ with dreaming eyes? Why do we see old protocols and feel the lure of the past? Why do we feel nostalgia for …
In the last issue, I lamented May’s lack of passion and my inability to connect with anything in particular. In June, instead, I caught up with everything. I got very invested in …
Large Language Models (LLMs) maybe be controversial, somehow, but I am still amazed by their mathematical properties. In this article, I will reflect on my favorite one.
May was better than expected. Even if I had to deal with a week of flu. I read two books, watched 36 movies, binged the entire Marvel Cinematic Universe, and listened to a lot of …
Let’s see the three books I read in April 2024, the ending of Fallot and Shogun, a beautiful Japanese movie, and a never-ending album with 32 tracks. All that in a slowly declining …
In period where everybody seems to care about the use of our content, I decided to take a stance: I will always make my content available to everybody, human and non-human alike. …
March flew by in a blink. For good reasons: I had some interesting work projects I focused on, and I spent the rest of the time reading, watching movies, and making music. While …
Let’s explore the events from last month! I’ll discuss why I moved my website back to my hosting server, how I watched more movies than I did in the last three years combined, the …
This has been a month of ups and downs. I started the year with a flu comeback, and I ended it with a lot of interesting things. I started my movie bucket list, I read the …
After another 12 months, I am back with the traditional summary list of the books I read in the previous solar year. So here are my 35 books that I read in 2023.
This issue will be another reduced and unconventional one. In fact, as I write this, I am still recovering from a winter flu. It seems to be a 2023 tradition that every time I take …
Jumping on the bandwagon of the default apps for 2023 blog trend. What a time to be alive.
After the obnoxious events of last October, I had no hope for November. If you recall, I was exhausted, psychologically drained, and quite certain that I would have started …
October was supposed to be ”The Month.” After a complicated summer and an awful September, I had my October well planned. It was meant to be filled with things I wanted to do, fun …
In early September, I found myself in an emotional slump. For the first time since late 2019, I was overcome by crippling anxiety and disheartenment. It’s not that I hadn’t …
I often use SingleFile to archive the page I like. One day, I’ve found out that Readwise was injecting 2Mb of JavaScript in each page. That is a lot of wasted space. Luckily, there …
I know, I am late, but I have a good excuse: I was on a short holiday break in my nearby town of Terracina. I had also planned to publish this article on one of those lazy …
ElevenLabs offers the best text-to-speech API on the market, and it is my go-to service when I want to have very good results. I had to add text-to-speech to Unity’s demos a lot of …
I am writing a series of posts about the development of a new blog theme. In the second part, I describe how I conquered my fears, and implemented a responsive layout and a …
Time tracking is a popular productivity technique. Many people swear by it as the most effective intentionality tool. However, it never worked for me. It made things worse. Here, I …
Notwithstanding the Sud-European heatwave, I survived. This is already a good result for July, per se. Hailstorms and high-speed winds scourged Northern Italy, while forest fires …
Now that Arc is available without an invitation, many people will try it for the first time. Unfortunately, while I think it is a good browser, I still don’t trust it.
I am writing a series of posts about the development of a new blog theme. In this first post, I talk about the history of web design (in my experience) and the new best thing in …
June was fine. I wish I could express more positive sentiments, but that’s how I feel. It was, however, a big step forward compared to May. Not because I resolved anything (on the …
In the previous issue of the Changelog, I mentioned that May is my apathy month: a time when my motivation plummets, my mood darkens, and I become more introverted than usual. …
I was recently faced with the perplexing problem of making Spring and MongoDB serialize/deserialize a polymorphic class. Initially, it seemed like a simple task, but it proved to …
I stumbled upon an old screenshot of my favorite piece of software as a kid: Lotus Organizer. Therefore, I decided to share some old memories.
They say that to err is human, but to persist is diabolical. If that’s the case, then I must be the devil himself. April has been grossly underwhelming; I had little motivation, …
This damn month. It went fast. It went weird. It went backward but also kinda forward. So it went technically sideways, in the Cambridge Dictionary sense of “something went wrong …
There is a little trick I find helpful to get unstuck. Take the one thing you would like to do. Take the smallest related activity that you would consider a goal. Divide that …
A couple of years ago, I wrote critically about Mastodon. Now, with Twitter pluging into a disgusting shittification, I was exiled on Mastodon. Let’s see where and how my opinion …
The first month of the year is always a month of change. However, the mistake is to make it a month of drastic change. First, for once, the months start with the New Year’s Eve …
I believe nothing describes a person better than looking at the books they read. If that list is empty, you already know that you should reconsider that human interaction (unless, …
Oh, December. You beautiful cozy lazy month. It is the month in which I delude that I can make 10000 different things, but, instead, I spend all my time reading and being with my …
This November has been weird. If I had to describe it, my first instinct would be to say that it felt like slipped time. After all, my emotional status has been all over the place, …
Finite-State Machines (FSM) are the bread-and-butter of game AI due to their simplicity (both in implementation and theory) and effectiveness. As such, FSMs are the topic of many …
It was an October that didn’t look like October: the maximum temperatures never went under 25 °C; it was almost always sunny, and everything looked more like spring than autumn. …
In one of my earliest memories, on a warm sunny morning, I am in my school backyard with my teachers and schoolmates. Something catch my attention. On a sidewalk, I see a small, …
September is the best month. It is the “back to school” month. The time when you sprint into a new season of life. Only that, this time, I think I forgot about that. I still have a …
August was my summer vacation month. Therefore I had more time on my hand, some of which had been utterly wasted. In general, though, I think I had a good month of new activities, …
I saw a bit of a heated debate around generative AI and AI art. So this is my “guide” for the general public, where I try to answer some common questions. What is generative AI? …
Every time a new month begins, I start looking for something different to do. Something that would create a memorable milestone in the journey of life. Unfortunately, when I reach …
This issue came a bit earlier. In fact, tomorrow I’ll be traveling to Athens for work (and fun, I hope), and I’ll be back on July 3rd. So I think it is better to release earlier …
Why am I starting again with the monthly changelogs? I constantly have the burning desire to have a place to write something completely free. My blog is mostly about technology, …
Hey, everyone. As you know, I am not particularly present recently (I need to find out how to handle this blog while my interests spread out on non-technical stuff, but this is …
Years ago, I wrote that Julia failed to reach any reasonable expectation. At the time, development was struggling, and the language had many problems trying to achieve any …
Last year was an excellent year for reading. I’ve read 31 books, totaling almost 10,000 pages: 17 fiction books (way more than last year), 13 non-fiction (as a surprise, because I …
Can a robot become self-conscious? It looks like an interesting question, but it is not: machine consciousness is just inevitable. The true interesting questions are hidden in the …
I tried to jump on the Mastodon train several times; however, I was never really convinced by it. To be honest, I was never really interested in any open-source clone of popular …
This is just a reminder for an undesirable side effect of some Obsidian’s Plugin: they make your notes Obsidian-dependent. Here I will describe what is the problem and how can you …
I stumbled into the Small Web. A minimal barebone version of the web. It’s a place that remember me of a long gone web. It is the Small Web powered by the Gopher and Gemini …
Events are an intuitive way to model the execution flows of applications when several modules, each one with complex lifecycles, need to synchronize with each other. In this …
I do not think Postman is bad (in the general sense), but it is the piece of software I hate the most that I need to use on a daily basis. Well, not anymore! I’ve recently found …
Let’s continue our exploration of novel kinda-low-level languages. After a quick exploration of Crystal, it is time to look at another language that is constantly popping up on my …
The Crystal programming language recently reached version 1.0. As a modern compiled language, it caught my attention. It is time to spend some time playing with it to have a better …
Game Design is a kind of language. It has basic elements, it has rules, and we use it to express specific sensations. Therefore, as a language, it has a proper grammar with its …
During last year Advent of Code, I ended up discovering a beautiful relation between bounded integer compositions and the generalized Fibonacci sequence. Probably it is an already …
I know, I know: everybody loves Hades, the Super Giant’s latest jewel. These days, it is impossible to read any online game magazine without reading articles about it. This game …
Property-based testing is probably the thing I missed the most from my time working with Haskel. It is such an elegant way of testing functionalities that it is hard to not use it. …
Debugging a remote Node.js application in VSCode is an elementary procedure. Here it is a small “how to” in case you are struggling with it. A quick answer because you want a …
Every time there is a discussion on the future of AI-powered Autonomous Vehicles, somebody put the Trolley Cart Problem (TCP) on the table. And every time this happens, I am …
We already know that Procedural Content Generation (PCG) is a masterful tool for building games. But can PGC become a game by itself? This seems a silly question at first. After …
Making a game on a Fantasy Console is one of the best activity for any game development enthusiast. This small, curated, nostalgic “emulators” for consoles that never existed can …
Here we go again with a new article derived from my work notes. As you already know, I am rewriting a backend application in Kotlin and — in the process — I am improving all the …
Let’s be honest: nowadays, almost every AAA game looks the same. They are all action games with RGP elements and a crafting system and some kind of open world. It is almost like …
In the last week I converted a medium-sized legacy Java/Spring codebase to Kotlin. In this article I’ll discuss the pro and the challenges I faced during this transition.
This is another not-requested opinion on Deno! But what can I do? When I read “node replacement,” “TypeScript,” and “Rust,” I lose any inhibition. Therefore, I ported to Deno an …
Productivity and organization workflows can quickly become addictive. If you like apps and all that comes with them, your workflows can snowball out of control. I run into this …
Swift is a pretty language that hits a sweet, sweet spot: it is a compiled language built around LLV, it is modern, it took advantage of decades of programming language design …
This is a quick article to share a very surprising and beautiful thing I discovered today: it is possible to request a PDF with all your Kindle’s highlights directly from the …
Inspired by a recent paper I read this week, I decided to explain the three major “classic solutions” to the generative storytelling problem: Simulation, Planning, and Context-Free …
Visual Studio Code is my editor of choice. I started with it because of the top-notch TypeScript integration, and then I stuck with it for all the rest (all but for big projects in …
At the beginning of January, I put my hands on a dirty cheap Play Station 4 because, in the new house, I have no space for a gaming PC. Since then, I decided to make up for a bunch …
With this new year, let’s try a new format. Marginalia will be a series in which I’ll share notes and comments on interesting books I read. The name is directly inspired by the old …
The new edition of Unity Game Optimization is finally out! I already announced that in my December monthly update, but I think it is worth to spend a bit more words on it.
This update is in huge delay. I am sorry, but this November, especially the last couple of weeks have been hectic and expensive. Now that I have a bit of time, I should really …
What a horrible October; I feel I am psychologically destroyed, and I am all over the places. Fortunately, I have good news too. 👻
It is about a month that I am trying Apple Arcade on my iPad. During this month, I realized that it made my iPad a totally legitimate gaming platform. I had zero games on my phone …
Unlike many, I am usually fine with the subscription model: I understand why it is useful for the developers and I think that, if priced correctly, it is not bad for the users for …
September has been sweet and kind to me; but also harsh and challenging. Nevertheless, it is October and under pumpkins 🎃 and ghosts 👻, I am still here for a monthly update. About …
September is the true “new year”. Summer vacations are usually over, and we are ready to start a new powerful working season. So why I feel more tired than before?
As we have said before, skill and ranking are never measured directly; instead, they are inferred from the observed performance of a player in previous matches. The idea of …
I dislike Go. I dislike it a lot. Nevertheless, I usually do not bash on it because I am deeply convinced that people should use whatever they want and they like. Many people I …
Last month, slowing down with socials and news became mandatory. I “won” Camp NaNoWriMo and but I still have the last third of the story to write. Heatwaves are everywhere. To hot …
Yesterday I was reflecting about an interesting fact: in the list of “my favorite games of all times,” the top 10 is packed with games that share all a common element. The games …
This update will be quite straightforward: July will be the month of digital retreat. Summer is not for staying still. Summer is for side projects; summer is for recharging; summer …
Seven years and eight months have passed since the release of the first really popular commercial virtual assistant (VA). Yet, seven years later, virtual assistants can do only …
Every now and then, we see some headline about Turing Completeness of something. For example, Minecraft or Dwarf Fortress, or even Minesweeper are famous examples of accidentally …
May is over. Here in Italy, it rained every day. Everybody is still waiting for spring, and I am still waiting for… something. Now that summer is at the door, it is time for …
Note: This article has not been updated in the last 2 years. The information may be outdated. Kotlin is a really sweet language. It is the perfect thing in between a …
A Ranking Systems is a core element of every competitive game. Every game in which a player plays against another player need to have some way to rank them and compare the relative …
April has been strange. It has been a month of festivities, rain, and food: a lot of it. But it has also been a month that felt very fast and yet swamped. I did a lot in April, and …
I am re-reading Harry Potter for the n-th time. Even it Rowling if trying hard to make me hate it, Harry Potter heptology still have a special place in my hearth. However, there is …
As developers — especially game developers — we are naturally attracted to digital games: after all, video games are what we do; right? We are immersed in that world, we thrive for …
Luck is not on my side. I went to Milan for business, I’ve got the flu and stayed in the hotel room for the entire week. Is this a glorious waste of time and money? Probably. …
Some years ago I was playing one of those big AAA games, an epic RPG saga, a staple of single player games. While I was leading my army against the forces of evil, in one of the …
This month I am a bit late; I have good reasons! A lot of things happened in between the end of February and the begin of March. So, it is better not to lose more time.
It was the summer of 2018. I was a bit burnt out by a mix of anxiety, work and a bloody hot week. So, I decided to go to my parent’s mountain house. The plan was straightforward: …
Here we are again on this monthly update in which I talk about everything and nothing — a small summary of what I am doing, arranging and brewing, both on tech than in life.
Random Walking is a handy technique to have in your gamdev toolbelt and - despite the name - it is most useful for everything but actual walking. With random walking, we define the …
I am a functional-oriented developer. I have a bit of expertise in game development, especially in Unity 3D. It comes naturally that I am interested in the obvious link between the …
In these days I am reviewing CIG papers. At the moment, I am not active in academia, but I enjoy being around in the community. Even if only with this “simple” tasks. This, …
My opinion is that talking about languages is usually a very unproductive use of time. If these discussions are just cat fights, then it is even worse. Unless you are a language …
Fishing is probably the most common mini-game in gaming history. Before I started working on this article, I never realized how many games include a fishing as mini-game. The list …
Game Development is one of the fields in which Rust can gain a lot of traction. As a modern compiled language with performances comparable to C++, Rust can finally free us from the …
You know I worked a lot with pathfinding. In academia, the MovingAI benchmark created by the MovingAI Lab of the University of Denver is a must for benchmarking pathfinding …
I would like to expand the answer I gave on /r/gamedesign some days ago. The main point of the question was: how can I decide if it “better” to implement the decision-making layer …
Level-based progression is an extremely popular way of providing the player with the feeling of “getting stronger.” The system is born with Role-Playing Games (RPG), but it is …
A lot of startups are using “blockchain” as a replacement hyped word for “distributed database”. Well, a blockchain is the most inefficient and slow “distributed database” ever …
Note: This article has not been updated in the last 2 years. The information may be outdated. One of the feature I like the most on Rust is automatic documentation. Documentation …
If there is something that can be assumed as a fact in the AI and Machine Learning domain is that the last years had been dominated by Deep Learning and other Neural Network based …
This is the time of the year in which I propose 5 emerging/new languages that you should keep an eye on the next year. I’ve done it last year, and the year before, and the year …
Some time ago I found on my grandma’s house an old Italian book on cryptography from 1897. Why a 120 years old book on cryptography was on my grandma house, is a mystery. I’d like …
This year I joined and won the NaNoWriMo challenge: write 50000 words for a novel in 30 days. I did it. Now the nerd side need to splat on this page all the accumulated stats. The …
Here we are again! This is Part 3 of a small series on how to randomly generate a physically accurate calendar starting from planet’s orbital parameters. You can find the general …
Welcome back to part 3 of the Procedural Calendar Generation series. In the first part we looked on how to compute celestial body position in a simple two-body system. The second …
In this article, I would like to talk about a common mistake new people approaching Machine Learning and classification algorithm often do. In particular, when we evaluate (and …
During the last few weeks, I’ve seen over and over people saying that Cuphead is hard. That it is brutal. That is the “dark souls of the side shooter”. For this reason, before this …
My last week project involves PureScript and Halogen and the Dwarf Fortress calendar. I wanted to give a first-hand experience with some pure functional language for web front-end …
Because I started a small series about astronomical algorithms and the magic of math in space, I think we need to cover an important prerequisite. In the series, I will talk a lot …
Today, during my daily web crawling, I found this article by Matt Mullenweg. I will not dwell in details, you can read the full story in the linked post. But I try to give you the …
As you probably know, I am working (slowly) on an astronomically accurate calendar generator. All the orbital calculations involved are quite challenging, and I am discovering a …
Use of machine learning is becoming ubiquitous and, even with a fancy name, it remains a tool in the statistical modeler belt. Every day, we leak billions of data from ourselves to …
This small article is born from a discussion I had with a friend of mine this week. He was writing a review on Playersunknown’s Battlegrounds (from now on, PUBG) and he ended up …
I want to take the cue from a last week massive Reddit thread on micro-transaction in Free2Play (F2P) games to give my opinion of the topic. I think it is important. We need to …
Anxiety is a human mind bug. This may seem a strange claim, but I cannot find a better explanation for anxiety disorders. In fact, we can see pathological anxiety as the undesired …
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 …
Yesterday I wrote a cellular automaton based procedural caves generator algorithm that fits in a business card. The algorithm itself is not new. I already did it in C++, Rust, …
This article has been originally published on Gamasutra. In the last article we introduced a basic approach for Inventory-Aware Pathfinding (IAP), a pathfinding algorithm capable …
You know, I quite enjoy TypeScript. It is not my favorite language ever, I am more a functional type of guy, but it is the best way to bring order into the JavaScript mess without …
In this year top-5 promising languages list, I put Kotlin in fifth place among the languages that you should definitely check in 2017. This week Google I\O announced that Kotlin is …
Note: This article has not been updated in the last 2 years. The information may be outdated. Yesterday I spent way more time than needed for compiling this dependency on Windows. …
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 …
I feel the urge of stating the obvious: randomness in Procedural Generation refers to the perceived randomness of the outcome; not the randomness of the input parameters. In some …
In this article I want to show you a small proof of concept where we generate from scratch an alien calendar. The difference from other random calendar generators that just put …
Some days ago, I was cleaning my Code folder from old snippets and test projects when I found an old Clojure package I did to test some Clojure feature. I remember that I kept the …
Another year, another 5 promising programming languages you should keep an eye on in 2017. As usual, I’d like to write the warning I put here every year: in this list, you will not …
For us computer scientists and game developers, Procedural Content Generation is directly connected with computers and algorithms. It seems such a modern thing! In reality, the …
There is a common question in academia for people working on videogames: “Is there a consensus on how to cite videogames in academic papers?”. Obviously not, there is no consensus …
As usual, trying to nicely separate into different files the various application parts in JavaScript is a titanic challenge. This time, I wanted to separate the “.frag” and “.vert” …
This is just a small announcement. Some days ago the first issue of Seed, the official ProcJam magazine, has been released. If you are interested in procedural generation you …
Internet/Tech literate people continuously talk about privacy. The majority of people, however, do not care. This is hard to digest for the first group of people, but it is the …
I think the time is ready to talk about Procedural Contents Generation (PCG) in the post No Man’s Sky era. I’m talking about “era” for a good reason: No Man’s Sky huge failure will …
These days were a bit busy. I want to break the silence with an interesting link to a video. This is an interesting and fun to watch talk coming from the last PyCon. It talks …
When you design a game, one of the most important aspect to take into account is the number of players. Games can be designed for a single player, two players, four players or …
As you probably know, last week I was at the DiGRA-FDG conference in Dundee, Scotland. The conference ended last week, but I have the urge to add something to a really interesting …
I’m back! During the last week, I had a beautiful experience as a volunteer at the Nucl.ai 2016 conference, one of the nicest Game AI related conferences in Europe. I like this …
Elixir and Clojure are two uprising and fun functional languages. As you know, I talked about both of them in the article on the most promising languages of 2016, and, in fact, …
Yesterday I converted a Binary Heap data structure in TypeScript. The original code is here, in the Eloquent JavaScript online book by Marijn Haverbeke. In short, a Binary Heap is …
As you may know, I am in the middle of developing a demo for some Smart Pathfinding, and I’m using Phaser and TypeScript for it. Unfortunately, as soon as I started coding a couple …
In the last period, I’m really enjoying TypeScript. It is typed, can be used in a functional way without effort, it like a C# for the Web, in short, I love it. For this reason, I …
I hope you agree with me: controls are the true essence of every game. Sometimes, controls schemes are enough to define the game itself: once you decide the game controls …
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 …
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, …
Everybody know what pathfinding is. I don’t think I have to explain to a game developers audience why pathfinding is so important in games. If something in your game is moving not …
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 …
Note: This article has not been updated in the last 2 years. The information may be outdated. You can follow the links to read the first part and the second part of this series. …
You can find the first part of this article HERE. In the previous part we have seen how to run simple Rust functions with integer arguments. This is not enough, of course. We need …
Note: This article has not been updated in the last 2 years. The information may be outdated. Rust is an amazing language. It is one of the best potential alternatives to C and …
The MovingAI Benchmark Database is one of the most famous collections of maps for benchmark on pathfinding algorithms. I use it a lot during my work, it is useful to test an …
Since the beginning of my working life, I was torn between my researcher and software developer self. As a software development enthusiast, during my experience as a Ph.D. student, …
The first month of the year is gone and I’ve made a game! The January 2016 entry of 1GAM, namely “Writer’s Block”, is now completed (kind of)! January 2016 has been a great start …
Computing the Moving Average of a sequence is a common task in games (and other applications). The motivation is simple: if something happened too far in the past, probably it does …
Some months ago, I was frustrated by the monotony of the task of writing, running and collecting data from experiments. I was bored of facing always the same challenges, writing …
It is time to update one othe most popular article in this blog. It is time to talk about the most promising languages of 2016! But first, let me repeat the small notice I did the …
Hello everybody! It is time to continue with our series on Pokemon-like battle systems. In this chapter I will be more general: now we have our beautiful damage formula and a draft …
A.K.A. why Elite: Dangerous, Star Citizen and No Man’s Sky could be doomed to fail Since the beginning of the videogame era, developers aim to reach a perfect simulation of the …
The Combat System is one of the main gameplay element in a game. Of course there are a lot of games without “combat”: puzzles, simulation games, driving games and so on. However …
Here it is a new article on Medium on a simple game to beat (or to measure) your procrastination level! :) Let me introduce your worst rival: yourself
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 …
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 …
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 …
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 …
8th September 2016 Update: I uploaded these slides on SlideShare. You can see them here. Hi guys! In the last month I’ve prepared a presentation on Procedural Contents Generation …
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 …
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 …
I have to admit it. I was a big Javascript hater. I used to criticize the language on every possible aspect: syntax, maintainability, error prevention and management, and so on. …
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, …
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 …
The last week I spent some time build a small tool for abstracting an image into a mosaic, for fun. To do this I’ve used Haskell, of course. However, this is my first “complete” …
Yesterday, while my working machine was crunching tons of numbers, graphs and maps to produce some (hopefully) meaningful data for a research work, I was looking for a simple guide …
People who know me already know: I’m a tool maniac. I can spend hours searching for the perfect configuration of keys, plugins, colors, themes, debugging tools and so on, and …
First of all, some time ago I stated that I would like to start writing more. Unfortunately, a combination of personal issues, flu and other psychological breaks did not allow me …
UPDATE: There is a new version of this article for 2016! In the the previous post we have seen what are the general trends of the previous year with regard to the fascinating world …
UPDATE: There is a new version of this article for 2016! At the very beginning of a new year, it is customary to try to predict what will happen in the future. That is the selling …
The new year is come, full of good resolutions and appealing feelings of renovation. For my part I have two main target. The first one is to write a bit more. I always feel that I …
Recently I started exploring the low poly modeling in Blender. Well, there is this guy on youtube that is simply amazing. I really love his work and I’d suggest to watch his …
You are finally back home. During your work day your mind was totally a volcano of creativity. You have so many cool ideas to implement (or at least to sketch). You go to your …
In the spirit of the ProcJam2014 (that unfortunately I have to skip because of a ton of academic duties :<) I’m presenting to you a simple algorithm to generate maps: the cellular …
Procedural Contents Generation (PCG) is a family of techniques, algorithms and procedures used for generating contents in an automatic way rather than manually. In other words, …
Hi everyone! Sorry for the long absence but my days are really full of commitments and terrible news. It is still not over, but but I really need write about something before is …
As I said in a previous post, in these days me and my colleague at Noctua were working in the SpeccyJam 2014. The goal of the jam/competition is to make a game with the same look …
Hi everyone. In these days, me and my friend and colleague at Noctua (EDIT: we don’t have a webpage anymore) are working at a new game jam: the SpeccyJam. The goal of this jam is …
Hi everyone! I’m back. In the last week I was in Prague to attend to the 21th European Conerence on Artificial Intelligence (a.k.a. ECAI2014). This was my first real academic …
In search of the Philosopher’s Code. A small manifest on my actual thoughts and interests in programming.
I don’t know if my life is starting to be more interesting or just more hard. Anyhow, in this bloody hot August summer I really feel the need to recollect my digital goods and …
No entries match that search.