Go to: 100200300400500600700800
100 CLASSES Tuesday, Sept. 28, 8:30 — 9:45 am

101: Making and Marketing Apps That Succeed
By Michael Schneider
Achieving consumer awareness and sales longevity for your iPhone app requires a lot of organization and some strategic planning. This session will show you how to incorporate marketing and business savvy into your design and development process, giving your app the best possible chance of succeeding in the App Store. In this session, you will learn:
• How to select and perfect the best icon and title for your application
• How to build mechanisms for users to communicate with you from within your apps
• More effective ways to distribute promotional codes for your applications (and how best to use those codes)
• How to use affiliate links to track the sources of your sales
• Ways to build a community around your apps
• The pros and cons of various pricing strategies

102: Graphic Design Techniques for Developers
By Robert Strojan
So you've read Apple's Human Interface Guidelines, developed the ultimate navigation hierarchy, and refined your user interface for maximum usability. Now, how do you finalize your UI with the type of shine and polish that will set it apart? How can you create the beautiful tactile buttons, embedded text and glossy toolbars typical of Apple's iPhone apps?

In this session, we'll look at popular design elements in well-designed iPhone apps, and you'll learn techniques to recreate them using the freely distributed GNU Image Manipulation Program (GIMP). This will be a hands-on session. Come with GIMP installed and follow along.

103: Optimizing Data Caching for iPhone App Responsiveness
By Jonathan Saggau
Users of native iPhone apps, even those pulling data from "the cloud" expect a snappy experience. The "Death by a Thousand Paper Cuts" of a slow user interface is possibly the quickest way to disappoint. Learn how to apply embedded systems caching tricks to optimize the user experience within example apps while balancing the trade-offs as a result of caching data.

 

105: Mastering iOS 4.0: What's New, What's Changed, Part 1
By Daniel Steinberg
The newest version of Apple's iPhone operating system is here. In this two-part class, we will dive deep into the new and changed functionality. In part one we'll learn to work with the retina display, gesture recognizers and blocks. We'll also look at how the new simulator allows you to say goodbye to ivars and embrace class extensions.

 

200 CLASSES Tuesday, Sept. 28, 11:15 am — 12:30 pm

201: iPhone Development for .NET Developers
By Ben Scheirman
Just because you spend your day in Visual Studio, doesn't mean you can't build iPhone apps with the cool kids! In this session, you'll learn all about Objective-C, Apple's Xcode IDE and the iPhone SDK for building iPhone applications. Your instructor has a strong background in .NET development, and will compare and contrast the vastly different styles of development.

By the end of the session, you will have a solid understanding of how Objective-C is different from C#, how Xcode is different from Visual Studio, and ultimately how writing apps for the iPhone is probably unlike anything you've done before.

202: BlockHead: Blocks in Objective-C
By Jeff Biggus
Blocks are coming to the iPhone and iPad! This session will go over how blocks work in Objective-C 2.0 to get developers ready to make use of them in both a manual and garbage-collected environment. New design patterns are open to those who know how to make use of blocks. Now that more-powerful mobile systems are becoming available, the ability to make use of this form of modularizing code will become more and more important.

This new addition to C (and proposed for the C standard) is one more layer in what's becoming a large set of syntaxes fitting within one environment. It is the goal of this session to get developers fluent in blocks and to see beyond the syntax to the code designs that are made possible.

You will be given sample code of varying degrees of complexity and in a number of different use cases, comparing how tasks would be done with and without using blocks.

203: Is It Real or Is It Virtual? Augmented Reality on the iPhone
By Jonathan Saggau & Jonathan Blocksom
With the new camera, compass and processing power of the iPhone 3GS and newer devices, it's possible to integrate the iPhone with even more of your users' everyday life using Augmented Reality. In this class, you'll walk you through a demo application for finding your hotel in a strange city. Learn how to use the orientation and magnetometer APIs to place virtual tags on objects in the real world. Depending on weather, we might even head outside to chase down that hotel!

