Programming-like activities?

Programming is quite a remarkable activity:

  • It has an extremely low barrier to entry

    • You don’t need expensive equipment

    • You don’t need to be in a particular location

    • You don’t need special credentials

    • You can finding information /​ resources just by opening the internet

    • You can learn it /​ do it independently

  • It gives you rapid feedback (which can lead to rapid growth)

  • It gives you frequent rewards (which gives a huge boost in motivation)

  • It’s objective and unforgiving (this is a good thing, because it teaches you how to confront reality)

  • It’s intellectually stimulating

  • It’s useful in the real world

    • Corollary: you can make money or even build a career out of it

  • It’s badass (or are you telling me that Hackers WASN’T your favorite movie of all time?)

What are some other “programming-like” activities?
I mean this in the sense of “activities that also satisfy the above criteria”, but suggestions don’t have to satisfy ALL of the criteria. Here are some of the first ideas that come to mind when I try to answer the question myself:
  • Electronics (but this is basically still programming)

  • Math (lacks “rapid feedback” and “frequent rewards”; “useful in the real world” is also questionable)

  • Go, poker, video games (usually lacks “useful in the real world”, sometimes lacks “badass”)

  • Juggling, poi (lacks “intellectually stimulating” and “useful in the real world”)

However, I’ve already exhausted my creativity and I’m hoping to go much deeper than this. Thoughts?