Monday Theater 15

WWDC Keynote Viewing

Come watch Apple's WWDC Keynote with us! Grab a cup of coffee, a breakfast burrito, some hot sauce, and sit back and relax.

WWDC Keynote Reaction Panel Discussion
Abizer Nasir, Alicia Liu, Gemma Barlow, Soroush Khanlou, Steve Scott (Scotty)


WWDC Platforms State of the Union

Conclude Day 1 of AltConf with watching Apple's State of the Union with us.
Tuesday Theater 2 Theater 3

Scaling Your App for Rapid Growth by using Testing, Deploying and Monitoring Michael Crump, Anuj Bhatia

Watch Xamarin Test Cloud test an app on hundreds of different device models simultaneously, and Hockey App help you with beta distribution and app monitoring. We’ll wrap up by discussing how you can leverage your existing Objective-C app to write an app that will run on the PC. Hold onto your seat, this is going to be a demo-packed session!

Design & Development = Better Together Greg Raiz

Many companies have designers and developers working together but most companies also have a company culture driven by one or the other. Developer centric companies and cultures value technical solutions (Microsoft) and design-centric cultures value design over technology (Apple). The best products however come from the combination of the two.

This talk will cover specific techniques and methodology of designers working with developers to solve problems and produce better products. The approach is integrated into an Agile/Scrum process and this has helped create products that both ship to market and push for design and usability excellence.

Pushing the boundaries of Swift to the Server Karl Weinmeister

Swift is a robust language for mobile but cloud development opens the door to new opportunities for today's top app developers. Integrating projects to backend systems can sometimes be problematic, requiring new tools and skills. It doesn't have to be; end-to-end Swift opens the door to radically simpler app dev so we can all focus on the engagement. We'll demonstrate how easy it is to work with Swift on the server with the IBM Swift Sandbox and introduce our IBM Cloud Tools for Swift beta app, which simplifies the management and deployment of server-side assets using a local development environment and complements a Swift developer's familiar Xcode environment.

Contextual Communication in a Connected World Brent Schooley

Communication is critical to the success of modern. With the rise of smart homes and smart cars and even smart toasters, it’s time for smart communication. In today's connected world we shouldn’t have to navigate complex phone trees just to reschedule a flight. Imagine a customer support rep that already knows the problem you’re facing before you even call. Context is key and our apps can provide the context to both sides of the conversation. This pain-free communication is achievable today. You’ll leave this session knowing not only why but how modern communication will transform business forever.

Easy, Beautiful Typography with BonMot Zev Eisenberg

An introduction to BonMot, an attributed string generation library for iOS. BonMot abstracts away all the weirdness and inconsistencies of NSAttributedString, providing a readable, usable, composable library that makes even the most complex typography a breeze. I'll be showing some ways that BonMot can help developers to step up their typography game and more closely honor designers' work in their apps.

The Secret Life of a Digital Nomad Natasha Murashev

Last October, I gave up my expensive San Francisco apartment, gave away the few big things I did own, and flew to Amsterdam (through Iceland ☃️) with all my worldly possessions in two suitcases and a backpack. Since then, I’ve been to 12 countries and many more cities working from my 13” MacBook Pro.

Being a digital nomad has always been my dream, but I was not nearly prepared for the reality of it. Learn what travel bloggers will not tell you about what it’s really like to be a digital nomad.

A user-centered approach to solving micronavigation for the blind Chris Hoogewerff

How would you design an app to help a blind commuter find their bus stop in a world where their GPS is not precise enough and waypoints can be up to 100 feet off? We didn't know either, so we leveraged extensive usability testing throughout the design process to ensure we wouldn't risk making the mistake of building the wrong product.

This talk will cover our approach for designing a hypothesis, usertesting that hypothesis and iterating until each of our visually impaired testers were able to find the precise location of a bus stop. You'll walk out of this session feeling prepared to tackle your next design and development challenge with usertesting at the forefront of your process.

