Looking for a bit of weekend reading? We’re making some select foundational programming books free for everyone this weekend. If you’ve been thinking of diving a little deeper into the Swift or Kotlin languages, then this is your chance!
Featured Free Books this Weekend
Whether you’ve been building apps for a long time, or you’re just starting out, it’s always a great idea to dig in to the languages you’re using, and to work to understand not just how the language works, but also why the language works the way it does.
With that in mind, we’re making the following online books free for everyone to read for the weekend! They’re chock-full of interesting reading about the inner workings of the language, and they also come with a ton of challenges and exercises for you to test whether or not you really know as much about the language as you think you do!
In the last six years, Swift has gone from being a secret project at Apple, Inc. to a full-blown, open source, community driven language. It continues to refine its core goal of being a general purpose language that supports safety, speed and expressiveness.
You’ll learn about basic things like constants, values, operations and types, and move up to more intermediate concepts like data structures, classes and enumerations. Finally, you’ll finish off by getting in-depth knowledge about protocol extensions, custom operators, protocol-oriented programming and generics. Swift lets you create beautiful abstractions to solve real-world problems that you will learn about in this book.
Swift is also a lot of fun! It’s easy to try out small snippets of code as you test new ideas. Programming is a hands-on experience, and Swift makes it fast and easy to both follow along with this book, as well as explore on your own.
The book is broken into four sections:
- Section I: Swift Basics: The chapters in this section will introduce you to the very basics of programming in Swift. From the fundamentals of how computers work up to language structures, you’ll cover enough of the language to be able to work with data and organize your code’s behavior.
- Section II: Collection Types: So far, you’ve mostly seen data in the form of single elements. Although tuples can have multiple pieces of data, you have to specify the size upfront; a tuple with three strings is a completely different type from a tuple with two strings, and converting between them isn’t trivial. In this section, you’ll learn about collection types in Swift. Collections are flexible “containers” that let you store any number of values together.
- Section III: Building Your Own Types: You can create your own type by combining variables and functions into a new type definition. When you create a new type, you give it a name; thus, these custom types are known as named types. Swift includes four kinds of named types: structures, classes, enumerations and protocols.
- Section IV: Advanced Topics: In this section, you’ll delve into some essential but more advanced topics to round out your Swift apprenticeship, including protocol-oriented programming, generics, memory management, pattern matching, custom operators and more!
This is a book for complete beginners to the new, modern Kotlin language.
Everything in the book takes place in a clean, modern development environment, which means you can focus on the core features of programming in the Kotlin language, without getting bogged down in the many details of building apps.
This is a sister book to the Android Apprentice the Android Apprentice focuses on making apps for Android, while the Kotlin Apprentice focuses on the Kotlin language fundamentals.
This book is divided into four sections:
- Section I: Kotlin Basics: The chapters in this section will introduce you to the very basics of programming in Kotlin. From the fundamentals of how computers work, all the way up to language structures, you’ll cover enough of the language to be able to work with data and organize your code’s behavior.
- Section II: Collections & Lambdas: So far, you’ve mostly seen data in the form of single elements. Although pairs and triples can have multiple pieces of data, you’re limited to combining only two or three items with them. In this section, you’ll learn about collection types in Kotlin. Collections are flexible “containers” that let you store any number of values together.
- Section III: Building Your Own Types: Integers, doubles and other more primitive types might not be enough for your purposes, and you might need to create a type to store complex numbers. Or maybe storing first, middle and last names in three independent variables is getting difficult to manage, so you decide to create a FullName type. Custom types make it possible to build large and complex things with the basic building blocks that you’ve learned so far. It’s time to take your Kotlin apprenticeship to the next level!
- Section IV: Intermediate Topics: Round out your understanding of Kotlin with chapters coving functional programming, operator overloading, coroutines, command-line scripting, Kotlin/Native, and more!
Where to Go From Here?
Brushing up on programming language concepts isn’t just weekend reading, though; it’s always great to keep your skills sharp for whiteboard or coding interviews, and to stay on top of all of the little nuances of languages that keep evolving in interesting ways. We hope you enjoy these books while they’re free this weekend; they’ll be available for you to read in full until Monday, October 19. Enjoy!
If you want to take your skills even further, you can get access to both of these books and more as part of both the Ultimate Pro and Ultimate Beginner subscriptions. Combining top-notch video courses with detailed, professional books, an Ultimate subscription is simply the best investment you can make in your development career.
- To learn more about the Ultimate Pro and Ultimate Beginner subscriptions, check out our subscription page here.
- Want to dive in? Start reading the Kotlin Apprentice and Swift Apprentice, free this weekend only.
- Want to try out our online book reading features, including highlighting and note taking? Of course you do. Create a free account today and give the full online reading experience a try.
From the entire Swift Apprentice and Kotlin Apprentice teams, thank you for your support, and we hope you enjoy this free weekend!