Forward Swift Schedule


March 2nd, 2017

8:30am
9:00am

Registration

Break & Sponsor Area: Emerald Ballroom
Come say hello and grab your name badge!

Registration

Break & Sponsor Area : Emerald Ballroom
08:30am - 09:00am

9:00am
9:55am

[NEW] Panel: Design and Architecture of Applications

Rachel Bobbins, Kristina Thai, Tripta Gupta, Dani Arnaout, and Christian Schlensker
Swift: Crystal Room

[NEW] Panel: Design and Architecture of Applications

Rachel Bobbins, Kristina Thai, Tripta Gupta, Dani Arnaout, and Christian Schlensker
Swift : Crystal Room
09:00am - 09:55am

Developers have tons of ways to build applications. We'll explore how our panelists approach the process, patterns, and design of an iOS app from the beginning and how it evolves over the life of the project.

Moderated by Rachel Bobbins.

10:00am
10:15am

[NEW] Swiftly Separating the What From The How in UI Tests

Ellen Shapiro
Swift: Crystal Room

[NEW] Swiftly Separating the What From The How in UI Tests

Ellen Shapiro
Swift : Crystal Room
10:00am - 10:15am

There are some solid options out there for UI testing: KIF, XCUI, and now EarlGrey. How can you make sure that you're always using an up-to-date test framework without too tightly coupling your tests to a particular framework? How can you make an apples to apples comparison of which framework works better or faster for your app? There's a pattern which goes by several names, but "Robots" sounds much more fun than "Controllers", so let's say...Robots! Learn how to take advantage of Swift language features to create super-flexible UI testing Robots that allow you to swap out the underlying method of your UI tests super-easily, while keeping your test logic clear and readable.

10:15am
11:00am

Coffee Break

Break & Sponsor Area: Emerald Ballroom
Walk through the long hallway to procure a delicious burst of energy.

Coffee Break

Break & Sponsor Area : Emerald Ballroom
10:15am - 11:00am

11:00am
11:30am

[NEW] Fun with Type Introspection, Mirroring and Reflection

Edward Valentini
Swift: Crystal Room

[NEW] Fun with Type Introspection, Mirroring and Reflection

Edward Valentini
Swift : Crystal Room
11:00am - 11:30am

A look into type introspection in swift illustrating what information you can get about swift types dynamically at runtime.. with some examples.

11:30am
11:45am

[NEW] iMessage Extensions - A brief overview

Shruti Malugu
Swift: Crystal Room

[NEW] iMessage Extensions - A brief overview

Shruti Malugu
Swift : Crystal Room
11:30am - 11:45am

This talk will provide a high level overview of the iOS 10 iMessage framework API. iMessage framework is the new iOS extension that allows the mobile developers to create “mini” apps that can be accessed within the iMessage app.

This enables users to achieve task completion while staying within the context of the conversation. Eg: deciding on movie to watch, a restaurant to meet. The talk will include iMessage API and examples of good iMessage apps. At the end of the talk you will leave with a good understanding on how to evaluate if an iMessage extension is good for your app.

11:45am
12:00pm

[NEW] Building Great Workout App for WatchOS

Ethan Fan
Swift: Crystal Room

[NEW] Building Great Workout App for WatchOS

Ethan Fan
Swift : Crystal Room
11:45am - 12:00pm

Learn how your workout app can collect data from Watch sensors and contribute to Activity rings. Gain insight into creating a great standalone Watch experience and see how to display your workouts within the Health app and the Activity app on iOS.

Our current app Gymatic featured in the Apple Watch app store https://itunes.apple.com/us/app/gymatic-auto-workout-log-workout/id1036069872?mt=8

12:00pm
12:50pm

Lunch Time!

Break & Sponsor Area: Emerald Ballroom
Back through the hall you go. Grab a lunch, give a sponsor a hug, and enjoy lunch and an entertaining talk.

Lunch Time!

Break & Sponsor Area : Emerald Ballroom
12:00pm - 12:50pm

12:20pm
12:29pm

[NEW] This is what a Feminist Looks Like

Paul Hudson

[NEW] This is what a Feminist Looks Like

Paul Hudson
12:20pm - 12:29pm

Paul Hudson gets on stage while nobody is looking and speaks into the microphone.

12:30pm
12:45pm

[NEW] Lunch and Learn: Designing Overloaded and Custom Operators

Stephen Tramer

[NEW] Lunch and Learn: Designing Overloaded and Custom Operators

Stephen Tramer
12:30pm - 12:45pm

In this short session, you will learn about design and interface principles which will help you decide when, how, and if to overload operators or design custom operators.

12:50pm
1:20pm

[NEW] Media Frameworks and Swift: This Is Fine

Chris Adamson
Swift: Crystal Room

[NEW] Media Frameworks and Swift: This Is Fine

Chris Adamson
Swift : Crystal Room
12:50pm - 01:20pm

