• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Cocoa-dev Digest, Vol 5, Issue 919
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Cocoa-dev Digest, Vol 5, Issue 919


  • Subject: Re: Cocoa-dev Digest, Vol 5, Issue 919
  • From: Graham Cox <email@hidden>
  • Date: Tue, 27 May 2008 15:15:15 +1000


On 27 May 2008, at 2:33 pm, Johnny Lundy wrote:

namely because there is no mention of the receiver.

Why would there be? The receiver is an instance of the class whose documentation page you are looking at. You *have* the receiver, otherwise why would you be interested in its methods?


Seems to me you are looking through the documentation looking for pieces of functionality you can use. That's OK, it's good for that. But you are then sort of thinking of the methods as a standalone bit of procedural code, such as you might find in a C or Pascal library. That's not what they are. They are methods of actual objects. You need the actual object before you can use the method. (Even class methods - a class is an actual object too). You don't *start* with the methods, you start with the objects.

This comes back to OOP versus procedural programming. Yes, learning to get your head around OOP if you have only known procedural is tough going for some (was for me, many years ago) and for a while you might be trying to learn OOP in terms of what you already know. Understandable, but probably going to hold you back. Learn OOP on its own terms, free your mind, and your code will follow ;-) OOP is *way* easier than it seems (when you keep trying to force it into a procedural mindset). It really is. Trying to equate it to procedural stuff only makes it seem complicated. The real-world is very object- oriented ("ooh, what's this? Mmm, I see, what can it do?"), so OOP is much more like real life. Procedural code is the weird one, because it doesn't have much of an analogue in the real world. People completely new to programming often take to OOP no problem, whereas it's procedural that is clunky and alien, and is harder to learn. Trouble is, it's also harder to unlearn.


That's not true, and the tone of that is a holdover from the early days of the USENET groups where it was considered appropriate to chastise newbies, AOLers, etc. I can take it because I was around back in those days and know where it comes from -- but it is surely scaring away many people who would want to post.

That oft-quoted essay on how to ask a question is old, and from the first time I saw it I thought it was out of line. My response would be that there should be a similar essay on how to ANSWER a question, and the first line of that essay should be "either answer it or ignore it." I know in the forums at AppleInsider that I moderate, nobody gets away with the "OMG Use Teh Search N00b" answer - that kind of reply is against the posting guidelines, and if I see it I remove it.


The problem is that this thread has made no progress at all, despite many people spending time and effort to try and help you. People are getting exasperated with your inability to digest what is being said. Might I respectfully suggest you go away for a while, let it stew, work on your own, try a bit harder, then see if the light doesn't go on after a week or so. Statements such as "I still get this wrong after a year" shows to me that you are not taking a logical approach to learning this, or else you are reading, and not understanding even the most fundamental stuff. Go back to the beginning. Even seasoned programmers still do that from time to time.

Would you attempt to fly an aircraft without any training, or without even knowing what the basic flight instruments show you? "Hell, this darn gauge here makes no sense! It just keeps whirling round and round with these needles all over the place. What use is that! Documentation was no help - keeps referring to the "altimeter", I mean, WTF is that?". Difference in that case is that a "crash" is not a case of recompiling and trying again. I would say (as a small-time pilot) that Cocoa programming gets *at least* as complicated as flying a plane. The only reason newbies think it's easy is because your life isn't dependent on you getting it right. Imagine how you'd go about learning it if it were? Differently, I hope.

The many fine pieces of work done in Cocoa and the many programmers using it without trouble suggest to me that there is little wrong with the documentation. It's you, it really is - and only you can do anything about that. Some newbies have difficulties, but I do not believe they are in any way a "silent majority" so trying to plead the case on behalf of this imagined group is not helping. If some people are losing patience, I find that quite understandable. If you had received this sort of response right at the beginning then yes, that would be rude, inappropriate and the rest. But that's not the case.



cheers, Graham
_______________________________________________

Cocoa-dev mailing list (email@hidden)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


References: 
 >Re: Cocoa-dev Digest, Vol 5, Issue 919 (From: Johnny Lundy <email@hidden>)

  • Prev by Date: Re: Cocoa-dev Digest, Vol 5, Issue 919
  • Next by Date: Re: running an external app
  • Previous by thread: Re: Cocoa-dev Digest, Vol 5, Issue 919
  • Next by thread: Re: Cocoa-dev Digest, Vol 5, Issue 919
  • Index(es):
    • Date
    • Thread