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

The State of Kotlin

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers. →

The State of Kotlin

State of the Kotlin Ecosystem

Avatar for Zan Markan

Zan Markan

March 29, 2018

More Decks by Zan Markan

Other Decks in Programming

Transcript

  1. KOTLIN @ PUSHER Used for all new SDK development for

    Android ▸ Chatkit ▸ Push Notifications ▸ Feeds © @zmarkan 2018 | @pusher
  2. SURVEY GOALS ▸ Learning ▸ Promote Kotlin usage ▸ Give

    back to the community ▸ Hoping for 1000 responses © @zmarkan 2018 | @pusher
  3. DOING THE SURVEY ▸ December - Jan -> Questions ▸

    Jan - March -> Survey running ▸ prize -> Nikola Curilovic © @zmarkan 2018 | @pusher
  4. CATEGORIES SURVEYED ▸ Usage ▸ Learning ▸ Features ▸ Zeitgeist

    ▸ Demographics © @zmarkan 2018 | @pusher
  5. OTHER PROJECTS ▸ Games ▸ Scripting ▸ Experiments ▸ Learning

    & Koans ▸ Data Science © @zmarkan 2018 | @pusher
  6. REASONS ▸ Reflection, dependencies - Dagger, GreenDAO, Realm & Data

    classes ▸ Early days: Spring DI and JaxRS ▸ Organisational reasons © @zmarkan 2018 | @pusher
  7. WHY? ▸ Google, JetBrains support ▸ Tooling support ▸ Community

    folk: Jake Wharton, Christina Lee, Antonio Leiva ▸ JB folk: Hadi Hariri, Svetlana Isakova, Andrey Breslav © @zmarkan 2018 | @pusher
  8. WHAT FOR? ▸ Reducing Android boilerplate ▸ Replacing Util classes

    ▸ “nicer” FP ▸ Conversions → strings, etc… ▸ DSLs © @zmarkan 2018 | @pusher
  9. WHAT FOR? ▸ Threading, I/O, UI ▸ Replacement for RxJava

    ▸ Lazy generators ▸ Serverside - with Ktor ▸ C# "expats" © @zmarkan 2018 | @pusher
  10. WHAT FOR? ▸ ML & AI ▸ Jake Wharton's Testing

    Robots ▸ UI Declarations (Android & Java) ▸ Configurations, tooling ▸ Custom Data Structures - typed JSON © @zmarkan 2018 | @pusher
  11. MOST MISSED ▸ Ternary operator ▸ SAM for Kotlin classes

    ▸ Pattern matching ▸ More syntax sugar ▸ LINQ © @zmarkan 2018 | @pusher
  12. MORE MISSED... ▸ Literal bitwise operations ▸ Custom operations ▸

    Single multiplatform IDE ▸ VueJS support ▸ Swift’s guard © @zmarkan 2018 | @pusher
  13. MOST HATED ▸ Companion objects / statics ▸ Too many

    "exotic" keywords ▸ Public by default ▸ No package-local modifier ▸ Not a dynamic language © @zmarkan 2018 | @pusher
  14. WHAT DO YOU LIKE THE MOST? ▸ Features ▸ moden

    programming language, similar to Swift, NOT Java ▸ Syntactic sugar, stdlib, easy to learn ▸ It's fun ▸ Platform independent © @zmarkan 2018 | @pusher
  15. FUTURE OF STATE OF KOTLIN? WHAT WOULD YOU LIKE TO

    ASK? © @zmarkan 2018 | @pusher
  16. REFERENCES ▸ JW's whitepaper from Square: docs.google.com/document/d/ 1ReS3ep-hjxWA8kZi0YqDbEhCqTt29hG8P44aA9W0DM8 ▸ Kotlin

    Future Features survey: blog.jetbrains.com/kotlin/2017/06/ kotlin-future-features-survey-results ▸ StackOvervlow Survey: insights.stackoverflow.com/survey/2018 © @zmarkan 2018 | @pusher