#
Welcome!
Welcome to the beginner's guide to using Kotlin in your FTC codebase!
#
Whom is this guide for?
This guide assumes no prior programming knowledge other than basic Kotlin, but no other FTC programming knowledge is necessary. This guide is meant for absolute beginners and serves to act as a foundation for your FTC programming journey.
#
Why Kotlin?
Kotlin offers numerous benefits over other FTC programming options.
First, Kotlin and Android Studio are far more powerful tools than Blocks or OnBotJava, allowing you to use advanced programming techniques. They are less limited by UI, and they allow you to use advanced libraries such as RoadRunner or Pedro Pathing.
Secondly, Kotlin is a syntactically simpler language than Java and offers many quality of life features that make programming easier, such as type inferencing. The developers behind Kotlin offer numerous reasons why, and I suggest that you read them.
#
Why K4FTC
I started this guide because I saw no viable options for rookies who are seeking to learn Kotlin for FTC without any previous knowledge of Java. While older, more experienced programmers who know both languages may be able to translate between the two languages when reading programming guides, this skill isn't obvious to younger rookies who haven't programmed before.
K4FTC seeks to bridge this knowledge gap. By providing introductory instruction in FTC programming in Kotlin, we can give rookie programmers the skills they need to move on to other programming guides and concepts.
#
Contributing
To contribute, all you have to do is make a pull request to the main branch with the changes you would like to make. This is greatly appreciated as this is currently a solo, volunteer project.
#
Running locally
To run this website locally, first install Retype. This can be accomplished by running the following command, assuming you already have NodeJS installed:
npm install retype
After navigating to the directory where you cloned the repository, run the following command to open the website in your web browser:
retype start