• Founder DevHack. • Tech Lead Wordbox • Consultant and advisor on software architecture, cloud computing and software development. • Experience in several languages and platforms. (C, C#, Java, NodeJS, android, GCP, Firebase). • Google Developer Expert GCP & Firebase • BS in System Engineering and a MS in Software Engineering. • @jggomezt
1.0 in 2016. ➢ Modern programming language ➢ Object Oriented. ➢ Statically typed. ➢ Less code with fewer bugs. ➢ Lambdas and properties. ➢ Nullable and non-nullable data type. ➢ Remove a lot of boilerplate from code. ➢ Readability. ➢ Functional constructs. ➢ Use Java Libraries. ➢ Immutability. Kotlin
continue a conversation. ➢ You need fewer words you can be very expressive in a context. ➢ DLS is important to carry the context. ➢ Fluency is easy to read, it doesn’t feel like code. Context and Fluency
semicolon. Semicolons break the flow. ➢ Drop () and . using infix notation. ➢ Extensions method. ➢ Lambda -- no () for passing last lambda. ➢ Implicit receivers. Kotlin DSL Capabilities