Guillaume Fortin-Debigaré

Analysis and thoughts on software development, game design, and more.

Guillaume Fortin-Debigaré doing a live presentation in the middle of a crowd
Floating mathematical formulas

A Technical Introducition to MathML Core for Writing Mathematics on the Web

- Programming, Mathematics

Thanks to recent efforts, all major web browsers currently support MathML Core, a subset of MathML focused on important presentation markup, to support mathematics on the web. As of this writing, the MathML Core specifications are still not finalized, but given its strong origins and support, it can…

Fireworks

The New Open Source Video Game Randomizer List Is Now Live

- Video Games, Programming

Time to update your bookmarks! After a few months of work behind the scenes, the new open source version of The BIG List of Video Game Randomizer is now live for your enjoyment, with dark mode support and a brand new UI for better readability! The new URL is: https://randomizers.debigare.com/ (The…

Open treasure chest with a question mark in it

The Future of the Video Game Randomizer List

- Video Games, Programming, Anecdotes

It's hard to believe that it's been almost 8 years since I first posted on the ROMhacking.net forums a list of video game randomizers that I found online, and that it would evolve into the massive project it has become today, with almost 900 entries currently being listed. It's always a strange…

Woman being blindfolded by someone hidden behind her

A Corrupt Judge's Prayer

- Fiction, Psychology

That's not what the law says. And if it does, that's not what the constitution says. And if it does, that's not what their authors meant. And if they did, the case has no merit due to a technicality. And if there isn't, I will delay my decision. And if I can't... It's not my responsibility.

Playing with an Xbox controller

My Personal Video Game Completion List

- Anecdotes, Video Games

I thought it would be fun to track the long list of video game that I have beaten and/or completed for reference, so I've done just that! There may be a few mistakes here and there due to secret features unknown to me, or due to misremembering details of my past gaming experiences, but I believe the…

Dice stacked in a triangle shape, with their face numbers matching their row position

I Designed the Perfect Gambling Game, But...

- Mathematics, Business, Game Design

Back in 2006-07-08, during the 13th Canadian Undergraduate Mathematics Conference at McGill University, I presented a gambling game I designed with the novel property of being both advantageous to players and the house, and that despite this proprety, that pretty much nobody in their right mind…

Stream of zeros and ones in space

Minifying JSON Text Beyond Whitespace

- Programming, Mathematics

JSON is a common data serialization format to transmit information over the Internet. However, as I mentioned in a previous article, it's far from optimal. Nevertheless, due to business requirements, producing data in this format may be necessary. I won't go into the details as to how one could…

Field of CG-rendered disembodied arms pointing at a dark sky at sunrise

Current Generative AIs Have Critical Quality Issues

- Business, Quality Assurance, Security

The hype for generative AI is real. It is now possible for anybody to dynamically generate various types of media that are good enough to be mistaken as real, at least at first glance, either for free or at a low cost. In addition, the seemingly-creative solutions they come up with, and the…

Stream of concatenated JSON objects

Current Data Serialization Formats May Be a Waste of Money

- Programming, Business

Storing data. Transmitting data. Processing data. These fundamental topics of computer science are often overlooked nowadays thanks to the historical exponential growth of processing power, storage availability and bandwidth capabilities, along with a myriad of existing solutions to tackle them. So…

Girl sitting on a small deserted island at sunrise reading a magical book under a brain-shaped tree

The Ultimate Maths Cheat Sheet

- Mathematics

The following is a compilation of pretty much every single mathematical topic that I learned throughout my life, covering topics from all levels of education, along with external links for each of them for quick reference. I have compiled this list after extracting all of the relevant information…

Brandon Dillon's portrait in Hack 'n' Slash

After 8 Years, Double Fine's Hack 'n' Slash Secret Room Has Finally Been Cracked

- Video Games, Security

In the history of obscure video game secrets, not many has been quite infamous as the SecretRoom.lua puzzle in 2014's computer hacking game Hack 'n' Slash by Double Fine. Since the game's release, a mysterious encrypted file was found in the game files, yet despite the very nature of the game being…

Cowboy riding a horse in the sunset

Upgrading Your Cybersecurity from Cowboys to Sheriffs

