while True: learn() starts with a simple question: How can humans talk to cats? In asking this question, the game takes you down a rabbit hole of puzzling experiments, tasks, and challenges as you try to earn enough funds to finally understand your feline companion. It's a fun premise uses charming writing to bring life to a game that otherwise mostly deals in cold, hard logic.
while True: learn() is a game built around solving true-to-life machine learning problems. Using a simple drag-and-drop interface, you do all kinds of things, like program a self-driving car, or sort medicinal herbs by petal color. Rarely do you get to see your creations play out in practice. You just see your visualized model sort data to a degree of efficiency, speed, and accuracy that you yourself arrange.
This sounds pretty intense, but while True: learn() happens to have a pretty gentle learning curve. The game starts you out performing really simple and straightforward tasks, and only complicates tasks once you've gotten a firm handle on how each individual tool in your arsenal operates.
There is a set level progression to while True: learn(), but the whole game feels more like a management sim than a straightforward puzzler. This is because you earn money after each level you complete, which you can then spend on items like better computer hardware and office plants. There is also opportunity to turn around and invest your profits in startups that you then have to program for to make them successful.
On the flipside, you can (and will) lose earnings while playing while True: learn(). As it turns out, running code costs money, and this cost rises as your code gets more complicated. As a result, you'll always want to look at how you can solve problems as efficiently and simply as possible, lest you run out of money, which forces you then to re-load the game from a checkpoint. This part of while True: learn() is one of its more fascinating and compelling aspects, particularly because the game teaches you lessons on how to more effectively solve problems as you play it, and then rewards you for revisiting older challenges and patching them with better code.
Glitch in the matrix
while True: learn()'s secret ingridient for making all of this work without feeling too dry is its personality. Challenges are introduced through witty emails, stages are divided broken up with flurries of forum chatter about your quest, and the game's general aesthetic has a friendly, cartoony vibe. Without these things, I'm not sure while True: learn()'s gameplay would feel particularly tolerable for long stretches.
The only real issue I had with while True: learn() was its performance. As levels got more and more complicated, the amount of modules I'd drag onto the screen went up considerably, which occasionally cause some slowdown on my device. In the grand scheme of things, this isn't a big deal, especially since the game has an option to prioritize performance that eliminates the issue completely.
The bottom line
while True: learn() isn't exactly the flashiest game out there, but it does layer a surprising amount of charm onto a game that-while completely competent and fun-would otherwise be pretty drab. If you aren't into coding or logic puzzlers, I could see why you might not see the appeal of while True: learn(), but it goes out of its way to be inviting to players, whether they're well-versed in this genre or not.