Hi, my name is Vitaly, I’m an Android developer at Tinkoff.ru, I work in the St. Petersburg office, and this year I attended the Droidcon Berlin international conference for the first time, and I wanted to briefly tell about my impressions.
This article does not contain a lot of technical information, but if you're interested, the organizers will post videos of all reports on YouTube over time.
Droidcon is one of the most popular conferences devoted to Android development, it is held in 25 cities and on 4 continents (Eurasia, Africa, North America and Australia). And if Europe and Asia are considered separately, then the number of continents increases significantly to a frightening number - 5.
This year we have a very large team of two people who went to conquer the German capital right during the World Cup.
A few words about the conference dates, they are floating and change from year to year. In 2017, Droidcon Berlin took place from September 3 to 5, in 2018 from June 25 to June 27, and in 2019 it will take place from May 27 to May 29.
From the good it can be noted that the conference is held from Monday to Wednesday, that is, if you arrive a little in advance, for example, on Saturday, then 2 full days appear in stock to enjoy the beauty of rainy Berlin.
As they say, every St. Petersburg citizen should carry an umbrella and sunglasses, as well as a passport with a Finnish Schengen, so the only thing needed was to simply buy a ticket to the conference. Buying a ticket for this conference is no different from buying tickets for any other: the earlier you buy, the lower the cost. The ticket cost me 200 euros, and my colleague costs 150.
As far as I know, the venue of the Droidcon Berlin does not change - this is CityCube Berlin. This exhibition complex is located just a kilometer from the city and 200 meters from the nearest S-Bahn station.
Berlin is a modern city with a well-developed transport structure, and therefore it is not necessary to rent a house in the immediate vicinity of the venue. It can be reached in one of the following ways.
I would like to describe the last point in more detail. Berlin is not Amsterdam, but cycling in the German capital is organized at a decent level, so bikking is very popular in Berlin. There are several companies that provide related services (German NextBike and Chinese Mobike).
German bikershering is very similar to the Russian car sharing that bicycles can be left absolutely anywhere in the city. Therefore, it is possible, for example, to come home in the evening on a bike, and in the morning leave on it. But be careful: CityCube Berlin is located outside the city and the bike will have to be left at the bicycle station near the S-Bahn station - Messe Nord ICC.
On the way to the conference venue, benevolent volunteers, who on the first day helped navigate, stand. Signs were also placed along the road, so it was very difficult to get lost.
Road sign
Pointer near the entrance
As usual at conferences, during registration, you must receive a badge in order to show yourself and look at others. I do not know how it was before, but this time the organizers decided to optimize the registration process and divided the queue by the first letter of the name.
In general, I realized that to be Vitaliy in this situation was not at all profitable, I was upset and went to the 4th place.
As usual, there are sponsors at conferences, they distribute all kinds of nishtyachki, advertise themselves and even sometimes invite people to work.
This year there were quite a few sponsors, everyone could either give a funny trinket, or tell an interesting story about their work and about their projects.
Let's go directly to the conference, this year it lasted 3 days:
Further we will consider in more detail the key moments of each day.
Interactive day is a special day for meeting other conference participants. Lots of free time, free rooms. Therefore, everyone could suggest a topic for discussion or a report. Suggested topics:
I also decided to use this opportunity and gave a report from the St. Petersburg Kotlin mitap.
I told in the hall Lollipop
There were also panel discussions, in the discussion of which participated from 4 to 6 people:
At the end of the day, there was a Mario Cart tournament.
Now a little about the organization of an interactive day.
And the last item on the agenda was an informal party organized by the German Android community BerlinDroid. She was on the conference schedule, but nobody really knew anything about her. Passed in the club bar c-base, where it was paid about 200-300 bottles of beer. The bar is located on the banks of the river, so we sat on the street and talked on various topics with other Android developers.
As I have already noted, the first day began with a presentation by Jake Wharton “Blurring the line between native and web” , which was a little talked about cross-platform, language choice and a few other things. The main conclusion is that soon it will be possible to write everything on Kotlin, the main feature is funny screenshots about Kotlin.
Photos from Jake's talk
On the first day, there was a very good report by Hannes Dorfman (Hannes Dorfmann) about MVI, other developers praised him very much, however I could not visit him, so I plan to watch it when the recording appears.
An interesting report on Dependency Hell from Eric Derr (Erik Derr). At the beginning of the report, he said that you use dependencies in a project, everything is fine with you, everything is structured. But when the library gets into the compiled APK, it gets access to everything the application itself has access to.
Then he smoothly turned to a discussion of the security of loadable libraries and why it is important for the developer to know that the dependency does not contain vulnerabilities and does not steal user data.
After that, he analyzed the use of the Facebook SDK, in particular, he analyzed which versions of the SDK are most often used in other applications, and noticed that a sufficient number of projects use the vulnerable version of the Facebook SDK, and for some reason do not update it often.
In conclusion, he presented the extension for Android Studio Up2Dep , which suggests the latest compatible version of the extension (probably at the interface level).
Plugin example
The report on navigation from Anthony Agby (Anthony Agby) analyzed how they used to work with the geo-location on Android, how FusedLocationManager is now used, what to do if the user lives in China.
Then I went to the report of Ricardo Ledge (Ricardo Lage) about the migration from AutoValue to the Kotlin Data Class. He told half of the report what AutoValue is, what it is for, how they still generated serializers. He focused on how cool it is to use the Data Class, and how they wrote the plugin that the old code converts to the Data Class. But even with the data class, they use their plugin to generate the serializer code, since they did not like Kotlin Serialization.
Meanwhile, my colleague went to Saket Narayan’s “Persistence as the single source of truth” report, which made a big impression on him, so I also want to see it when the videos appear.
Vitaliy Zasadnyy (Vitaliy Zasadnyy) made a presentation about DeepLink. If the speaker is very stylishly dressed: in a shirt, vest and smiling from ear to ear, then this is a managerial report (this turned out to be true). If you try to highlight the essence, then you need to use the Google Referer API, if we want to transfer additional information immediately after downloading the application.
Then there was the report of Nishant Srivastava about ProcessLifecycle, which is a retelling of his article .
At the end of the first day I took a photo with Hannes Dorfman.
The second day was opened by Job van Voort with the report “The best apps are built in pajama-pants” . Jobe works at GitLab and his story was about how they all work at home and what are the benefits of it, for example, he manages to work and watch how his daughter grows up. Based on successful experience, he concludes that offices are optional.
Photo from Joba's report
He paid special attention to the OpenSource paradigm, according to which the code of all their products, even those they sell, lies in open access, that is, any user can download the source code, build it and use it without any problems.
But the most interesting was the story about the community they created. It turns out that many client companies create new features that are useful not only to them, but also to other buyers. Despite this, companies still buy products from GitLab, although they often create the necessary functionality for themselves in GitLab products.
Then we listened to the report about the increase in the project assembly speed from Nikita Kozlov and Boris Farber (Nikita Kozlov, Boris Farber) depending on the version of grale, kotlin, etc. ... In particular, they measured the assembly speed on poppies of 15 and 17 years. To summarize, the guys wanted new poppies and they had to somehow argue why they needed more powerful computers.
The list of parameters that the speakers considered
To my surprise, from a fairly standard report by Abdelmunaym Belgalem (Abdelmounaïm Belghalem) about the battery, I learned that 3G is eating more than LTE.
Next came Vasily Zhukanov’s performance “Activities and Fragments are not MVX views” . It was shown that they take a lot of activations and fragments, so it is logical to bring some kind of repeating functionality into additional classes.
Danny Presler (Danny Preussler) told about the introduction of dependencies on cotlin with the help of Koin and Kodein. He concluded that Dagger is a pretty good library, but if you use Koin and Kodein, you can inject dependencies through delegated properties and this is much more convenient.
And the last report told Paz Padzhenkar (Parth Padgaonkar). The report considered the method of converting synchronous code into Rx code. In particular, the code RxBindings (written by Jake) and the creation of the custom Observable using the Observable.create method were analyzed. It turns out that many people forget to write a line highlighted in bold and therefore memory leaks are possible when creating an Observable.
But recent reports have attracted not many listeners, since on June 27, on Wednesday, the German team played the final match of the group stage with the Korean team.
Later I managed to meet and chat with Dmitry Vinogradov. This is the creator of the site startandroid.ru , the information placed on which is very useful for beginners and not only Android developers.
Source: https://habr.com/ru/post/418675/
All Articles