This is Your Brain on Factorio

I’m seeing zigzagging conveyor belt movement patterns when I close my eyes…I’m trying to use WASD to navigate web pages…my developer-brain, my mostly-left-brained, analytical, logical processes are being eaten alive by this…game? This can’t be right.

And yet it is. I found out about it from a software dev on Twitter, who learned about it from another dev, who learned about it from I-don’t-know-who but I bet it was another software developer. Devs seem to be going apeshit over Factorio, and after a delirious, sleep-deprived binge I’m starting to see why.

Factorio, for the uninitiated, is ostensibly about building factories but in reality is a metaphor for computer programming (it even has fucking programmable circuits, but we’ll get back to that). Factorio is all about the choices you make in using resources to their limit (or beyond). It’s about refactoring your factory, moving shit around so you can squeeze another 10% out of your iron supply line. It’s about debugging supply line issues to figure out why you’re not building any green science thingies (those are important). It’s about systems design.

The choices you make in the beginning are easy. You have free reign to set up a couple coal-powered miners, run supplies back and forth from the iron field to the copper field and back to the coal field (if you don’t have those resources nearby, use the new game map preview, Luke!). You can criss-cross your precious resource tiles with power lines and conveyor belts, creating a completely arbitrary design to solve the problem of getting your early-game resources quickly.

To build a factory that truly scales, though, you need to generalize. You need to think ahead, refactor your early designs (i.e. rebuild — while you still can). You need to act deliberately. You need to fix root causes, not band-aid problems by redirecting belts willy-nilly (the equivalent of writing code to correct the result of a bug, instead of fixing the bug — guilty ✋).

Performance is critical in Factorio. Throughput is everything. As you produce resources, you have to ensure that you’re building not too little, not too much, and it gives you the graphs and numbers to be able to do your homework. I’m getting ready to dig some graph paper out of my old D&D materials and start planning my next factory.

As I wind down in my sleep deprivation, and approach…fuck, 6:30PM? My brains have turned to mush. Might as well…work on my factory?

I may have a problem.

read original article here