When you say "programming 101" you might not be talking about the MIT courses being discussed here.
6.001 was a course in functional programming, based on the book Structure and Interpretation of Computer Programs.
6.01 (the replacement course that uses Python) is a project-based course involving robots and stuff.
Neither of these courses depend on any specific knowledge, but they would be very difficult courses if you've never programmed before. (Most people coming into MIT course 6 have programmed before.)
The "you don't know how to program, here's how to program" course has taken various forms over the years. When I was there it was 1.00, a Java course for engineers. Later it was 6.00, an optional intro to Python, based on "How To Think Like A Computer Scientist".