- Security, Business, Anecdotes

Roaming throughout the countryside, dangerous desperados are awaiting in their hideout for the perfect opportunity to rob their victims in silence. Powerless, the authorities have posted wanted posters on public boards with cash bounties for any information that could lead to their arrest or death…

Slippery road signs scattered everywhere

Scrum Is Not Agile

- Programming, Business, Psychology

While there is no denying that Scrum revolutionized the software industry for the better, it may seem a little strange to read about someone that dislikes it despite strongly agreeing with the Agile Manifesto, considering the creator of Scrum was one of its signers. However, after having experienced…

Active woman in front of sunset

Values I Value

- Psychology

How aligned are you with me? This is my top 5 list of human values, both present in myself and that I'm attracted to in friends, coworkers and lovers. I also included my interpretation of each one to avoid any confusion…

Assembled cog wheels

Validating and Viewing OpenAPI Definitions with Docker

- Quality Assurance, Programming

Here are a few commands I crafted to validate and easily read API definitions in the OpenAPI format, using Docker and open source tools provided by Swagger. I have yet to convert them into proper shell scripts, but I hope these will be helpful nonetheless. The commands are designed to be run in a…

Radiating business woman

Essential International Standards and Registries for Web Developers

- Programming, Quality Assurance, Security

The following is a collection of free international standards, registries and references that I collected throughout the years while developing websites and web services. These references, while very precise and technical by their nature, are extremely useful in order to ensure that a specific…

Illusion of Gaia logo

Beating Illusion of Gaia in 17 Minutes

- Video Games, Security

I crafted a tool-assisted speedrun (TAS) of the Super NES action-adventure game Illusion of Gaia (also known as Illusion of Time in Europe) which beats the game as fast as possible on the American version. The final time is 16:48 when using TAS timing (from initial power on to the last input) and…

Spaceship flying over active volcanoes

A Universe and World Creation Script for Mongoose Traveller 2nd Edition

- Tabletop RPGs, Programming

The following is a Python script developed by yours truly to generate a sector according to the core rulebook of the Mongoose Traveller 2nd Edition tabletop RPG, exactly as described in the Universe and World Creation chapter. It is designed to describe worlds in human-readable format as much as…

Medusa in fiery scenery

Deep Learning in Python with PyTorch - Tutorial and Demo

- Programming, Mathematics

As I am continuing my personal journey into deep learning research and development, I wanted to try out PyTorch, a machine learning framework with GPU acceleration primarily designed for the Python programming language. However, I couldn't find any good introductory resource online for it. So I read…

PARANOIA: Troubleshooters book cover snippet

Creating a Paranoia 25th Anniversary Edition Character Sheet for Roll20

- Tabletop RPGs

I'm a big fan of the Paranoia 25th Anniversary Edition comedy tabletop RPG, and I regularly act as a game master for that game on Roll20 with my regular play group in-between other tabletop RPG campaigns. However, there wasn't any good character sheet for that game system on Roll20, so I decided to…

PlayStation Vita

Resolving PlayStation Vita Error Code NP-9968-2

- Video Games, Security, Anecdotes

For about 2 years, I was not able to install any new software on my PlayStation Vita, for seemingly no reason. I could make new purchases from the PlayStation Store, but the download would always fail, and only on my Vita. No issues whatsoever with my PlayStation 3 nor my PlayStation 4, but for some…

Dusty light bulb lying on the floor

Stop! Your Ideas Are Stale!

- Business, Programming

"Everything must be done now. Let's re-use existing proven solutions and build over them so we don't waste time." And thus, people will look at the top 2 or 3 most popular solutions they already know about or can easily find on the Internet, compare them, pick the best one, and maybe add or change…

Go board with stones

Game Design Analysis - Standardizing Go Rulesets

- Game Design

Go is a popular board game that has been played for thousands of years. However, the rules have not been standardized yet, so while the basic rules are the same worldwide, many rulesets have been developed that are still widely used as of this writing. The current position of the International Go…

Brandon Dillon as the ghost of Amnesia Fortnight future

The Hack 'n' Slash Puzzle Collection

- Video Games, Security

