Is Swift easy to learn? Does architecture choice matter that much? Can protocol-oriented programming simplify your app hierarchy? It’s easy to repeat accepted wisdom and hope for the best, but if you want to write the best code you need to start challenging
these assumptions. Learn how to do it with Paul Hudson.
Harshit Dwivedi, Coding Blocks
Firebase ML Kit: Mobile Machine Learning Made Easy
At I/O 2018, Google released the Firebase ML Kit which creates various exciting opportunities for Android Developers aiming to build smart apps without having to worry about the nitty-gritty of Machine Learning.
The Firebase ML Kit APIs offer features like face detection, text recognition, object detection, etc.
Your apps can also label a provided image for special characteristics and identify popular landmarks in a picture.
In this talk, you will learn how to use all the APIs available in Firebase ML Kit by using a sample app that utilizes these APIs. Walk through the working of each API and implement them in your own apps.
John C. Fox, Netflix
Building World-Friendly Mobile Apps
On Jan 6, 2016, Netflix expanded its service to nearly 200 countries, becoming the first truly global television network. The Netflix app for iOS is localized in 28 languages, and the developers' team is constantly working to refine the experience across a number of fronts. In his talk John will discuss how Netflix approaches: high-quality localization, dealing with hostile network conditions, A/B testing and more.
Artem Rudoi, Badoo
How We Implemented a Single Design System and Accelerated the Development of the UI
Badoo is the world's largest dating service with an audience of more than 390 million users. The speed of development and the quality of functionality are critical. Balancing these criteria is not easy: Badoo has existed for 12 years, passed through several redesigns, conducts a lot of A/B testing and has an extensive code base.
About a year ago, Badoo began to develop a single design system to support UI applications at the right level which is now used by designers and developers. This helped to achieve the best understanding between developers and designers, and as a result, to accelerate and simplify the development process.
During the introduction of a single design system, the guys faced many problems due to a large amount of legacy code. Artem will tell you how it was refactored and tested during the development process. You are going to learn about the UI autotests system and the way it has affected all the processes.
Ben Pious, Uber
When Syntactic Sugar Goes Sour
Swift’s goal is to be safe enough for applications programming, fast enough for systems programming, interoperate seamlessly with Objective-C, productive enough for scripting and machine learning, and easy enough to teach to children. In the language designer’s own words, “World Domination.” But what’s the cost of these competing priorities?
In this talk, we’ll see how some of the most entertaining and interesting consequences of these conflicting priorities played out in Uber’s multi-million line Swift codebase: Objective-C interop went horribly wrong, a seemingly reasonable design failing because of seemingly arbitrary type system restrictions, and a harrowing example of a bug in the Swift type-checker becoming an integral part of an important library.
Mikhail Funikov, e-Legion
Couritines. Practical Implementation
Learn how to apply сouritines to the production project. Mikhail will talk about the complications that had to be faced, about the pros and cons of applying this approach. Learn when and how you shall integrate сouritines.
Kaushik Gopal, Instacart
Refactoring Mobile App to a Uni-directional State Flow Architecture
Learn how to go to your existing old mobile app and refactor it into one with a powerful architecture.
Laura Morinigo, DMod Labs
Firebase + Flutter
Learn how to use Flutter with Laura Morinigo. Flutter is Google’s mobile app SDK for creating high-quality native interfaces for iOS and Android in record time, is free and opensource. During this talk, we are going to explore this framework and how you can combine it with Firebase to boost your app even more.
Krzysztof Zabłocki, The New York Times
iOS Application Architecture
Dive into the things that really matter for maintainable architecture in iOS apps:
Design Patterns are part of your toolbox, but you need to be pragmatic,
MVC vs MVVM,
ViewController is part of a View layer in both patterns,
The biggest mistake people make with both patterns -> lack of router,
Details about what Flow Coordinator is and how it fits those patterns.
Alexander Simonenko, Alfa-Bank
Evolution of CI\CD Processes for Android Apps. Alfa-Bank Experience
Today the CI\CD issue is one of the most popular across many companies. There are many different solutions and development stories in various companies. In this talk, Alexander will share the Alfa-Bank story of the CI\CD development from the beginning till now.
Crystal Ballroom, Oko Tower, Moscow City, 1st Krasnogvardeiskiy proezd, 21, building 2