I don’t need something practical. I just need something fun to keep me motivated.

  • orclev@lemmy.world
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    1 天前

    I’ll toss TIS-100 onto the list of programming games although that one teaches you a pseudo-assembly language as well as how to think about concurrent programming. Then there’s Human Resource Machine although that one is aimed at absolute beginners to programming and teaches a sort of visual assembly, and then its quasi-sequel 7 Billion Humans which extends the concepts explored in Human Resource Machine into parallel processing (this actually makes a pretty good soft introduction to GPU programming and shaders).

    I actually played The Farmer Was Replaced and it’s just straight up Python, not even Python-like, it just locks a lot of the language features behind campaign progression. It was OK initially, but gets kind of annoying at later levels because they intentionally hold back a lot of the tools to easily solve problems and make you solve them in a more verbose and annoying fashion first.

    • JackbyDev@programming.dev
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 天前

      TIS-100 and Shenzhen IO both felt annoyingly limited to me in ways that Exapunks didn’t.

      The reason I say “Python-like” is because that’s how their store page describes it.

      • orclev@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        1 天前

        Interesting. I did find Shenzhen IO to be a bit annoying but that was more because it forces you to use circuit design to solve certain problems rather than just brute forcing them via programming. Weirdly I couldn’t get into Exapunks while I found TIS-100 really interesting.

        I suspect the reason that they call it Python-like is because I don’t believe it allows you to import any libraries or anything into it and they don’t want people to think they’ve got a full Python interpreter that can do all the normal Python things. Essentially it’s Python syntax, but without the normal Python runtime. There’s probably some more advanced Python-isms that are missing as well, but I’ve not used Python enough or played the game enough to really run into those things. E.G. I don’t know if it lets you define new classes as I never bothered to try that. I kind of got bored of it once I got towards the later levels and didn’t really see any reason to keep grinding to unlock what were just extra challenges in the game.