Placeholder cover

Kotlin for the Curious

by Faisal Islam
June 2024, 300 pp.
Use coupon code PREORDER to get 25% off!

Kotlin is a programming language that combines the best features of Python and Java into a single, easy-to-use language that’s rapidly growing. Though Kotlin is primarily known for Android app development, this book establishes its broader credentials for general-purpose coding—complete with geeky, hands-on projects that will take you from total beginner to proficient Kotlin developer.

After learning the basics of the language and integrating the JavaFX library to generate graphics and data visualizations, you’ll apply your knowledge to over 30 math, science, and algorithmic challenges of increasing complexity. You’ll model the motion of a pendulum, simulate the orbits of a binary star system, render enchanting fractals like the Mandelbrot set, implement ant colony optimization and other nature-inspired algorithms, and much more. Beyond the specifics of the Kotlin language, the book’s many projects will teach you how to think methodically and use code to solve problems. You’ll also learn about generally applicable computer science topics such as randomness, recursion, sorting and searching, genetic algorithms, and optimization.

Author Bio 

Faisal Islam holds an MS in civil engineering and a PhD in resource economics. He has been coding for over two decades in C, Java, Python, and Kotlin. He loves tackling complex real-world problems with his skills in simulation, modeling and optimization. He is also passionate about promoting STEM education through coding, especially for youth. In his spare time, he enjoys photography, reading sci-fi novels, and traveling with his family across the globe.

Table of contents 

Part I: Getting Up and Running
Chapter 1: The Power of Coding
Chapter 2: Kotlin Basics
Chapter 3: Visualizing Data
Part II: Mini Projects
Chapter 4: Fun with Math
Chapter 5: Fun with Science
Part III: Taking Off
Chapter 6: Lost in Fractals
Chapter 7: Sorting and Searching
Part IV: Stealing Nature's Secrets
Chapter 8: Introducing Nature-Inspired Algorithms
Chapter 9: Genetic Algorithms
Chapter 10: Agent-Based Algorithms

Appendix: Installation and Setup

The chapters in red are included in this Early Access PDF.