This is a collection of all the secret hacking puzzles released between 2012 and 2015 related to the video game Hack 'n' Slash and its prototype. As far as I'm aware, all puzzles were designed by the game's project lead Brandon Dillon. All the material is archived here for preservation purposes…

Close-up of A-set's mouth doing a creepy smile

Game Design Analysis - The Lemniscate A-set ARG

- Game Design, Video Games

Alternate reality games (ARGs) are interesting to review. Half marketing, half entertainment, and 100% live, their very nature makes them hard to experience if you miss them. In the case of the Lemniscate A-set ARG however, almost all of the content is still available today. As I took part in it…

Snail

The Slow Certificate Authority

- Anecdotes, Security

Last year, I wrote about multiple issues I encountered upon switching web hosts. One of these issues was delay violations from Sectigo (formerly Comodo CA) for revoking old certificates compromising the HTTPS connection to my website. This spawned a saga with Mozilla, the organization behind Firefox…

Loot box

Microtransactions Are Corrupting Video Games

- Game Design, Business, Video Games

In 2017, Electronic Arts released Star Wars Battlefront II. Very quickly, many were angered at the predatory way microtransactions were implemented in the game, so much so that governments around the world noticed and have been considering whether regulations around them are necessary to protect…

Man reading emails on his laptop

Pluralsight Course - Configuring and Managing SPF, DKIM, and DMARC

- Security

Configuring and Managing SPF, DKIM, and DMARC is a beginner-friendly course about email security produced by yours truly. It is designed for security professionals and web domain administrators. Email deliverability is a constant challenge for organizations, but this challenge is widely amplified if…

Wii RVT-R Reader test kit

The Test Case That Bricked a Wii Test Kit

- Anecdotes, Quality Assurance, Video Games

Back when I was working at Eidos Montréal, part of my responsibilities included ensuring that the games we were producing for the Wii followed Nintendo's Wii Programming Guidelines. This is the story of how I bricked a Wii RVT-R Reader test kit by doing my job…

Lady Justice

Reasonable Doubt as a Game Mechanic

- Game Design, Mathematics

Detective fiction, and particularly whodunits, have been really good at being engaging people in attempting to solving the mystery presented before the final reveal. Video games allows such stories to thrive with a level of interactivity that can directly engage the player in this process as an…

City numerically connected to computers

Free Quantum Programming on the IBM Q Experience

- Programming, Mathematics

You can now watch yours truly explain the basics of quantum programming and how to execute a custom quantum program on the IBM Q Experience in less than 10 minutes! The following video summarizes my very first blog post Quantum Programming 101 in a dynamic format, and appends to it a real-time…

Really angry devil statue

4 Unexpected Issues I Encountered upon Switching Web Hosts

- Anecdotes, Security

For those that didn't notice, I've recently rebuilt my entire website from the ground up and switched web hosts from Ghost(Pro) to Netlify, and I learned a lot from the experience. Not everything went smoothly, but it was mostly problems I had expected. This post, however, is about those that I had…

Cat trapped in bird cage looking at parrots outside of it

Stuck!!

- Game Design

Ever got stuck playing a video game for hours without making any progress? I decided to analyze this phenomenon to determine how players get into such situations, why they have trouble getting out of them, and what game designers can do to minimize them. Note that the suggested mitigations below do…

Flag of Prosperia

Prosperia - A Tabletop RPG Prototype for My Coworkers

- Tabletop RPGs, Game Design, Anecdotes

I'm a big fan of role-playing video games, especially Japanese-style ones, but there's a big restriction these games have: players have limited abilities to create their own stories in them due to programming restrictions. When I discovered tabletop role-playing games, having this restriction lifted…

Man on laptop tracing a secure connection around the world

Essential IT Security Resources

- Security, Quality Assurance

Recently, two of my coworkers coincidentally asked me how I kept track of security news and vulnerabilities. As it took me a long time to build a list of useful resources myself, I figured it would be useful to share it with everyone, so here goes…

Hand holding mobile phone running an online dating app

My Absolutely Horrendous Online Dating User Experience

- Anecdotes, Psychology, Business

Are you in a loving relationship? Personally, let's just say that my social interactions with women in general have been rather limited, which may or may not be related to having geeky interests, working in an industry dominated by males, not drinking, and avoiding places with loud music because I…