204: Cooking with iAd from Soup to Nuts
By Noah Gift
Learn how to easily integrate Apple's iAd advertising management system into your existing iPhone application! In this talk we will take a cloud based web application, with a companion iPhone application, and integrate it into the iAd network.

Code samples will be based on a cooking show formula, with an explicit recipe on how to convert an existing app to use iAd. Finally, we will cover the use of a third party framework that seamlessly switches between MobClix and iAd.

We'll also teach you real world coding solutions for dealing with testing while developing for the iAd, and the semantics of dealing with asynchronous Banner Events, and potential errors.

205: Mastering iOS 4.0: What's New, What's Changed, Part 2
By Daniel Steinberg
The newest version of Apple's iPhone operating system is here. In this two-part class, we will dive deep into the new and changed functionality. In part two we'll show you how to work with documents, custom keyboards, multitasking, iAds and the new media APIs.

206: Push It Up: Mastering Apple's Push Notifications Service
By Joe Pezzillo
This class will walk you through how and why to add push notifications to your application and what's required on the server-side, with plenty of working sample code and specific examples to guide you through every step of the process.

300 CLASSES Tuesday, Sept. 28, 2:00 — 3:15 pm

301: Get Your iOS 4 Apps Moving with Core Motion
By Jonathan Blocksom
iOS 4 introduced the Core Motion SDK, a new framework for accessing sensor data from the accelerometers and iPhone 4 gyroscopes. This session will go through accessing and using this sensor data in your apps, differences in results for different devices, behavior and limitations of the underlying sensors and some cool applications now possible with iOS 4.

302: Dynamic App Data Updates via NSURLConnection
By Danny Goodman
Come explore the Cocoa Touch NSURLConnection class as a way to have an app dynamically retrieve updated data from a server behind the scenes. Updated data may be in the form of XML data (e.g., frequently-changing lookup tables), HTML (e.g., periodic news bulletins and tips for users), images, or other data types.

You'll learn how to design apps around the NSURLConnection class and its delegate methods as a way to eliminate the need to submit endless updates to the App Store. It allows a developer to keep an app's content fresh as often as needed. The class also demonstrates how to use network bandwidth and local caching most efficiently to prevent unnecessary downloads of server data that hasn't changed since the previous app launch. Included are demonstrations of blending these download techniques into user interfaces of actual iPhone apps currently on the App Store.

303: TANSTAAFL: Using Open-Source iPhone UI Code
By Jonathan Saggau
Most every iPhone developer has said something like this at one point or another: "If only Apple would release their photo viewer component, or perhaps their calendar UI, or maybe their coverflow view, then life would be so much easier." Happily, several open-source developers have concluded the same and written code so we don't have to.

In this class, you'll learn all about open-source libraries that mimic much of the UI that you see in Apple's own iPhone applications. Learn the ins and outs of these components and leave with code that uses the image views available from the Three20 framework, an open-source coverflow view called OpenFlow, and a recreation of Apple's calendar view called Kal. Apple has built it, the community has rebuilt it, and now you can use it in your app.

304: Case Study: Designing, Building and Scaling Trapster
By Pete Tenereillo
The founder and CEO of the popular Trapster application will talk about the challenges of building GPS-based apps. You will learn about the architectural approach to Trapster, the unique design considerations for the iPhone specifically (including for iOS 4), and he will discuss issues like dealing with growth, user support, hosting and scaling costs, and designing for scale. Trapster, with more than 7 million users, is a mobile service that lets users share the location of police speed traps using mobile phones and other types of devices.

305: No Objective-C Required! Use Your Web Skills to Develop iPhone and iPad Apps
By Jeff Haynie
HTML, CSS and JavaScript are quickly becoming the development languages of choice for creating native iPhone and iPad applications. By using open-source platforms, Web developers can create apps for iPhone, Android and BlackBerry using a single codebase.

In this session, you will learn:

- All open source is not alike: How to select an open-source mobile development platform.
- How to use mobile APIs for geolocation, video and social networking.
- How to build a native user interface for iPhone applications.

 

