I came from the same world, Ed, but as an attendee, and it was a culture shock for me as well.
I was used to the "OK, I paid my shekels, now feed my belly and my brain and I'll go home" approach to attending Microsoft conferences. Instead, it's more like "Hi, welcome to PyCon. What cool thing are you going to talk about?" "But... I'm just an ATTENDEE..."
Compared to "industry" conferences, PyCon blurs the lines between attending, speaking, and volunteering. It's just a different way of thinking about a conference, and so it makes sense that the financial model be different as well.
Now as much as I like getting stuff paid for, I have to say that I much prefer the PyCon approach: it makes for a much more interesting experience, and a much richer community. It's hard to explain precisely, but I think it has to do with an overall sense of contributing to rather than taking from the community that makes the egalitarian approach to paying for PyCon. In other words, if you aren't willing to contribute the time needed to prepare a session, maybe PyCon isn't the event for you.