Évaluation de droidcon SF



Bonjour, Habr! Je m'appelle Alexander Kolobanov, je suis chef d'équipe Android chez FunCorp. En novembre, j'étais dans un droidcon à San Francisco. Sous la coupe, une petite revue de la conférence, des notes de voyage et quelques photos.

Pourquoi voler si loin?


Les conférences Droidcon ont lieu non seulement aux États-Unis, mais aussi en Europe. C’est moins cher et moins cher de s’y rendre, mais sur la base de mon expérience, je peux dire que la situation géographique décide. Plus la conférence est proche du siège de Google et d'autres grandes sociétés informatiques, plus il est probable que des conférenciers célèbres y participeront.

De plus, différents organisateurs à différents endroits, et seul leur nom les unit. Par conséquent, vous devez examiner chaque ville séparément. À mon avis, droidcon NYC est généralement un chapeau haut de forme. D'européen, je mentionnerais droidcon Londres - une conférence digne sur la qualité de l'organisation et le niveau des rapports. Pour les développeurs Android d'Europe, c'est peut-être le principal. droidcon à Berlin et à Vienne, où j'ai également visité, conviennent mieux aux débutants et aux développeurs de niveau intermédiaire, et les conférenciers éminents et les rapports hardcore sur eux sont très rares.

Si nous comparons le droidcon SF avec ses homologues russes, ses organisateurs pensent moins à des choses telles que la nourriture (il y a du café - d'accord) et la commodité des participants. Personne n'envoie de plans détaillés pour s'y rendre, 20 rappels que leur conférence sera bientôt, ne fait pas de bots et de plateformes de discussion et tout le reste. Pas de navigation nette et super détaillée et un assortiment chic de nishtyakov. Ici, en premier lieu (ainsi qu'en deuxième et troisième), la partie technique et le niveau des rapports. Cela ne signifie pas que deux ou trois rapports peuvent fuir dans le programme, mais en général, droidcon SF est une conférence de développeurs pour développeurs, où il n'y a que du contenu haut de gamme et des conférenciers éminents.

Compte tenu de tout cela, je dirais que le programme de la conférence de San Francisco était à un niveau élevé. Il n'y a eu aucun rapport franchement hacky avec une nouvelle version des tutoriels de developer.android.com.

Transport et autres dépenses


L'Amérique n'est pas un pays bon marché, et si vous volez de nos régions, il est peu probable que vous puissiez économiser beaucoup en vol. De plus, chacun a besoin d'un niveau de confort différent pour vivre, et ce qui est acceptable pour l'un ne convient pas à l'autre.

Un conseil universel qui fonctionne toujours: prenez vos billets et réservez votre hébergement à l'avance. Vous pouvez essayer de rechercher des billets à prix réduit et d'examiner de plus près les ventes. Il y a beaucoup d'informations sur de telles choses sur des sites Web et dans des groupes spécialisés dans les réseaux sociaux consacrés à économiser sur les voyages. Vous devriez regarder les compagnies aériennes de milieu de gamme, qui offrent souvent un service pas pire que raide et cher. Eh bien, en général, sur la transatlantique, le service est généralement au niveau de tout le monde, quelle que soit la classe. Les compagnies aériennes à bas prix ne volent pas à de telles distances (et bien, probablement). Et puisque le coût d'un vol représente une part importante du budget de voyage, il est préférable de combiner un voyage à la conférence avec des vacances, si, bien sûr, il y a une telle opportunité. Il y a quelque chose à voir et à faire aux États-Unis.