400 CLASSES Tuesday, Sept. 28, 3:45 — 5:00 pm

401: iPhone SQLite Techniques
By Ben Scheirman
If you're building a data-driven application on the iPhone/iPad, chances are you'll have to leverage SQLite. SQLite is a handy single-user relational database and gives you plenty of control and performance with even large datasets. Unfortunately, the C-language API makes working with SQLite difficult.

In this session, we will cover the basics of SQLite, how to deal with writable databases, and how to quickly and effectively query and store data using a higher-level API. Finally, you will learn how to manage a growing and changing application by implementing database migrations to allow your database schema to evolve.

This will be a heavy code presentation; all the code and materials will be provided.

402: The iPhone OS Audio Landscape
By Robert Strojan
Can you hear me? Can you hear me now? Learn the ins and outs of audio on the iPhone as we look at Audio Sessions, audio formats, and what you should be thinking about before ever playing any audio. Then we'll explore each of the iPhone's audio APIs and when to use them.

We'll analyze "Hello, World" code with the easy-to-use AVAudioPlayer as well as the game designer-preferred OpenAL. Then we'll spend significant time navigating through the dark, mysterious world of Audio Units to start you on your way to developing powerful audio-centric apps.

403: Connecting Apple's iPhone to Google's Cloud
By Noah Gift & Jonathan Saggau
Cloud computing and software development for handheld devices are two very hot technologies that are increasingly being combined to create hybrid solutions. In this class, you'll learn how to connect Google App Engine (Google's cloud computing offering) with the iPhone, Apple's mobile platform. You'll also see how to use the open-source library, TouchEngine, to dynamically control application data on the iPhone by connecting to the App Engine cloud and caching that data for offline use.

404: Custom UIView Drawing with CoreGraphics
By Michael Gile
Come learn about low-level drawing with the Core Graphics framework. Core Graphics provides the fundamental drawing capabilities used to create path-based drawings as well as many other transformations and screen output capabilities. You’ll learn how to create custom UIView subclasses to take responsibility for drawing their own on-screen rendering. In addition, we will cover methods to create aesthetically pleasing visuals such as shine effects and gradient path fills.

405: From the Trenches - Lessons Learned in Enterprise iPhone Development
By Joe Pezzillo
Joe Pezzillo spent 18 months developing iPhone applications for a Fortune 100 financial services company and offers a baker’s dozen hard-won lessons that’ll help you and other enterprise developers who are working in this rapidly growing field. He’ll cover topics including:

• Staffing, division of labor and other personnel issues
• Project management, setting realistic expectations and justifications
• Code architecture choices, frameworks & libraries, SCM and other resources with a specific recommendation for application development
• Certificates, SCEP and provisioning

This session does not present any code, instead is intended as a discussion of enterprise deveopment topics, although it does include mentions of some specific libraries that may make your life easier as an enterprise developer.

406: Contracts, Licenses, Intellectual Property and Other Legal Issues
By Michael Schneider
iPhone development presents an unprecedented opportunity for individuals and small companies to bring products to market, but independent developers often don't consider the legal issues involved with their business until it is too late. This session is an overview of legal issues you’ll face when creating and bringing applications to market.

You’ll learn about the intellectual property protection available for your applications, and which methods of protection make the most sense in the context of mobile application development. We will also discuss the importance putting solid contracts in place with your employees and contractors to ensure that you get the rights you need in their work product. Other topics include, when to create your own end user license agreement and the steps to take when you believe someone has infringed your intellectual property rights.

500 CLASSES Wednesday, Sept. 29, 8:30 am – 9:45 am

501: Core Data tips and Tricks
By Saul Mora
Core Data isn't your father's database. In fact, you're not really supposed to think about it as a database. We'll go over the stack, what each layer means to you, and how to get up and running with Core Data fast and easy! We'll also cover some simple debugging tips, optimizing your lookup performance, and how to properly deal with multithreading.

