# workshop
**Repository Path**: mirrors_Kotlin/workshop
## Basic Information
- **Project Name**: workshop
- **Description**: JetBrains Kotlin Workshop Material
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2020-08-09
- **Last Updated**: 2026-04-11
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
[](https://confluence.jetbrains.com/display/ALL/JetBrains+on+GitHub)
## Kotlin Workshop

A Kotlin workshop intended to be taught in two days.
### Structure
This workshop is divided into two parts
* Introduction to Kotlin
* Advanced Kotlin
It consists of
* **Instructor Project**: Used to explain concepts, with existing code samples
* **Student Project**: For students to complete
* **Presentations**: For the instructor to use
* **Questions**: For students to complete
Both the Instructor Project and the slides have Introduction and Advanced modules included. While the Introduction
has a lot of pre-built examples, it also serves as a canvas to show more code while teaching. However, please make sure that if you're
a contributing author to this project, that you *do not* check-in any ad-hoc code. It's also recommended to use Scratch files in IntelliJ IDEA
for this purpose.
#### Presentations
Slides for the workshop lead by Hadi Hariri can be found [here](https://docs.google.com/presentation/d/1zYWyDedyf0YhnLFF3TVpUqU3C8PKTuvR5P06L99MRn8/edit?usp=sharing).
Presentations used for the workshop at KotlinConf:
1. [Intro](https://speakerdeck.com/svtk/1-intro-kotlin-workshop)
2. [Nullable Types](https://speakerdeck.com/svtk/2-nullable-types-in-kotlin-kotlin-workshop)
3. [Object-Oriented Programming in Kotlin](https://speakerdeck.com/svtk/3-object-oriented-programming-in-kotlin-kotlin-workshop)
4. [Kotlin Types](https://speakerdeck.com/svtk/4-kotlin-types-kotlin-workshop)
5. [Functional Programming in Kotlin](https://speakerdeck.com/svtk/5-functional-programming-kotlin-workshop)
6. [The Power of inline](https://speakerdeck.com/svtk/6-the-power-of-inline-kotlin-workshop)
7. [Lambda With Receiver](https://speakerdeck.com/svtk/7-lambda-with-receiver-kotlin-workshop)
8. [Conventions](https://speakerdeck.com/svtk/8-conventions-kotlin-workshop)
9. [Intro to Coroutines](https://speakerdeck.com/svtk/9-introduction-to-coroutines-kotlin-workshop)
#### Questions
Questions can be found [here](https://drive.google.com/file/d/18AiXqEzdJmNonc6Lo6eumeFmcVvC_9vk/view?usp=sharing). The keys to the questions are in the module `instructor/quizzes`.
Note that the similar material can be found explained in detail in the following [Coursera course](https://www.coursera.org/learn/kotlin-for-java-developers).
### Authors
This workshop includes material from the following authors:
* [Hadi Hariri](https://github.com/hhariri)
* [Svetlana Isakova](https://github.com/svtk)
* [Dmitry Jemerov](https://github.com/yole)
* [Roman Elizarov](https://github.com/elizarov)
### License and Usage
The material provided in this repository, including but not limited to source code, presentations, notes and exercises is Copyright (c) 2017 JetBrains, and is provided as-is.


This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
JetBrains and Kotlin are Registered Trademarks of their respective trademark holders.
#### Contributions
We welcome all contributions to this workshop. If you feel you'd like to contribute something, create a fork and make a pull request. Bug fixes, comments, suggestions, all welcome.
If you're contributing code or samples, please send a pull request. If you'd like to update the slides or questions, please contact [Hadi Hariri](https://github.com/hhariri).
#### Usage and endorsements
You are welcome to use the material in this workshop provided you abide by the corresponding license agreement. Additionally
* By using this material, with or without any modification, JetBrains does not endorse any workshop or training that you may offer.
* By using this material, with or without any modification, you may not use JetBrain's name to promote your workshop or training without prior written consent.
* By using this material, provided there are no modifications, you may indicate that you are using JetBrains Kotlin Workshop Material.
If you're interested in becoming an official JetBrains Training Partner, please [contact us](https://www.jetbrains.com/company/partners/become_a_partner.html)