Bring Your App To Life with CALayers Stephen Barnes

Many times, the most memorable part of an app's experience is an intricate, animated experience. iOS provides a number of tools to create these experiences, but it can take some work to get the most out of them.

The basis for many great experiences lies in Core Animation. Using tools such as CALayer and CATransaction we can create a high resolution, vector-based, animated sequence that delights users. We'll use code samples to go through different animations and discuss how you can use these techniques in your app.

Let's use the power of CALayers to make your app memorable.

The Third Wave: How indies can still impact the future of iTunes Carla White

From Carla's eight years experience as an indie app producer, she predicts the future of mobile apps and describes what she calls the “Third Wave of the iTunes.” Indies dominated early adapters of mobile apps in the first wave; giants such as Facebook and Supercell and companies such as Snapchat have led us into the second wave; and the third wave will be “personalizing experience” in which every interaction, product, and feature will be unique. This is the indie's opportunity to get back in on the game. Using her own experience, and examples from other successful app producers, she lays out a strategy for success in a corporate dominate age.

VoiceOver is Awesome David Sweetman

I think that developers can underestimate how awesome UIAccessibility is. The iPhone has amazing potential as an accessibility tool, and it's used by a majority of visually impaired smartphone users. Well-designed apps really can offer meaningful improvements in peoples' everyday lives. But mobile isn't like other platforms where users can hack together scripts to improve the accessibility of poorly designed apps. It's up to the application developer to provide adequate support for all users, and it's unfortunately common to see apps where VoiceOver interaction is broken.

Apple has made UIAccessibility pretty easy to support, but it does take some intentional effort and an understanding of the tools and usage patterns. In this talk, my goal is to give you basic familiarity with the accessibility tools as a user uses them, basic familiarity with the UIAccessibility API, some UX intuition for users with visual impairments, and some simple helpers and tools to make implementation easier.

Tilting at Windmills Robi Ganguly

Are we "putting a dent in the universe" or just chasing personal visions? So many of us see something very clearly that we believe in, but we can't even get one other person to come along. What then?

And if we get people to join us, what do we do with that responsibility? How do we know when to continue to pursue the vision and when to "pivot" or "sell out" or... give up? Along the way there are questions, decisions, doubts. Let's talk about them for a bit.

Continuous Delivery for iOS & Mac Apps Thomas Dohmke

Build your code on every commit and distribute the app directly to your users. Ship a bugfix for your app without waiting for the next Apple review. The tools for continuous integration and delivery are improving as fast as the mobile market itself. Combined with platforms to monitor the quality and usage of your app, a powerful Mobile DevOps workflow is evolving. This talk gives an overview of the available free and commercial tools and shows how to put them together in 3 live demos.

Apple and VR Brianna Wu

VR has quickly become one of the hottest areas in the tech industry. But are they prepared? Expert Unreal developer Brianna Wu will be looking at Apple tools and discussing their future.

Swift Scripting Redux: Localization Ayaka Nonaka

The first ever conference talk I gave was about scripting in Swift in early 2015, pretty soon after Swift was released in mid 2014. Since then, I’ve been using Swift for even more scripting and automation tasks. Most recently, we’ve been working on internationalization and localization for the Workflow app. In this talk we’ll go over the steps that went into this localization process, how Swift makes things much more fun and easier, and how to get up and running with Swift scripting so you can start writing even more Swift!

Rocket FM Podcast Panel Discussion
Brianna Wu, Christina Warren, Mikah Sargent

Wednesday Theater 2 Theater 3

The Art of the Sell Jaimee Newberry

Throughout her career Jaimee has held roles from in-house teams, to agency partner, to independent consultant and now COO. Across these roles, she not only had to sell her own design work, but the work of her teams and colleagues, as well. It stands true that the most important skill she ever learned was how to sell her ideas and work.

Through stories of client interactions and learning experiences, Jaimee will share her two rules of design and describe how her “Check Yourself Checkpoints” have helped her close millions of dollars in sales across the past seventeen years.

