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

Second best time to speak "Kotlin" is NOW

Second best time to speak "Kotlin" is NOW

A casual talk about an introduction to Kotlin, sharing my personal journey and why Android developers in Pakistan and even other devs should care about Kotlin. Android devs have to adopt Kotlin and it is scary that some folks in the local community are still evaluating. I also tried to discuss common challenges and some proposed solutions about how to deal with them. Bottom line is that the more you use Kotlin, the more you love it!

Wahib Ul Haq

April 12, 2019
Tweet

More Decks by Wahib Ul Haq

Other Decks in Programming

Transcript

  1. Kotlin was unveiled in July 2011 for the first time

    and open-sourced in 2012 First official release of v1.0.0 in 2016 and v1.3.30 happened yesterday
  2. Kotlin was unveiled in July 2011 for the first time

    and open-sourced in 2012 First official release of v1.0.0 in 2016 and v1.3.30 happened yesterday Kotlin is developed by JetBrains, the creators of IntelliJ IDEA
  3. Kotlin was unveiled in July 2011 for the first time

    and open-sourced in 2012 First official release of v1.0.0 in 2016 and v1.3.30 happened yesterday Kotlin is developed by JetBrains, the creators of IntelliJ IDEA Primary development is from a team of JetBrains programmers based in Saint Petersburg, Russia
  4. Kotlin was unveiled in July 2011 for the first time

    and open-sourced in 2012 First official release of v1.0.0 in 2016 and v1.3.30 happened yesterday Kotlin is developed by JetBrains, the creators of IntelliJ IDEA Primary development is from a team of JetBrains programmers based in Saint Petersburg, Russia The name comes from Kotlin Island, near St. Petersburg (Hint: Java)
  5. Kotlin is a statically typed programming language that runs on

    JVM Kotlin is null safe and offers 100% Java interoperability
  6. Kotlin is a statically typed programming language that runs on

    JVM Kotlin is null safe and offers 100% Java interoperability Kotlin could be referred as improvised form of Java
  7. Kotlin is a statically typed programming language that runs on

    JVM Kotlin is null safe and offers 100% Java interoperability Kotlin could be referred as improvised form of Java Kotlin is an inherently concise language with a functional programming style
  8. Kotlin is a statically typed programming language that runs on

    JVM Kotlin is null safe and offers 100% Java interoperability Kotlin could be referred as improvised form of Java Kotlin is an inherently concise language with a functional programming style Kotlin uses aggressive type inference to determine the type
  9. Kotlin is a statically typed programming language that runs on

    JVM Kotlin is null safe and offers 100% Java interoperability Kotlin could be referred as improvised form of Java Kotlin is an inherently concise language with a functional programming style Kotlin uses aggressive type inference to determine the type Supports Extension Functions
  10. Kotlin is a statically typed programming language that runs on

    JVM Kotlin is null safe and offers 100% Java interoperability Kotlin could be referred as improvised form of Java Kotlin is an inherently concise language with a functional programming style Kotlin uses aggressive type inference to determine the type Supports Extension Functions Designed keeping Java developers in mind
  11. Why Android Devs are so excited about it? At Google

    I/O 2017, Google announced first-class support for Kotlin on Android. Kotlin is not a FAD!
  12. Why Android Devs are so excited about it? At Google

    I/O 2017, Google announced first-class support for Kotlin on Android. Kotlin is not a FAD! Less code, better readability
  13. Why Android Devs are so excited about it? At Google

    I/O 2017, Google announced first-class support for Kotlin on Android. Kotlin is not a FAD! Less code, better readability Supreme tooling support in Android Studio
  14. Why Android Devs are so excited about it? At Google

    I/O 2017, Google announced first-class support for Kotlin on Android. Kotlin is not a FAD! Less code, better readability Supreme tooling support in Android Studio Improved crash rate (Remember NullPointerExceptions?)
  15. Why Android Devs are so excited about it? At Google

    I/O 2017, Google announced first-class support for Kotlin on Android. Kotlin is not a FAD! Less code, better readability Supreme tooling support in Android Studio Improved crash rate (Remember NullPointerExceptions?) Renewed excitement around experimentation and innovation
  16. If you are an undergrad student, use Kotlin in your

    semester projects or side projects
  17. Not enough support from Manager/Team Lead/Rest of the team Not

    enough time to learn and switch Client doesn’t care/not paying for the improvement so why take the pain?
  18. Not enough support from Manager/Team Lead/Rest of the team Not

    enough time to learn and switch Client doesn’t care/not paying for the improvement so why take the pain? Risk of massively increasing technical debt
  19. Organise Internal Workshops / Course / Side project with your

    team Start writing/migrating Unit Tests in Kotlin
  20. Organise Internal Workshops / Course / Side project with your

    team Start writing/migrating Unit Tests in Kotlin If you touch a class (bug fix or refactor), consider migrating it to Kotlin
  21. Organise Internal Workshops / Course / Side project with your

    team Start writing/migrating Unit Tests in Kotlin If you touch a class (bug fix or refactor), consider migrating it to Kotlin Once you are somewhat confident, write all new features in Kotlin
  22. Organise Internal Workshops / Course / Side project with your

    team Start writing/migrating Unit Tests in Kotlin If you touch a class (bug fix or refactor), consider migrating it to Kotlin Try to get a feature/project to implement independently Once you are somewhat confident, write all new features in Kotlin
  23. Going with Java is going to create a legacy system

    from the day one Sooner or later you would be converting the codebase to Kotlin
  24. Going with Java is going to create a legacy system

    from the day one Sooner or later you would be converting the codebase to Kotlin Why not just start with Kotlin from the get-go?