Skip navigation.
 
mlRe: Guidance for Cocoa's steep learning curve
FROM : Jens Alfke
DATE : Fri May 16 16:50:43 2008

On 16 May '08, at 7:19 AM, john darnell wrote:

> Sigh.  Your attitude reminds me of a conversation I once had with a
> fellow programmer.  When I was encouraging her to add more 
> documentation
> to the code, she replied, jokingly, "If it was hard for me to write,
> then it should be hard for them to read."
> The sad thing is that you are not joking...


OK, this is getting somewhat offensive. Most of Apple's developer 
documentation is written by full-time tech writers, with extensive 
consultation and review from the engineers involved in the code. I 
know some of these writers, and I've been involved in many doc 
planning and review meetings over the years.

Any deficiencies in clarity or accuracy are the result of a simple 
lack of time or resources. To assume that they're somehow deliberate 
is a symptom of the common engineer arrogance that assumes that any 
problem you're not directly involved in solving is "trivial" and that 
its persistence is only due to incompetence or maliciousness. That is 
a bullshit attitude. Don't perpetuate it.

Face it: programming is hard. Programming very sophisticated complex 
things like GUIs is very hard. Frameworks make that job a lot less 
hard [if you doubt this, go and read the old '80s "Inside Mac" I...V 
sometime!], but there are still a lot of concepts and details to 
learn, and many times their topology does not reduce to a directed 
acyclic graph (i.e. you can't present them in order without forward 
references.)

Also face it: Most of the other software docs in the world are much 
harder to follow, because most companies/projects can't afford to pay 
full-time tech writers. There are a lot of amazing open source 
libraries, but for the most part you are going to have to put some 
serious effort into figuring out how to use them. That's not (usually) 
because anyone deliberately made them hard to follow; it's just part 
of the territory. We are programmers because we are good at figuring 
out and navigating through complex abstract systems.

Apple's docs are very good these days, but they're not pitched at the 
level of "Cocoa 4 Teh Dummiez!!1". That's not Apple's job. There are 
enough 3rd party Cocoa books by now that I'm sure there are ones at 
that level; anyone finding the Apple docs inadequate should go look 
into these. (Yes, this might require spending some money. Deal with 
it. We all got into computer programming to make the big bucks, right?)

—Jens

Related mailsAuthorDate
mlGuidance for Cocoa's steep learning curve Erik Buck May 15, 03:19
mlRe: Guidance for Cocoa's steep learning curve Ricky Sharp May 15, 04:26
mlRe: Guidance for Cocoa's steep learning curve Scott Ribe May 15, 05:33
mlRe: Guidance for Cocoa's steep learning curve David Wilson May 15, 07:16
mlRe: Guidance for Cocoa's steep learning curve Jens Alfke May 15, 16:59
mlRe: Guidance for Cocoa's steep learning curve Scott Ribe May 15, 17:18
mlRe: Guidance for Cocoa's steep learning curve colo May 15, 17:21
mlRe: Guidance for Cocoa's steep learning curve Uli Kusterer May 15, 17:54
mlRe: Guidance for Cocoa's steep learning curve colo May 15, 18:03
mlRe: Guidance for Cocoa's steep learning curve Jens Alfke May 15, 21:06
mlRe: Guidance for Cocoa's steep learning curve Stefan Werner May 15, 21:17
mlRe: Guidance for Cocoa's steep learning curve Scott Ribe May 15, 21:53
mlRe: Guidance for Cocoa's steep learning curve Bruno Sanz Marino May 16, 00:39
mlRe: Guidance for Cocoa's steep learning curve mmalc crawford May 16, 02:03
mlRe: Guidance for Cocoa's steep learning curve Jens Alfke May 16, 03:06
mlRe: Guidance for Cocoa's steep learning curve Joseph Ayers May 16, 03:33
mlRe: Guidance for Cocoa's steep learning curve Jens Alfke May 16, 04:07
mlRe: Guidance for Cocoa's steep learning curve mmalc crawford May 16, 06:12
mlRe: Guidance for Cocoa's steep learning curve James Merkel May 16, 07:04
mlRe: Guidance for Cocoa's steep learning curve John Terranova May 16, 07:32
mlRe: Guidance for Cocoa's steep learning curve Ilan Volow May 16, 08:55
mlRE: Guidance for Cocoa's steep learning curve john darnell May 16, 15:30
mlRe: Guidance for Cocoa's steep learning curve Michael Ash May 16, 15:49
mlRe: Guidance for Cocoa's steep learning curve I. Savant May 16, 15:57
mlRE: Guidance for Cocoa's steep learning curve john darnell May 16, 16:19
mlRe: Guidance for Cocoa's steep learning curve I. Savant May 16, 16:27
mlRe: Guidance for Cocoa's steep learning curve Jeff LaMarche May 16, 16:29
mlRe: Guidance for Cocoa's steep learning curve Michael Ash May 16, 16:31
mlRe: Guidance for Cocoa's steep learning curve Jens Alfke May 16, 16:50
mlRE: Guidance for Cocoa's steep learning curve john darnell May 16, 16:57
mlRe: Guidance for Cocoa's steep learning curve I. Savant May 16, 17:04
mlRe: Guidance for Cocoa's steep learning curve Michael Vannorsdel May 16, 17:41
mlRe: Guidance for Cocoa's steep learning curve Andy Lee May 16, 20:05
mlRe: Guidance for Cocoa's steep learning curve Scott Ribe May 16, 20:22
mlRe: Guidance for Cocoa's steep learning curve Shawn Erickson May 16, 21:51
mlRe: Guidance for Cocoa's steep learning curve Michael Ash May 17, 08:56
mlRe: Guidance for Cocoa's steep learning curve Torsten Curdt May 17, 11:53
mlRe: Guidance for Cocoa's steep learning curve Michael Ash May 17, 12:02
mlRe: Guidance for Cocoa's steep learning curve Torsten Curdt May 17, 12:46
mlRE: Guidance for Cocoa's steep learning curve john darnell May 19, 15:26
mlRe: Guidance for Cocoa's steep learning curve David Casseres May 22, 05:59
mlRe: Guidance for Cocoa's steep learning curve David Casseres May 22, 06:12