Les taxis dans les États sont traditionnellement chers. Par conséquent, un conseil: utilisez les transports en commun ou le covoiturage (c'est quand un taxi vient chercher plusieurs personnes qui voyagent sur des itinéraires similaires et partagent le coût du voyage). Entre les villes, il est préférable de voyager en bus ou de louer une voiture. Le prix du stationnement dans la ville peut être extrêmement élevé, et les conditions sont difficiles et étranges (par exemple, vous ne pouvez pas vous garer de 8 h à 10 h le deuxième jeudi du mois - restez et comptez), tandis que les pistes sont très pratiques et sûres, et les gens sur la route sont pour la plupart non agressifs et prévisibles .

Si nous parlons de logement, alors vous ne pourrez pas économiser beaucoup, surtout dans des villes aussi chères que San Francisco. Pour les amoureux, il y a du surf en autocar, mais le reste est le même - réservez à l'avance.



Lieu

La conférence a eu lieu au Mission Bay Conference Centre. Il est situé dans l'un des bâtiments de l'Université de Californie à San Francisco. Au fait, dans le même bâtiment, il y a une bibliothèque, une salle de fitness et un café. Il y avait suffisamment d'espace, malgré le nombre assez important de participants (plus de 800). Dans les couloirs, nous devions parfois nous déplacer, mais il y avait suffisamment d'espace dans les couloirs pour tout le monde, personne ne se tenait le long des murs.

Le centre de conférence de Mission Bay lui-même est situé assez près du centre-ville (à 10 minutes en taxi du centre). Ici, nous devons faire une remarque: San Francisco elle-même est une ville assez compacte. Du centre à l'aéroport, prenez environ 40 minutes en taxi (un peu plus aux heures de pointe). Par conséquent, les problèmes pour y arriver ne devraient pas se poser en principe. La seule chose avec les transports en commun dans ce domaine est assez compliquée, j'ai donc préféré prendre un taxi.

La conférence a été répartie sur 2 étages, deux salles chacune: grande et petite. L'inscription, où des badges et des T-shirts ont été délivrés, était juste à l'entrée. Malgré le grand nombre de participants, tout s'est déroulé très rapidement. Il n'a fallu que quelques minutes pour obtenir un badge. Une petite file d'attente a surgi le matin juste avant le discours d'ouverture. Et les t-shirts, en passant, ont été distribués en quantités presque illimitées, non seulement lors de l'inscription, mais aussi dans de nombreux stands. Comme ça.

Derrière la zone d'enregistrement se trouvait une grande salle, à partir de laquelle tout le monde se dispersait déjà dans les salles. Il y avait également un espace d'exposition avec des stands de sociétés sponsors (en passant, il y en avait plus au deuxième étage et les bâtiments étaient plus denses) et des points de café. Directement depuis le hall, vous pouvez vous rendre dans un petit parc situé à l'intérieur du campus. Agréable et confortable.









Moments d'organisation


Tout était bien organisé, mais un peu inhabituel par rapport aux conférences russes. Il y avait certainement moins de bruit et plus d'attention aux rapports et au côté technique. De la "nourriture" étaient seulement du thé et du café. Nous accordons beaucoup plus d'attention aux pauses café, à la restauration et à la nutrition en général. Ici, à part les boissons chaudes, il n'y avait rien. Plus précisément, à l'heure du déjeuner, ils réalisaient toujours des réfrigérateurs avec des canettes de «Cola». Si vous voulez manger - là-bas, au coin de la rue, il y a un café où vous pouvez acheter un sandwich. Aucun super soin et hyper garde pour vous. Et d'ailleurs, c'était la norme.

Le déjeuner lui-même était également assez nominal: une pomme, des frites et, encore une fois, un sandwich. Formellement nourri, mais pas plus. De nombreux étudiants sont allés déjeuner dans le même parc sur des bancs.

Mais cela vaut particulièrement la peine de noter la partie technique de l'organisation. Il n'y avait pratiquement aucun problème avec le WIFI, bien qu'il soit ouvert depuis le campus. Les haut-parleurs sont installés et connectés très rapidement, en quelques minutes. Pendant le rapport, nous avons constamment surveillé afin que tout fonctionne bien. Ils ont même réduit et ajouté du son presque instantanément lorsque le haut-parleur, par exemple, a commencé à parler plus fort ou plus silencieusement. En général, je n'ai pas remarqué un seul accroc et un problème avec l'équipement, tout était super. Sauf sur tous les rapports, des microphones étaient portés dans la salle, mais les orateurs eux-mêmes ont répondu aux questions qui leur étaient posées.

De l'insolite: j'ai vraiment aimé la chambre calme. Juste une pièce où vous pouvez simplement entrer, prendre le thé, vous asseoir avec un ordinateur portable en silence et faire une pause dans le bruit d'une grande conférence.









Le programme


Les rapports ont été diffusés en quatre volets, presque du matin au soir. Le site a ouvert à 8 heures du matin et le premier rapport a commencé à 9 heures. Tout s'est terminé vers 19 heures. Les fils de discussion n'avaient pas de thèmes clairs. Très probablement, les organisateurs ont réparti les créneaux en fonction de la fréquentation estimée pour chaque rapport. Les principaux sujets incluent CI / CD (comme presque toutes les conférences Android au cours des deux dernières années), les tests d'interface utilisateur (il s'est avéré que presque personne n'en a), Kotlin (où en sommes-nous maintenant), l'architecture applications (collecter deux développeurs Android, et bientôt ils parleront "d'architecture"). En un mot, tout est assez standard ici. Je ne peux rien dire d'intéressant à propos de Keynote, c'était juste. Ils ont parlé du fait que nous créons des applications qui sont au téléphone de presque tout le monde, nous façonnons ce monde et comment les gens interagissent et communiquent en lui. Mais je me souviens du discours de clôture comique (bien qu'aucune comédie n'était initialement prévue) de Romain Guy et Chet Haase, des gens très célèbres dans le monde du développement Android qui ont longtemps travaillé chez Google et déterminés à quoi ressemble la plateforme maintenant. Je pense que beaucoup ont regardé leurs performances sur Google I / O (en passant, très cool) sur l'accélération matérielle, les animations et le rendu. Si vous n'avez pas regardé, je le recommande vivement. Je ne voudrais pas parler beaucoup de leur dernier discours de comédie , parce que raconter des blagues est une activité moyenne. Mieux vaut voir par vous-même.
Si vous essayez de mettre en évidence les meilleurs rapports, cela se révélera être purement personnel et dépendra de ceux qui m'intéressent le plus. Le voici:

Comment construire un pipeline de test de performances à partir de zéro par Valera Zakharov de Slack. Grande performance, tir direct. Beaucoup de bons conseils pratiques et une expérience intéressante. Un rapport sur le fait que vous ne devez pas créer votre propre batterie de périphériques si vous ne disposez pas d'une équipe distincte pour le prendre en charge. Et combien il est important non seulement de rendre l'application rapide, mais aussi en permanence, de commit en commit, de s'assurer qu'elle reste ainsi et de ne pas autoriser les régressions. Et si les tests «font souvent du bruit» et tombent en vain, alors ils coûtent un peu, car bientôt tout le monde commencera à les ignorer.

Conception API centrée sur l'homme , Pierre-Yves Ricau, Square. Celui qui fait LeakCanary et un tas de bibliothèques tout aussi connues avec d'autres développeurs de Square. Il a expliqué comment créer une API externe pour les utilisateurs. Rendez-le intuitif. Donc, pour minimiser le pourcentage d'erreurs pour ceux qui l'utilisent. Un bon rapport ne concerne pas seulement l'écriture d'une API externe, mais la manière de concevoir correctement en général. Au fait, après tout, l'API de n'importe quel module de votre application doit également être simple et aussi claire que possible, non?

Construire pour l'avenir sur Snapchat , Ben Dodson, Gustavo Moura - de manière inattendue, mais à partir de Snapchat. Sur la façon de refaire une application qui a plus de 4 ans, elle est plutôt lente et a changé le concept plusieurs fois au cours de la vie. Et en général, maintenant, tout d'abord, la caméra, puis le chat. Et même Retrofit ne l'était pas lorsque vous l'avez écrit. L'idée principale est que vous n'avez pas à vous précipiter pour tout réécrire. Ce serait bien de comprendre vos priorités et ce que vous voulez, d'introduire des mesures et de les respecter strictement. Bien que certains modules puissent être réécrits à partir de zéro. Et oui, en fait, c'est déjà une application différente, et elle doit être présentée aux utilisateurs, remplaçant parfois simplement un module par un autre et essayant d'empêcher tout de tomber. Basé sur des événements réels.

Il y avait de nombreux rapports intéressants et utiles. Vous pouvez mettre en évidence l'histoire des développeurs d'Uber, comment ils se sont battus avec Out of memory. Souvent, non seulement des fuites et une énorme consommation de mémoire y conduisent, mais également un grand nombre de threads. Après tout, chaque thread alloue un morceau de mémoire pour lui-même sous la pile, par exemple. Peu de threads sont également mauvais: les tâches qui dépendent les unes des autres, en raison du manque de threads, entreront dans le blocage de la famine des threads (comme ils appelaient la situation lorsqu'une tâche attend le résultat d'une autre et que celle qui est ringarde manque de thread à exécuter). Le moyen de sortir de cette situation est assez simple: utilisez un outil pour le multithreading dans toute l'application (ils ont choisi Rx) et savez comment cela fonctionne. Dans le cas de Rx, par exemple, examinez la différence entre les ordonnanceurs.

Les développeurs de Facebook ont ​​présenté une nouvelle bibliothèque pour travailler avec des images Spectrum. Par tradition, la bibliothèque Facebook utilise du code natif, y compris MozJPEG, qui est maintenant l'un des meilleurs codecs pour JPEG. Capable de coder, compresser, optimiser, ajouter diverses transformations. En général, une fonctionnalité plutôt intéressante, qui auparavant était assez difficile à trouver sous une forme facile à utiliser.

À partir d'un rapport sur Kotlin appelé Advanced Kotlin , vous pouvez découvrir que vous êtes avancé dans Kotlin, si vous savez ce que sont infix et tailrec, distinguez entre in et out pour le type générique, vous savez où et les classes scellées. Eh bien, vous pouvez également créer un dsl similaire sur des lambdas.

Il y avait également de bons rapports sur l'architecture de l'interface utilisateur de Tinder et Netflix. Les premiers font, pour ainsi dire, une interface utilisateur réactive sur les états qui sont commutés par des actions et utilisent LiveData et ViewModel à partir de composants architecturaux pour cela. Ces derniers ont fait leurs propres composants, enfermant une partie de la logique avec la vue, et les ont connectés via leur implémentation du bus d'événements.

Il y a donc eu beaucoup de bons rapports, et la mention de chacun digne d'attention prendra probablement une douzaine de pages. Ce n'était pas que des rapports étaient franchement mauvais. Mais personnellement, je n'ai pas aimé le reportage de Romain Guy sur la photographie. Il ne s'agit même pas de prendre des photos à partir de votre application, mais simplement de la théorie de la photographie. Il est, bien sûr, un développeur respecté, mais les gens ont payé de l'argent pour une conférence sur le développement Android, et non pour un cours de photographie.







Réseau


En tant que tel, il n'y avait pas de place pour la communication avec les haut-parleurs ou au moins une zone spéciale. Les orateurs, en règle générale, après leur présentation ont répondu aux questions de l'auditoire, puis ils les ont invités à poursuivre la conversation de manière informelle, dans le style "Je serai ici jusqu'à la fin - attrapez, demandez, je serai heureux." Mais il y a une nuance. Presque toutes les entreprises dont provenaient les conférenciers avaient des stands où non seulement les conférenciers, mais aussi d'autres développeurs de la société étaient présents, donc poser et poser la question d'intérêt n'était pas un problème. Les stands étaient donc intéressants et parfois très animés.

Qui devrait visiter Droidcon SF?


Cette conférence vaut la peine d'être visitée pour ceux qui veulent écouter les rapports appliqués de développeurs célèbres, et ensuite aussi demander personnellement comment et ce qui fonctionne pour qui. L'ambiance est très ouverte et conviviale. Mais je ne recommanderais pas d'aller à la conférence pour ceux qui ont peu d'expérience. Les rapports sont assez compliqués, le rythme de la conférence est très élevé. 8 conférences par jour, c'est dur. Si sévère que Slack, par exemple, a distribué un kit de survie - un sac avec des vitamines et des pilules pour un mal de tête - dans ses stands. Et, comme vous le savez, dans chaque blague, il n'y a qu'une fraction de la blague. De plus, au moins cette fois, de nombreux sujets concernaient non seulement la programmation, mais aussi l'infrastructure, leur expérience et leur pratique. Ainsi, les chefs d'équipe et les responsables du développement pourront également trouver du contenu adapté à eux-mêmes sur droidcon SF.

Bien que le sujet de l'IC, des tests et de tout ce qui s'y rapporte soit toujours d'actualité et très pertinent, il pourrait être utile de s'adresser aux ingénieurs QA et DevOps. Soit dit en passant, une de mes observations intéressantes: dans les entreprises qui étaient représentées, ils parlent souvent simplement d'ingénieurs et ne les divisent pas en développeurs, testeurs et infrastructure. Cela se manifeste dans le fait que beaucoup peuvent changer de rôle et, en tant que développeur, devenir, par exemple, une équipe d'infrastructure. Pourquoi pas, toujours des ingénieurs.

Impression générale


L'impression générale est extrêmement positive. Je m'attendais à des rapports plus faibles, mais il n'y a presque pas eu de «parcours». En principe, j'étais prêt pour l'organisation de la nourriture, ou plutôt son absence. Je m'attendais à ce qu'il puisse y avoir des problèmes à comprendre tout ce qui a été dit, mais la plupart des orateurs ont parlé clairement et n'ont pas vraiment accéléré, donc en principe il n'y a pas eu de problème. Parfois, il fallait juste un peu de temps pour s'habituer à l'accent. Et l'organisation technique et la communication informelle ont clairement dépassé les attentes. Et ce n'est pas seulement mon avis. Il y a eu beaucoup de discussions intéressantes dans la salle et sur les tribunes entre les rapports.





PS Les liens ci-dessous sont des critiques d'autres conférences étrangères de notre blog:
droidcon Vienna
Atlassian
droidcon london
Goto berlin
Sommet Web

Source: https://habr.com/ru/post/fr434180/


All Articles