Skip navigation.
 
mlHow hard is it to learn Cocoa - Survey ?
FROM : Erik Buck
DATE : Sun May 25 22:18:05 2008

I have been working with Cocoa and its predecessors for so long that I 
can't remember how long it took me to learn to use the frameworks. 
One of my first non-trivial NeXTstep applications was a Tetris game. 
It was about 1989 or early 1990 when a friend was admiring my NeXT 
cube.  She asked if there was a Tetris game, and when I said there 
wasn't, she said, well what kind of computer doesn't have Tetris?  It 
must be useless.

I spent two days with little sleep - maybe 40 hours straight- and 
coded up a Tetris game.  Of course, it was 2 bit gray scale, but it 
had synthesized "stringed instrument" background music, and you could 
supply your own images to be used as backgrounds.  In fact, every user 
could have different background images.  My friend said she wasn't 
impressed, but she spent about two hundred hours playing the game that 
summer.  She asked me to enhance the game so that the music tempo 
increased with the game level and sliding or rotating blocks had their 
own sound effects that were mixed with the background music.  Stacking 
up blocks transposed the music to different keys.  At first she played 
the game to get the highest score in our social circle.  Later she 
played the game to see what kind of cool "music" she could produce. 
NeXT's DSP was was very cool, and the examples I used to get started 
later became MusicKit (I think).  I never was able to digitally record 
her music in real time  though...

So, anyway, I implemented lots of student projects with Objective-C 
and the NeXT.  I wrote a recursive descent parser for my compilers 
class.  There was a separate class for each scan-able token.  A class 
method +newWithPartialString:(const char*) nextPosition:(int 
*)nextIndexPtr  returned an instance of whatever token subclass could 
make the longest match.  Then each token know about the previous and 
next tokens and contained the applicable grammar rules to identify 
syntax errors along the lines of "I am not allowed to follow my 
predecessor so there is a syntax error at my position..."  My 
professor thought it was really nifty.  Everybody else in the class 
used Pascal or Ada to implement their parsers as direct copies of the 
textbook examples.

By the time graduated in December 1991, I was thoroughly familiar and 
comfortable with most NeXT APIs including the Unix layer and Display 
Postscript.  I would say I went from newbie to advanced in about two 
years or maybe a little less while working and attending school full 
time.  I used Interface Builder and File's Owner and First Responder 
and targets and actions  and delegates.  Since then I have been along 
for the ride with the separation of FoundationKit, DBKit, EOF, 3DKit, 
NeXTtime, MusicKit, Renderman, the transition to Openstep, the years 
in the wilderness with Apple... Of course, there is a lot more to 
learn now, or is there really?



So this is a survey:
For those who consider themselves intermediate to advanced Cocoa 
programmers, how long was the journey from newbie to competent and 
from competent to advanced ?  What percentage of your time did you 
dedicate over how many months ?

Maybe we can establish a standard distribution of learning time 
required.  Just having a basis to set expectations might help future 
newbies.

Related mailsAuthorDate
mlHow hard is it to learn Cocoa - Survey ? Erik Buck May 25, 22:18
mlRe: How hard is it to learn Cocoa - Survey ? Greg Titus May 26, 00:46
mlRe: How hard is it to learn Cocoa - Survey ? John C. Randolph May 26, 12:11
mlRe: How hard is it to learn Cocoa - Survey ? Jens Alfke May 26, 19:02
mlRe: How hard is it to learn Cocoa - Survey ? Sherman Pendley May 26, 19:21
mlRe: How hard is it to learn Cocoa - Survey ? Andrew Merenbach May 26, 19:57
mlRe: How hard is it to learn Cocoa - Survey ? Gregory Weston May 26, 21:55
mlRe: How hard is it to learn Cocoa - Survey ? James Merkel May 26, 23:22
mlre: How hard is it to learn Cocoa - Survey ? John Joyce May 27, 03:28
mlRe: How hard is it to learn Cocoa - Survey ? Paul Sargent May 27, 10:55
mlRe: How hard is it to learn Cocoa - Survey ? Fritz Anderson May 27, 19:12
mlRe: How hard is it to learn Cocoa - Survey ? Georg Tuparev Jun 14, 06:41