/presentations+sessions/Note that all sessions are subject to change and final confirmation with the presenters. Sessions may be withdrawn or changed without notice. Some sessions may be added, changed or modified to include updated content. /dev/world will feature a number of Feature Presentations and Stream Sessions. Feature Presentations
Firemint - Developing for success on the iPhone
Firemint is a game development studio in Melbourne, Australia. They work with publishers as well as creating our own original titles such as Flight Control and Real Racing for the iPhone. Rob Murray the CEO of Firemint will outline their method for success in the iPhone and mobile games market. Apple Developer Update, Apple Inc.
More details to come. Stream Sessions
Track 1 -Tools & TechnologiesDeveloping Interface Builder Plug-ins Jon Manning, University of Tasmania Mac OS X provides a lot of useful and well established views and controls, however sometimes you may need to extend this functionality with a custom view. The problem with this is that you often can't see how it looks or set properties of your custom view. This session shows developers how to create Interface Builder plugins, when it's worth doing, how it can solve these problems and the time and code savings that doing so can allow. Rapid Web Development for Safari Ian MacColl, QUT
Dashcode and Safari provide a powerful set of tools for developing web applications. This session gives an overview of the tools and technologies available for building web applications for Safari. Learn how to tweak your web application for mobile users and how to add advanced iPhone features. Discover the tools available in Safari for working with HTML, CSS and Javascript for editing, debugging and performance. Next Generation HTML and CSS on Safari Ian MacColl, QUT Safari provides a leading edge web experience by supporting much of the next major revision to HTML alongside proposed extensions to CSS and HTTP. This session gives an overview of support in Safari for HTML5, CSS effects and HTTP Live Streaming. Learn about the rich-media capabilities of HTML5, such as, drawing, media playback and offline storage. See how to produce effects such as transitions, transforms and animations using just CSS. Discover how to use a standard HTTP server to provide live or on-demand video. Find out how to use these technologies in Safari and also stay compatible with other browsers. Cocoa Programming with PythonJames Bekkema, Charles Sturt University Learn how to build Cocoa applications in Python for Leopard & Snow Leopard. This session will introduce writing Cocoa-Python applications using Xcode and Interface Builder, demonstrate the power and features of Cocoa-Python, and cover advanced tips-and-tricks associated with Cocoa development in Python. Attendees will also learn how Python can be used to expand their existing Obj-C applications, and how Python-Cocoa can be used to develop impressive web applications. Impromptu Workshop: Live Music and Visuals on OS X Ben Swift, ANU Impromptu is a free, Scheme-based software environment for coding live music and visuals on OS X. In this workshop you'll learn how to get started with Impromptu, including the basics of the Scheme programming language, and start using Impromptu to make all sorts of cool noises. Bring along a laptop and a pair of headphones for a hands on exploration of live coding using Impromptu. No expertise in either Scheme programming or music is required. Copies of the software will be available at the workshop, but if you want to install Imromptu ahead of time, go to impromptu.moso.com.au. Planting an Orchard Mark Bate, Monash University Computational biology research such as bioinformatics, molecular dynamics and drug design often require the running of many variants of CPU-intensive simulations, each of which may take months to compute. At Monash University we have been experimenting with distributing our computational load across many grids and clusters, from Xgrids in our lab, to multi-institutional clusters around the globe. We have also recently purchased our own Apple Xserve cluster, "Orchard", which at 100x 8-core Xserves, is the largest Apple cluster in the Southern Hemisphere and will be used exclusively to aid high-performance computational biology at Monash. This session will cover our experiences in migrating from traditional desktop computing to grid and cluster based computing, as well as explain how we've developed some of our grid-based applications. Massively Parallel Computing with OpenCL Josh Deprez, University of Tasmania
OpenGL shaders are nice, but for the job of running serious code, it is a silly hack to use them. It isn't keen to introduce dependencies on some proprietary framework for doing massively-parallel computation either. OpenCL is a new open standard for running code on more things than just your CPU, with an implementation provided by Apple in Snow Leopard. See a demonstration and learn about coding with OpenCL kernels, the common pitfalls with using your GPU for computing, and catch some platform-specific tips for optimising your kernels. Managing multiple languages in your app: why and how Chris Neugebauer, University of Tasmania
We all know that Objective-C is the primary language for writing apps for the Mac, but it's not the only language with first-class Cocoa development status — Ruby and Python also share that distinction. Each of these three Cocoa languages have their own distinct strengths and weaknesses to be exploited, along with a rich set of libraries from outside of the Mac world, waiting to be harnessed by Cocoa. This talk develops the skills you need to integrate a second language into your Objective-C codebase; we'll begin by discussing the differences between the three Cocoa languages, and identifying cases where your task may be better-suited to Python or Ruby; this is followed by integrating external Python/Ruby libraries into Cocoa, frying ducks, and developing original Python or Ruby code to accompany your Objective-C codebase. We'll also touch on juggling the different coding standards that Python and Ruby languages prefer in a single project. Using XML for dynamic application configurationKyle Butress, Griffith University A requirement of a recent Mobility Project at Griffith University was for an iPhone application to have dynamic configuration, where on startup the application would attempt to download a configuration file specific to the user and location. It was decided to use XML based files on an internal server that could be synced by the device for this purpose. This talk looks at what was learned during the project about using XML as a basis for application configuration. You will be shown how to import and export XML files and feeds from external websites, and use this information to change and update aspects of your application. Changes to the XML from the user can be synced to the original source for later reference. Comparisons of XMLParser, and third party XML parsers will be discussed along with using JSON for the same purpose.
Grand Central Dispatch - Multicore programming made easy Carlos Alexandre Queiro, RMIT University The race for clock speed is over. All Macs are now equipped with multi-core processors, but applications need to be adapted to get the most out of these new processors. Traditionally, developers have had to consider threads, locks, semaphores, concurrency and so on if they want to improve the performance of their applications running on these processors. The advent of multicore architectures has brought parallel programming to the masses, along with all the issues it may have. GCD (Grand Central Dispatch), being introduced as part of Snow Leopard, aims to make programming for multi-core machines easier. GCD provides a simple and efficient API to achieve parallelism and consequently take advantage of the multiple processing units. This presentation will introduce the basic concepts of GCD in a step-by-step manner, and explore basic problems and how to parallelise them using GCD.
Track 2 - Graphics & Polishing Your App
Introduction to the Unity 3D Game Engine Jon Manning, University of Tasmania
OSX Game development has taken an exciting turn lately, it used to be you would have to wait years for an OSX port and that was only if you're lucky. Now independent game developers are flooding to an exciting new development platform that allows developers and designers to quickly create games in a visual and very Mac centric IDE called Unity. This session introduces Unity, and takes the user through the process of creating a simple side scrolling game on OSX with Unity using next-gen graphics and technologies. OpenGL Basics for OS X Andrew Bennett, University of Tasmania
In this session, attendees will learn about OpenGL, the powerful 3D rendering library at the heart of Mac OS X. This session will cover what OpenGL actually is, it is aimed at novice developers and build a foundation of basic 3D concepts, and show how to embed 3D views into pure Cocoa applications. The session will then cover some of the difference between OpenGL and Core Graphics, and demonstrate situations where one is preferred over the other. OpenGL Optimisation for OS XAndrew Bennett, University of Tasmania This session is aimed at people who have a passing familiarity with OpenGL, it will cover advanced OpenGL concepts like Vertex Buffers, Frame Buffers, Vertex and Fragment Shaders. Then it will show how things like these and the tools that MacOSX provides can be used to optimise and enhance your applications. Porting from Direct X to OpenGLDavid Winder, Charles Sturt University
Direct X is a technology for handling multimedia, including video, graphics and sound on Microsoft platforms. In order to port DirectX programs to iPhone and Macintosh, developers need to rewrite parts of their application to use OpenGL. This introductory talk will highlight the differences between the DirectX and OpenGL, and demonstrate basic porting with a series of examples. The concepts that will be covered include texture loading and display, and an example of using the matrix stack to view a 3D world. Quartz Composer for ProgrammersLuke Toop, University of Adelaide Quartz Composer is a developer tool that can quickly add image and video processing to your application. This talk will explain the modular video synthesis interface building basic QC compositions, using QC compositions in InterfaceBuilder/Xcode and in CLI tools building intermediate QC compositions. Shiny Automagic Updates and More with SparkleJosh Deprez, University of Tasmania
We all wish our apps would have a shiny magic update mechanism as slick as Apple's own Software Update. Now you can, with minimal fuss! This session is about the open-source Sparkle framework and how to add it to an existing application. In addition, there will be tips for setting up and maintaining appcast feeds, customisation and tweaking using settings and code, securing updates with signing, and collecting anonymous system statistics from your users.
When It's Done Paris Buttfield-Addisson, University of Tasmania This session will cover all the basics of shipping a commercial product on the Apple platforms. Participants will learn how to start promoting their products, how to build a community around their products and how to handle the business issues of having a software product in the real world. It will form a great primer for those interested in starting their own business, those that already have, or anyone who wants to get a perspective on what it's like to create software for "the real world".
Pimp My App Paris Buttfield-Addisson, University of TasmaniaWhat makes an application stand out? How can you discipline your application's feature list? How can you save time without cutting corners? Learn how not to annoy your users and how to avoid the common mistakes. This session takes you from zero to hero and shows you have to make the best application you can. Track 3 - iPhone DevelopmentHello iPhone: Ground Zero for Developing Applications on iPhone and iPod TouchNic Circosta & Brock Woolf, Murdoch University The first hour of this double session is an introduction to the iPhone developer tools, Objective-C programming language constructs and iPhone frameworks that are essential for developing an iPhone application. You will learn the basics of using the Xcode Compiler/IDE and Interface Builder which is essential for designing your application's user interface. In this session you will discover the importance of the delegate pattern, memory management and the MVC paradigm. Cocoa fundamentals which include commonly used classes for creating your graphical interface and data structures for storing data and application state will also be covered in this session. The second hour introduces View Controllers for creating multi-view applications. You will also learn how to use the Cocoa touch framework for touch user input gestures, such as touching, dragging and cancelling touch input. iPhone Pushing Forward: Advanced Tools to Build a Solid iPhone Application Nic Circosta & Brock Woolf, Murdoch UniversityThe first hour of this double session looks into the more advanced features of iPhone OS including Graphics & Media. Attendees will also be introduced to a variety of archiving methods available on iPhone OS as well as new and exciting features of OS 3.0.Targeted at advanced users, a variety of performance tools will be demonstrated to show you how to get the most out of your application. The second part of this presentation will introduce the Application store submission process - essentially a work flow including how to remotely test & debug as well as how to preparing the final binary and submit to Apple.
|
Upcoming Events
- Wed, March 31, 2010
WWDC 2010 Scholarships - Applications Close
- Wed, March 31, 2010
Student Developer Scholarships - Applications Close
- Wed, April 7, 2010
iPhone SDK Workshop - Perth
- Mon, April 19, 2010
WWDC 2010 Scholarships - Winners Announced
- Mon, April 19, 2010
Student Developer Scholarships - Winners Announced
- Fri, May 14, 2010
WWDC 2010 Scholarships - Accommodation Closes
- Tue, May 18, 2010
Unity Workshop - Melbourne
- Thu, May 27, 2010
Unity Workshop - Brisbane
- Mon, June 7, 2010
WWDC 2010
- Wed, July 7, 2010
X World 2010
Fri 05 Mar 2010 07:49 pm UTC
|