try! Swift is an immersive community gathering about Swift Language Best Practices, Application Development in Swift, Server-Side Swift, Open Source Swift, and the Swift Community. It will take place in Tokyo with talks from community experts on March 2nd and 3rd, and a Swift hackathon on March 4th.
All talks will be simultaneously translated from either Japanese to English or English to Japanese.
We’ve sold out of tickets for the latest batch but will be releasing more shortly.
Sign up for an invite!
Meet The Speakers
Felix has been building iOS apps for 4 years, before starting to work on iOS developer tools. He built fastlane during college, which got acquired by Twitter last year. Since then Felix works full-time on open source developer tools, mostly focused on mobile developers.
Agnes Vasarhelyi is an iOS developer at Ustream. She likes to build up software from streams of values and automate things in the meantime. Her blog tells you about reactive programming and her tweets about organizing community events.
Soroush Khanlou is a New York-based iOS consultant. He’s written apps for the New Yorker, David Chang’s Ando, Rap Genius, and non-profits like Urban Archive. He blogs about programming at khanlou.com, mostly making fun of view controllers. In his free time, he runs, bakes bread and pastries, and collects suitcases.
Kyle Fuller started developing Swift the very day it was announced and he hasn’t looked back since. He’s an active contributor in the open-source Swift scene with more projects than he can count.
Meghan is an iOS developer at SoundCloud in Berlin. She is passionate about encouraging people to learn to code and breaking down any barriers to entry to the world of programming. When not coding, Meghan can usually be found cycling or playing board games.
Sommer Panage is currently the lead iOS developer at Chorus Fitness. Before taking on this role, she spent two years as a freelance iOS dev while pursing a career as professional circus artist and instructor. Previously, she worked as the head of Mobile Accessibility on iOS and Android at Twitter. Prior to Twitter, Sommer worked on the iOS team at Apple. She earned her BA in Psychology and MS in Computer Science at Stanford University. When she is not Swifting away, you can find her training rope, trapeze or handstands, running or even doing CrossFit. You can follow her on Twitter at @sommer.
Jon Reid works as an iOS developer at American Express, with the made-up job title 'Code Janitor'. Jon is new to Swift, but has been doing Test Driven Development since 2001. He was born in Tokyo, once worked at Tohoku Gakuin University in Sendai, and is excited to return to Japan!
Alexis is as an independent consultant, building all sorts of systems with Swift, Clojure, bash, a heartfelt sincerity, a nagging skepticism, and the motley wisdom from his past adventures in science, finance, and comedy. Twitter: @alexisgallagher
Brandon did math for a very long time, and is now a developer at Kickstarter, contributing to iOS, Android, and web. He enjoys talking about functional programming and how to use it to better our craft as engineers.
Mo is the Lead iOS Engineer at VINA, an app that helps connect women for friendship and community. Before that, she worked on the Twitter iPhone app. As her alter ego DJ/producer/occasional mermaid dpeshMo, she spends nights/weekends crafting beats and connecting people via all the right house & techno vibes.
Feeling he was living too extravagant of a lifestyle of ramen and subsidized bus passes, Eric Wing graduated (kicking and screaming) from the University of California at San Diego with a Masters degree n Computer Engineering just days before 9/11. In the following quest for free food, he worked a wide range of jobs in the field from automated testing on orbiting satellite systems to scientific visualization with a variety of different operating systems and programming languages. But in a stroke of genius (actually, it was more likely just a stroke), he figured out how he could work even harder for no money and started working on open source projects. He has been a contributor to projects such as SDL (Simple DirectMedia Layer), OpenSceneGraph, and LuaCocoa. And when he was offered a co-authorship of Beginning iPhone Games Development, how could he possibly refuse the idea of even more hard work for virtually no pay? Then in a flash of brilliance (or more likely electrocution performing an ill-advised hardware upgrade), he realized he could top himself doing startups with their relentless amount of work and possible financial losses. He became the Chief Architect for Corona SDK and then co-founder of Lanica building a native game engine for Appcelerator. And now he is working on his craziest endeavor yet, Blurrr SDK.
Rikke Møller Koblauch
Product designer crafting for the small screens. Designing experiences for everything from big global brands to personal side projects.
Laura is an iOS Engineer at Meetup, where she just recently completed a full redesign and rewrite of the mobile app in Swift. Though she holds a degree in mechanical engineering with a concentration in robotics, she pivoted after deciding that smartphones were doing a better job of taking over the world. In her spare time, Laura writes Pebble watch apps from a couch in Brooklyn, NY alongside her basset hound Hollie.
Krzysztof (or Chris) is an iOS developer at Polidea, a hardware-friendly software house in Warsaw, Poland. He's a co-organizer of Mobile Warsaw, a community for mobile developers, and a Swift enthusiast. A cultural anthropologist by training, he tries to see programming techniques from a humanistic perspective.
Yusuke Ito is an architect at Shiroyagi Corporation and an engineer at HANDS MEMORY, designing whole architecture and engineering of various web services. He started Cocoa in 2006, and has been working on the Apple platform after the iPhone Jailbreaking community in Japan. His personal project is creating Hi-Fi audio devices.
Kazuaki MATSUO was the first test engineer to join Cookpad a few years ago. He has been focusing on testing and improving the quality of Cookpad's web services and iOS and Android mobile applications. He has been doing manual testing, test automation, working improving the development process... The "cocoa" used in his Twitter or GitHub account comes from the Cocoa framework, because of the influence he got from working on iOS applications at university.
Orta Therox is a developer at Artsy, where he’s helped move the company towards doing Open Source by Default. He’s helped run CocoaPods for the last 4 years and has been working on Danger for the last year.
Christopher has been developing software at Line in Tokyo for 8 years, for iOS since iOS 4, and in Swift since 1.0.
Marius has been developing mobile & web applications ever since he graduated from university. In more recent years, he's shifted his focus towards mobile development, especially iOS and Objective-C, and since it came out a growing portion of Swift. With his work on the CocoaPods team, he hasn't forgotten about Ruby either. Since he joined Realm, he has also become more involved in the mobile community, presenting at many conferences.
Derek has been immersed in iOS development for the last 5 years and has most recently been practicing Lean Product Development as a full-stack software engineer at Pivotal Labs' Tokyo office. He’s most passionate about TDD, writing clean code, and object-oriented design. Outside of Pivotal he makes time for his pet project 'Groove Freedom': an iPad app he built to help drummers practice more effectively. For maintaining good work/life balance Derek can also be found drumming, lifting weights, practicing meditation and co-organizing the Tokyo iOS Meetup.
Software engineer at Zalando. Mobile development enthusiast, Swift nerd.
The Lighting Talk CfP for attendees is officially closed. Selected presenters have been notified and confirmed.
Meet The Organizers
Natasha is an iOS developer by day and a robot by night. She blogs about Swift, watchOS, and iOS development on her blog, natashatherobot.com, curates a fast-growing weekly Swift newsletter, This Week in Swift, and organizes the try! Swift Conference around the world (including this one!). She's currently living the digital nomad life as her alter identity: @NatashaTheNomad.
Katsumi Kishikawa is an iOS/macX developer working at Realm. He has serial open source library developer, and has published some popular libraries on GitHub. He has large contributed to iOS developer community in Japan with his experience and knowledge.
Kazunobu Tasaka is an iOS developer at CyberAgent. He has been developing AbemaTV for iOS. Before that, he had worked on Ameba Blog and Ameba Platform SDK. On weekend, he enjoys Japanese sake🍶 and watching soccer games.
Satoshi is a Japanese iOS freelancer. He is currently making an iOS app called Player! and sometimes translates Realm news into Japanese. He also organizes some iOS meetups around Japan. And, he likes pancakes so much that he tries cooking pancakes. It doesn't look appetizing, but it tastes pretty good ¯\_(ツ)_/¯
Himi Sato is a Co-founder of Women Who Code Tokyo. Women Who Code (WWCode) is global non-profit dedicated to inspiring women to excel in technology careers. We work to support this generation in being and becoming leaders and role models in the tech industry. She likes coding Swift and joined at try!Swift as a speaker last time. She loves travelling, music, watching sports and seeing with new people!
Shingo Sato ( a.k.a akio0911 ) is a Japanese iOS freelancer. He is currently making an iOS app called FiNC and SO by MIDORI.so. He also holds a lecture about iOS app developing called App Creator Dojo across Japan.And, he has colorful hair. It's not wig. It's his natural hair.
Matt Gillingham is currently co-founder and CTO of Eventacular. He has been developing on the iOS platform for 8 years and has organized the monthly Tokyo iOS Meetup for 6 years. He knows kung fu.
Nino Sakuma ( a. k. a. yucovin ) is a designer and a painter in Japan. She loves Apple products so much that she became an iOS developer. Her hobby is playing the violin in an amateur orchestra. The new try! Swift bird is designed by her.
We are committed to providing a safe space for all of our attendees, speakers, and volunteers. Our Code of Conduct can be read in full on GitHub here.
8:30 - Registration & Breakfast
9:45 - Opening Remarks
Everything a Swift Developer Wanted to Know about Machine Learning But Was Afraid To Ask
The news says machine learning is the Next Big Thing.
But machine learning is happening way _over there_, on servers, in universities and in big companies with big data. What is it really, and what does it mean for _over here_, on mobile, in Swift? Are we --gulp-- legacy tech?
This talk will present a fast, concrete, down-to-earth survey of machine learning, from the perspective of iOS & Swift, summarizing the main techniques, tools, and learning resources. It'll outline how TensorFlow is like AVFoundation, how model training is like UI design, and how you can use iOS to gather big (enough) data and to exercise modern models using fast native code.
10:20 - Swift on Android
Swift on Android
This talk will give you a conceptual understanding of how Swift works on Android and how you can use it. The first part of the talk focuses on how to make Swift (just the core language) work on Android, including an introduction to the Android NDK. The second part will focus on libraries and how to write (shippable) apps with Swift on Android. We will discuss both native Android APIs as well as the more tantalizing idea of how to do cross-platform development with Swift (e.g. iOS, Mac, Linux, Windows?).
11:05 - Break
11:40 - Swift's Pointy Bits
Swift's Pointy Bits
Swift offers remarkable performance while still providing safety through strong types, value semantics, and automatic memory management. For those times when you need to step outside those boundaries, however, Swift also offers tools to directly allocate and manipulate memory. This talk will explore the ins and outs of Swift’s take on pointers: typed and raw pointers and buffers, implicit bridging and casting, and some tips on how to stay safe while using unsafe APIs.
3D Touch: Bring your apps to a new dimension
In this talk, we’ll learn about what the 3D Touch APIs have to offer and best practices for using them. We’ll see what is provided out of the box and what customizations were added in iOS10. Throughout the talk, we'll explore some cool examples of how to add 3D Touch support to your apps today.
12:30 - Pixels, process and passion
Pixels, process and passion
This talk will be about all the in-between stuff when it comes to building products. Focusing on the process rather than the outcome and letting passion and people be the driver. I will tell about my latest personal project and how i've learned to fall in love with problems rather than a solutions.
13:00 - Lunch
14:30 - Everyday Reactive
In this talk, we'll walk through some practical uses of reactive programming in app development, using examples from my daily experiences. We'll explore tips and tricks for determining when reactive programming can be a potent tool, as well as scenarios to avoid that might threaten code quality and performance. The talk will focus on concepts in reactive programming, the code will show off different Swift reactive implementations.
14:55 - ⚡️🎤 The Safety of Unsafe Swift
The Safety of Unsafe SwiftSwift protects you from undefined behavior by not allowing direct memory access by default. The Swift unsafe APIs help you construct code that is highly readable and only unsafe where it has to be.
15:05 - Tasting tests at Cookpad
Tasting tests at Cookpad
Quality and Tests often depend on the contexts for services and apps. Lets’s taste how we have tested our iOS app at Cookpad to guarantee the quality to the app. Especially, I’ll focus on automated tests. Not only challenge our several activities to growth our service but also convert Objective-C to Swift, ...etc. Development environment for iOS app also changes so swiftly. Meanwhile, we should growth our app and continue to release our app frequently.
15:25 - ⚡️🎤 Isolating your Data Layer
Isolating your Data LayerIn a truly layered architecture (MVVM, Viper, etc), the data layer should be relegated to it's own layer - every other piece just wants the data. Unfortunately with Core Data, and other technologies, such as Realm, the actual implementation details (threads, contexts) of this layer tend to leak into other layers or view logic. This makes for an architecture the is harder to scale. This can be solved using plain old swift objects (POSOs), paired with an understanding of what you lose, and how to overcome it. We will discuss how to move to POSOs while maintaining performance.
15:35 - Writing your UI Swiftly
Writing your UI Swiftly
In this talk, we will explore how the structure and properties of the Swift Language make writing your application and UI code simpler. We will take a look at common pitfalls and challenges in building our UI layer and, for each one, we will examine a Swifty way to improve upon it. The talk will examine modeling view state with enums, useful 3rd party Swift libraries, unifying views via protocols, and more.
16:00 - Break
Building a Swift Web API and Application Together
In this talk, I'm going to share my experiences building a Web API in Swift to power a one of our iOS applications. I'll cover how we replaced some of our existing infrastructure and web services with Swift. We will explore what it takes to build a web service in Swift and how to design and consume an API that can evolve over years, leveraging hypermedia and declarative programming.
16:50 - ⚡️🎤 Swift Chatbots for Fun and Profit
Swift Chatbots for Fun and ProfitHow I built a chatbot in Swift to create a custom, personalized language learning tool to help me learn Japanese, and why chatbots are a great, practical solution for building useful tools.
Craft Collaborative Apps with Realm
This talk will introduce into the open-source Realm Mobile Database and show how Realm Mobile Platforms completes it with server-side components. Using this allows you to treat synchronization and network as an implementation detail of your technology stack. Features like live collaboration, which would have been a major undertaking, become all of the sudden easily available to every developer. This talk shows you how you can build apps in a reactive manner on base of a database which takes care of the rest.
17:30 - Building your own tools
Building your own tools
You want to build your apps using the least amount of code, quickly, with the largest impact. You do this by finding the right abstractions, which takes years of practice. The Artsy mobile team have multiple apps with Swift, but that is not the future of our applications. This talk covers the build up to using Swift, and how that triggered the discussion that lead to our usage of React Native.
Providing Better Feedback in Real-time Object Detection AppsRecent advances in computer vision technology and computational resources have made it easier to build real-time object detection apps on iOS devices than before. However, implementing detection logics on devices itself is only a part of an app development. Combining it with user interaction and providing appropriate feedbacks are crucial for user-friendly apps. In this lightning talk, I would like to talk about real problems we have faced and solved to give better feedbacks while developing Wantedly People, an iOS app that scans business cards in camera instantly.
18:10 - ⚡️🎤 How to be a UX Engineer
How to be a UX EngineerBeing a good coding skill engineer doesn't mean you can build up good services. This talk will give you some idea about why engineers should think about UX and how to do that.
9:00 - Breakfast
9:45 - Opening Remarks
The Two Sides of Writing Testable Code
There are precisely two things that make functions fully testable: the isolation of effects and the surfacing of 'co-effects'. We will explore a bit of the formal theory behind these two sides, and show how they lead to code that can be easily tested. We will also show how we do this at Kickstarter by diving into our recently open sourced codebase.
Everything You Ever Wanted To Know About Sequence and Collection
Let's take a deep dive into Sequence and Collection. We'll build a `LinkedList` implementation to explore Sequences and how Iterators interact with them. We'll talk about Collection, and its related protocols and types, like Index, Sliceable, and MutableCollection, and how they each interplay. By the end, you'll know more than you ever wanted to know about Sequence and Collection.
11:00 - Break
11:30 - Swift Outside the Box
Swift Outside the Box
There are times when we want to use Swift on different platforms or in unconventional circumstance. However, for now it is hard because there are only a few libraries outside of Apple's platform. This talk will introduce practices using libraries written in C or Swift with server-side examples.
11:50 - ⚡️🎤 VR Innovation
VR InnovationVirtual, augmented reality and 360-degree shooting technologies have reached beyond gamers or expensive pilot training rooms. Real-life applications have been realized in multiple industries and are already providing businesses with new channels to engage customers and provide them with new experiences. Let’s take a look at some exciting examples.
Document Indexing and App Search in iOS
We, as programmers, are interested in promoting our product and want users to have only easy and pleasant experience. Nevertheless, there are thousands of new applications appearing on the App Store every day and even if the user has downloaded our app, it can be lost among dozens of others on the device. It is clear, though, that we do not want our users to forget about our product but use it regularly and actively. We can use a lot of tricks and stunts, one of them is the App Indexing feature, that we are using actively in Zalando. It shows great results and works brilliant for us, and made the app even more accessible and recognizable in Spotlight and Web. In my talk I am going to explain how we are using the App Search features for iOS in the Zalando application, present some other App Search features for different types of content, share experience and examples. This talk is intended to show different approaches, prevent developers from mistakes we made, and inspire with results we have.
12:30 - Startup Swift
Startup teams are tiny yet they must deliver significant product changes on a regular basis. This can lead to some pretty hastily written and rewritten code – luckily Swift’s got your back. In this talk I’ll share lessons learned over the past year picking up Swift while taking the Hey! VINA app from MVP to thousands of daily users, and what language features give you the flexibility to make bold moves, stay scrappy and deliver a stable app.
13:00 - Lunch
14:30 - A Neatly Typed Message
A Neatly Typed Message
The talk is about the readability of Swift code. I'll treat it not as a well-defined goal to achieve, but as a spectrum that you need to decide where to land on. Looking at the variations of popular Cocoa patterns and Swift language constructs we'll identify their readability tradeoffs and chances for improvement. We'll also learn some fine techniques to widen readability spectrum using the power of the Swift type system.
14:50 - ⚡️🎤 App Transport Security for Busy Devs
App Transport Security for Busy DevsAt WWDC 2016, Apple made an announcement that ATS(App Transport Security) will be required. However, as you know, this is still not happening. New keys related to ATS for Info.plist were introduced in iOS10, but the specification is different over every minor versions. In this LT, I bet you will be able to master ATS, that specification is still vague and lack of information, in 5 min.
Color Me Surprised!: Architecting a Robust Color System with Swift
More companies than ever are redesigning their apps to appeal to vibrant, growing audiences. In this talk, we'll discuss strategies for architecting a robust color system capable of scaling to projects of all sizes. We'll walk through how these approaches can be utilized to rapidly iterate on design decisions and may be adapted to modify color palette themes at runtime. We'll conclude with a demonstration of how these skills can be extended to aid those with color vision concerns using the exciting new color filter accessibility features introduced in iOS 10.
15:25 - ⚡️🎤 Server-Side Swift Live Coding
15:35 - Making Mock Objects More Useful
Making Mock Objects More Useful
In Swift, we make mock objects by hand. Their design shapes the way we write unit tests. Can we make mock objects more powerful, so that our tests are more expressive? What can we learn from mocking libraries? Jon Reid will bring his background of writing the Objective-C library OCMockito and apply it to hand-made mocks in Swift.
16:00 - Break
Minimizing Decision Fatigue to Improve Team Productivity
As software engineers we continuously make decisions with each line of code that we write. The amount of time and energy required for this determines if this process will allow us and our teams to work productively or if it will bog us down. In this talk, Derek shares his personal experiences on how to improve team efficiency by minimizing decision fatigue in our Swift development while at the same time improving our team's communication and collaboration.
16:50 - ⚡️🎤 Client-Side Deep Learning
Client-Side Deep LearningIn iOS 10, the convolution neural network (CNN) API has been added as a part of Metal Performance Shaders framework. You can now take advantage of GPU on iOS devices to run brazing fast CNN computation. In other word, you can use outcome of cutting edge deep learning technologies on your device even while offline. This LT will present you the quick overview of the implementation and its demo.
Lessons in Swift Error Handling and Resilience
When writing software, we like to think more about the happy path and less about potential failures. However, the more connected and the more persistent an app becomes, the more branched your code paths will become. In this talk, I will share some lessons learned dealing with various types of errors in Line to help your app become more resilient to them and to make 'unhappy paths' a little less gloomy for your users and for those who maintain it.
17:30 - Scaling open source communities
Scaling open source communities
I'll be talking about the different stages of open source projects, how handling PRs and support change with scale and how to keep innovating with a bigger user base. With that in mind, I'll go into detail on how developers can solve those problems, in particular automating workflows, staying in closer contact with contributors and improving your product and documentation.
18:00 - ⚡️🎤 👾 & ⌚
👾 & ⌚This talk will tell you about the game development method that runs on watchOS 3. Try remembering the nostalgic game that runs with the latest device.
18:10 - ⚡️🎤 Why We Climb
Why We ClimbBouldering is chosen as an official event at the 2010 Tokyo Olympic. Today, I would like to introduce that Bouldering is the best sports for Swift engineers. Anyone who has never tried it, try by all means.
18:30 - Closing / Announcements
19:00 - Party 🎉
9:00 - Breakfast
9:30 - Opening Remarks
9:45 - Ideathon / Group Formation
10:30 - API Workshops
11:00 - Hackathon coding begins
13:00 - Lunch
14:00 - Hackathon coding continues
18:00 - Hackathon coding ends
18:30 - Presentations
20:00 - Winner Announcements
You Are Blocking Our Sponsors
We noticed that you are running ad blocking software. While we cannot hack into your computer and prevent you from doing so, we also cannot run our event without the support of our sponsors.
Please consider turning off your ad block software for this website. Thanks.
Interested in sponsoring or want more information? Send us an email at [email protected].
Conference Venue (March 2nd and 3rd)
Hackathon Venue (March 4th)
Some of our sponsors will be hosting additional workshops during the hackathon:
try! Realm workshop
- March 4th, 11:00 am - 18:00 pm
try! Swift Tokyo スピンオフ企画 -Swiftで書ける!サーバーサイドアプリ-
- March 4th, 11:00 am - 18:00 pm
Intro to cross-platform 2D game programming with SDL
There are more opportunities to connect with the Swift community in Tokyo
try! Swift Tokyo 2017 RejectCon
- February 28th, 8:00 pm - 10:30 pm
- 1-6-1 三井住友海上テプコビル 8F, Kyobashi, Chuo-ku, Tokyo, 104-0031
Swift Meetup in Tokyo with healthy Japanese foods
- February 28th, 6:30 pm - 10:00 pm
- Shin-Yurakucho Bldg. 5F 1-21-1 Yurakucho, Chiyoda-ku, Tokyo
fastlane Meetup Japan
- March 1st, 3:00 pm - 6:00 pm
- ARK Mori Building, 3rd Floor (ARK Hills) 1-12-32, Akasaka, Mitato-ku, Tokyo
Tokyo iOS Meetup
- March 5th, 11:00 am - 1:00 pm
- 8-16 Shinsencho, Shibuya, Tokyo, 渋谷ファーストプレイス 1st Floor