Self Nude Shot - Brightlocal News
By making the self reference explicit, you're free to refer to any object by that self reference. Also, such a way of playing with classes at runtime is harder to do in the more static languages - not that's it's. See why do i get 'takes exactly 1 argument (2 given)' when trying to call a method?
For a language-agnostic consideration of the design decision, see what is the advantage of having this/self pointer mandatory explicit?. To close debugging questions where op omitted a self.