ready for production - goto conference · • started in 2010 by jetbrains • we needed a language...
TRANSCRIPT
![Page 1: Ready for Production - GOTO Conference · • Started in 2010 by JetBrains • We needed a language • Concise, Expressive, Toolable, Interoperable… Pragmatic • Developed under](https://reader033.vdocument.in/reader033/viewer/2022042312/5edad3c909ac2c67fa685e8c/html5/thumbnails/1.jpg)
OTLINReady for Production
![Page 2: Ready for Production - GOTO Conference · • Started in 2010 by JetBrains • We needed a language • Concise, Expressive, Toolable, Interoperable… Pragmatic • Developed under](https://reader033.vdocument.in/reader033/viewer/2022042312/5edad3c909ac2c67fa685e8c/html5/thumbnails/2.jpg)
BACKGROUND
• Started in 2010 by JetBrains
• We needed a language
• Concise, Expressive, Toolable, Interoperable… Pragmatic
• Developed under Apache 2 OSS on GitHub
![Page 3: Ready for Production - GOTO Conference · • Started in 2010 by JetBrains • We needed a language • Concise, Expressive, Toolable, Interoperable… Pragmatic • Developed under](https://reader033.vdocument.in/reader033/viewer/2022042312/5edad3c909ac2c67fa685e8c/html5/thumbnails/3.jpg)
WHAT IS KOTLIN
• Static Language
• Targeting JVM/JavaScript and Native
![Page 4: Ready for Production - GOTO Conference · • Started in 2010 by JetBrains • We needed a language • Concise, Expressive, Toolable, Interoperable… Pragmatic • Developed under](https://reader033.vdocument.in/reader033/viewer/2022042312/5edad3c909ac2c67fa685e8c/html5/thumbnails/4.jpg)
CURRENT STATE• 1.0 Release on 15th February 2016
• 40+ Developers at JetBrains
• 100+ Committers
• Used in close to 10 Products at JetBrains
• External Companies include Expedia, NBC News Digital, Netflix, Amex amongst others
![Page 5: Ready for Production - GOTO Conference · • Started in 2010 by JetBrains • We needed a language • Concise, Expressive, Toolable, Interoperable… Pragmatic • Developed under](https://reader033.vdocument.in/reader033/viewer/2022042312/5edad3c909ac2c67fa685e8c/html5/thumbnails/5.jpg)
WHERE CAN I USE IT?
• Anywhere
• Android - Compatible with Java 6. Small runtime
• Similarity to Java/C#/JavaScript/Groovy allows quick ramp-up time
• Interoperability allows gradual adoption
![Page 6: Ready for Production - GOTO Conference · • Started in 2010 by JetBrains • We needed a language • Concise, Expressive, Toolable, Interoperable… Pragmatic • Developed under](https://reader033.vdocument.in/reader033/viewer/2022042312/5edad3c909ac2c67fa685e8c/html5/thumbnails/6.jpg)
HOW CAN I USE IT?• Command Line
• Maven
• Gradle
• Kobalt
• Ant
• IntelliJ IDEA
• Android Studio
• Eclipse
• NetBeans
![Page 7: Ready for Production - GOTO Conference · • Started in 2010 by JetBrains • We needed a language • Concise, Expressive, Toolable, Interoperable… Pragmatic • Developed under](https://reader033.vdocument.in/reader033/viewer/2022042312/5edad3c909ac2c67fa685e8c/html5/thumbnails/7.jpg)
LET’S SEE SOME CODE
![Page 8: Ready for Production - GOTO Conference · • Started in 2010 by JetBrains • We needed a language • Concise, Expressive, Toolable, Interoperable… Pragmatic • Developed under](https://reader033.vdocument.in/reader033/viewer/2022042312/5edad3c909ac2c67fa685e8c/html5/thumbnails/8.jpg)
ANKO
![Page 9: Ready for Production - GOTO Conference · • Started in 2010 by JetBrains • We needed a language • Concise, Expressive, Toolable, Interoperable… Pragmatic • Developed under](https://reader033.vdocument.in/reader033/viewer/2022042312/5edad3c909ac2c67fa685e8c/html5/thumbnails/9.jpg)
ANDROID EXTENSIONS
![Page 10: Ready for Production - GOTO Conference · • Started in 2010 by JetBrains • We needed a language • Concise, Expressive, Toolable, Interoperable… Pragmatic • Developed under](https://reader033.vdocument.in/reader033/viewer/2022042312/5edad3c909ac2c67fa685e8c/html5/thumbnails/10.jpg)
SPRING BOOT
![Page 11: Ready for Production - GOTO Conference · • Started in 2010 by JetBrains • We needed a language • Concise, Expressive, Toolable, Interoperable… Pragmatic • Developed under](https://reader033.vdocument.in/reader033/viewer/2022042312/5edad3c909ac2c67fa685e8c/html5/thumbnails/11.jpg)
KOBALT
![Page 12: Ready for Production - GOTO Conference · • Started in 2010 by JetBrains • We needed a language • Concise, Expressive, Toolable, Interoperable… Pragmatic • Developed under](https://reader033.vdocument.in/reader033/viewer/2022042312/5edad3c909ac2c67fa685e8c/html5/thumbnails/12.jpg)
![Page 13: Ready for Production - GOTO Conference · • Started in 2010 by JetBrains • We needed a language • Concise, Expressive, Toolable, Interoperable… Pragmatic • Developed under](https://reader033.vdocument.in/reader033/viewer/2022042312/5edad3c909ac2c67fa685e8c/html5/thumbnails/13.jpg)
COMING IN 1.1• Coroutines (async/await)
• Data Class Hierarchies
• Type Aliases
• Deconstructing in Lambdas
• Bound Method References
• Local Delegated Properties
• Java 8/9 Support
• JavaScript Support
![Page 14: Ready for Production - GOTO Conference · • Started in 2010 by JetBrains • We needed a language • Concise, Expressive, Toolable, Interoperable… Pragmatic • Developed under](https://reader033.vdocument.in/reader033/viewer/2022042312/5edad3c909ac2c67fa685e8c/html5/thumbnails/14.jpg)
NEXT STEPS
• kotlinlang.org
• try.kotlinlang.org
• Kotlin Koans (online/offline)
![Page 15: Ready for Production - GOTO Conference · • Started in 2010 by JetBrains • We needed a language • Concise, Expressive, Toolable, Interoperable… Pragmatic • Developed under](https://reader033.vdocument.in/reader033/viewer/2022042312/5edad3c909ac2c67fa685e8c/html5/thumbnails/15.jpg)
BOOKS
![Page 16: Ready for Production - GOTO Conference · • Started in 2010 by JetBrains • We needed a language • Concise, Expressive, Toolable, Interoperable… Pragmatic • Developed under](https://reader033.vdocument.in/reader033/viewer/2022042312/5edad3c909ac2c67fa685e8c/html5/thumbnails/16.jpg)
O’REILLY COURSE
Introduction to Kotlin (5 Hours)Advanced Kotlin Programming (3 Hours)
![Page 17: Ready for Production - GOTO Conference · • Started in 2010 by JetBrains • We needed a language • Concise, Expressive, Toolable, Interoperable… Pragmatic • Developed under](https://reader033.vdocument.in/reader033/viewer/2022042312/5edad3c909ac2c67fa685e8c/html5/thumbnails/17.jpg)
COMMUNITY
![Page 18: Ready for Production - GOTO Conference · • Started in 2010 by JetBrains • We needed a language • Concise, Expressive, Toolable, Interoperable… Pragmatic • Developed under](https://reader033.vdocument.in/reader033/viewer/2022042312/5edad3c909ac2c67fa685e8c/html5/thumbnails/18.jpg)
KOTLINCONF
![Page 19: Ready for Production - GOTO Conference · • Started in 2010 by JetBrains • We needed a language • Concise, Expressive, Toolable, Interoperable… Pragmatic • Developed under](https://reader033.vdocument.in/reader033/viewer/2022042312/5edad3c909ac2c67fa685e8c/html5/thumbnails/19.jpg)
SUMMARY• Pragmatic Language
• Easy Learning Curve
• Interoperability provides low-risk adoption
• Enjoyable
• Kotlin is here to stay
![Page 20: Ready for Production - GOTO Conference · • Started in 2010 by JetBrains • We needed a language • Concise, Expressive, Toolable, Interoperable… Pragmatic • Developed under](https://reader033.vdocument.in/reader033/viewer/2022042312/5edad3c909ac2c67fa685e8c/html5/thumbnails/20.jpg)
![Page 21: Ready for Production - GOTO Conference · • Started in 2010 by JetBrains • We needed a language • Concise, Expressive, Toolable, Interoperable… Pragmatic • Developed under](https://reader033.vdocument.in/reader033/viewer/2022042312/5edad3c909ac2c67fa685e8c/html5/thumbnails/21.jpg)
THANK YOU@hhariri - [email protected]