[Pythonmac-SIG] Python for OSX programming beginner?

Jason Petrone jpetrone@cnri.reston.va.us
Mon, 24 Mar 2003 11:16:26 -0500


On Mon, Mar 24, 2003 at 09:31:50AM +1100, Craig Morris wrote:
> However he finds C a little heavy going and really enjoyed REALbasic for 
> the demo period, but its a bit expensive to buy for a school kid who may 
> not choose to go very far with it.

When I was in elementary school it was a time where it wasn't unusual
for kids to program.  I mean, if you turned on the computers in our
classrooms, Apple IIs and Commodore PETs, you found yourself in a basic
interpreter.  It was hard not to get involved.

But now I'd imagine that is pretty rare.  It seems like the bar has been
raised with most programming languages to the point that it is out of
the reach of anyone under 14.

Python is the exception.

> The bundled ProjectBuilder and InterfaceBuilder stuff with Apple's OSX
> I just love, and its free ( the best gcc has ever looked), but he gets
> lost with the connections and the language and it would be enough to
> put him off for good.

Still, it is a bit much to swallow for someone new to programming.

> Is Python worth further investigating and how good are the IDEs?

I would recommend playing with the interpreter some.  Just like in apple
basic, you can type commands real-time and watch the results come back.
Obviously you can't write real programs this way, but its a fun way to
start.

As for full IDEs, there are many, but I'm not sure which will run on OSX
so I'll just name all that come to mind:
  IDLE, IDLEfork (these two will for sure)
  WingIDE, Komodo, BlackAdder
  

> Why learn Python rather than battle on and master C or more particularly 
> Objective C ?

I remember learning C as a joyless process, with lots of head
scratching, typing things in from a book and not understanding why the
*'s and &'s were where they were.  I remember debugging segfaults and
memory leaks by hand for years before I learned about malloc debuggers

Learning python first would certainly help when moving on to C.  

> Rather difficult to answer, but how different is the learning curve?

Python has a much lower learning curve than C or Objective C, primarily
because there are fewer rules to follow.  Python strives for consistency
and simplicity, sometimes at the expense of expressiveness and
performance.  


jason