Apple University Consortium
Python & Objective C Workshop

The Apple University Consortium is pleased to announce it is offering 16 Scholarships to the Python Objective C workshop to be held at the Clifton Training Centre in Sydney. Recipients will be eligible to attend the two day workshop, commencing on 3 May 2007.

The workshop is is designed to give those who attend a general understanding of the Python language with a focus on Mac OS X development. Students will learn the basics of programming in Python, designing tools and applications, using Python for web scripting, and how to leverage Python's powerful modules. In addition to this the workshop looks at how developers can leverage Cocoa and other Obj-C (Objective C) frameworks from inside pure Python applications by using PyObjC. Attendees will learn how to use these frameworks to create powerfull Mac OS X python script, which have Aqua based interfaces.

A maximum of 16 people can attend the workshop so seats will be allocated on a first come first served basis. The AUC strongly encourages students to attend.

What is Python and PyObjC?

Python is an open modern scripting language which is fully object oriented. Python is based on a clean simple syntax which is easy to learn and use. In addition to this it has a vast collection of modules to perform tasks related to web programming, systems administration, graphics and many more. For further information visit the Python Website.

Cocoa however is an object-oriented application environment designed specifically for developing Mac OS X-only native applications. Cocoa consists of a number of frameworks which provide various functionality e.g. networking, windowing and the likes.

Wouldn't it be nice if we could marry simple Python scripts with the functionality found in Cocoa frameworks? Wouldn't it be nice if we could give our Python scripts, Aqua style interfaces?

PyObjC is the answer to this. It allows you to exploit the powerful but simple programming language Python but interact with Cocoa frameworks. PyObjC is a bridge which is intended to be fully bidirectional, allowing the Python programmer to take full advantage of the power provided by various Objective-C based toolkits and the Objective-C programmer transparent access to Python based functionality

What will I learn?

The PyObjC workshop is designed for those who have never programmed in Python before but already have some programming experience with (preferably) C or Java. You will learn the basics, starting with the Python language and gradually work up over the two days to integrating Python programs with Cocoa frameworks using the PyObjC bridge.

A outline of the key topics discussed during the workshop is outlined below.

Day One

First day of the workshop is designed to give those who attend a general understanding of the Python language with a focus on Mac OS X development. Students will learn the basics of programming in Python, designing tools and applications, using Python for web scripting, and how to leverage Python's powerful modules.

  • Introduction to Python
    1. A general look at Python, what it is used for, etc.
  • The Python Interpreter & Tools on Mac OS X
    1. Installing the latest version of Python on Mac OS X,
    2. Using the Python Interpreter,
    3. Python source files (.py and .pyc),
    4. Using Xcode for development.
  • The Python Language
    1. General Syntax,
    2. Statements, Types & Operations,
    3. Functions & Modules,
    4. Exceptions,
    5. A look at some modules, such as pickle, regex, etc.
  • Classes and Object Orientated Programming
    1. Quick OO overview,
    2. Classes in Python.
  • Standalone Python Applications
    1. General design principles,
    2. Using py2app .
  • Web Development
    1. CGI modules,
    2. Running a program under Apache.

If there is additional time more advanced topics such as multithreading, parsing Python code, PIL, etc may be covered, as well as designing plugins for Python. A discussion of these topics will likely be included in the notes for students to work through outside the workshop if they wish. User interface development will not be covered in this workshop - this will be covered in Day 2.

Day Two

The second day is designed to give participants a grounding in PyObjC. Attendees will gain insight and experience on accessing Mac OS X's powerful Cocoa and other Objective C frameworks from inside pure Python applications by using PyObjC. Attendees will learn how to use these frameworks to create powerfull Mac OS X scripts and applications, as well as creating Aqua user interfaces.

  • Introduction to PyObjC
    1. Information about Python, PyObjC, what you can do.
  • PyObjC & Xcode
    1. Setting up PyObjC,
    2. PyObjC Project Templates,
    3. - Compiling & Debugging.
  • Syntax & Objective-C
    1. Differences in Python and ObjC Syntax,
    2. Common PyObjC syntax and statements.
  • Memory Management
    1. Allocating and Initialising (ObjC memory model),
    2. Cleaning up.
  • Using Obj-C Frameworks
    1. Examining Various frameworks,
    2. Understanding ObjC documentation for PyObjC use.
  • Designing Aqua User Interfaces
    1. Interface Builder,
    2. Working with Nib files.
  • Packaging & Distributing Applications
    1. Compiling with Xcode (release settings, Python library, etc)
    2. Making your Python Application more Mac like,
    3. Creating DMG files for deployment.

Who should attend?

The workshop is aimed specifically at students who study computing science, computer engineering, information technology, mathematics or related disciplines and/or have an interest in developing software for computers. The workshop is also aimed at staff of similar background and interests. It is expected that those who attend will have some computer programming experience using languages such as, but not limited to, Java and C++. It is not expected that students/staff have previous experience programming on the Mac OS X platform.

Scholarship & Registration

Each member University has one Scholarship to allocate to attend the workshop. Extra places may be available after the closing date.

The scholarship covers return economy airfares, accommodation for one night (two nights for WA, NT & FNQ attendees) for the duration of the event and notes/text books. Those who attend must however pay a registration fee of $50.00 (student) or $100.00 (staff) by 27 April to confirm attendance.

Registrations will be processed on a first come first served basis.

Accommodation & Travel

You will need to organise your own flights and accommodation to attend the event.
The AUC nor Apple Computer can assist with organising flights or accommodation.

Dates & Venue

The workshops will be held at Cliftons Training Centre in the Sydney Central Business District (CBD) on 3-4 May 2007.

Cliftons Training Centre
Level 2, 200 George Street
Sydney NSW 2000

Each session commences at 9:30am and will conclude at roughly 4:30pm.

Scholarship Subsidies

Accomodation

Recipients of the scholarship from eastern states (NSW, QLD, VIC, TAS) receive funding for duration of the workshop. Recipients from other states (NT, WA,SA) receive funding for an additional night to allow arrival the day before the Workshops commence.

Departure PointMaximum Accommodation Subsidy Claimable
Western Australia (PER), NT (DAR) & South Australia (ADL) (3 nights) $450
All Others (2 nights)$300

The above accommodation subsidy of $150 per night is based on budget accommodation in the Sydney CBD region. It is the responsibility of the individual to arrange accommodation. Tax Invoices should be kept to support your claim for funding.

Airfare

For recipients of the scholarship the AUC is offering to cover return economy airfares up to a maximum amount as detailed below. We encourage you to use discount airfares to keep your airfare under the maximum airfare claimable. Tax Invoices should be kept to support your claim for funding.

Departure PointMaximum Airfare Subsidy Claimable
Northern Territory (DAR) $600
Western Australia (PER) $640
South Australia (ADL) $470
New South Wales (BHS/ARM/WGA/LSY)$350
ACT (CNB) $350
Victoria (MEL) $350
Tasmania (HOB/LCN) $430
Queensland - Far North (TSV/ROK/CNS) $450
Queensland (BNE) $350

Registration

To take advantage of the AUC PyObjC Workshop Scholarship you must download the application form and return it to Andrew Jeffrey via email by 27 April 2007. You must get your local AUDF Co-ordinator to approve this before submitting it. Your participation will be guaranteed once the enrolment fee has been paid.

AUC_Python_ObjC_Application.doc AUC_Python_ObjC_Application.doc

If you have any questions regarding this program please call (02) 4221 5230 and speak with Andrew Jeffrey or email ajeffrey@asia.apple.com.

 


Upcoming Events