A Different Vision of the Mobile Revolution: How Mobile Technologies are Changing the Lives of People With Visual Disabilities, and How You Can Be a Part of the Change Frank Welte

Smart phones and their tablet cousins are bringing revolutionary changes to the lives of people who are blind and vision impaired. This presentation will show you some of the ways that people with visual disabilities are taking advantage of the power of mobile technology to improve their lives, and it will give you insights into how you can design and build apps to maximize their value to this population.

Reactive Programming with RxSwift​ Scott Gardner

You may have heard about reactive programming. Maybe even checked out RxSwift. But if you're not using it in your daily development, you're really missing out! Rx decimates the boilerplate code you'd have to write to do the same things in the traditional, imperative manner. And, in this day and age where the answer to supporting multiple platforms has given rise to using "lowest common denominator" cross-platform development technologies, Rx shifts the focus back to developers who want to stay true to their platform of choice, by unifying the patterns and operators used to write app code on any platform. Come see how reactive programming with RxSwift will change your life and make you richer than your wildest dreams.

Become a Better Engineer Through Writing Kristina Thai

For developers, it is often much easier just to write code, rather than explain and defend your implementation to others. However in team development, it is not only necessary but also crucial to be able to communicate your technical ideas clearly. What’s the best way of refining your thought process? Writing! Using various forms of writing, you can learn several approaches that will help you become a more thoughtful engineer.

Attendees will walk away with a deep understanding of how to use writing as a form of technical expression. I hope to inspire audience members to take charge of their career by proactively working on their technical communication skills in a medium that many engineers tend to shy away from.

On a personal note, I'll also share my journey of how technical writing helped turn me from a nobody with barely any iOS development experience, into an internationally invited technical speaker in 1 years time.

Futures and Promises, or how I learned to stop worrying and love the GCD Michael Gray

An overview of Futures/Promises in Swift and specifically FutureKit, and how to use it to never have to call dispatch_async again. A brief introduction to asynchronous handling and how a Futures/Promises implementation library will help.

We will cover the basics:
How to build a Promise/Future pair.
How to use Executors to make the GCD simple.
Never write another function with a callback block property again.
How to wrap all your favorite async libraries into Futures (like AlamoFire, ReactiveCocoa, etc).
Create rock solid error handling, and dead simple cancellations.

I will also briefly overview of Futures based coding patterns like caching, parallel execution, NSOperationQueues, FIFO based execution, etc.

Selling Your Weird Mouth Noises Bryn Jackson

Podcasts seem super easy at first blush - after all, everyone seems to have their own show these days. Turns out it's pretty tough to publish quality content day after day while working full-time as designers and developers at startups. But, sometimes it's worth the extra effort.

In this talk, Bryn tells the story of taking Spec Network from 0 to 500,000 downloads per month, building an active community of almost 5,000 designers and developers, making financial decisions for your friends, and how obsessively building tiny failed side projects can lead directly to building big successful ones.

“Richard, I don’t think you understand what the product is” — A Designer’s Response to Silicon Valley Kory Westerhold

While the HBO show Silicon Valley can often be a hilarious, uncomfortably spot-on look at life and work in the tech industry, it can also shine a light on some it’s unfortunate realities. As product designers, how do we respond to those realities, and still maintain a hopeful outlook that helps us build great products.

Sell Out and Save the World! Virginia Roberts

Working in tech can be both inspiring and discouraging--it can feel like everyone is working for the hottest new startup that will change the future as we know it. When your own job title is more generic, it can seem uncool by comparison. But there's a flipside to working for bigger corporations--more traditional forms of tech employment can actually empower us to make a bigger impact on the causes that matter most to us. Virginia Roberts tells her tale of going from corporate jobs to indie entrepreneurship and back to corporate, including how her volunteer work has blossomed in a corporate environment. She'll share ideas about how anyone can improve the world in meaningful ways, regardless of how you pay your bills!

Building Periscope Sketches Ben Sandofsky

