Re: How hard is it to learn Cocoa - Survey ?
Re: How hard is it to learn Cocoa - Survey ?
- Subject: Re: How hard is it to learn Cocoa - Survey ?
- From: Paul Sargent <email@hidden>
- Date: Tue, 27 May 2008 09:55:36 +0100
On 25 May 2008, at 21:18, Erik Buck wrote:
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 ?
Hi Erik,
I bought my first Mac back in 2003 (G4 iBook. Wow, was that really
nearly 5 years ago?!), coming from using a lot of Linux/Unix. At that
time I started looking at programming Cocoa, but it's never been a
real "endeavour" for me (Day job is silicon design). So I'd say if
I've probably spent 6 months over that time actually working on stuff.
I'm now getting to the point where I don't know the class library well
enough to work without documentation, but the concepts are solid.
In essence slow, but steady.
Two key points on my path to Cocoa enlightenment:
1) I came from a long stream of procedural programming, starting way
back on the Apple ][ with Basic, going through forth, pascal, 68000
assembler, C, perl, python and others. Along the way I've used C++ and
Java, but OO has always been what I like to now term as the "C++ OO"
style as opposed to "Smalltalk OO" style(*).
It took me a long time to realise this wasn't just a new language, but
a new way of designing applications. This isn't just MVC (a relatively
simple concept), but more how to architect problems into objects. To
restate in broader terms, it's not the design patterns, but knowing
when to use the patterns. I think that comes with time playing with
things, and is a difficult thing to impart knowledge on.
(*) These terms have nothing really to do with the languages, but what
I've tended to see as a style of code when reading those languages.
2) I got very frustrated with it a year ago. I done the O'reilly book.
I'd done Hillegas. I'd done various apple tutorials. I could design
UIs, I could put actions behind buttons, data behind views, but I
didn't feel I could take that knowledge and build a real app. It was
too big a jump.
All the things I'd worked through seemed to write applications
starting with the UI (in MVC terms, the view) and fleshing out
functionality from there. I've never liked this way of programming as
it feels like I'm building a house from the roof down. I like the data
structures (the models) to be my foundation. Get those right and the
rest falls into place.
What I couldn't find, and what was making me angry was worked examples
on the Foundation (and other low lying) frameworks. Looking back I'm
not sure that makes sense, but there was a hole I couldn't fill.
What I did in the end was join ADC as a select member. I have to say I
was disappointed with what I received for the money (Betas I
personally didn't need, and the same documentation I can download
anyway), but going through and watching the WWDC fundamentals
presentations got me over the hump. It's a shame you have to pay to
get these videos, but for me they did the trick. To me, the
fundamentals videos should be available to everyone.
I'm no longer a member (expired last month), but I've made sure I've
kept hold of the videos (most from 2004/5) as reference. So much of
the docs seems to want to sell the great new shiny technology (e.g.
bindings, properties, GC), but not having that fundamental foundation
to work on just means it confusing those coming to it new.
Hope somebody finds that interesting.
Paul
_______________________________________________
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