Connected gears with a business man or woman in each one of them

Building a Great Front-End Test Automation Solution

- Quality Assurance, Programming

So far in my career I had to architect three different front-end test automation solutions from scratch. Such solutions are really useful to minimize manual regression tests after a code change. What I would like to share today is what I've seen work and not work based on my experience. Note that…

Falling tetriminoes

The BIG List of Randomizers

- Video Games

I've been finding a bunch of video game randomizers lately, so I decided to compile them all in one big list, which has become quite extensive thanks to the help of the gaming community. You can access the full list here or through this blog's main menu at any time!

Girl with a disappointed expression

LinkedIn Is in Violation of Its Own User Agreement and Privacy Policy

- Business, Anecdotes, Quality Assurance

What if you couldn't update personal data on the Internet you created and own? Back in January, the social network LinkedIn started deploying what they called the New Desktop Experience, which was their redesigned web user interface. Along with it came the removal of some features that were not…

Bitcoin logo in the middle of a circuit board

Are Your Bitcoins Safe from Hackers?

- Security, Business

After barter, gold-backed currencies and fiat currencies, the recent emergence of cryptocurrencies have disrupted the global economy. Instead of being backed by assets or governments, cryptocurrencies are backed by computers of volunteers, which fixes some problems but also introduces new ones…

Old objects on a table, as presented in Ahnayro: The Dream World

Game Design Analysis - Ahnayro: The Dream World

- Game Design, Video Games

Earlier this year, I had the chance to visit Alice & Smith, a small video game studio specialized in transmedia storytelling, and most notably known for the alternate reality game (ARG) The Black Watchmen. How that visit came to be is a crazy story that I hope to share in the future. For now, what…

Blindfolded man in a long chair holding a glass of wine

How Managers Produce Technical Debt

- Business, Quality Assurance

Here's a story I've seen quite often in my career: a software product grows at a quick pace during the initial months of development, then at some point progress starts to slow down significantly until it reaches a point where a seemingly trivial change requires days of work and/or has a high chance…

Messy desk with a book entitled Creative Mess

Lessons from Not Starting a Startup

- Business, Anecdotes

It has now been 3 months since I was laid off and first tried becoming an entrepreneur. I wasn't expecting to be successful due to the statistics, but what I did not expect was to not have started anything at all. Let's review what happened…

Circuit board shaped like a brain

How to Simulate Human Intuition

- Programming, Mathematics

A few months ago, I started to study deep learning, a branch in computer science heavily inspired by biology that allows programs to learn arbitrary concepts without explicit programming. How good is deep learning? Well, good enough to play Go with super-human performance, a significant milestone in…

Excerpt of La Chasse-galerie with corrupted characters

This Text Is Not Corrupted

- Quality Assurance, Programming

Both in my personal and professional life, I often have to deal with corrupted text data. In almost every case, the cause is that it is not parsed using the correct character encoding. In other words, the way the characters were saved on the computer was different from the way the computer attempts…

Microphone

Beyond the Game

- Game Design, Video Games

In 2012, I created a podcast about game design called Beyond the Game. I co-hosted it with software designer and developer Joseph Benkual, and the theme song was composed by sound designer Ryan Rafael Lopez. We made 12 main episodes in which we analyze the design of popular video games, plus another…

Splitting path in a desolate forest

Professional Crossroads

- Anecdotes

I have recently been laid off. It's the second time that it has happened to me, and both times were caused by subtle years-long management mistakes followed by a necessary economic restructuring of the affected organizations. I'm planning to explain in future posts how to prevent those mistakes, but…

Shrugging woman

Understanding Feature Requests

- Business

Feature ideas may come from various sources, and in the context of a Scrum team, they are a great source for product owners to determine what user stories to put in their product backlog. Some ideas seem natural and logical, while others may seem so out of place that the sanity of the person that…

Plasma globe

Quantum Programming 101

- Programming, Mathematics

Are you familiar with programming, but know absolutely nothing about quantum mechanics? This was exactly my case when the IBM Quantum Experience was announced. For the first time, a quantum computer has been made publicly available, and anybody selected to participate could send programs to it. I…