Upgrade to Pro — share decks privately, control downloads, hide ads and more …

DroidCon Berlin 2018 Summary

DroidCon Berlin 2018 Summary

Summary of the DroidCon 2018 conference in Berlin.
It was the biggest one to date with 1200+ Attendees and 100+ sessions. We took part in as many sessions as we could and these are our thoughts.

3d83f31339d239abcc55f869e5f30348?s=128

bkosarzycki

July 06, 2018
Tweet

Transcript

  1. DROIDCON BERLIN 2018 Bartosz Kosarzycki @bkosarzycki Michał Radtke Jun 25-27,

    2018
  2. None
  3. Summary 2018 - 1200+ Attendees - 10th anniversary (started with

    200 devs in 2009) - 3 days, 5 tracks, 100+ sessions - Android, Kotlin, Machine Learning, Flutter, AI, VR, AR, Android-For-Business, Chromebooks, Tensor-Flow, SAP and more - Introduced Global Community Platform
  4. None
  5. Our summary - ⅕ - Kotlin as a language, improvements,

    libraries, DSL - ⅕ - Gradle performance improvements / tweaks - ⅕ - Android for business / Chromebooks - ⅕ - RxJava must die, get rid of Java style in Kotlin - ⅕ - Commercial e.g. Huawei AI, Google Cloud etc.
  6. Global Community Platform - DroidCon - Knowledge exchange platform -

    “Online DroidCon” - Videos/Tutorials/Presentations - InVision project (not implemented yet)
  7. None
  8. None
  9. Blurring the line between native and the web - History:

    J2ObjC, GWT -> multi-platform frameworks - Based on Kotlin - Runs on Android/iOS/Linux/MacOS/Chromebook/Win - Uses kotlin-native - platform independent code - Chromebooks: run android apps and linux native apps (Android Studio) - Webapps: background sync api, web notifications, getUserMedia (mic, cam), webVR, webBluetooth, webUSB Jake Wharthon
  10. None
  11. None
  12. HERDING LLAMAS IN YOUR FLAT - A DEEP DIVE INTO

    ARCORE AND SCENEFORM - http://poly.google.com/ - Google polygon database - ArFragment, ArSceneView - CollisionDetection -> resolveOverlap() - Renderable -> casting shadows - SFAs Polygons, file formats - Emulator support - AndroidStudio SceneForm plugin Steven Mohr
  13. link link link link link link link link

  14. OLGA NAGATOVA - Polygon Artist - http://www.nabatova.ca/ - Personal Website

  15. AUGMENTED REALITY FOR EVERYONE, EVERYWHERE WITH ARCORE - ARCore utilization

    Till Krempel
  16. None
  17. None
  18. None
  19. None
  20. None
  21. Gradle performance - Min SDK 21 - 30% faster build

    - Better hardware - Project modularisation (module per feature) - Parallel gradle task execution - Offline gradle builds
  22. None
  23. None
  24. None
  25. None
  26. None
  27. None
  28. BUILD A REACTIVE FLUTTER APP! - How to write Reactive

    Flutter Apps - Hired by google to write flutter cookbook - layered, modular, testable, SOLID - StatefulWidget Brian Egan Groupon - Showcase app Tomek Polanski - How he convinced Groupon to write Flutter app - Started from scratch - Success story
  29. None
  30. + Chrome OS apps

  31. ANDROID ENTERPRISE ON CHROME OS - Target API 23+ -

    Prepare Android apps for Chromebooks - Touchpad gestures - Be ready for keyboard/mouse support (keyboard shortcuts, arrows, mouse right click) - Stylus support - Dynamic window management (resizing) - ChromeOS emulator - AndroidStudio for ChromeOS (works only PixelBooks as of now) - https://twitter.com/KennethFSWE/status/953766120502292480 - medium Kenneth Ford
  32. VIDEO: LINK

  33. None
  34. STATE OF KOTLIN LANG - THE STATE OF THE KOTLIN

    ECOSYSTEM Zan Markan
  35. STATE OF KOTLIN LANG

  36. SHARE CODE IN KOTLIN - Alternative to C++ - Alternative

    to Xamarin common code - Android / iOS - “(CODE) SHARING IS CARING” - inject platform specific logic into shared code Tobias Heine Said Tahsin Dane
  37. None
  38. None
  39. None
  40. None
  41. Rx… Does it need to die? - Developers tend to

    use it even for simple event handling (e.g. on clicks) tasks or API request - Rx should be used only for handling complex streams of data - Rx introduces new kinds of issues if you don’t use it daily - You can easily use coroutines instead of Rx - Created in times of Java 6; not-needed while Java 8/Kotlin is available - proactively ask the question: is this a reactive scenario? - It’s harder to write unit tests when you use RX If possible, use native tools, like Coroutines in Kotlin, LiveData, etc.
  42. Christof Vollrath - notes link

  43. None
  44. None
  45. GRAPHQL - Apollo library - caching graphQL client for mobile

    - developed by Facebook - like SQL for data - GraphSQL vs REST - you get only what you want - single endpoint: /graphql - Presentation about UFO sightings ;) CHEATSHEET - link Annyce Davis
  46. None
  47. None
  48. None
  49. None
  50. None
  51. KOIN - Kotlin allows us to use DSL instead of

    Annotation Processors - Annotation Processors are slow - Annotation Processors (as of now) kill Gradle incremental compilation - KOIN vs Dagger 2 Danny Preussler
  52. None
  53. None
  54. None
  55. None
  56. FONTS, EMOJI AND TEXT USING SUPPORT LIBRARIES - Easily import

    fonts - EmojiAppCompat usage - EmojiTextViewHelper for customs views - Downloadable fonts (from Google resources, can be downloaded during app installation) - TextView auto-sizing (width and height shouldn’t be wrap_content) Anita Singh
  57. None
  58. None
  59. None
  60. None
  61. TENSOR FLOW - on mobile - Machine Learning APIs -

    Google // IBM // Microsoft - Deep neural network - pix2pix tool - cat model -> 680 MB -> SO OPTIMISE! - Draw to pix sample app Attila Blenesi
  62. VIDEO: LINK

  63. None
  64. None
  65. None
  66. None
  67. None
  68. MOBIUS - LOOPY UI - State management library - Kotlin

    data classes represent events - Events, inputs, Effects - Presentation Petter Mahlen
  69. None
  70. Kirin 970 first introduced a dedicated Neural Processing Unit (NPU)

    on the mobile AI computing platform
  71. None
  72. BUILDING A DECENTRALIZED APP ON ANDROID - “OPPORTUNITIES IN THE

    DECENTRALIZED APPS WORLD” - you're told who the user is - only the user can decrypt the data - decentralized app: authentication & encryption & storage - S3-like storage - keys generated on device - GDPR world in European Union - Facebook “leaks” Friedger Müffke APPLICATION STORE: https://app.co/
  73. None
  74. None
  75. Data Binding on Android Ash Davies

  76. None
  77. None
  78. GITLAB - THE BEST APPS ARE BUILT IN PYJAMA-PANTS -

    GitLab team around the world - Run a “daily”, not project related, to talk about personal life and get to know one another - They run a blog - link Job van der Voort HOW TO RUN A COMPANY GUIDE: HANDBOOK Onboarding - link Hiring - link Spending company money - link
  79. None
  80. None
  81. Fun

  82. None
  83. None
  84. None
  85. Links / References - DroidCon Berlin YouTube channel - link

    - DroidCon official website - link - https://twitter.com/cvollrath - Machine Learning - link, link, link - https://medium.com/@sabag.ronen - https://twitter.com/danlowlows/status/858754840419196929
  86. QUESTIONS? @bkosarzycki