The TIS-100 computer system contains many CPU-cores which continually repeat a fifteen instruction long assembler program. These cores can only communicate with their four neighbours and have two registers. Programming for the TIS-100 is often a struggle against the code size, the topological constraints of communicating or the limited register count. Longer programs could often easily fulfil the puzzle-specific program-specification but can't even be temporarily written in the primitive editor. Maybe the TIS-100 architecture can be best compared to distributed message-passing programs running on a biological computer. At first I found the game to be a fun distraction from "normal" programming but later on I did no longer want to miss the comforts of modern programming languages and environments. If you want to learn programming you should not start with this game as it is probably highly frustrating. However learning assembly programming with TIS-100 might work out rather well due to the extremely limited instruction set.