Periscope’s new “Sketch” feature lets you draw on live video. This talk takes you behind the scenes, from prototype to production code, with all the bugs along the way. If you’ve never worked in low-level graphics, this talk is for you.

Radical Hospitality - One Shower at a Time Leah Filler

What if you couldn’t take a shower when you needed one? For over 7,500 people experiencing homelessness in San Francisco, this is the daily reality - only 16 public shower stalls are available on a drop-in basis for the thousands of men, women, and children living on our streets.

Lava Mae is not your average San Francisco startup. The nonprofit mobile hygiene service for the homeless began by repurposing retired transportation buses into showers and toilets on wheels. Today, Lava Mae’s mobile revolution is taking Radical Hospitality to the streets and bringing humanity, innovation, and collaboration to the way homeless services are provided. In a world where we increasingly connect more to our digital devices than to each other, where being homeless often means being invisible, Lava Mae believes that compassion is as simple as honoring another’s humanity. Join Leah Filler, founding team member, to debunk myths about homelessness and learn about the innovative solutions being born right here in San Francisco.

Playgrounds: teach nerdy stuff in a fun and efficient way! Fernando Rodriguez

Playgrounds have been among the most promising features of Swift, since the very first time we saw our now favorite bird. Unfortunately many of the features used to create rich and interactive playgrounds were not public at that time or were not stable enough for prime time.

As we approach Swift 3.0, playgrounds are finally ready to fulfill their role as fundamental tools to learn and teach programming. With multiple pages, interactive views, embedded code, markup, video and embedded assets, they set a foundation on top of which a great learning experience can be built.

At Udacity, we’re working on using playgrounds for teaching, evaluation via quizzes and exercises to improve the students skills. In a nutshell, we’re using playgrounds to fulfill the dream of teaching nerdy stuff in a fun and effective way!

Duty of Care Brent Simmons

This history of the Mac and iOS community is told almost entirely in the form of digressions — covered topics include squirrels, disco, and Nate Eror. Warning: there may be a sing-along.

A Developer's Routine to Stay Focused and Productive Mike Spratt

This talk will explain how to create a daily routine to manage your personal life and your projects. Tips will be provided for staying on track and staying motivated. This will improve a developer's daily work life and help prepare for the future.

How (not) to write an iOS SDK Conrad Kramer

I'll be picking apart what makes an SDK great to work with, and conversely, illustrating some common pitfalls that SDK developers fall into. Everything from the language an SDK is written in, to the build system it uses, to the platforms it supports (hint: all of them) and more. I'll also go over some ways to go that extra mile when building an SDK.

Type Erasure Magic Hector Matos

In a world where the Swift Protocol is King and Generics are our Queen, we seem to have trouble working with both together in perfect harmony. Is it possible for a hero to arise that can bring these two concepts together and make them work for us instead of against us?

Here's to hoping that Type Erasure can be that Hero.

In this talk I'll be explaining some shortcomings in Swift when working with Generics and Protocols and what type erasure is at a high level. Even more importantly, I'll explain why we need it when working with Protocols and Generics by giving a real world example of Type Erasure in an App Store app.

So far, a common question asked is why we would ever want to use Type Erasure in Swift. By the end of this talk I hope for the audience to have a better idea of how they can use generics and protocols together in their own applications and that type erasure can not only be easy, but useful.
Thursday Theater 2 Theater 3

Saving Lives… with iBeacons!! Evan Stone

You’ve probably heard of iBeacons. But have you seen them up close? Or developed apps for them? iBeacon technology is a fun and easy way to start working with Bluetooth Low Energy devices. Cloud City Development has been working with Pop Up Labs at MIT to help develop a solution for educating health professionals about the Maker Movement and how it positively affects the medical community. With the help of iBeacons, health professionals have learned how to start creating their own devices and tools!

