# Kotlin for Data Science ## Course Outline 1) Why Kotlin? * What is Kotlin? * Why Kotlin for Data Science? * Comparison of Kotlin vs Scala, Python, Java 2) Setup * JDK * Gradle * Intellij IDEA 3) Kotlin Basics * Your first Kotlin application * Variables and Types * Functions * Nullable Types 4) Classes * Classes * Data classes * Objects 5) Ranges and Collections * Ranges and for-loops * Lists * Sets * Maps 6) Functional Programming and Sequences * Extension functions and properties * Higher Order Functions and lambdas * Sequences * `let()` and `apply()` 7) Reading Data Sources * Reading text Files * Web requests * SQL queries 8) Practical applications * Using Kotlin-Statistics * Using Kotlin with Apache Spark * Ranking mutual friends in a social network * Building interactive models with TornadoFX