Swift is great for writing iOS and Mac apps, and its creators also mean for it to be used as a systems programming language. However, certain traits about Swift make it officially off-limits for use in some audio/video-processing scenarios. What's the deal, is it not fast enough or what? We'll look at what media apps can and can't do in Swift, and what you're supposed to do instead. We'll also look at strategies for knowing what responsibilities to dole out to Swift and to C, and how to make those parts of your code play nicely with each other.

1:30pm
2:00pm

[NEW] Kitura - What’s Next?

David Okun
Swift: Crystal Room

[NEW] Kitura - What’s Next?

David Okun
Swift : Crystal Room
01:30pm - 02:00pm

The team at IBM have had Kitura in development for over a year now. "Hello, World!" is a thing of the past. So what's next? In this talk, I'll walk you through what IBM have their eyes on next, and how our collaboration with Apple is helping Kitura evolve into the pre-eminent choice for running Swift on the server.

2:00pm
2:30pm

[NEW] What’s This React Native Thing I Keep Hearing About?

Evan K. Stone
Swift: Crystal Room

[NEW] What’s This React Native Thing I Keep Hearing About?

Evan K. Stone
Swift : Crystal Room
02:00pm - 02:30pm

In our daily lives as iOS developers, we can usually happily keep coding away in Swift and ignore what’s going on in other software development communities, like that of JavaScript. However, there may be some advantages to at least becoming familiar with what’s going on in the world of React Native, and in this session you will get an overview of what React Native is, and why it could be a useful addition to your toolbox an iOS developer.

2:30pm
3:10pm

Coffee and Fruit

Break & Sponsor Area: Emerald Ballroom
One cannot survive on coffee alone... although we haven't tested this empirically. Brave the hall for a caffeine update.

Coffee and Fruit

Break & Sponsor Area : Emerald Ballroom
02:30pm - 03:10pm

3:10pm
3:40pm

[NEW] Improve User Onboarding with SFSafariViewController

Edward Jiang
Swift: Crystal Room

[NEW] Improve User Onboarding with SFSafariViewController

Edward Jiang
Swift : Crystal Room
03:10pm - 03:40pm

After downloading a new app, the first thing many users see is a login page. But apps should be smarter than that. SFSafariViewController can enable you to transmit data between your website and iOS app, and improve your user experience.

Learn more about the intricacies of SFSafariViewController, and how to use it within your iOS projects!

3:45pm
4:00pm

[NEW] Rubik's Cubes and Genetic Algorithms in Swift

Javi Soto
Swift: Crystal Room

[NEW] Rubik's Cubes and Genetic Algorithms in Swift

Javi Soto
Swift : Crystal Room
03:45pm - 04:00pm

Genetic Algorithms are a fascinating way of solving problems in computer science inspired by biological evolution. I implemented one in Swift to solve Rubik's Cubes and the results were fascinating.

4:05pm
4:25pm

[NEW] Generic Table View Controllers

Richard Fox
Swift: Crystal Room

[NEW] Generic Table View Controllers

Richard Fox
Swift : Crystal Room
04:05pm - 04:25pm

In this talk Richard discusses building a generic table controller for normal use cases, as well the case for multiple selections. Beyond that he'll go into making your tableViewControllers as static and configurable as possible and think about limitations and improvements for the future.

4:30pm
5:00pm

[NEW] Developing Your Kaizen Plan

Craig Clayton
Swift: Crystal Room

[NEW] Developing Your Kaizen Plan

Craig Clayton
Swift : Crystal Room
04:30pm - 05:00pm

Continuous improvement is something we all strive to do but finding the time to make those improvements are never easy. Early in your career, you work at trying to learn everything you need to know to get better at your craft.  As you progress and get settled in to your field you start to get away from the learning and improving and focus your attention on just getting work done.

In this talk, we will look at what is Kaizen, various types of Kaizen plans, discuss small steps you can take for continuous improvement, and see how you can create a plan to fit your specific goals.

5:00pm
5:20pm

Swift Styled: Doc Comments

Erica Sadun
Swift: Crystal Room

Swift Styled: Doc Comments

Erica Sadun
Swift : Crystal Room
05:00pm - 05:20pm

Erica Sadun talks about some topics from her new book, Swift Styled. Erica will be visiting us over the magic of the internet.

5:30pm
6:30pm

After Party: Lush Lounge

After Party: Lush Lounge
You've made it. Your brain is full and you're ready to relax. Grab some fresh air on the 2.5 block walk to Lush Lounge and have a cucumber gimlet (or whatever you like) on us. You deserve it.

After Party: Lush Lounge

After Party : Lush Lounge
05:30pm - 06:30pm

Come spend some quality time with speakers, attendees, and generally great people. Talk about the great talks you saw and relax before Paul Hudson's courses:

Friday, March 3: macOS Made Easy

Saturday, March 4: Server-side Swift

Don't have your tickets yet? It's never too late, email info@forwardjs.com for a code.

Location (3 minute walk): 1221 Polk Street