In this talk, I will first introduce iBeacons. Then I’ll show an example in Swift how to interact with iBeacons within an iOS app. Finally I’ll demonstrate how iBeacons in a Medical Maker Kit, coupled with the Medical Make app for iPad, help medical staff to learn about the items in the kit, which enables them to get creative, build new projects, and ultimately save lives! This talk will give you a glimpse of what can be accomplished with iBeacons and will encourage you to think of new ways in which Bluetooth Low Energy devices like iBeacons can be used to design and develop creative solutions that enhance the experience of life!

A Startup’s Secret Weapon: The Product Engineer Alicia Liu

Startups often require employees to take on multiple roles, and one such combination is for an engineer to take on product management functions. In this talk, you will learn what a product engineer role looks like, why you should be a product engineer, and how to become one. I will discuss why product engineers are an invaluable asset to an early-stage startup, and how having product engineers result in better products and happier developers. This talk relates my experience over nearly a decade in the trenches of early-stage startups, as a founder, and most recently as CTO at

Be the quality you want to see in your app [Swift edition] Simone Civetta

Once upon a time, back in the dark ages of Objective-C, monitoring the quality metrics of a codebase was a cumbersome operation, which involved the setup of obscure tools and easily produced unreliable results.

Times have changed and, just a few months after the announcement of Swift, it is now straightforward for iOS and OS X developers to improve their toolbelts and analyse the evolution of their code throughout the weeks.

During this talk you will discover why and how to monitor your codebase’s health, by leveraging metrics such as code complexity, duplication, coverage and others, by adopting open-source tools such as Fastlane, Lizard, SwiftLint, Slather, and the Swift SonarQube plugin.

Know the World and Make it Better Mike Lee

No one at a technology conference is operating in a vacuum. The platform, your team, our community, the infrastructure—we are in a certain place in history, and our actions today affect which tomorrow becomes our yesterday. As technologists, we are the ones bringing the future. We are the catalysts accelerating the workflows that steer our civilization toward our shared destiny, for better or for worse. Our ability to navigate accurately relies on knowing where we are, and how we got here. We cannot responsibly build the future without having at least a basic understanding of the recent past.

This will be the latest in a series of talks about things I've learned since leaving Apple to travel the globe, experience different cultures, and think about the world's problems. This talk is not for everyone. This is a serious talk for people who want to change the world. We will be talking about subjects not talked about, and you will see things, learn things, and feel things you may not be comfortable with. If you attend this talk, you must be prepared to be confronted with the world as it is, and to leave feeling the weight of a burden carried by all who would seek to know the world and make it better.

Turning UIKit Inside Out Benjamin Encz

"Swift developers tend to favor a declarative programming style, UIKit requires the opposite. UIKit mostly works on delegates and callback blocks that provide data to the framework and influence what is rendered on the screen. Forcing our Swift code into this architecture often results in code that is difficult to understand & maintain.

What if we could turn this inside out? What if the view layer was simply a mapping of our data layer, not requiring delegation or callbacks?"

Writing software to make a difference Bill Atkinson

Writing software can be a great means of personal expression, using engineering in the service of art and social change. I was fortunate to join Apple 38 years ago, and I had an amazing experience making tools to empower creative people. My work on the graphical user interface, QuickDraw, MacPaint, and HyperCard was published by Apple and changed the lives of millions of people.

At 65, I am still writing software, empowering people to express heart connection with beautiful custom postcards. For PhotoCard, I have had to learn whole new sets of programming skills to create an iOS app, the server software behind it, and the production software that I operate to print and mail the cards. I have even had to learn a lot about the postal service. I have been working on PhotoCard for over seven years. I have learned a lot along the way, and I have adjusted my goals. Originally I wanted a more affordable way for people to be inspired by my nature photos, but along the way I found it more personally nourishing to witness the little packets of love that people share by postcard using their own photos of family moments.

Cross-platform Swift Boris Bügling

"Swift is now not only available on all four Apple platforms, but also on Linux — and possibly soon elsewhere as well. Each platform has some peculiarities, but we want to write at least some of our code in a way that works on all of them, e.g. to share a piece of business logic between our iOS application and the server-side. This talk gives an overview on which APIs are available cross-platform and how we can effectively build components that work everywhere.