502 - Moving to the iPad: What You Need to Know
By Daniel Steinberg
The iPad is not just a bigger iPhone. Sure, there is a great deal of overlap in the APIs and coding techniques but the devices are fundamentally different and you shouldn't just port your iPhone apps to it's bigger relative. This session will look at the differences in targeting the two devices and will highlight APIs and techniques that are particularly important on the iPad.

503: Mobile Data Synchronization with Any Database
By Lee Barney
iPhone applications can easily store data using either the core Data framework or by directly interacting with the SQLite database engine. This data can then be heavily used without delays involved in passing information back-and-forth between the device and a remote database. How then can data be kept in sync if it needs to exist on the device and a remote database? What if you don't need all of the data found in the database to exist on the device?

This class helps you design and implement a synchronization utility that will work with the database management system of your choice. It could be Oracle, MySQL, Sybase or some other database. It could even be something completely different such as XML or other textual flat files. The data structure on the device won't even need to match the remote data structure.

All of this can be done to create an easy-to-use sync utility you can use in any of your applications.

504: File Systems Security with iPhone OS 4.0
By Michael Gile
iPhone OS inherits a large set of robust security and encryption capabilities from its Unix heritage. In this class you’ll learn about the current state of security in the latest version of iPhone OS. From the storage of network credentials in Keychain to the low-level cryptographic libraries, certificate management and file encryption. We’ll also go into the new features of iPhone OS 4.0 for file protection and big integer capabilities that should be of interest to any security-minded developer.

505: Designing iPad Applications for the 21st Century
By Mike Lee
The introduction of the iPad has revolutionized how people think about, and interact with, computers. Even in a post-iPhone world, these waves of change radiate into the very fabric of our work as the arbiters of software.

Learn about the emerging principles of software design that contribute to the unique "iPadness" of software on the platform, and different ways of thinking necessary to apply those principles to your own work.

We'll examine some applications from the App Store and discuss how well (or how poorly) they demonstrate these principles—or bring your own pending masterpiece and take the hot seat for a priceless (if humbling) peer review.

506: Marketing in the Social Media APPmosphere
by Bobby Emamian
After creating a few iPhone apps in the past year, it's amazing to look back and see what it took to make them happen. Not only are there creative and technical aspects involved, but the marketing is also crucial. It is important to bring value to the user in a way that engages them in order for them to become brand enthusiasts.

With Facebook just releasing its new API, the way applications are built and marketed will forever change. Thus, it will be great to talk about the features and aspects of how incorporating Facebook into the applications will help generate viral campaigns.

You'll learn from two case studies in this class, the BIG EAST conference basketball tournament app and the official CC Sabathia iPhone app. You will learn the possibilities that social media opens up when marketing their apps. Looking down one avenue is very easy to do, however. Mashing up what is available in the social media space is when viral campaigns are made.

600 CLASSES Wednesday, Sept. 29, 11:15 am — 12:30 pm

601: Grow Your Advertising Business with Apple's iAd
By Bobby Emamian
Apple promises to make their iAd platform more interactive - without leaving the application, the user can tap an iAd banner and enter into a full-screen experience. Unlike other ads where the user is directed towards the Safari web browser, iAds will essentially be integrated into apps sold in the iOS App Store. iAd media ads provide full-screen audio, video, and gaming, and will truly place more of the vision of advertising into the users’ hands. The major benefit: developers receive 60 percent of the revenue from advertising on applications.
This workshop will focus directly on iAd media, helping you to be more effective with selling your products, reaching your target audiences, and maximizing your revenues. The intuitive aspects of iAd will be built upon so that this new and exciting method of advertising becomes second nature.

602: The Tricorder is Here: Math and Science on the iPhone/iPad
By Jeff Biggus
This session will go over the many frameworks and libraries available to iPhone and iPad developers for doing math and science. In addition to third-party frameworks, Apple is also about to make available the Accelerate framework in iPhone OS 4.0, a powerful hardware-accelerated mathematics library. Useful for applications that are not themselves math- or science-oriented, such as graphics processing, presentation and manipulation, game AI, and large data set processing, this background can make whatever app you're working on gain new levels of polish and functional depth.

