Start of main content

Talks

  • Day 1

    RU

    Code Reviews is a very old instrument in the Software development. It always had some cons, but advantages usually were much greater. But today we have some good alternatives to ensure code quality: tests, linters, code analyzers. So do we still need Code Reviews in these days and age? Lets discuss it over the round table.

    • #codereview
    • #tools
    • #bestpractices
    • #roundtable
    • Ekaterina Bateeva
    • Fedor Tsymbal
    • Artur Badretdinov
    • Alexander Korshak
    • Sergey Ermolaev
  • Day 3

    EN

    In this talk we’ll explore common accessibility pitfalls, along with how they can be tackled within Jetpack Compose. You’ll leave with the confidence and knowledge to make your apps more accessible for everyone!

    • #compose
    • #android
    • #jetpack
  • Day 4

    RU

    How to get a feature under AB/Feature toggle and successfully deliver it to the user? How can you easily roll it out to users through a bot and cover it with analytics simply and without pain for developers and with profit for the company? And how to remember to remove the feature when its time comes?

    • #cross
  • Day 4

    RU

    The talk presents the order of solving architectural problems. The aspects which are the most important in solving such problems will be considered, a certain order of design will be proposed, the stages of which collectively define the general philosophy of solving architectural problems. The relevance of the proposed approach will be considered on the example of solving a practical task, the implementation of which has already reached its final audience.

    • #iOS
  • Day 3

    RU

    By developing libraries and SDKs, we are interested in the effective distribution of our products, and therefore broad support for dependency managers. The managers popular in iOS development - SPM, Cocoapods and Carthage - are like Pokemon, have different characteristics, can be friends and come into conflict with each other. Collecting them all in one project is not as easy as it might seem at first glance.

    In the course of the talk, we will create a mini-library and consistently implement its distribution through the mentioned managers, analyze the nuances of organizing multi-modularity and versioning in each of them and, as a bonus, touch on Linux support issues.

    • #iOS
    • #CocoaPods
    • #dependencies
    • #spm
    • #sdk
  • Day 4

    RU

    Zoom-session, where we will try to gather all the participants, speakers, PC members, and experts to communicate in an informal atmosphere of a noisy crowd as in the good old preCOVID days.

    • #smoking_room
    • Eugene Saturov
    • Alexander Yurkovsky
    • Monika Kobaliya
    • Tatyana Ryabova
  • Day 4

    RU

    We take stock, remember the bright moments and talk about our plans. Join the broadcast, so you don't miss anything!

    • Eugene Saturov
    • Alexander Yurkovsky
    • Tatyana Ryabova
    • Monika Kobaliya
  • Day 4

    RU

    You've probably heard about Flutter many times before. But not everything you hear can be trusted: somewhere there is truth and somewhere there are stereotypes and prejudices. We'll try to separate one from the other, as well as identify first steps and fluttering tips for aspiring flutterers. If you are theoretically curious about this technology, but haven't dived into the subject yet, this is the most appropriate occasion to do so.

  • Day 4

    RU

    Speakers will talk about their frameworks and why they had to measure performance:

    • what metrics are measured and what the team is monitoring;
    • monitoring of performance releases - how they're structured, degradation/P1/technical debt/targets;
    • examples of successful/unsuccessful changes to improve performance;
    • problems with metrics, tips on what metrics are best to measure;
    • future plans: defect rate, performance tests, Hitch Rate, OZon crash SDK.
    • #partner
    • #smoking_room
  • Day 4

    RU

    If you develop mobile apps, you've probably noticed that when developing clients for Android and iOS, some of the code is duplicated. Cross-platform code frameworks can help you avoid duplication. This framework includes Kotlin Multiplatform which was released in autumn 2020.

    In this talk Alexander will share his experience in developing a library using Kotlin Multiplatform, tell what problems he encountered and what was the result.

    • #partner
    • #techtalk
  • Day 4

    RU

    THE PANEL DISCUSSION IS NOT RECORDED

    Just 5 years ago everything was simple: write code and commit to the master. Then everything started to get more complicated processes, new methodologies, Agile, regular dailies with the team, managerial practices and mandatory requirement to grow soft skills. Let's discuss:

    • What changes have happened during this time and what are they for?
    • Is it right for all companies or not?
    • What does the future hold?
    • Why is the IT industry adopting practices from other industries?
    • #partner
    • #smoking_room
    • Ilya Merkulov
    • Dmitry Vasilyev
    • Maxim Timokhin
    • Alexander Kolobanov
  • Day 4

    RU

    Mysterious codes, instant hacks, downloading software on a landing plane - everything in the programming scenes from the movies and TV shows is fine. Except the degree of realism.

    So we'll watch excerpts from different movies and series about developers, discuss their connection to reality (or lack thereof) and understand where there's a movie and where there's real life of a developer. Join in!

  • Day 4

    RU

    Let's discuss how OpenGL works on Android, its performance, pros and cons, and immediately write a custom GL Renderer for ExoPlayer with our own shaders for transparent video.

    • #partner
    • #smoking_room
    • Gleb Efimov
    • Denis Tkachenko
    • Nikolay Kudashov
  • Day 4

    RU

    Ilmir will tell why the company started to develop new backends, why they decided to rewrite half of the compiler, what problems they encountered and what their future plans are.

    • #jetbrains
    • #android
    • #компилятор
    • #buildspeed
  • Day 4

    RU

    Many developers love quizzes like Jeopardy, which testing erudition and ingenuity. But all such shows have one small disadvantage: they have nothing to do with IT. Developers don't have their own game like Jeopardy.

    Well, let's remedy this situation and make our own game. Six themes, questions of different difficulty - everything as it should be. Join in!

    • Andrey Dmitriev
    • Igor Karenkov
    • Vitaly Ges
    • Oleg Rumyantsev
  • Day 4

    EN

    iOS 15 brings exciting opportunities for making our apps even smarter. With CreateML made available on iOS devices, we can now train our own machine learning models dynamically. In this talk, we will see how we can build our own custom image filters, using cool technologies such as CreateML, CoreML, SwiftUI and Combine. We will also see what are the benefits of on-device training over sending the data to a server.

    • #iOS
  • Day 1

    EN

    In this session, we'll talk about how we built the world's first Jetpack Compose Chat SDK, what challenges we met along the way and why put so much trust into a technology that only recently became stable.

    We'll talk about the API design and what decisions we've made to allow for both default behaviour and UI and a rich set of customisation options.

    • #android
    • #jetpack
    • #declarativeui
  • Day 1

    RU

    In his talk Alexey will share an experience gained over several years in Android test automation. He will outline the key points of successful automation. In 15 minutes you will get knowledge that will save you many hours of work.

    • #partner
    • #techtalk
  • Day 1

    RU

    During this session we will talk about the automated migration of Android applications to the Bazel build system. We will see how to write a custom Gradle plugin that will execute the migration of the project. In addition, we will take a look at Kotlin DSL for declarative and type-safe code generation of Bazel build scripts.

    • #buildtools
    • #buildsystem
    • #android
    • #bazel
  • Day 3

    RU

    During the talk the audience will learn about what is missing in ExoPlayer when developing IPTV applications, and will also take a gentleman's set of player improvements from the talk, according to the author.

    • #VOD
    • #performance
    • #android
    • #MPEG-DASH
    • #video
  • Day 2

    RU

    In his talk, Sergey:

    • will remind you what a Render Loop is;
    • will analyze in detail the commit phase;
    • will talk about standard and non-standard methods of optimizing applications.
    • #partner
    • #techtalk
  • Day 2

    RU

    Kotlin Multiplatform is a buzzword right now: news about the technology appears regularly, stories of its use in production as well, and recently JetBrains presented a promising KMM development plan. But as you know, there are no "silver bullets", not everywhere KMM fits equally well, and competitors do not sleep either.

    What then are the prospects for the technology and will it be able to outperform all other frameworks and SDKs for smartphones? This is what our experts will talk about!

    • #kotlin
    • #flutter
    • #iOS
    • #android
    • Sergey Rybalkin
    • Anna Zharkova
    • Aleksandr Denisov
    • Vadim Belotitsky
  • Day 2

    RU

    A lot has been said about remote work over the past two years. But as a rule, such discussions touch on a particular aspect, such as "has it become easier or harder for me as a developer".

    In our studio we will bring together a diverse group of several specialists with their own views. They will discuss the situation for different roles (developer, manager, client) and from different angles (productivity, tools, communication, business in general). Let's try to get big picture - with all the new opportunities, challenges and complexities.

    • Kirill Rozov
    • Konstantin Tskhovrebov
    • Alexander Korshak
    • Andrey Dmitriev
    • Kirill Klebanov
  • Day 2

    RU

    Many teams exist in a reality where multiple programming languages are used on a single project. Let's discuss common difficulties and answer questions:

    • How to reduce project compilation time?
    • How to sell a feature to a business that won't make money now, but will prevent future losses?
    • #smoking_room
  • Day 2

    RU

    Mikhail will show you how blind and paralyzed people use phones and tell you what needs to be done to adapt the applications.

    This talk will be about code, but about interfaces.

    • #voiceover
    • #philosophy
    • #diversity
    • #people
    • #iOS
    • #availability
    • #accessibility
    • #text
  • Day 1

    RU

    THE PANEL DISCUSSION IS NOT RECORDED

    There can be many variations of how the code gets to the user. And it gets there from time to time with different quality and speed. One project may look different depending on who supports it and how. In addition, each developer has his own vision of how to version a project correctly. And what is the right way to do it? It's a big question that touches on version control systems, approves, commits to the master, and much more. That's what we'll talk about.

    • #smoking_room
    • Vyacheslav Petrukhin
    • Alexander Sychev
    • Alexander Gazarov
  • Day 1

    RU

    The speaker will cover such topics as:

    • Existing analytics collection tools in mobile applications.
    • Own implementation (Client + Backend).
    • Technical characteristics of the application for analysis.
    • Data collection in high privacy areas (GDPR, CCPA, LGDP).
    • How the team analyzes app data (Grafana, Redash).
    • Results and profits.
    • #partner
    • #techtalk
  • Day 2

    RU

    Nikolay will talk about current state of UI framework Compose Multiplatform, opportunities and perspectives of supporting new platforms.

    Audience: Android developers, Kotlin developers.

    • #multiplatformui
    • #compose
    • #multiplatform
    • #crossplatformui
  • Day 2

    RU

    In this talk we will analyze the main problems that you may encounter when writing Test Impact Analysis (TIA). We'll take a little look at the bytecode, and also write our own impact analysis!

    • #optimizations
    • #bestpractices
    • #testautomation
  • Day 3

    RU

    Remote work has made it possible to move around all the time: with a laptop on your lap you can be on the beach in Morocco, or at the table of a French bakery, or on a farm in Idaho.

    "Digital nomads, who actively take advantage of this opportunity, have been around for a long time. But in the last two years there has been a noticeable increase in the number of remote workers in the world - perhaps now it's time for you to think about whether you want to be tied to one city.

    Join our round table: we'll not only discuss how to become a digital nomad, but also share some tried-and-true best practices.

    • #digitalnomads
    • Sergey Ryabov
    • Artur Badretdinov
    • Tatyana Ryabova
  • Day 2

    RU

    Searching for errors in multithreaded apps is pretty difficult. We will see, what errors may occur when working with multiple threads (queues) and how you may catch them.

    • #grep
    • #logging
    • #watchdog
    • #iOS
  • Day 2

    EN

    During this talk, we will explore tools and techniques to navigate the decisions tree of picking one MV* pattern versus another, storing and propagating data, and organizing your packages to optimize the build time.

    • #patternsui
    • #mvp
    • #architecture
    • #android
    • #mvvm
  • Day 1

    RU

    At Sportmaster, it is relevant to automate routine operations: inventory, updating price tags, collecting and issuing online store orders, and so on. For this purpose, so-called MRM (mobile workplace) applications are used on iPods, expandable with specialized cases. These mini iOS-applications had to be linked to work with a common database and exchange data with each other. Of all the technologies IPC (inter-process communication) was chosen. The presented code examples together with comments will be a good guide on this poorly covered topic on the runet.

    • #partner
    • #techtalk