Review of Mobius 2017 Moscow conference lectures - leap of faith in mobile technologies
This time it will really be a journey into the past and a jump into new technologies, moreover, at the same time, as, in fact, in the concept of the game itself with the movement of personality in time. And yes, this is a reference to Assassin's Creed , not the historical meaning of the term “leap of faith.”
And we’ll also talk about games, but about adults. How to make an application only for online, without the need to download, and vice versa, an application that does not require a network connection.
Perhaps I’ll even be missed the not-so-standard format for the review post and the picture with all the conference speakers will be after the cut.
And this time, we won’t have an opening keynote, i.e. each report of the first time slot is a small keynote, and there will be no time to swing. Go to the prod!
What to expect from reports at the conference and where you can get with them - under the cut. Whether our vision coincides with reality or not is up to the participants of Mobius 2017 Moscow .
So, for starters, let's get acquainted with the list of speakers in general. Perhaps you will like someone visually, and you immediately scroll to it. But if, nevertheless, you are a supporter of the “learn all the options and then choose” approach, then perhaps in a chronology you will get a coherent story.
According to the classical scheme, there are several options for media delivery
Lisa Wray - Data Binding in a Kotlin world
Mate for some is gymnastics flooring, and someone lacks confidence when jumping into the UI. There are fears in life, in development, and perhaps you are already using the Kotlin and RxJava extensions as the same mat and want to do everything a little faster, easier and more efficient. We have a speaker for you.
A guest from the other side of the Atlantic is ready to literally tell how to use the Data Binding framework to significantly reduce the headache with code and change the path to creating a UI. Lisa is not just Android Google Developer ExpertShe is an MIT undergraduate in music and IT. Before starting to work on the application of one world-famous publication, she managed to work at Google (unexpectedly) in the development relations team of developers of Android, Google Glass, Android Wear , etc.
Jing Li - Android meets Docker
Jing Li is an agnostic developer (whatever that combination means) with an emphasis on tools, quality and CI. Perhaps a brief interview can make the picture clearer.
CI is not the easiest process to implement, and in terms of software development, it is still developing in the field of mobile. The report of Jing will be an introduction to Docker and a well-made image of Docker for Android, on the basis of which the presentation of using the latter for Android CI is built - with a description of the advantages, limitations, chips and performance.
Of course, there will be a live demo on setting up the Jenkins Android slave via the Android Docker image in 2 minutes (No matter how incredible it sounds).
The report has enough points that look like a challenge to stereotypes. If you wish to participate in the discussion, please prepare questions in English. *
* I wrote it myself, re-read it myself ... no, this is not the same article as “Docker, Docker, Docker” .
Sergey @willykolepniy Boishtyan - How I Hated ORM
Advertising Tinkoff in one way or another appears regularly, hype, etc. But the speaker himself is remarkable in our history, and Sergey has been part of the mobile app development team for legal entities for two years now. Despite the fact that in 2013 it all started with the profession of bartender, Java and backend.
Sergey’s report will be about the current Android project, what problems ORM brought to the team(increasing the size of the database to breathtaking sizes) and how they were solved. We will discuss the purpose of ORM and what limitations it imposes on developers. The purpose of the report is to make an ordinary developer think about the appropriateness of using ORM in his project. Technologies to be involved:OrmLite, Stetho, DBInspector, Sqlite.
Ivan @IvanPonomarev Ponomarev - Android NDK Crash Reports
Ivan is a leading programmer for Akvelon’s mobile platforms. Behind more than 5 years of experience in the gaming industry, specializing in cross-platform development for mobile devices using C / C ++ (and they work, for example, the company has a video about managing a device for pouring beer from a mobile phone). I’m familiarwith the problem of collecting information about errors in the NDK code firsthand, and this will be discussed.
In the first part of the report, we will briefly review the existing developments: how the built-in Android debugger works, what solutions already exist.
The second part is devoted to the story of how it works "under the hood": how to get the state of the processor at the time of the error, how to unwind the call stack, how to find out the line numbers in the source code. An overview of stack promotion libraries such as libcorkscrew, libunwind, libunwindstack will be given .
The report will be of interest to both Android developers, whose applications use NDK, and everyone else to broaden their horizons.
Alexey Buzdin - Make your gadget say: Google Assistant
But while studying this report, the author naturally remembered a bunch of memes from the field of Siri, Alexa, Alenka and Alice, Amazon Home, Google Home and, in the end, a joke about a Scottish accent and voice elevator management ...
Together with Alexey we will plunge into the world of Google Assistant.
In the report, the speaker will show how to start writing applications for the Google Assistant and test them on Android, iOS and Google Home. Within 40 minutes, we will write the application together from scratch and debug it using Google Home.
In general, Alexey knows how to organize a community, which he regularly does by arranging meetings between the Google Developers Group Riga, Java User Group Latvia and the annual Riga Dev Day conference.
Eugene @smart_jk Saturov - Instant Apps: how to teach the application to work without installation
Let's start from afar. 4.8 on Google Play - is it a lot or a little? It is clear that this is rather arbitrary, but let us take the hypothesis that this is an honest rating, tested and voluntary.
So, Eugene is the leader of the Android Labyrinth team, the one that was the first in Russia to implement the Instant App and boasts an app with a rating of 4.8 on Google Play.
We will talk about Instant Apps- the possibility of using the application without having to install it on the device. The report will tell about the technology itself, about the implementation experience, about how to prepare the project for the implementation of Instant Apps and the pitfalls that you may encounter in the process. Particular attention will be paid to the choice of use cases, as well as to the benefits provided by the clean architecture in the context of creating Instant Apps.
Enrique López Mañas - TensorFlow for mobile devs
Enrique Lopez has been working with mobile technologies since 2007 and has seen a lot of hyps over this time, so he knows a lot about them. At the moment, there is a hype around ML and AI , and in order to be on the wave, he suggests using TensorFlow as the main framework from Google. And provided that Enrique López Mañas himself is a Google Developer Expert and one of the founders of the Google LaunchPad accelerator , then there is no hyping, and even get the benefit of using ML. Before the conference, a preliminary post on his work waseven releasedso that you can have time to prepare.
Sergey @Reallife Ryabov - Writing a Java friendly Kotlin code
Sergey Ryabov is an independent Android developer with a backend background. A few years ago, he acquired Kotlin superpowers, which to this day are used to the benefit of his experiments and production. Rx fanatic, Kotlin evangelist.
And like any evangelist, he is ready to carry knowledge to the masses. This time about how to write Kotlin code so that it can be used in Java. Indeed, Java interoperation is widely publicized. However, whileyou canpull the Java code from Kotlin without any problems, working with the Orthodox Kotlin code from Java has its own nuances. Sergey will tell you what the creators of Kotlin have in storefor such cases.
Andrey @ s1dd0k Volodin - How to become a GPU engineer in an hour
Andrey Volodin - lead developer Cocos2d-ObjC , creator of the first Swift application forAndroid, author of the cross-platform game engine Fiber2D , currently Metal / ARKit engineer.
Andrey will help us get to the video card of mobile phones. Someone may remember the bearded joke about the " bunch of iPhones on colocation ." To some extent this is not a joke. Namely: The
modern world would not be what it is without GPU calculations. Modern console games, VR, AR, cryptocurrencies, machine learning - all this works on hot GPUs.
However, video cards are not very popular among mobile developers: many think that it is very difficult, and some do not even notice that the iPhone basically has a video card.
With the help of this report, I would like to familiarize the broad masses of developers with programming GPUs, with an eye on mobile platforms and, of course, trending topics.
Maxim Sokolov @max_sokolov - Messenger inside out, or how do today messenger in mobile iOS-application
Imagine that instead of having to tear off a piece of paper with a telephone from the announcement at the entrance, you can take the smart phone and write directly to the owner immediately, clarifying the status, without suffering from the problem “He doesn’t take the pipe, got it, sold it”, etc.
To get such a messenger, Maxim Sokolov, like Team Lead in Avito , had to go through everything difficult, from a simple HTTP API to using web sockets, learning about the pros, cons and pitfalls of various approaches. Maxim will share how his team designed the client-server API and how Swift helped in this. You will learn how to guarantee delivery of messages to customers, online user statuses, message statuses and other functions of modern instant messengers and their implementation.
Messengers are developing rapidly and new functionality needs to be added quickly. The report will tell you how to lay a scalable architecture that will make it easy to add new chips.
Eugene @ptiz Kamyshanov - Life without connection: from chaos to consensus.
Too many historical references are obtained during the review. But what to do, the story moves in a spiral: "desktop applications tend to work in the cloud regardless of local memory", "applications on the phone are gradually gaining more and more offline functionality."
Whether this is good or not, it will be possible to discuss with Evgeny Kamyshanov from EPAM after his practical demonstration of this phenomenon during the report.
With all this, being a Lead iOS developer at EPAM in St. Petersburg, the speaker does not believe in silver bullets and fights perfectionism as much as he can.
Marcin Krzyżanowski — Decipher the encoding
Marcin — это не просто разработчик и автор Natalie, CryptoSwift и ObjectivePGP, но и тот, кто пытается всё же сохранить приватность при помощи PrivacyApp.io Как следствие последнего, про процессы Encoding он знает много… очень много. Конечно, в докладе будет присутствовать не только практика, но и сравнение encoding vs. encryption. Что больше используется в реальной жизни, пояснения с примерами (по большей части на iOS, но не только).
Кстати, Marcin с нами не в первый раз и уже был приятно удивлен высоким уровнем нашего комьюнити. Надеемся, в этот раз у него будет возможность укрепиться в вере в high level наших мобильных разработчиков.
Dmitry @handamade Kurkin - Application Size Optimization
So, what do you associate the “oh-oh” sound with? Of course, you shouldn’t speak for everyone, but for those who started before the advent of the iPhone, this is the sound of one messenger, which, by celebrity, was comparable to the current Telegram.
Why is this all? Dmitry has been developing messengers for various platforms for 12 years. Over the past 5 years, the iOS client for ICQ has been doing it(“oh-oh” sound) in the team lead position.
Consider what makes up the size of the application on iOS and how this size can be reduced. We’ll give a few experiments to explain what the size of the application in the AppStore is, and we’ll tell you about tools that will help you find extra data and determine the most voluminous sections of the program code.
Gleb @Novixon Novik - Service Layer Architecture Using Compound Operations
Surely many are familiar with the Podlodka mobile development podcast. It is led by Gleb Novik, author of the COOperation framework.
Gleb’s report will be built around a common way to build the application service layer — using GCD mechanismsto create asynchronous interaction between components. Many people think, but few in practice use the full power of the NSOperation and NSOperationQueue classes for this task.
With the help of careful decomposition and a slight refinement of these classes, you can get an extremely flexible and portable component that will become a true friend when creating new services. Gleb will talk about how you can use compound operations when building a service layer and how the COOperation framework developed by him can help .
The area of general utility is no longer an environment, but something more
Vladimir @dzigoro Ivanov - Void of Heritage: A Strategy for Fundamental Improvements in the Project
Vladimir is one of the most frequent guests of our conferences, and his position as lead developer at EPAM is not the reason. It's all about using a range of interests ( Android, React, iOS, Web ) and a no less entertaining speaker background (he started as a Java EE engineer, but became interested in mobile technologies “and rolled”).
To begin with, let's mate. apparatus (from the word "mat", not "mathematics"). Let's analyze Legacy". Each developer has to deal with it constantly. Moreover, each new project becomes legacy over time, if you do not pay enough attention to technical duty. In the report we’ll talk about how to live with a particularly neglected case, aka project over the age of 5 years.
We will find out:
- how to understand the size of the debt;
- How to come up with a refactoring plan
- to carry it out as painlessly as possible.
The code will be in Java , but there are almost no Android specifics , so engineers of both platforms will be interesting.
A little theory, a lot of practice, a pinch of statistics, boring pictures - that's how you like.
Konstantin @Konojoto Yakushev - Universal Links - a palace made of pitfalls
I would like to start introducing this speaker by introducing his colleague to the report:
“Who thinks Badoo is a search network? And who thinks this is a Chinese domestic online store? ” . Honestly, in the hall at our other conference, not a few hands raised both questions. Actually, your humble servant as well. So everyone can be victims of stereotypes.
As a result, this is the largest dating portal ( 300+ million users), a frantic amount of downloads and downloads. How to direct this whole stream? Konstantin suggests going on a journey into the world of universal links with him. But with big reservations:
“All this is complicated by the fact that as soon as universal links are launched, there is no turning back. We need to support them, and your mistakes will probably remain with you forever. ”
And so that you have fewer mistakes “forever”, we offer this report. We expect that the person who listens to it will receive enough information to launch the modern universal link system in their company from scratch without problems and doubts.
Alexander @zlx Zimin - Let's design the UI correctly
Several months have already passed since we interviewed Alexander, which can be read here . The information in the article will make it possible to introduce the speaker at times better than a thousand extra characters in the review, so we will go directly to the report.
In the report, Alexander will talk about approaches to the development of UI , which allow new developers to make changes without rewriting code and reusing written components.
Also part of the report will be devoted to Atomic Design . Many popular applications use custom visual components, and the Badoo team- not an exception. So that this does not create a lot of headache for designers and developers, they had to work out a solution, which will be presented in the report.
Out of categories (and corporation laws)
To get started, a promotional code for those who have read up to this point (or accidentally hit it) -
using the key phrase above during registration, you can purchase tickets at the October price through November 5, inclusive. If you have not had time to register - this is your chance!
Use the chance!
Jonathan Levin - How to gash a new feature yourself and not be killed by your manager
Have you ever had a situation when you are working in a company on an application, and suddenly the idea of a new cool feature comes to your mind? You understand, here it is - a turning point, but when you ask for support and approval for development, you are faced with an obstacle: "We do not have resources", or "At the moment we have other priorities." Employees who are familiar with the company's product firsthand are best suited to come up with and design the best features for the application, but sometimes company policies and procedures get in the way. But where there is a desire, there are opportunities! Rebels and rebels conquer the world - the Empire must fall! If you know that this feature is important, but you do not have permission to continue, you will have to carefully balance between the freedom of creativity and respect for the priorities of your company.
In this report, Jonathan will share how he developed the feature without permission and how he was not fired / crippled / killed.
Jonathan is one of the leading Israeli mobile developers, part of the elite team of Google Developer Experts. He played a key role in the success of Gett, which raised more than $ 500 million, and also received funding for his startup KolGene, which is gaining popularity in the genetic market connector. A true believer in mobile and product management, Jonathan is also very enthusiastic about backends. As an accomplished developer and entrepreneur, he knows exactly how to turn smart ideas into a profitable product.
© Mobius 2017 Moscow (the text descriptions of the report of Jonathan are taken from the site as self-sufficient and not requiring reduction or addition )
That's all with the reports, but not with the conference. Of course, you can choose a slot and your way to the beginning, following the Mobius 2017 Moscow program . Or just take and come / take the broadcast by completing your “leap of faith”.
If you have any questions, you can ask them in the comments, or in our telegram channel Mobiusсonf .
And if you suddenly have difficulty and you do not know how to use them to be, then we have more and CH.A.V.O .
See you at the Mobius 2017 Moscow conference !