The first thing that Apple pointed out to developers about the new iPhone OS 4.0 infrastructure was the Accelerate framework. It's a valuable resource that they are making available, but is generally an unknown quantity for most developers. This session will try to make it more approachable by going over several use cases and breaking down the code to its bare essentials.

Many high-quality third-party frameworks and libraries are also available to enhance doing scientific and mathematical work on the mobile platforms (and more besides now that such things as blocks are available). Several such frameworks will be presented.

603: Ship Your App Now by Creating Hybrid Applications
By Lee Barney
Learning Objective-C can be a major hurdle for a beginning iPhone or iPad application creator. One solution that allows you to get your apps out the door and helps you learn Objective-C at the same time is to create a hybrid application. Hybrid applications use HTML, JavaScript and CSS for much if not all of your application display and logic. There are several hybrid application libraries available online, both open and free as well as closed and for cost.

This class helps you create your hybrid application using the first open-source, free and most highly developed hybrid application framework: QuickConnect. A few of the ideas you will learn to implement are:

-Storing data on the device
-Using HTML 5 to animate your interface
-Displaying Maps in your application
-Using audio and Video

604: Advanced Core Data: Building Your Own NSFetchedResultsController
By Marcus Zarra
In this talk, we will start with discussing the NSFetchedResultsController and how to properly apply it to a UITableView. As part of that opening discussion, we will be walking through some of the limitations and edge cases that have come up while using the NSFetchedResultsController.

In the second part of this session, you'll learn how to develop your own replacement for the NSFetchedResultsController, and how to use that expanded functionality to provide a more robust solution for monitoring data changes in the Core Data stack and react to those changes. As part of this section, we will discuss using Core Data in a multi-threaded situation and how that impacts the monitoring of data.

605: Building Killer Universal Apps for iPhones and iPads
By Daniel Steinberg
There are iPhone apps, iPad apps, and apps that run on both. In this session you'll learn to take an iPhone app and convert it to a Universal app that runs on both the iPhone and iPad. Sure, your users can just run your iPhone app on the iPad but it just won't look right. We'll cover the key steps to producing a single binary that looks and feels right on each device.

606: The Science of Making a Successful Free App
By Nitin Chitkara
How can an indie developer succeed in an overcrowded App Store? How can you differentiate your app from the rest? App success is not based on pure luck; there is a science to it.

With over 75% of the apps being paid, it's much easier to get to the top of the free app market. Get the inside scoop from one of the industry experts. See case studies of developers who have gone from a paid to free model, and how they used our analytics data to enhance their app. Learn the characteristics of a successful free app, how to effectively drive revenue with a "freemium" model, and when and why an app should just go the paid route.

Apps that succeed all have a few things in common. Get the tricks of the trade and insight into the app market that you can't get anywhere else!

 

700 CLASSES Wednesday, Sept. 29, 1:30 — 2:45 pm


701: Designing the Details - What makes some apps stand out above the rest?
By Jen Gordon
Amplifying your apps ability to attract its target audience is more challenging and important than ever. In this session we'll take a deep dive into the unique user interface characteristics of both iPhone and iPad that will give your app a wow factor.

This how-to session will review a variety of examples illustrating best practices for:

- designing eye-catching icons for iPad/iPhone
- breaking out of the standard UI
- sound design
- planning for animated transitions
- appropriate use of animation

The session will conclude with a practical "do's and don'ts" list to guide you on your next project.

702: iPhonify Your Web App: Understanding iPhone Web Development
By Chris Bannon
The iPhone has become a common device in the hands of your end users. You'll learn everything you need to know in order to build Web applications targeted for the iPhone. This session will give you an overview of the iPhone in general, including the specs, UI and behavior. You'll learn simple tips to enhancing your current Web apps for the device and also look at building an iPhone-specific website.

