Bert Altenburg, author of AppleScript for Absolute Starters, in co-operation with Alex Clarke and Philippe Mougin, has released a book for newcomers to Cocoa programming using Objective-C and XCode.
This tutorial is written for non-programmers, and is aimed at levelling the learning curve as much as possible. In the best tradition, BecomeAnXcoder is released as a free booklet in pdf format under a CC Attribution license. It is also available online, simply follow the links below.
BecomeAnXcoder has been downloaded over 110,000 times since May 2006. If you’d like to help create a translation into French, Spanish, Italian or any other language, please contact me: alex at cocoalab dot com.
Please Note: BecomeAnXcoder Chinese, Arabic and Japanese were written for OS X 10.4 Tiger, so they currently contain outdated information. The English book has now been updated for Xcode 3 on OS X 10.5 Leopard.
The online version of the book is always the most up to date. Every so often I will condense all the changes to the English version from the online version and create a new pdf. The translations are maintained by independent volunteers and so may not be in sync with the current English version.
Online Translations
PDF Downloads
- NEW! Become An Xcoder (French) (2.5MB PDF file)
 - NEW! Become An Xcoder (German) (3MB PDF file)
 - Become An Xcoder (English – Leopard) (2MB PDF file)
 - Become An Xcoder (English – Tiger) (2MB PDF file)
 - Become An Xcoder (Japanese) (2.3MB PDF file)
 - Become An Xcoder (Simplified Chinese) (1.2MB PDF file)
 - Become An Xcoder (Traditional Chinese) (4.5MB PDF file)
 - Become An Xcoder (Arabic) (1.5MB PDF file)
 
English Leopard Online Book
- About
 - Introduction
 - 00: Before we start
 - 01: A Program Is a Series of Instructions
 - 02: No comment? Unacceptable!
 - 03: Functions
 - 04: Printing on screen
 - 05: Compiling and Running a Program
 - 06: Conditional Statements
 - 07: Repeating Statements for a While
 - 08: A Program With a GUI
 - 09: Finding Methods
 - 10: awakeFromNib
 - 11: Pointers
 - 12: Strings
 - 13: Arrays
 - 14: Accessors and properties
 - 15: Memory Management
 - 16: Sources of Information
 - License
 - Version