Things I’ve Learned Playing Factorio

I started playing Factorio again about a month ago. I played it before, back in 2018 and then again in 2020, but in each case I got busy doing other things and stopped without fully completing the game. For people unfamiliar with it, Factorio is a simulation game where you build out infrastructure and unlock increasingly complex technology as you progress through the game. Now that I am about 1/2 way through a new game, I wanted to capture some lessons from it which I think are applicable to coding and Data Science in general.

1. Don’t let “perfect” get in the way of “good enough”

Early in the game, you don’t have the technology available to be fancy. You need to use the tools you have and bootstrap yourself to a higher level in the tech tree. You can spend time trying to create elegant solutions, but the reality of the situation is that you need to move forward and “optimizing a turd” isn’t beneficial here. In real life, I would compare this to the dilemma people often face when deciding whether to automate something, or just do some manual processing to get the ball rolling. Especially early in a project, when you’re still doing EDA and trying to understand things, I would argue that just getting something done is more important than doing it perfectly.