Master Kotlin by Doing

Elena van Engelen - Maslova
4 min readJul 4, 2024

--

Are you struggling to learn Kotlin and understand its concepts just by looking at documentation and videos? Do you find passive learning techniques like reading and watching tutorials insufficient? If so, you’re not alone. Many programmers discover that the most effective way to learn a new language is by rolling up their sleeves and diving into hands-on practice. In this blog post, I’ll explore why learning by doing is the best approach for mastering Kotlin, and I’ll introduce you to a resource that makes this method highly effective and engaging: Kotlin Crash Course [3].

The benefits of learning by doing

Learning by doing keeps you actively engaged, making the learning process not only more enjoyable but also more effective. Research shows that hands-on practice helps in better retention of information compared to passive learning methods. For instance, Edgar Dale’s Cone of Experience [1] suggests that people remember more from what they do as opposed to what they read, hear, or observe. Additionally, a meta-analysis by Freeman et al. [2] found that active learning significantly improves student performance and retention in science, engineering, and mathematics courses. When you immediately apply what you’ve learned, you’re more likely to understand and remember the concepts. This approach builds practical, real-world skills that are directly applicable to programming jobs and projects.

Introducing Kotlin Crash Course

Kotlin Crash Course is a fast-paced, hands-on introduction to Kotlin, designed to help readers build robust applications using the latest language features and best practices. This book covers key Kotlin programming topics such as object-oriented and functional programming, collections, concurrency, and unit testing. Each chapter adopts a Learning by Doing approach, focusing on practical projects rather than just theoretical knowledge. This method enhances knowledge retention by simulating real-life scenarios, allowing you to apply concepts as you learn them.

Whether you are new to Kotlin or looking to refresh your skills, this book offers a step-by-step guide to quickly mastering the language, preparing you for advanced development tasks and boosting your career opportunities.

Source: https://bpbonline.com/products/kotlin-crash-course

What You Will Learn:

  • Understand Kotlin syntax and basic coding conventions.
  • Master object-oriented and functional programming concepts.
  • Utilize Kotlin’s collection framework effectively.
  • Implement concurrency and parallelism with coroutines.
  • Learn 50+ Kotlin best practices.
  • Develop diverse applications, including REST APIs, simple frontend apps, and serverless solutions.

Learning by doing in Kotlin Crash Course

Grasping the Basics: Start with a gentle introduction to Kotlin’s syntax and coding conventions. Chapter 2 serves as your orientation, demystifying terms and laying out the ground rules of the language, making sure you’re comfortable and ready to dive into coding.

Sequential Learning and Application: Each chapter builds on the previous one, introducing manageable segments of Kotlin theory highlighted with industry best practices. You’ll immediately apply what you’ve learned by incrementally building projects, ensuring that by the end of each chapter, you have a working application showcasing the concepts in action.

Project Diversity: Each chapter features a new project specifically designed to reinforce the Kotlin concepts discussed. This hands-on approach helps you understand the practical use of Kotlin features, enhancing your grasp of how these concepts are applied in real programming scenarios.

Building on Foundations: Some chapters expand upon earlier projects, showing how to refine and evolve your code, enriching your learning experience.

Hands-On Experience: Every project is a practical exercise that transforms theoretical knowledge into tangible skills, preparing you for real-world programming tasks.

Best Practices and Professional Techniques: Throughout the book, 50+ best practices and professional techniques are woven into the learning material, helping you develop good coding habits from the start.

Interactive Elements: Early on, you’ll work with command-line interfaces and IntelliJ’s scratch files. As you progress, you’ll create simple user interfaces with Jetpack Compose, REST APIs, and unit tests, adding an interactive layer to the projects you build. These tools are crucial for grasping both the “how” and the “why” behind Kotlin programming.

Project Preview: Your learning journey includes a variety of projects, from simple command-line applications to complex, real-world solutions:

  • Begin with command-line applications to understand Kotlin’s basic building blocks.
  • Develop simple REST APIs with Spring Boot while exploring object-oriented programming.
  • Move to front-end development with Jetpack Compose during your studies on functional programming.
  • Construct a REST API with Ktor, enhancing your backend capabilities.
  • Culminate with a cloud-native, event-driven application on AWS serverless technology, using http4k to implement serverless functions and integrate with a NoSQL database and GraphQL API.

By the end of this book, you will not only be proficient in Kotlin syntax but also adept at applying Kotlin in practical software development scenarios, ready to tackle advanced projects with confidence.

Conclusion and next steps

Learning by doing is the most effective way to master programming. Kotlin Crash Course: Fast-track your programming skills with practical experience provides a structured, hands-on approach to learning Kotlin, ensuring that you build practical skills while enjoying the process. Don’t just read about Kotlin — start coding with it today! To begin your hands-on learning journey, get your copy of Kotlin Crash Course from Amazon [3] or BPB [4].

Have any questions or experiences to share? What are your biggest challenges when learning a new programming language? Leave a comment below!

References

[1] https://www.growthengineering.co.uk/what-is-edgar-dales-cone-of-experience/

[2] https://www.researchgate.net/publication/262267588_Active_Learning_Increases_Student_Performance_in_Science_Engineering_and_Mathematics

[3] Amazon.nl https://amzn.eu/d/042WwM3O , Amazon.co.uk https://amzn.eu/d/06A1qgtK , Amazon.com https://a.co/d/0cahgrqJ

[4] BPB https://bpbonline.com/products/kotlin-crash-course

--

--