With each release Mac OS X delivers additional opportunities for developers. This session introduces Mac OS X's latest capabilities and highlights key features and changes in the Cocoa and Carbon frameworks.
Macintosh users want applications to have the consistency, intuitive design, and ease of use that is characteristic of the Macintosh. This session teaches the basic human interface design principles that make the Macintosh what it is. Learn to implement Modelessness, Direct Manipulation, User Control, Forgiveness, Feedback and Dialog, and other interface design principles to create applications that users find intuitive, friendly, elegant, and powerful.
Speakers: Stan Taylor, Robert Kondrk, John Geleynse
Your users expect their applications to behave and feel as if they belong on Mac OS X. Paying attention to user experience related details, mimicking common behaviors, and adopting the new appearance and layout guidelines for Mac OS X helps you deliver an application which meets these expectations. Learn how to adopt Aqua and avoid common errors and oversights.
Speakers: John Geleynse, Greg Dow, Stuart DeSpain, Ivor Clarke
In this virtual grab bag of topics developers gain valuable insight on why, when, and how to create a Mac OS X screen saver or System Preferences pane. We'll also learn how to leverage new Disk image capabilities and the Mac OS X Installer.
Speakers: John Geleynse, Mike Trent, Robert Bowers, Maxym Runov, Grace Kvamme, Jean-Pierre Ciudad
New for the next release of Mac OS X! Want to be a recording artist? Learn how to integrate disc recording capabilities and burn CDs and DVDs directly from your application, using the same APIs that iTunes uses. This session explains the overall architecture of DiscRecording and then goes in-depth on the Core Burn Engine, Content APIs, and DiscRecording UI.
Apple is committed to making Mac OS X accessible to all users. This session highlights the latest developments in Mac OS X, including the new Accessibility APIs. Special attention will be given to the Section 508 requirements.
Every version of Mac OS X ships in multiple languages, creating immediate global delivery of exciting new features and functionality. This session explains how developers can use the very same localization technologies and tools to quickly and efficiently deliver their products to lucrative international markets.
This session provides an overview of the Mac OS X Address Book APIs and details how to take advantage of them to handle contacts for your application. Learn how to leverage this framework within your application to save substantial development time and effort, and deliver a more consistent user experience throughout Mac OS X.
This session is an in-depth look at Speech Recognition and Synthesis (Text to Speech), offering high quality and natural sound. Speech-enabled applications offer many benefits to Mac users, especially those with accessibility needs. Learn what you get for free with your Mac OS X applications and what you need to do to deliver the Speech experience for your customers.
Darwin is the powerful, open source foundation of Mac OS X. Based on BSD UNIX, Darwin is a robust technology engineered for stability, flexibility, and performance. Introducing each of Darwin's components and the services they provide, this session provides the perfect prelude to Mac OS X Kernel, Networking, IOKit, and other Darwin sessions.
FireWire, the industry-standard interface for digital video cameras and high-performance peripherals, is standard on all Mac systems. In this overview, developers learn how to support this revolutionary technology to provide customers with unmatched peripheral performance, reliability, and simplicity. FireWire futures, including 1394b and protocols such as FireWire Audio (61883) and IP over FireWire, are also covered.
Apple offers supercomputing performance to both consumers and professionals in its entire line of desktop computers with Velocity Engine and the PowerPC G4 processor. Processor-bound operations such as memory copies, string compares, and page clears can be offloaded to the vector engines of the G4. This session provides an overview of the Velocity Engine vector libraries, including recently optimized double-precision FFTs, MDCT, and BLAST. Apple's numerics engineers will discuss techniques for general vectorization and for identifying code that can be vectorized.
Speakers: Ali Sazegari, Ralph Brunner, Robert Murley, Bill Kincaid, Nathan Slingerland, Sanjay Patel
In 1998, Apple became the first major computer company to make open source development a fundamental part of its software strategy. This session provides the 2002 update on Apple's open source projects and infrastructure. Meet Apple's open source team and learn how you can get involved with Darwin, Darwin Streaming Server, OpenPlay, CDSA, and other open source initiatives.
Speakers: Brett Halle, Jordan Hubbard, Richard Blanchard, David O'Rourke, Chris LeCroy, Ed Peterlin, Lane Roathe
Are you comfortable with 'grep' and 'sed', but still unsure of the difference between Cocoa and Aqua? This session provides a roadmap and glossary for orienting UNIX users and developers to Mac OS X technologies. Mac OS X's history and terminology are covered and its UNIX analogues are identified to help accelerate your learning and maximize your conference experience.
Want your UNIX application to reach a whole new set of customers? This session covers the foundation of how to port your UNIX app to Mac OS X. Developers get specific guidance on what to do, the tools that are available, and helpful porting tips and techniques.
After ten years, it's time to make waves with AppleScript. The features that you've been waiting for are finally about to happen: a new plug-in architecture to replace OSAXen, support for scriptable application plug-ins, and all-Unicode parser, an XML-based replacement for terminology resources, and an easy-to-use replacement for the ObjectSupportLib. Whether you're writing scriptable applications or are just a novice scripter, don't miss this session.
At the core of Mac OS X is the Darwin Kernel, which provides basic services such as threads, scheduling, real-time support, synchronization, address space management, timers, and virtual memory. This session covers kernel services for both application and kernel extension developers.
Kernel Extensions (Kexts) are dynamically-loaded bundles that extend the functionality of the Darwin kernel. This session covers many aspects of working with Kexts, including appropriate usage of Kexts and how to avoid common problems. The anatomy of a Kext, preparing a Kext for deployment, and Kext loading and unloading is discussed.
The Common UNIX Printing System (CUPS), the popular UNIX printing solution, is coming to Darwin. This session covers the design, implementation and capabilities of CUPS. Developers will learn how to use CUPS to enhance the printing capabilities of Darwin applications. Presented by CUPS architect Michael R. Sweet.
Authorization Services facilitate access control to restricted areas of the operating system, allowing developers to restrict access by a principal to particular functionality in an application. This session explores how Authorization Services are used in applications that call system tools, software that restricts access to its own tools, and software installers that install privileged tools or require access to restricted areas of the operating system.
Mac OS X supports an ATA or SCSI device with a stack of drivers that manage the services used by the system from the device. This technology also provides applications with access to specific device functionality based on the peripheral type of the device. This session covers how applications can access the functionality provided by such devices through the use of file systems, BSD nodes, IORegistry, and both system and custom user clients. Partition schemes and filters are also discussed.
Speakers: Tim McLeod, Craig Marciniak, Dan Preston, Chris Sarcone
Learn how to leverage Mac OS X's threading architecture with single and multiprocessor hardware to significantly boost the performance and responsiveness of your application. This session covers the different threading models in Carbon, Cocoa, and BSD and discusses guidelines for determining which threading APIs to use for maximum benefit.
The foundation of the security architecture of Mac OS X is the Common Data Security Architecture (CDSA). This session outlines the components of CDSA and provides examples of how to use them to add security to your applications. Services built on top of CDSA, including SecureTransport, which allows SSL and TLS on top of CDSA, are also discussed.
The Apple CDSA framework contains libraries that allow the interpretation of X.509 certificates. This session introduces new programming interfaces for using and managing X.509 certificates and provides examples of common ways to use these new APIs to provide additional value to your customers.
Speakers: Ken McLeod, Perry "the Cynic" Kiehtreiber
An in-depth look at how FireWire, the Emmy award-winning industry standard interface, works on Mac OS X. This session explains how the FireWire software stack is deployed and provides details regarding kernel and user space drivers. Make sure your products get the best possible performance with the SCSITaskUserClient, SBP-2, Isoch, digital video and Mac OS X drivers.
Learn about the latest tools for developing both USB user space and USB kernel model drivers for Mac OS X. Discover how to access USB devices from applications, how to create USB kernel extensions, and how driver-matching works for USB kernel extensions. Kernel and user space debugging techniques for USB drivers in Mac OS X are also presented.
Speakers: Rhoads Hollowell, Fernando Urbina, Nima Parivar
What's larger than a breadbox and has an airplane, a snowman, and two smiley faces? It's Unicode, an international character set standard that can represent most of the world's languages. Unicode is central to Apple's operating system strategy and should be central to your application strategy as well. In this session, developers learn how to create a Unicode-savvy application, providing better support for such heavily used languages as Japanese.
The Font Manager for Mac OS X makes it easy to support an extensive range of font technologies and data formats. This session is essential for developers of advanced applications who need to manage fonts and/or directly access font data. Learn about the font formats supported in Mac OS X, how to create and manage a font menu, how to get the font panel into a Carbon application, and much more.
Apple Type Services for Unicode Imaging (ATSUI) enables the rendering of Unicode-encoded text wit advanced typographic features. This session explains the concepts behind ATSUI, explores its performance, and discusses new additions to the current ATSUI API set.
The Carbon Event model is a simple, flexible, and efficient model for handling events in Mac OS X. This session provides developers with step-by-step instructions for migrating WaitNextEvent-based applications to the new Carbon Event model.
This session provides an overview of the High Level Toolbox architecture, including a focus on Apple's new foundation for building user interface objects. A brief overview of several new technologies in progress and how they integrate with one another will also be presented.
This session covers the new composing model of the Control Manager, which provides a fast, flexible view system and even eliminates the need for WDEFs. Learn how you can take advantage of this new model, including writing your own custom views.
This session features a variety of upcoming features in the High Level Toolbox that will help Carbon developers deliver the best possible Aqua experience in their applications. Discusses how to improve applications with the combo box control, the toolbar control, services, drawers, and keyboard focus.
Learn how to take full advantage of Carbon events to improve your application performance. This session covers Carbon events-based alternatives to common Mac OS 9 programming practices that will deliver improved performance on Mac OS X. Developers will also learn how to replace their pooling and tracking code with Carbon events to maximize performance.
Learn about the Multilingual Text Engine (MLTE), Apple's full-featured API for creating and editing Unicode text documents. MLTE is the modern replacement to TextEdit. This session covers the benefits of MLTE for developers and discusses such new features as URL support and the new scrolling APIs.
This session teaches developers how to make their Carbon applications accessible, covering the standard accessibility features found in HIToolbox controls, windows, and menus. Developers also learn how to override and augment the standard functionality to make custom controls and frameworks available to the new Accessibility APIs.
Cocoa provides powerful object-oriented APIs for creating full-featured, next-generation desktop applications for Mac OS X. The Cocoa APIs include low-level utility, system interaction, internationalization, Internet, and platform-independence classes, as well as a rich set of user-interface widgets. In this introductory session, you'll get an overview and hands-on demonstration of the Cocoa features, APIs, and tools.
Speakers: Heather Hickman, Matt Henderson, Mike Ferris, Freddie Geier, Adrian Baerlocher, Matt Formica, Matt Rollefson
This session provides an overview of new features and changes introduced in the Cocoa frameworks. Topics include enhancements to archiving, accessibility, text, localization, scripting, user interface, and Carbon/Cocoa interaction.
Armed with supporting demos and code, this session covers a variety of API topics and techniques to help you better understand and leverage Cocoa. Topics include API conventions, techniques for extending Cocoa objects, class clusters, exceptions, plug-ins, and API performance and thread safety. This talk is aimed at both new and intermediate Cocoa developers.
Cocoa includes built-in AppleScript support designed to make it easy to create scriptable applications. Learn about the powerful Cocoa scripting architecture and upcoming Cocoa enhancements, as well as specific techniques that make it easier than ever for developers to deliver applications with complete, robust scripting support. This session is aimed at both beginning and experienced Cocoa developers. Familiarity with AppleScript is recommended.
In Cocoa, the term "control" refers to a wide range of user-interaction objects, from simple buttons and sliders to sophisticated elements such as tables and column browsers. This session presents the control classes in Cocoa and discusses how to use and extend them. Accessibility topics, such as making keyboard-navigable controls and dialogs and ensuring that your applications follow Apple's accessibility guidelines, are also covered.
Cocoa makes it easy to handle a broad range of common 2D rendering tasks and in many cases handles its interaction with Quartz transparently. This session describes how to use classes such as NSImage, NSBezierPath, and NSAffineTransform to draw lines and curves, fill shapes, and perform common graphic transformations such as scaling and rotating.
Cocoa provides a sophisticated and comprehensive text system for entering, editing, and drawing text in multiple scripts. It includes advanced typography features and support for a variety of text services, such as spell checking. Using demos and examples, this session presents an overview of text concepts, the Cocoa text system architecture, and additional text-related services and classes, including those added in the past year. This session information is aimed at both beginning and experienced Cocoa developers.
Every copy of Mac OS X includes Java 2 Standard Edition, making Mac OS X the ideal platform for developing and deploying Java 2 applications. This session covers Apple's roadmap for delivering the latest and greatest advances with the J2SE platform.
Speakers: Ted Goldstein, Alan Samuel, Deven Poolman, Pete Deemer, Jared Kaplan, Sean Allen, Toni Trujillo-Vian, Andreas Wendker, James Gosling
This session introduces the Java2D APIs as they relate to Quartz in Mac OS X. The unique features of Java2D in Mac OS X as well as performance tuning are discussed.
This session presents an overview of the features and benefits of the Java 2 Standard edition platform as it applies to Mac OS X. It includes a discussion of J2SE features that are available on all releases of Mac OS X and is focused on the features and services standard to all J2SE cross-platform implementations.
Speakers: Scott Adler, Tyler Stone, Bodhi Gerfen, Victor Hernandez
The session covers Java as it relates to the various browsers, including the browser-embedding APIS, the Java plug-in, Java WebStart, Java security, and other new additions. Learn about the latest features added to these deployment technologies and find out which of these technologies will work best for your Mac OS X Java applications.
Common development and deployment tips and techniques are featured in this session designed to help developers deliver Java applications that look and feel like native Mac OS X applications. Bundling suggestions, use of runtime properties, best UI practices, and accessing native libraries are discussed.
This session focuses on the web service available in Mac OS X with standard Java extensions and open source Java software. Learn how to use these technologies to get to web services rather than publish them. Topics include UDDI, SOAP Axis, and XML parser libraries from Apache.
This session presents the performance opportunities available with J2SE. Topics include optimization for file handling, drawing, compiler usage, and faster debugging. Learn what should and should not be done to ensure the best performance of Java applications.
QuickTime for Java provides a set of cross-platform APIs that allows Java developers to build multimedia, including streaming audio and video, into their applications and applets. This session provides a technology overview of QuickTime for Java and covers new features available with the latest release. Common programming issues, installation, and how to write more efficient code using the QTJava APIs will be discussed. Highlights include the introduction of several new APIs and a discussion of new QuickTime 6-based features.
This overview of the exceptional 2D and 3D graphics technologies in Mac OS X provides an introduction to other graphics and imaging sessions. Find out the latest information on Quartz 2D, OpenGL, ColorSync, printing, and Image Capture, as well as the latest Quartz Compositor developments.
Quartz 2D creates the visually rich, anti-aliased, and semi-transparent graphics of Mac OS X. This session illustrates how developers can integrate the full power of the Quartz 2D graphics system into their Mac OS X applications. The focus is on important Quartz 2D features such as device/resolution independent rendering, advanced drawing model, transformations, and support for PDF.
Mac OS X delivers system-level support for a comprehensive set of professional-grade audio and MIDI services. This session provides an overview of the APIs and services in Core Audio and MIDI in Mac OS X. Topics include AUGraph and Sequencing services, as well as AudioUnits and the AudioConverter services.
The Mac OS X Quartz Compositor seamlessly integrates 2D, 3D, and multimedia content on-screen. This session details the Quartz Compositor's design and capabilities. Special attention is focused on how developers can easily build new classes of interactive applications by leveraging the Quartz Compositor.
Speakers: Peter Graffagnino, Ralph Brunner, Ken Dyke
This session focuses on apple's implementation of vertex and pixel programs for Mac OS X. Learn how to use specially developed OpenGL Profiler and Shader Builder tools for hardware programming, previewing and debugging. Developers will gain a thorough understanding of OpenGL techniques and explore the power of hardware programs on Mac OS X.
This session takes a close look at using the ultra-high performance 3D graphics pipeline in the traditional world of 2D and 2.5D graphics. Developers will get a thorough understanding of the design and construction of optimized image display, sprites, integrating QuickTime, OpenGL, and live scrolling engines using the OpenGL API.
This session covers advanced techniques for integrating OpenGL with other graphics subsystems in Mac OS X. Topics include high-performance integration of Quartz and QuickTime content with OpenGL rendering, with emphasis on real-time image and effects processing, including fading, masking and color correction in hardware. Developers will learn how to use these techniques to build a custom compositor.
This session covers the fundamentals of the audio and MIDI architecture, where the important actions of getting the data in and out of the system take place. Threading priorities are detailed along with more complex systemic interactions to ensure the sound you create is the sound your customer hears.
This session features Audio Units and Audio Codecs, component types used by the AudioConverter API to process audio data and convert audio formats. These two extension formats are covered in detail, including how Audio Units and Audio Converter are used, how to address UI and control issues, and how developers can write their own extensions.
ColorSync is no longer just for still images. The tight integration of ColorSync into the Mac OS X graphics architecture provides easy access to color management for a variety of digital media workflows. This session focuses on strategies for matching non-print media and covers the latest ColorSync developments.
Apple continues to enhance Mac OS X printing with exciting new features. This session is a comprehensive update on its new features and capabilities. Highlights include the integration of the Mac OS X printing architecture and the Common UNIX Printing System (CUPS). The latest printing UI enhancements and changes to the printing APIs are also discussed.
Delivering the best gaming experience requires careful optimization of the underlying platform. This session discusses key technologies in Mac OS X including the Carbon API, event loops, Carbon events for mouse and keyboards, and Carbon timers. Topics include full-screen graphics, overlay windows, buffer operations, and integration of several of Apple's graphics technologies with OpenGL.
Hosted by Lane Roathe from Ideas from the Deep, this session covers a broad array of topics related to NetSprocket and OpenPlay on Mac OS X. NetSprocket and OpenPlay are cross-platform, open source networking APIs targeted at game developers.
This session presents overviews of several advanced OpenGL rendering techniques now supported with the current generation of Apple display hardware. These techniques include projective shadow mapping, texturing from a render surface, and rendering effects generated with vertex and pixel programs.
Delve into performance tuning in this in-depth session on optimizing OpenGL code for Mac OS X. Learn about the fast paths through Apple's OpenGL implementation and graphics pipeline. This lecture includes specially developed tools and techniques for profiling, debugging, optimizing, previewing and compiling. Specific API performance insights will also be presented.
With Image Capture Framework, applications can acquire images directly from digital cameras and scanners. Now your applications can support the most popular forms of digital image capture with a single API. This session explores the Image Capture Framework in-depth and explains how you can integrate it into your products.
Discover techniques to ensure your application gets the most out of the incredible graphics architecture in Mac OS X. This session focuses on reaching optimum screen drawing performance and also explores techniques to optimize printing performance.
Speakers: Haroon Sheikh, Ralph Brunner, Joseph Maurer
QuickTime is Apple's industry-leading technology for creating and publishing multimedia content. Whether you develop software for web publishing, interactive gaming, enhance music CDs, professional video, or QuickTime VR, learn what's been accomplished over the past year and see where this foundation technology is headed.
Your best introduction to QuickTime, this session explains a plethora of QuickTime technologies and provides instructions on how to incorporate them into your application. All aspects of movies are covered, including open, play, capture, edit, import, export, effects, extensibility, components, and interactivity. Also covered are Cocoa support, Mac OS X, cross-platform development, data handlers, QTVR, compression, codecs, ref movies, Internet solutions, still images, audio, and streaming.
Speakers: Ian Ritchie, Brad Ford, Jon Summers, Tom Dowdy, Sam Bushell, Tim Monroe, Greg Chapman, Adrian Baerlocher
This session focuses on techniques for handling video and audio in your QuickTime application. Topics include media acquisition using the Sequence Grabber for capturing or processing, and playback of media using a video device such as a DV camera, media compression, video effects, and filters.
Speakers: Tim Cherna, Kevin Marks, Sean Williams, Tom Dowdy, Jean-Michel Berthoud
QuickTime offers far more than simple playback of linear video and audio. Learn how to add interactive elements using the QuickTime sprite track, combine multiple movies into a single container movie, create a unique window shape for your movie, and incorporate Flash compositions.
QuickTime provides an easy way to combine a variety of media types such as still images, audio, video, MIDI, animation, and many others. View this session to learn how to create compelling multimedia presentations and deliver them as a QuickTime movie.
This is a technical discussion of the foundations of writing QuickTime components. This session focuses on development tasks common to all components. Developers gain a basic knowledge of how to write and debug QuickTime components for multiple operating systems, and how to develop their own component interfaces. Topics include components versus other shared code mechanisms, anatomy of a basic component, the component dispatch helper, cross-platform considerations, developing your own component API, debugging techniques, and common pitfalls.
QuickTime has a number of special features that can be used to customize and enhance web delivery. This session covers the QuickTime Plug-in and ActiveX controls, differences between the Plug-in and the Player application, ways to use the QuickTime file format effectively over HTTP, and ways to use scripts (CGI, SSI, and JavaScript) to control, customize, and even create movies. Tips and tricks include launching full-screen movies from the web page, opening a movie from a text link, using XML to dynamically create a movie from the output of a PERL script, and how to combine HTML, JavaScript, and the QT ActiveX control for interactive applications on the web.
This session will focus on QuickTime's MPEG-4 implementation. Topics include audio, video, and systems technologies in QuickTime 6, interoperability, and future directions in the MPEG-4 space.
Speakers: Jesse Hammons, Roger Kumar, Eric Aldrich
This session serves as an overview and roadmap for the WebObjects track. Meet the key players and discover what Apple has planned for the year ahead. In addition, developers will get a peek into what's coming for WebObjects and Enterprise Objects technologies.
Speakers: Bob Fraser, Katherine Wenc, Joe Keenan, Dirk Johnson
This session provides a technical overview of WebObjects for new developers. Highlights include key aspects of the WebObjects architecture and its technical advantages and relevance to web application development. Topics include a discussion and demonstration of WebObjects tools, design and flow of a typical WebObjects application, and a review of deployment scenarios.
This session provides a look at WebObjects tool features such as assistants, rapid turnaround, CVS integration, split-install, customer palettes, and platform independence.
This session is an introduction of the Enterprise Objects Framework (EOF), and includes both a conceptual overview to get you up and running with EOF and practical code examples. This session is useful for beginners and experienced EOF developers.
Learn about XML integration with WebObjects, such as object serialization, archiving, parsing, as well as other practical uses of XML. This session demonstrates the use of the upcoming XML serialization feature and XSLT to create XML documents.
Web services are an increasingly important part of web development. Because of its extensible architecture, built-in XML support, and increased support for Java standards, WebObjects can now leverage technologies such as Apache-SOAP to make it even easier to create standards-compliant web services. Learn how WebObjects can enable you to leverage the power of Java to rapidly deliver sophisticated web services.
Speakers: Melissa Turner, Ron Lue-Sang, Francois Jouaux
Direct to Java Client is a powerful rapid development technology that makes creating three-tier Java Client applications fast and simple by dynamically generating large portions of user interfaces. This session covers the concepts of Direct to Java Client, customization techniques, the use of the rule system that drives dynamic user interface generation, and the use of web services in client applications.
This session discusses distribution layer features of three-tier Java Client applications, such as business logic partitioning, security, remote method invocations, and WebStart.
Learn how to develop a simple EJB bean in this session, which also covers the EJB container and associated services shipped with WebObjects 5.1. A basic knowledge of J2EE is assumed. The differences between EJB and EOF will also be discussed.
This session is a tour of the WebObjects cross-platform runtime application server architecture. Topics include the key components, tunable features for scalability, robustness, security, and the preparation of a WebObjects application for deployment.
Learn about JSP and Servlet integration with WebObjects, such as the WOComponent and WODirectAction tag libraries, accessing WebObjects, EOF and Foundation from within a JSP or Servlet. This session explains how to build a hybrid WO/JSP/Servlet site, and how to deploy it.
This session demonstrates building EOModels for connecting to databases via JDBC and LDAP servers via JNDI. Learn the basics of creating entities, attributes, and relationships, and explore advanced topics such as custom attribute types and modeling entity inheritance.
This session provides an in-depth exploration of the advanced features of Enterprise Objects Framework (EOF). Topics include inheritance, delegate methods, shared editing contexts, raw rows, and data synchronization.
This session presents examples and case studies of how WebObjects has been used to bring information to the web, streamline business operations, and solve real-world problems.
Speakers: Toni Trujillo-Vian, Bob Davis, Matt Firlik, Thomas Lehmann, Michael Buening
This session focuses on how to optimize and tune your WebObjects application. Learn about tools and techniques available for WebObjects 5 which collect and analyze application performance and identify areas of improvement. Practical tips for improving WebObjects, EOF, and Java performance are provided.
Learn techniques for securing page generation and direct action invocation for anonymous users, gathering credentials for authentication, just-in-time login approaches, and using digital certificates. This session also covers automatic connection to pages over SSL to sites that require privacy, and access control.
Discover the power of Mac OS X Server, Apple's next-generation, industrial-strength server operating system. This session outlines Apple's server strategy, explains important features of Mac OS X Server, and discusses its deployment within workgroups and larger networks. Learn how Mac OS X Server can make Mac systems easier to set up, configure, and manage, as well as make it easier to share and exchange information with multiple computers, users, and disparate groups.
Learn the system capabilities of Mac OS X Server and how you can develop software for the platform in this overview of the key features of Mac OS X Server. Topics include how to tie your software into Apple's open director architecture, how to take advantage of high availability services, and how to write software that can be installed and managed remotely. Using Mac OS X Server as a web or UNIX server platform is also discussed.
Speakers: Kazu Yanagihara, Scott Mulligan, Rusty Tucker
This session describes the networking architecture of Mac OS X, and surveys various networking APIs, including Sockets, Core Foundation, and Open Transport. Advanced networking services including IPv6 and IPSec is discussed.
This session introduces web services, with an overview of the toolkits and frameworks available in Mac OS X. An explanation of important concepts and terminology is followed by an in-depth exploration of Apple's web service framework, a client-side framework for accessing web services from Mac OS X. Techniques for writing web services glue and adding it to Cocoa, Carbon, and AppleScript applications are also demonstrated.
CFNetwork provides APIs to help you communicate with the standard services on the web, as well as ways to manage your own. This session explains CFNetwork and how it fits into Mac OS X, including power-user HTTP communication, detecting or broadcasting network services, and configuring socket streams to navigate a firewall.
Apple brought the 802.11 wireless networking standard to consumers with the launch of the iBook and AirPort in 1999, and remains the number-one volume supplier of mobile wireless computers. Learn how Apple will continue to lead the industry it created through its advancements in 802.11 and Bluetooth.
Hear about what Apple is doing with Bluetooth, the cutting-edge technology that enables short-range wireless connections. Bluetooth opens up numerous opportunities for Mac OS X developers. Get the details on Apple's Bluetooth support, how to extend the stack to support your hardware, how to add support for additional profiles required by your devices, and how to develop applications that take advantage of the unique attributes of Bluetooth.
This session explains the basics of the CFRunLoop that dispatches all user events in a typical Mac OS X application. Learn how to use CFReadStream and CFWriteStream to manage your I/O, and discover how they fit in with the run loop to allow you to manage your I/O asynchronously, all without extra threads! Basic run loop inputs such as timers, mach ports, and sockets will be discussed.
Learn how to take advantage of new networking protocols and how to extend networking services. Tips and tricks for getting the best performance possible from your network-intensive applications are presented.
Speakers: Vincent Lubet, Josh Graessley, Laurent Dumont
This session presents options for using NetBoot and NetInstall in the Mac OS X Server, including how to set up and customize the product and how to allow your products to use NetBoot and NetInstall. Configuration options and licensing issues are also discussed.
Zero Configuration Networking brings the legendary ease of use of AppleTalk to industry-standard TCP/IP networking. Developed by the Zeroconf Working Group of the Internet Engineering Task Force (IETF) and pioneered by Apple, this new breed of always on networking makes existing network products easier to use and opens the door for entirely new classes of networked products.
Speakers: Stuart Cheshire, Eric Peyton, Jeremy Wyld
This session presents an overview of the latest version of QuickTime Streaming Server and Darwin Streaming Server. Topics include new server functionality, new APIs, and techniques for developing products and content around the streaming server.
Speakers: Chris LeCroy, John Anderson, Mythili Devineni
This session covers the integration of directory services into Mac OS X and Mac OS X Server. Learn how your software can utilize the powerful Directory access abstraction of Mac OS X. Access APIs and API utilities, Authentication, Directory Setup, NetInfo, LDAPv2, LDAPv3 and service discovery in Mac OS X are covered. In addition, hear about future plans to enhance and extend directory services.
Speakers: David O'Rourke, Ken Witzke, Jason Townsend
Mac OS X v10.1 ships with Kerberos authentication support in the operating system. Apple is leveraging and extending this support across an increasing number of applications and system services. In this session, learn how you can take advantage of this simple yet powerful network authentication protocol used in Windows, UNIX, and the Mac OS.
Speakers: John Hurley, Richard Murphy, Marshall Vale
This session explains how to run and test your applications in a network-based environment. Learn about the mechanisms being employed in Mac OS X and the tools that are available to ensure your customers have the best possible experience with your software.
Apple tools provide the enabling technologies to support the development of outstanding Mac OS X products. This overview session highlights current status and future directions in Mac OS X development tools. Demonstrations of the latest Tools for Mac OS X from both Apple and Apple third-party tool vendors will also be featured.
Speakers: Ted Goldstein, Dave Payne, Mike Ferris, Godfrey DiGiorgi, Geoff Perlman, Matt Henderson, Francois Jouaux, Tim Bumgarner
Investigate the command-line development services available in Mac OS X with the installation of the Mac OS X Dev Tool package. We discuss and demonstrate how to use the Terminal and GNU tools for compilation and debugging. Differences and similarities to other UNIX-derived systems as well as specific Mac OS X development concepts will also be presented. Developers should complete this session with a working understanding of the command line tool environment in Mac OS X.
AppleScript makes it incredibly easy to integrate graphical applications, web services, and even UNIX scripts into a coherent workflow. Now with AppleScript Studio, you can build full-bore, rich Aqua applications entirely in AppleScript, leveraging the power of Interface Builder, Project Builder, and Cocoa. Come find out how easy it is to create graphical front-ends for script-based applications.
Project Builder is designed to facilitate high-level integration of the core development needs (editors, compilers, linkers, and make tools) with the goal of making development efficient and reliable and increasing productivity. This session explores the Project Builder IDE, and highlights new features in the latest release of Project Builder as well as future directions for this technology.
Interface Builder is Apple's premier Aqua user interface design tool for Cocoa and Carbon applications. Learn how Interface Builder allows developers to easily access underlying framework concepts like Cocoa targets and actions and the Carbon Event model. This session provides an overview of the basic features of Interface Builder and then goes in-depth on new capabilities.
Want to improve your application's performance in Mac OS X? The Mac OS X Developer Tools CD includes a broad suite of GUI applications and command-line tools for analyzing performance. Learn how to use the tools to inspect and manage memory usage, object allocation, threading, and other factors that affect performance.
Speakers: Robert Bowdidge, Eric Miller, Nathan Slingerland
Don't miss this runtime-neutral discussion of the principles of performance and efficiency as they apply across the operating system. We will identify top performance obstacles, along with strategies for eliminating them. Developers will complete this session with a checklist of concepts to consider and items to look for which will enhance their products and the Mac OS X user experience.
Learn about Apple's implementation of the GNU C Compiler (GCC) and the migration towards GCC Version 3. Enhancements include improved code generation, reduced compile time, better IDE integration, and many other new features.
The Project Builder IDE has many features designed to facilitate and enhance productivity. This in-depth presentation shows developers how to use these features effectively. Application delivery and the use of disk images and Installer packages will also be highlighted in this session.
Learn how to configure, run, and debug Carbon, Cocoa, and Java applications using the source-level debugging of Project Builder. This session demonstrates new and advanced features of the GDB debugger along with useful techniques for getting the most out of this powerful tool.
Speakers: Dave Payne, Rab Hagy, Dave Ewing, Ken Ryall, Jim Ingham