Plus, we will take a look at some popular iPhone sites and the tools you can use to build them. After a walk through storyboarding an iPhone Web app as a concept and developing it together, you will be ready to extend your site to the iPhone with confidence.

703: Unit Testing That Doesn't Suck
By Saul Mora
Unit testing in Cocoa has traditionally been a difficult task, with little to no benefit. The built-in tools and framework Apple provides aren't as helpful as they should be, so we'll talk about some unit testing tools and methodologies that don't suck. Get unit tests integrated and running against your existing iPhone, iPad and Cocoa-based apps, and see how to get the most out of your testing by using processes you've seen in other development environments.

704: Building an iPhone Publishing House
By Michel Kripalani
Learn about the ins and outs of the iPhone app development process and how to build a premiere publishing brand in less than one and a half years. This session is presented as a case study by Oceanhouse Media, which has over 85 apps in the App Store. They have major licenses in place with Dr. Seuss, Hay House Publishing and others, and have had numerous apps reach the Top 10 and Top 100 paid charts. On average, their apps are rated 4.5 out of 5.0 stars across the board.

You'll learn:
- How the App Store model compares to the traditional video-game model
- How to secure a major license deal, such as with Dr. Seuss and Hay House
- How many apps you need to have a sustainable business on the App Store
- Which marketing strategies work—and which do not
- The importance of ratings—and how to improve them
- What is the relationship between pricing and sales volume? Pricing and ratings?
- What software tools are the most important for iPhone publishers?

The talk will be inspirational, motivational and loaded with take-away items.

800 CLASSES Wednesday, Sept. 29, 3:00 — 4:15 pm

802: Mastering the External Accessory Framework
By Michael Gile
You can interface your apps directly to custom hardware devices via the External Accessory Framework. In this session, you will receive an overview of the Made for iPhone/iPod licensing program, what it means to build and ship an authorized Apple accessory (within Apple NDA limits), and a live demonstration of a custom car diagnostic device designed to allow your iPhone to talk directly to your car's On-Board Diagnostics (OBD-2) port.

This demonstration will walk you through a sample Xcode project to illustrate the use of the External Accessory Framework, and will show how to setup and communicate with the diagnostic accessory device connected via the 30-pin iPhone dock connector.

803: Creating an Easy-To-Use Objective-C Modular Framework
By Lee Barney
The Model-View-Control pattern as implemented by Apple is great as far as it goes. It does tend to lead to implementation code being scattered across many areas of your application.

This class helps you design and implement a modular, reusable framework that can speed up you application development dramatically. Initial data indicates you could reduce your time to market by a factor or 10 or more by reusing the framework you will create in this class.

You will create a command-response, highly modular framework that you can reuse in every iPhone, iPad and even Mac application you ever create. Your framework will be fast. It will be small. It will even be easy to use!

804: Advanced Core Data: Importing and Exporting Data Efficiently
By Marcus Zarra
In this session, we will be discussing the impacts of importing and exporting on iPhone usability. Specifically, we will review the issues with single threaded vs. multi-threaded importing and exporting.

We will review the best practices of importing data into a Core Data store using Cocoa Touch while maintaining a balance between user experience and performance.

We will also review how to handle an export from Core Data using Cocoa Touch and multithreading.

Finally we will review some performance tips, tricks and traps to be aware of while developing a Core Data application for Cocoa Touch.

805: Developing Effective Enterprise Smartphone Apps
By Adam Blum
Driven by the phenomenal success of the iPhone and the App Store, smartphone app usage is finally taking off in the enterprise. Yet many developers are still uncertain about how to create a great user experience for information-intensive business apps on smartphones.

In this session, you'll learn the general principles of creating compelling smartphone apps for businesses, and what the key differentiators are between business and consumer apps. For each principle, we will show flagrant violations from existing apps on the iPhone App Store as well as apps that follow the proper guidelines, creating an optimal user experience. Come away knowing how to create an app that follows best practices and guidelines, driving user adoption and customer satisfaction.

Go to: 100200300400500600700800