We will also look into how the Swift runtime differs between the Apple platforms and the ones supported only by open source Swift. Hopefully, there will also be a section on how to use Swift on Android in practice, but this still depends on how feasible this is going to be at the point the talk is given."

Creating the Future Ken Case

At the Omni Group, we’re working hard to make iPad Pro the best platform it can be. When Tim Cook introduced iPad Pro last September, he said: “iPad is the clearest expression of our vision of the future of personal computing: a simple, multi-touch piece of glass that instantly transforms into virtually anything that you want it to be.” I still find that vision as compelling as when we decided to go “iPad or Bust!” when iPad was introduced in 2010, and if we truly want to achieve that vision we still have a lot of work to do to bring more of the power of the desktop to that transforming piece of glass.

From empowering customers with automated workflows to providing free software trials and upgrade pricing on the App Store, I'll be sharing some of the projects Omni has been working on to create that future.

Practical Core Bluetooth in IoT & Wearable projects Shuichi Tsutsumi

In recent years, "IoT" or "Wearable" are one of buzzwords, so you might have interests in building hardware products. But learning how to develop electric circuits, mechanical systems or embedded systems etc. from zero is so difficult.

However, iOS developers can contribute to projects of hardware products with the knowledge of Core Bluetooth / Bluetooth Low Energy (BLE), even if they are not familiar with hardware layer.

In this session, you can learn the basics of Core Bluetooth / BLE (what it is, why we use it, and how it works), and practical knowledges to build apps for hardware products (how to design the apps, how to test without actual hardware prototypes, troubleshooting tips, and how the apps can be reviewed by Apple) which I learned through actual IoT/Wearable projects.

This would be interesting & understandable even if you are not familiar with or have no interests in Core Bluetooth because of the actual examples.

What the Functor is a Monad Daniel Steinberg

You don’t need to learn Category Theory or deep mathematics to understand Swift, but a basic understanding of some fundamental principles can go a long way. In this session, we’ll look at some often-mentioned ideas that will help you visualize what is going on with functional programming in Swift.

Advanced ObjC<->Swift Interoperability Nikita Lutsenko

The talk dives deep into how you can build apps and frameworks using both ObjC and Swift at the same time and what are the limitations right now, what is coming in Swift 3.0 and what is the benefit of this approach. Working and leading Apple platforms SDKs at Parse and Open Source at Facebook, including first Facebook contribution to Swift - BoltsSwift as well as SDK and realtime client for Parse, KVOController and pop animation library, so the talk takes examples from all of this work.

Stylish Developers Guide to Unit Testing in Swift Jaim Zuber

Unit testing is like eating your vegetables. We know we should do it, but can always find an excuse not to. The Unit Test evangelists aren’t much help. They tout endless benefits while providing trivial code examples that don’t match what iOS developers need to build. The evangelists don’t tell you that learning to write testable code is hard. Even if you mastered testing in Objective-C, the static typing of Swift requires a new batch of techniques.

This presentation will cut through the hype and give production proven techniques to get your apps under test. We’ll point out the common patterns that make testing hard and provide better alternatives.

We’ll answer questions like:
How do I test my ViewControllers?
How can I test Storyboard code?
How do I survive without a mocking library or partial mocks?

Learning to write testable code may be hard, but at the other end is more reliable code. As a bonus, learning to write unit tests makes your code better, even when you’re not writing tests.

WWDC Week In Review (except for Friday) James Dempsey

We don’t know what Apple is going to do, until the keynote and most of the sessions are through. But the only remaining WWDC 2016 mystery on Thursday afternoon is who the band will be at the bash. So, join James for his third year closing AltConf with a humorous and easy-going look back at the announcements of WWDC 2016 and what they might mean for us going forward. There may also be a bit involving a ukulele.

Watch the videos from 2015 at