I don't believe courses are necessary if you want to learn programming.
You're wrong. There are lots of developers who are self-taught, and just like you they didn't need a course. That's awesome. Similarly though there are lots of other developers who aren't self-taught, and for whom the process of how to think about code didn't "click" with them until they were taught the basics. Those developers needed a course.
People aren't all the same, so what works for one person won't necessarily work for another, and given the number of developers society will need in the future we will have to afford opportunities to every type of learner.