es 2021-01-21 2021-01-21 Vigo, Spain Sergio Casero, Daniel Llanos rockndroid Vigo Kotlin vs Flutter en Producción https://www.meetup.com/rockndroidvig/events/275764894 En la sesión, abordarán qué les aportan dos tecnologías como Flutter y Kotlin en desarrollo multiplataforma nativo, teniendo en cuenta que Dart es el lenguaje detrás de Flutter y Kotlin es un lenguaje que ha logrado una increíble comunidad de desarrolladores de Android (siendo el lenguaje oficial de Android desde hace tres años): Pros y contras Cuando elegir una frente a otra Proyectos donde hemos utilizado estas tecnologías y resultado Resumen de la situación actual de cada SDK y su representación en aplicaciones de gran magnitud.

p>Nacido en Madrid y criado bajo olivos en mitad de Extremadura, Daniel lleva 4 años desarrollando aplicaciones de Android en Worldline Iberia. Estos últimos años además de Android ha tocado iOS, realizando aplicaciones multiplataforma con Kotlin Multiplatform Mobile y Flutter. En su ratos libres le gusta tocar la guitarra con su grupo, el boxeo sin contacto y, cuando se podía, ir al Metropolitano al ver al Atleti.

]]>
en 2021-02-07 2021-02-07 Brussels, Belgium Raul Hernandez Lopez FOSDEM - Kotlin DevRoom Getting ready for Declarative UIs with Unidirectional Data Flow using Kotlin Coroutines https://fosdem.org/2021/schedule/event/declarative_ready_unidirectionaldataflow_with_coroutines/ Unidirectional Data Flow (UDF) is a powerful technique that enhances our Reactive apps to work deterministically. Synchronising our views with fresh data was never an easy task to accomplish. For this same reason, there are mechanisms that support us to make that possible. Surely callbacks were a thing in the past, however, they were an antipattern themselves due to the lack of readability. Now we don't need to deal with them any more thanks to Kotlin Coroutines. Getting ready for Declarative UIs with Kotlin Coroutines and friends is indeed feasible, now we could use suspend functions, Flow and in the end StateFlow would make our Reactive apps ready for Declarative UIs. Let’s define a single entry point, receive data, transform it into a state, and render each state. Let’s get our apps ready for a Declarative UI world on Android.

You'll learn how to use Kotlin Coroutines and friends from the Kotlin Coroutines library to take advantage of really efficient and easy to read code. How to handle its lifecycle without being compromised to a specific external Android framework, which would enable your code to be prepared for more purposes than Android only apps.

]]>
en 2021-02-07 2021-02-07 Brussels, Belgium Ulrik Guenther, Kyle Harrington FOSDEM - Kotlin DevRoom Realtime 3D graphics and VR with Kotlin and Vulkan https://fosdem.org/2021/schedule/event/realtime_3d_graphics_with_kotlin/ This talk is gonna be about the scenery framework, a framework we have developed for visualising geometry and large volumetric data (TB+) using Kotlin and Vulkan or OpenGL. Coroutines, Kotlin's conciseness and syntactic sugar enabled the efficient codebase of scenery to integrate with popular image processing tools, and support Virtual Reality rendering, both on headsets and on distributed multi-projector systems like CAVEs. We'll show code, demos, lessons learned, and demonstrate how we use the framework in a visualisation software for end users, sciview, that we have also developed.

]]>
en 2021-02-07 2021-02-07 Brussels, Belgium Holger Steinhauer FOSDEM - Kotlin DevRoom This Spring Shall Be Challenged https://fosdem.org/2021/schedule/event/this_spring_shall_be_challenged/ Spring Framework helped us through dark times and is still a very active and helpful project. But is it the only option for doing any kind of web projects? There are many new frameworks around and they have interesting approaches. Especially when we use Kotlin, we might get better Developer Experiences and much better performance results.

This talk is about showing you some interesting alternatives and hopefully helps you with finding a good fit for your next project

Let's have a look at a real life borrowed REST endpoint, written in Kotlin (dahhh) using Spring, Ktor, Micronaut and Jooby. We'll compare the efforts, timings and developer experience and collect pros and cons for that next project planning.

]]>
en 2021-02-07 2021-02-07 Brussels, Belgium Abhishesh Srivastava FOSDEM - Kotlin DevRoom Start with the Kotlin flow https://fosdem.org/2021/schedule/event/start_with_the_kotlin_flow/ Kotlin flow is a new stream processing API introduced in kotlin. In this talk we'll learn about flow API's, internal details & how flow can be used to handle asynchronous streams of data.

]]>
en 2021-02-07 2021-02-07 Brussels, Belgium Nicolas Frankel FOSDEM - Kotlin DevRoom Migrating from Imperative to Reactive then Coroutines a Spring Boot application https://fosdem.org/2021/schedule/event/from_imperative_to_reactive_then_coroutines/ In this talk, I’ll demo how you can migrate a traditional sample Spring Boot application written in Kotlin to coroutines one step at a time via a hands-on demo.

From Wikipedia, Reactive Programming is 'a declarative programming paradigm concerned with data streams and the propagation of change.

The programming model is complex to master. It requires a lot of experience to feel comfortable with it. However, there’s no denying that it fits the cloud ecosystem perfectly. Since on-premises infrastructure is oversized, running a program that executes a couple of additional CPU cycles won’t change anything. On the other hand, you will pay for them if you host the same program on third-party infrastructure. Depending on the number of those cycles, and the number of nodes the program runs on, it can make a huge difference in your monthly bill.

In this talk, I’ll demo how you can migrate a traditional sample Spring Boot application written in Kotlin to coroutines one step at a time via a hands-on demo.

]]>
en 2021-02-07 2021-02-07 Brussels, Belgium Russell Wolf FOSDEM - Kotlin DevRoom Lessons I’ve learned in Multiplatform Library Development https://fosdem.org/2021/schedule/event/lessons_learned_in_kmm_library_dev/ Software development is hard. It’s even harder when you’re building libraries that other developers will depend on. I’ll talk about my experience with library development in Kotlin Multiplatform, trying to highlight challenges I’ve faced and mistakes I’ve made. We’ll look at this through the lens of recent updates I’ve made to the library I maintain, as well as the current state of the wider Kotlin library ecosystem.

]]>
en 2021-02-07 2021-02-07 Brussels, Belgium Marco Gomiero FOSDEM - Kotlin DevRoom And that, folks, is how we shared code between Android, iOS and the Backend https://fosdem.org/2021/schedule/event/and_that_folks_is_how_we_shared_code/ Kotlin Multiplatform is an alpha feature that you can use to share code between different platforms. Even if it is in alpha stage, it is already possible to start using it in production applications.

In this talk, I will share the discussion that led us to Kotlin Multiplatform, and the following processes we put in place to start using it in production for an Android, iOS, and backend project. I will show you what parts of the code you can (gradually) start to share and how to integrate with existing standalone projects.

]]>
en 2021-02-07 2021-02-07 Brussels, Belgium Mikolaj Leszczynski, Matthew Dolan FOSDEM - Kotlin DevRoom How to write your own MVI library and why you shouldn't https://fosdem.org/2021/schedule/event/how_to_write_your_mvi_library/ Model-View-Intent is a simple architectural pattern in principle, but questions come up when you try to implement it yourself. We draw on our 2+ years of experience with orbit-mvi, our MVI library, to show best practices for using an MVI system in your application.

How do you integrate with Android? What happens when you rotate your device? What about navigation or one-off events? How do you make the system type-safe? What about developer experience? If you’ve ever had similar questions come to our talk!

]]>
en 2021-02-07 2021-02-07 Brussels, Belgium Monika Kumar Jethani FOSDEM - Kotlin DevRoom Goodbye Kotlin Extensions, Welcome View Binding https://fosdem.org/2021/schedule/event/goodbye_kotlin_extensions/ In this session, I will be talking about the paradigm shift from Kotlin synthetics to View Binding and will be covering the following, 1- Demerits of Kotlin synthetics 2- The road forward 3- What’s the View binding and what are its benefits? 3- Migrating from Kotlin synthetics to View Binding with a code walkthrough

]]>
en 2021-02-07 2021-02-07 Brussels, Belgium Nishant Srivastava FOSDEM - Kotlin DevRoom Step it up: Compose for Desktop https://fosdem.org/2021/schedule/event/compose_for_desktop/ Developing for multi-platform is picking up speed as the Kotlin Multi-Platform gets better with every release. That mostly means that shared logic is being written in Kotlin which can then be targeted to many target platforms. Up until recently it wasn't easy to develop UI for multiple platforms on the Desktop side. That is changing with the introduction of Compose for Desktop, which will allow building application UI for Linux, macOS and Windows.

In this session you will get to understand what is Compose for Desktop, how does it work and how can you jump right into building for multiple platforms opening up the vast domains other than the mobile.

]]>
en 2021-02-07 2021-02-07 Brussels, Belgium Julien Salvi FOSDEM - Kotlin DevRoom Come to the backend side we have Kotlin! https://fosdem.org/2021/schedule/event/come_to_the_backend_side/ With this session, you will learn how to setup a Kotlin Ktor project with some routes using the framework tools and features (Routing, DataConversion, ContentNegotiation...) and communicate with a sample Android app.

Let see how we can easily setup a Postgres database connection with Exposed, an ORM library for Kotlin and see how clean architecture can be a good choice for developping your brand new API.

We can even go further and see that we can actully share code from your backend application and your Android application (say hi to Swagger!).

]]>
en 2021-02-07 2021-02-07 Brussels, Belgium Dmitry Kandalov FOSDEM - Kotlin DevRoom Live coding server as a function with http4k https://fosdem.org/2021/schedule/event/live_coding_with_http4k/ Http4k is a lightweight HTTP library written in Kotlin that enables serving and consuming of HTTP services in a functional and testable way. Unlike many other libraries and frameworks which have complicated abstractions and workflows, http4k captures the essence of communication over HTTP with few simple concepts. In this session I will explain and demo the core concepts in http4k by live coding from scratch http server for noughts and crosses game.

Target audience: Software developers with couple years of experience using a programming language like Java, Kotlin or Scala.

Dmitry has been programming since DOS times. He spent the last 15 years or so in Java lands most recently working with server-side Kotlin.

]]>
en 2021-02-07 2021-02-07 Brussels, Belgium LouisCAD FOSDEM - Kotlin DevRoom The future of dependency management, seen from 2021 https://fosdem.org/2021/schedule/event/the_future_of_dependency_management/ Dependency management in the Kotlin and in the JVM ecosystems is great, especially for Gradle users, but there's room for improvement.

Some tasks, like upgrading dependencies to the right versions, are still tedious and time consuming. There's also compatibility gotchas because of the lack of metadata.

This talk will start with a mention of the different problems that come with dependency management in real-world projects. Then it'll show how the developer tool refreshVersions (MIT licensed) tackles some of these issues in Gradle projects, saving a lot of time when upgrading dependencies.

Finally, I'll talk about what the future can be for dependency management, be it from new features in future Gradle versions, or tools or conventions that the community can create to improve the status quo.

]]>
en 2021-02-07 2021-02-07 Brussels, Belgium Svetlana Isakova FOSDEM - Kotlin DevRoom Kotlin Roadmap: Upcoming Features https://fosdem.org/2021/schedule/event/the_future_of_dependency_management/ In this talk, we’ll discuss what the Kotlin team is working on, the priorities we have, and the additions you can expect in the language.

The JVM platform is evolving, and Kotlin is keeping up with the new features as they become available. This includes the features introduced by the upcoming Project Valhalla and JVM support for sealed classes and records. In this talk, we’ll discuss how these changes affect Kotlin as a language, and how the Kotlin team finds a balance between drawing on the power of the new JVM versions, supporting the same functionality in older versions, and providing a smooth transition. We'll also talk about how you, the community, can influence the design and evolution of the language!

]]>
en 2021-02-10 2021-02-10 Kraków, Poland Nicolas Frenkel Kraków Kotlin User Group Pragmatic App Migration to the Cloud: Quarkus, Kotlin, Hazelcast and GraalVM in action https://hopin.com/events/micro-sphere-it-6-kotlin en 2021-02-10 2021-02-10 Kraków, Poland Andrzej Ratajczak, Kacper Korban Kraków Kotlin User Group Inkuire - Using types as search keys in Kotlin libraries https://hopin.com/events/micro-sphere-it-6-kotlin en 2021-01-16 2021-01-16 Madrid, Spain Svetlana Isakova, Amrit Sanjeev, Ragunath Jawahar Globant - Europe Meet Kotlin https://www.meetup.com/Globant-Europe/events/275680553 We invite you to learn Kotlin with us. Meet Kotlin is planned to be a series of sessions on Kotlin covering all the functionalities.

]]>
en 2021-01-20 2021-01-20 Belfast, United Kingdom Ekaterina Petrova Kotlin Belfast User Group It's time for Kotlin Multiplatform Mobile! https://www.meetup.com/kotlin-belfast/events/275627621 Kotlin Multiplatform Mobile (KMM) is an SDK for cross-platform mobile development. It makes the end-to-end experience of building mobile cross-platform apps efficient and enjoyable. In this talk, I will firstly go through a typical mobile application development process and show how we can use KMM features to share code between platforms.

After that, to give you a wider perspective, we will talk about the different obstacles that you might meet on your KMM journey and what you can do to overcome them right now. Finally I'll give you an overview of the experiences of a variety of teams who already use KMM in their production apps. You can start applying their KMM best practices into your applications right away.

]]>
en 2021-01-17 2021-01-17 Baku, Azerbaijan Smit Satodia GDG Baku Jump Start in Kotlin! https://www.meetup.com/GDG-Baku/events/275556428 Divided into two tracks, Beginners and Intermediate, choose as you fancy, starting with the basics of Kotlin, dive into the Android Kotlin Fundamentals, learn about UI layouts, app architecture, data storage, connecting to the network, and best practices for Android development.

Again, no prior programming experience is necessary.

]]>
en 2021-01-19 2021-01-19 Dubai, United Arab Emirates Garth Gilmour Google Developer Groups Dubai Using Kotlin and Spring Boot to Administer JetBrains Space https://www.meetup.com/GDG-Dubai/events/275561798 At Instil we use JetBrains Space as the primary mechanism for coaching developers during virtual training. Space provides integrated support for managing projects, repositories, documents and discussions. To ensure privacy we create a dedicated instance for each training delivery, which initially led to a lot of manual configuration. We have addressed this by using Kotlin, Spring Boot and the Space HTTP API to automatically configure instances. This talk will walk you through some of the code we created. In addition to the Space API we will be covering OAuth, Spring WebFlux, Functional Patterns and Reactive Design.

]]>
en 2021-01-19 2021-01-19 Munich, Germany Eugene Petrenko, Francisco Franco, Enrique López-Mañas Kotlin User Group Munich Kotlin Meetup - January 2021 Edition https://www.meetup.com/Kotlin-User-Group-Munich/events/275573397 Have you been working on a project with Kotlin? Is there a library you would like to discuss? Would you like to try public speaking or need help to prepare a talk? Message us, come and have fun sharing your Kotlin story!

]]>
de 2021-01-14 2021-01-14 Hamburg, Germany Stefan López Romero, Felicitas Hörmann Java User Group Hamburg Kotlin und Arrow ein Duo für FP https://www.meetup.com/jug-hamburg/events/275403440 Kotlin ermöglicht Funktionale Programmierung. Durch Funktionen als first-class-citizens und eine prägnante und flexible Syntax unterstützt die Sprache dieses Paradigma grundlegend. Für weiterführende funktionale Programmierung fehlen der Standardbibliothek jedoch gängige Funktionen, Datentypen und höhere Abstraktionsmöglichkeiten. Diese Lücke möchte die Library Arrow füllen. Der Vortrag beleuchtet die Vorteile von Kotlin für Funktionale Programmierung und was mit der Arrow darüber hinaus noch möglich ist.

]]>
en 2021-01-06 2021-01-06 San Diego, CA Nav Singh San Diego Kotlin User Group Impact of Kotlin 1.4.20 on Android (Online) https://www.meetup.com/sd-kotlin/events/wqrtcsycccbjb/ In this talk, I would like to talk about the deprecation of Kotlin synthetics and the package restituting of Parcelize. I'll also showcase the migration from Kotlin synthetics to ViewBinding.

]]>
en 2021-01-05 2021-01-05 London, UK Maryna Cherniavska LJC - London Java Community Winter Is Coming: A Kotlin Web Application Without Spring https://www.eventbrite.co.uk/e/winter-is-coming-a-kotlin-web-application-without-spring-tickets-132916882975?aff=meetup Spring Boot is a common way to start almost any back-end web application or REST API; but what if you'd prefer to go without Spring Boot and without Spring altogether? Is it possible at all, and more importantly, is it painless? We will work through a common example and see together.

For this talk, a basic knowledge of Kotlin is preferred. After the session, Maryna will share a link to the repository with all the relevant code, so you can fork it and play with it on your own.

]]>
en 2021-01-12 2021-01-12 Oslo, Norway Hadi Hariri Oslo Kotlin Meetup A brief tour of Ktor https://www.meetup.com/meetup-group-nWeRbyMu/events/275328108 Ktor is a web application framework written from the ground up in Kotlin and uses coroutines. Whether you want to create a website, an HTTP back-end or a RESTful system, Ktor provides you with the functionality needed to do these things. In addition, by incorporating a client, you can also use it not only for making HTTP requests, but also as part of a micro-service set-up. In this talk we're going to take a brief tour of Ktor and see all it has to offer.

]]>
en 2021-01-13 2021-01-13 London, UK Jorge Rego Kotlin London Architecture proposal to build servers with Ktor https://www.meetup.com/kotlin-london/events/275280292 Kotlin is growing really fast and new tools and libraries are available to code with this language.

As an Android developer, I've always wanted to be able to do a full stack project, connecting my mobile apps with a server, and this is where Ktor came to the rescue. Documentation is there and also many disconnected examples, but when we want to get into business, we need a maintainable and clean architecture if we want to succeed.

]]>
en 2021-01-13 2021-01-13 London, UK Jorge Castillo Kotlin London Functional Android https://www.meetup.com/kotlin-london/events/275280292 In this talk, we will learn how to seamlessly integrate the functional programming paradigm with our Android architecture to get the most out of both worlds.

We'll cover concepts like declarative programming + runtime optimization, integration of functional effects with Jetpack Compose, error handling strategies, data validation, concurrency, safe resource handling to avoid memory leaks, Streams, and much more.

]]>
en 2020-12-17 2020-12-17 Berlin, Germany Jakub Jabłoński Kotlin User Group Berlin Informal get-together of Kotlin developers in Berlin https://www.meetup.com/kotlin-berlin/events/bcvtkrybcqbwb/ de 2020-12-21 2020-12-21 Kempten, Germany Thomas Deniffel Bavarian Coding Group Kotlin am Programmiersprachen-Montag. Remote-Mob-Programmin https://www.meetup.com/Bavarian-Coding-Group/events/269869005/ Kotlin (/ˈkɒtlɪn/)[2] is a cross-platform, statically typed, general-purpose programming language with type inference. Kotlin is designed to interoperate fully with Java, and the JVM version of its standard library depends on the Java Class Library,[3] but type inference allows its syntax to be more concise. Kotlin mainly targets the JVM, but also compiles to JavaScript or native code (via LLVM). Language development costs are borne by JetBrains, while the Kotlin Foundation protects the Kotlin trademark.

]]>
en 2020-12-23 2020-12-23 Minneapolis, MN Colin Lee Twin Cities Kotlin User Group Kotlin Virtual Holiday Social https://www.meetup.com/Twin-Cities-Kotlin-User-Group/events/275197102/ Well, we're going to try something as new and exciting as Kotlin 1.4. This won't be Zoom, where you can wait long minutes to get a single word in.

]]>
en 2020-12-26 2020-12-26 Mumbai, India Gurupreet Singh Kotlin Mumbai Exploring the future of Android UI with Jetpack Compose https://www.meetup.com/Kotlin-Mumbai/events/275096324/ In this talk, we will be going through how far have we come with existing UI tools and what challenges it presented and why something like Jetpack Compose is needed. We will learn how Jetpack Compose accelerates Android App development by creating a complex app UI in a few lines of codes. While making app we will go through core concepts of Jetpack Compose and how it handles state management, rendering, performance and how Kotlin compliments compose.

At last, we will see how Compose can be adopted to our current projects and how soon we can be ready for production apps with Compose.

]]>
en 2021-01-04 2021-01-04 Los Gatos, CA, USA Casey Bowman The Los Gatos Reading Group Book #11 - Functional Programming in Kotlin, or The Joy of Kotlin https://www.meetup.com/Los-Gatos-Rust-Reading-Group/events/274759321/ This is a peer-to-peer reading group for learning and teaching each other programming languages, such as Rust, Go, and Kotlin, and software-related monetary technologies based upon Bitcoin.

For our meetings, we read a chapter from a book we've selected and then present the sections of that chapter to each other, each participant taking responsibility for a section or two. We pause after each section to allow for discussion and questions. At the end of each meeting we decide when we're meeting next. The more you present, the more you learn.

]]>
en 2021-01-21 2021-01-21 Berlin, Germany Jakub Jabłoński Kotlin User Group Berlin Informal get-together of Kotlin developers in Berlin https://www.meetup.com/kotlin-berlin/events/bcvtkrycccbcc/ en 2021-01-30 2021-01-30 Abuja, Nigeria Akinrolie Shola Slick Kotlin Abuja User Group, Nigeria Kotlin Clustered Webinar https://www.meetup.com/Kotlin-Abuja-User-Group-Nigeria/events/273450128/ Join us for a deep dive into Kotlin and its latest release from the JetBrains Kotlin team! In this clustered event you will learn: : General Overview : Libraries : Kotlin on Multiplatform : Kotlin Coroutines : Server-side and Kotlin Future Plans

]]>
en 2021-01-30 2021-01-30 Abuja, Nigeria Akinrolie Shola Slick, Olaosebikan Rotimi, Nancy Grace, Sunkanmi Ijatuyi GDG Akoko Kotlin Clustered Webinar 2020 https://gdg.community.dev/events/details/google-gdg-akoko-presents-kotlin-clustered-webinar-2020/ Join us for a deep dive into Kotlin and its latest release from the JetBrains Kotlin team!

]]>
en 2020-12-14 2020-12-14 Medina, Saudi Arabia Maryam Alhuthayfi Google Saudi Community Build your first Android app using Kotlin https://www.meetup.com/GCDCSaudi/events/275106025/ In this workshop we will get to know Android Studio and build an app from a template. Then, get to know the difference between classic views and modern composables. We will build an identical practical app using both UI systems. This workshop is the second workshop that is part of #AndroidStudyJams

]]>
en 2020-07-28 2020-07-28 Medina, Saudi Arabia Maryam Alhuthayfi MENA Digital Days Jetpack Compose! https://events.withgoogle.com/menadd/#content - What is Jetpack Compose? - How to build an app using Jetpack Compose?

]]>
en 2020-10-18 2020-10-18 Medina, Saudi Arabia Maryam Alhuthayfi DevFest 2020 | Saudi Arabia The Concept behind Jetpack Compose https://gdg.community.dev/events/details/google-gdg-cloud-saudi-presents-devfest-2020-saudi-arabia/ In this talk, we will learn about what is Jetpack Compose in general. We will get familiar with why we are supposed to use Jetpack Compose. Also, we will differentiate between Composition and Inheritance. In this session, we are gaining to distinguish between imperative UI and declarative UI. Followed by suggested pathways & samples.

]]>
ar 2020-11-01 2020-11-01 Medina, Saudi Arabia Maryam Alhuthayfi بادرة العطاء الرقمي Kotlin in Android apps https://webinar.attaa.sa/view/241 - What is Kotlin? - Why is it recommended to use Kotlin? - Jetpack modern libraries to develop Android apps - What is the future roadmap for Kotlin?

]]>
en 2020-11-07 2020-11-07 Medina, Saudi Arabia Maryam Alhuthayfi Women Techmakers Saudi Arabia Art Gallery Using Jetpack Compose https://twitter.com/wtmsaudi - What is Jetpack Compose - Building an app that uses Jetpack Compose

]]>
en 2020-12-07 2020-12-07 Medina, Saudi Arabia Maryam Alhuthayfi Google Saudi Community Introduction to Kotlin https://www.meetup.com/GCDCSaudi/events/275008686/ Introduction about Kotlin language and how to create, change, understand, and run a minimal Kotlin program that displays complicated text messages.

]]>
en 2020-12-05 2020-12-05 Hyderabad, Indian Ivar Grimstad Kotlin Hyderabad Announcing Jakarta MVC 2.0 https://www.meetup.com/kotlinhyderabad/events/274765588/ When JSR 371 was dropped from the scope of Java EE, Oracle made the decision to allow the Community to finalize the specification. It quickly became known as the "Community JSR" and the slogan "@Controller to the Community" grew out of it.

All the Java EE 8 specifications were transferred to Eclipse Foundation and Jakarta EE, MVC was once again left behind. We managed to release MVC 1.0 through the JCP and has since moved over to Jakarta EE as well and released Jakarta MVC 1.1 through the Jakarta EE Specification Process. And we don't stop there, these days, Jakarta MVC 2.0 is on its way out. Maybe it is time for a new slogan? "The Specification that Never Dies!"?

In this talk, I will take you through this journey and show all aspects of Jakarta MVC 2.0 in code. You don't want to miss this!

]]>
en 2020-12-07 2020-12-07 Boston, MA, USA Mark Murphy Clean Mobile Code Informal Clean Kotlin Code https://www.meetup.com/Clean-Mobile-Code/events/nmlfcsybcqbkb/ In these Monday sessions, we go informal but try to focus on Clean Kotlin Code and related subjects, especially learning Kotlin using Klassbook

]]>
en 2020-12-07 2020-12-07 Hyderabad, Indian Nicolas Frankel JakartaOne Livestream 2020 Shorten all URLs: Quarkus, Kotlin, Hazelcast and GraalVM in action https://www.meetup.com/kotlinhyderabad/events/274645716/ JakartaOne Livestream is a one-day virtual conference for developers and technical business leaders that brings insights into the current state and future of Jakarta® EE and related technologies focused on developing cloud native Java application

]]>
fr 2020-12-08 2020-12-08 Toulouse, France Mialy Rakotovao Toulouse Java User Group De WebFlux en Java aux coroutines en Kotlin, le parcours du combattant https://www.meetup.com/Toulouse-Java-User-Group/events/274919048/ Vous aviez votre application en JAVA Spring Boot REST controller/REST template et tout allait bien. Mais votre boss/archi/... a débarqué dans l'openspace après la lecture d'un article Medium et a déclaré "qu'à partir de maintenant on fait du webflux avec du Kotlin et des coroutines" et qu'il vous restait exactement 4h56 pour tout migrer. Si vous ne savez pas par où commencer, ce talk est fait pour vous. Si vous êtes juste intéressé pour savoir quels types de problèmes vous allez rencontrer, ce talk est fait pour vous (aussi).

]]>
en 2020-12-12 2020-12-12 Abuja, Nigeria Akinrolie Shola Slick, Adetayo James Kotlin Abuja User Group, Nigeria Kotlin Clustered Webinar 2020 https://www.meetup.com/Kotlin-Abuja-User-Group-Nigeria/events/273450128/ In this clustered event you will learn: : General Overview : Libraries : Kotlin on Multiplatform : Kotlin Coroutines : Server-side and Kotlin Future Plan

]]>
en 2020-12-16 2020-12-16 Oslo, Norway Venkat Subramaniam Oslo Kotlin Meetup The Magic of Delegates in Kotlin https://www.meetup.com/meetup-group-nWeRbyMu/events/274383792/ Very many good books on OO design have advised us to choose delegation over inheritance. Yet, most developers using OO languages like Java use inheritance predominantly compared to delegation. Part of the reason is the lack of support for delegation when compared to inheritance. In this presentation we will see how Kotlin has first class support for delegation. We will look at how delegation helps us better model relationships and take a look at some usecases of applying delegates in Kotlin.

]]>
en 2020-12-16 2020-12-16 Sofia, Bulgaria Ivan Deskov GDG Sofia Going Reactive with Spring and Kotlin https://gdg.community.dev/events/details/google-gdg-sofia-presents-going-reactive-with-spring-kotlin/ This time the topic will revolve around our favourite Kotlin, or more specifically: Going Reactive with Spring & Kotlin There's been a lot of buzz around reactive programming in recent years. Spring, being the dominating framework in the JVM world, didn't disappoint and introduced its reactive-stack web framework WebFlux in Spring 5. Together with this, they also saw the rise of Kotlin coming and they introduced dedicated Kotlin support for the Spring 5 with the goal to make Kotlin a first-class citizen of the ecosystem. In this talk we'll have a look at some of the results this collaboration has led. We'll have a look at a good old blocking Spring MVC service and transform it into a fully reactive one using WebFlux, Kotlin and coroutines.

]]>
pt 2020-12-10 2020-12-10 São Paulo, Brazil Cristiano Lima Kotlin Meetup São Paulo Microframeworks em Kotlin: Explorando alternativas ao Spring Boot! https://www.meetup.com/kotlin-meetup-sp/events/274989181/ en 2020-12-17 2020-12-17 Budapest, Hungary Márton Braun Kotlin Budapest User Group Mastering API Visibility in Kotlin https://www.meetup.com/Kotlin-Budapest/events/274627463/ When designing a library, minimizing your API surface - the types, methods, properties, and functions you expose to the outside world - is a great idea. This doesn't apply to just libraries: it's a consideration you should make for every module in a multi-module project. In this talk, we'll look at all the ways that Kotlin lets you get your visibility just right.

]]>
en 2020-12-17 2020-12-17 Budapest, Hungary Sebastian Aigner Kotlin Budapest User Group Introducing Compose for Desktop https://www.meetup.com/Kotlin-Budapest/events/274627463/ Some time ago, JetBrains published the first milestone version of Compose for Desktop – a modern UI framework for Kotlin that makes building performant and beautiful user interfaces easy and enjoyable. In this lightning talk, we’ll take an introductory look at the framework. We will learn a bit about the principles and technology behind CFD, and see how easy it is to get started with building UIs in pure Kotlin.

]]>
en 2020-12-17 2020-12-17 Budapest, Hungary Nav Singh Kotlin Budapest User Group Impact of Kotlin 1.4.20 in Android https://www.meetup.com/Kotlin-Budapest/events/274627463/ In this talk, I would like to talk about the deprecation of Kotlin synthetics and package restituting of the Parcelize. I will also showcase the migration from Kotlin synthetics to ViewBinding, and show some code samples of new functionality provided by Kotlin 1.4.

]]>
en 2020-11-26 2020-11-26 Bern,Switzerland Alexey Loubyansky Kotlin User Group Bern Developing cloud-native microservices in Kotlin with Quarkus https://www.meetup.com/Kotlin-User-Group-Bern/events/274039179/ Quarkus is a Kubernetes Native Java stack tailored for OpenJDK HotSpot and GraalVM. It flips your assumption about how fast and small a JVM-based application can be. Quarkus enables applications to boot super fast and occupy tiny memory and disk spaces compared to the equivalent applications developed with traditional Java/JavaEE frameworks. In addition to that, Quarkus provides a range of tools and features that make writing, testing, building and deploying applications easy and fun.

During this session we will use Kotlin to write a microservice with Quarkus to demonstrate its cloud-native power.

]]>
en 2020-11-26 2020-11-26 Berlin, Germany Nicola Corti Kotlin User Group Berlin There Is 1 Broken API Among Us https://www.meetup.com/kotlin-berlin/events/bcvtkrybcpbzb/ As a library user, you probably know that versions don't always tell the truth. Have you ever experienced a broken build after you did a minor bump of a library? As a library author, maintaining a clean API is a challenge. There is always the that a breaking change sneaks in by accident.

Wouldn't it be nice to get notified if you're accidentally breaking your users' code? A tool to inspect the binary API of your Kotlin/Java code can help you exactly with that. In this talk, we will see some of those tools and how that simplifies the life of library & SDK developers.

]]>
en 2020-11-26 2020-11-26 São Paulo, Brazil Danilo Lima Kotlin Meetup São Paulo DSLs: teoria e prática com Kotlin https://www.meetup.com/kotlin-meetup-sp/events/274530052/ en 2020-11-26 2020-11-26 São Paulo, Brazil Igor Escodro Kotlin Meetup São Paulo O que há de novo no Kotlin 1.4 https://www.meetup.com/kotlin-meetup-sp/events/274530052/ en 2020-11-27 2020-11-27 Paris, France Cedric Ravalec Kotlin Paris Meetup Multiplatform solutions https://www.meetup.com/Kotlin-Paris-Meetup/events/273094531/ Many subjects will be covered, technical presentation of a specific multiplatform solution, benchmarks of different solutions, CI/CD, shared UI over native UI and many others. The purpose is to bring all the answers to any question one might have on the multiplatform ecosystem or future.

]]>
es 2020-11-27 2020-11-27 La Paz, Bolivia Facundo Rodríguez, Cristian Gómez, Kenji Kawaida Kotlin La Paz Kotlin Nights La Paz - Vol. 11 https://www.meetup.com/KotlinLPZ/events/274312785/ En nuestro 11vo Kotlin Night aprenderemos acerca del proceso de pruebas unitarias y los distintos tipos o maneras de realizar testing a nuestras aplicaciones Android, además de Firebase.

]]>
en 2020-11-27 2020-11-27 Bangalore, India Wajahat Karim BlrKotlin - Kotlin User Group Games and Animations in Jetpack Compose https://www.meetup.com/BlrKotlin/events/274659817/ en 2020-11-28 2020-11-28 Bangalore, India Adit Lal BlrKotlin - Kotlin User Group Taking a test drive with DataStore https://www.meetup.com/BlrKotlin/events/274659817/ en 2020-11-27 2020-11-27 Minna, Nigeria Umar Saidu Kotlin Minna User Group, Nigeria Kotlin Clustered Webinar 2020 https://www.meetup.com/Kotlin-Minna-User-Group-Nigeria/events/273455660/ Kotlin Technologies overview and in-depth tech talks from amazing speakers. Talks are aimed at viewers of all levels – newcomers, intermediate, and advanced.

]]>
en 2020-11-28 2020-11-28 Kolkata, India Niharika Arora Kotlin Kolkata UG Make your App Production Ready https://www.meetup.com/Kotlin-Kolkata-UG/events/274664948/ A brief synopsis of the session: 1. How to scale production apps 2. How to maintain a good architecture and manage the states 3. How to write clean code and follow Solid principles 4. What mistakes to avoid when writing code for a feature 5. How to not lose calm when Adhoc tasks come up 6. How to balance working in a team and progress towards leadership and ownership 7. Roadmap to becoming a better developer

]]>
en 2020-11-19 2020-11-19 Munich, Germany Manuel Vivo Kotlin User Group Munich Using Compose in your existing app https://www.meetup.com/Kotlin-User-Group-Munich/events/274387028/ en 2020-11-19 2020-11-19 Munich, Germany Mohit Sarveiya Kotlin User Group Munich Writing Kotlin Compiler Plugins with Arrow Meta https://www.meetup.com/Kotlin-User-Group-Munich/events/274387028/ en 2020-11-19 2020-11-19 Munich, Germany Enrique López Mañas Kotlin User Group Munich Library Development with Kotlin https://www.meetup.com/Kotlin-User-Group-Munich/events/274387028/ en 2020-11-24 2020-11-24 Hamburg, Germany Nicola Corti Kotlin User Group Hamburg There is 1 broken API among us https://www.meetup.com/Kotlin-User-Group-Hamburg/events/274548792/ As a library user, you probably know that versions don't always tell the truth. Have you ever experienced a broken build after doing a minor bump of a library? As a library author, maintaining a clean API is a challenge. There is always the risk that a breaking change sneaks in by accident.

Wouldn't it be nice to get notified if you're accidentally breaking your users' code? A tool to inspect the binary API of your Kotlin/Java code can help you exactly with that. In this talk, we will see some of those tools and how that simplifies the life of library & SDK developers.

]]>
en 2020-11-24 2020-11-24 Hamburg, Germany Roque Buarque Kotlin User Group Hamburg Kotlin DSL https://www.meetup.com/Kotlin-User-Group-Hamburg/events/274548792/ Kotlin is a very powerful language which contains a lot of features that allow us to create DSL. In this talk I will show how to build a Kotlin DSL, some relevant kotlin features and commons examples of DSL.

]]>
en 2020-11-24 2020-11-24 Dublin, Ireland Tristan Hamilton Dublin Kotlin User Group A Functional Approach to Exception Handling https://www.meetup.com/Dublin-Kotlin-User-Group/events/274549550/ Tristan will present an introduction into the world of functional programming by discussing an approach to exception handling sometimes referred to as "railway oriented programming".

]]>
en 2020-11-24 2020-11-24 Dublin, Ireland Cesar Munoz Dublin Kotlin User Group Writing Kotlin Compiler Plugins https://www.meetup.com/Dublin-Kotlin-User-Group/events/274549550/ In this session Cesar will explain what a Kotlin compiler plugin is, how to use one and how to write one of your own!

]]>
en 2020-12-16 2020-12-16 Perth, Australia Richard Hickling ProfitView Algorithmic Trading with Kotlin https://www.crowdcast.io/e/kotlin_algo_trading/register Kotlin, with its succinct syntax and JVM powered performance is a great candidate language for writing trading bots. Using the technology developed for the profitview.net backend, we can show how to get up and running with algo trading cryptocurrencies in just 7 lines of Kotlin code. People who see this talk will come away equipped to write their own fully functional algos.

]]>
ru 2020-11-18 2020-11-18 Taganrog, Russia Denis Aleksandrov MobiFest PRO Coroutine updates in 1.4 https://team.cft.ru/events/1 Progress of coroutines in cross platform client development

]]>
ru 2020-11-28 2020-11-28 Mumbai, India Mohit Sarveiya Kotlin Mumbai Dissecting Coroutines https://www.meetup.com/Kotlin-Mumbai/events/274576859/ The coroutines library contains many features for starting coroutines, creating Flows and Channels, and handling a mutable shared state. But, how do we use them, how do they work and what are good use cases? In this talk, we will explore basic to advanced features provided by the coroutines library. We'll look at when to use state flow, shared flow, and every type of Channel. We'll explore lesser-known features and their use cases such as selectors and actors. Did you know combining Flows uses selectors under the hood? What are they? Mohit will share his learnings from his extensive experience in using these constructs!

]]>
en 2020-11-11 2020-11-11 Amsterdam, The Netherlands Frank Lyaruu Kotlin.amsterdam 🔌 Move over, JDBC: R2DBC is here! https://www.meetup.com/kotlin-amsterdam/events/274110237/ We’ve been using JDBC to access our SQL databases for decades, but JDBC is a blocking API. Blocking API’s can be problematic at times, and after years of promises, a ‘non blocking JDBC’ is on the horizon. When your application queries a database using JDBC, the thread used to make that query blocks: It simply waits while your database processes this request. It’s simple. It’s easy to reason about, but ultimately it can be a big waste of threads, and with that memory and CPU. For NoSQL databases like MongoDB and Cassandra non-blocking drivers are well established, but for SQL databases we’re generally stuck with JDBC i.e. blocking threads. There has been talk about some kind of ‘non-blocking’ JDBC for years, and finally it is happening.

]]>
zh 2020-11-14 2020-11-14 Beijing, China Long Bo GDG Beijing 《用 Kotlin 实现经典算法面试》 https://gdg.community.dev/events/details/google-gdg-beijing-presents-2020gu-ge-kai-fa-zhe-jie-bei-jing-zhan-kotlin-tensorflow-dai-ma-shi-yan-shi-wtm-gong-zuo-fang/ zh 2020-11-14 2020-11-14 Beijing, China Gao Bing GDG Beijing 《Kotlin 特性与应用》 https://gdg.community.dev/events/details/google-gdg-beijing-presents-2020gu-ge-kai-fa-zhe-jie-bei-jing-zhan-kotlin-tensorflow-dai-ma-shi-yan-shi-wtm-gong-zuo-fang/ es 2020-11-14 2020-11-14 La Paz, Bolivia Gustavo Lizárraga Kotlin La Paz KotlinConf'2020 Global La Paz https://www.meetup.com/KotlinLPZ/events/267718139/ Kotlin es el lenguaje de programación oficial para el desarrollo de aplicaciones Android, también tiene el poder para desarrollar aplicaciones Web y Multiplataforma.

Kotlin Conf es la conferencia anual más importante de Jetbrains para dar a conocer todas las novedades del lenguaje, la última versión se llevó a cabo del 4 al 6 de Diciembre en Copenhagen.

Kotlin Conf Global es una serie de eventos organizados por la comunidad para ver y debatir las conferencias magistrales llevadas a cabo en el Kotlin Conf 2019.

Más información pronto.

]]>
en 2020-11-16 2020-11-16 New York, NY, USA Mohit Sarveiya .droidcon Americas 2020 Unit Testing Kotlin Channels and Flows https://www.online.droidcon.com/agenda-dcamericas Unit testing Channels and Flows can be a challenge as they are fairly new. In this talk, I will share with you how to implement and test practical examples from my experience. These examples are testing delays, retries, and errors. I'll also share testing more complex examples such as polling. For each use case, we'll look at how to use features in the coroutines library such as runBlockingTest and TestCoroutineDispatcher. From my journey of using and testing Flows in production, I'll share the challenges I experienced.

]]>
en 2020-11-16 2020-11-16 New York, NY, USA Eric Lafortune .droidcon Americas 2020 The effects of Kotlin inside Android apps and libraries https://www.online.droidcon.com/agenda-dcamericas Many Android developers are working in Kotlin nowadays. On Android, your Kotlin source code gets compiled to Java byte code, and eventually to Dalvik bytecode. How is the result different compared to starting from Java source code then? Is it compatible? Can it be as compact? Is it as secure?

We'll look at the differences. We've extended our open source code optimizer ProGuard and our protection software DexGuard to fully support Kotlin. We'll now share our experiences and point out what can be important in your apps and in your libraries. We'll demonstrate a new open source tool to view the Kotlin metadata hiding inside your apps. We'll show how to optimize and obfuscate Kotlin libraries in such a way that they remain compatible in other Kotlin projects.

Armed with this knowledge, you'll better understand your own Kotlin projects and you can tune them to create more compact and more secure software.

]]>
en 2020-11-16 2020-11-16 New York, NY, USA Lukas Lechner .droidcon Americas 2020 Why Exception Handling with Kotlin Coroutines is hard and how to master it https://www.online.droidcon.com/agenda-dcamericas Getting the “happy path” right with Kotlin Coroutines is pretty straightforward. On the other hand, handling exceptions appropriately when something goes wrong is not that trivial.

In this talk, you will learn about the reasons for the complexity of exception handling with Kotlin Coroutines and about all things you need to consider to appropriately deal with occurring exceptions. You will learn when you should use a conventional try-catch clause, and when you should install a CoroutineExceptionHandler instead. You will also learn about the special properties of top-level Coroutines when it comes to exception handling and how they differ when they are starting with launch and async. Furthermore, you will learn all about the exception handling peculiarities of the scoping functions coroutineScope{} and supervisorScope{} and why you should re-throw CancellationExceptions to avoid subtle errors.

This talk is for developers that are already familiar with the basics of Kotlin Coroutines but still struggle to understand how exception handling works in detail. By the end of this talk, you will have a better understanding of how exceptions are treated by the Coroutines machinery and how you can handle them appropriately.

]]>
en 2020-11-16 2020-11-16 New York, NY, USA Russell Wolf, Kevin Galligan .droidcon Americas 2020 TouchlabShare: Ask the Kotlin Multiplatform Mobile Experts https://www.online.droidcon.com/agenda-dcamericas Touchlab will be presenting on Kotlin Multiplatform Mobile (KMM) at .droidconAmericas. On Monday, Russell will cover what's new in KMM while Kevin speaks on the status of bringing KMM to production.

Our Meetup at .droidconAmericas is a chance for you to ask questions. We're putting KMM in production every day so we have a lot to share. Maybe you're wondering where to start with KMM or what teams are putting KMM in production? Or maybe you want to dish on the upcoming changes to the Kotlin/Native memory model? It's all fair game, so join us!

]]>
en 2020-11-16 2020-11-16 New York, NY, USA Eric Klukovich .droidcon Americas 2020 Kotlin Coroutines and Flows https://www.online.droidcon.com/agenda-dcamericas Learn the fundamentals of Kotlin Coroutines from the ground up and why they are better than current Java/Android solutions. Will explore Kotlin Flows and how they can be used for reactive programming to simplify handling complex data streams.

]]>
de 2020-11-16 2020-11-16 Frankfurt, Germany Anne Fischer-Appelt ObjektForum Frankfurt Kotlin 1.4 in Action https://www.meetup.com/ObjektForum-Frankfurt/events/268531289/ Kotlin hilft uns, mit unseren bekannten Tools Software besser zu entwickeln, die im Code prägnant ist und weniger Fehler enthält. An vielen Stellen versucht es Designfehler von Java auszumerzen und bringt neue Programmiermodelle mit, die uns unterstützen Probleme mit neuem Handwerkszeug zu meistern. Dabei ist Kotlin dafür ausgelegt, sich nahtlos in bestehende Java-Projekte zu integrieren und selbst auf älteren 1.6 JVMs zu laufen. Ob Delegations, Reified Types… wir werden uns anschauen, welche Kotlin Features ein Java Entwickler kennen sollte und wie sie uns weiterhelfen. Dabei nehmen wir auch das aktuelle Kotlin Update mit Coroutinen und Inline Classes unter die Lupe. Der Vortrag richtet sich sowohl an Kotlin-Neueinsteiger, als auch an Fortgeschrittene, die sich für die Neuerungen der Updates interessieren.

]]>
en 2020-10-29 2020-10-29 Berlin, Germany Renato Costa Kotlin User Group Berlin [Virtual] Reactive World - Bootiful RSocket with Coroutines https://www.meetup.com/kotlin-berlin/events/bcvtkrybcnbtb/ In the current landscape of microservices, handling communication between services efficiently is key. This talk will explore the RSocket protocol, and in how it can help you build faster and more resilient services, and how easily you can start using it, along with Spring and Kotlin Coroutines.

]]>
es 2020-10-29 2020-10-29 La Paz, Bolivia Gustavo Lizárraga Kotlin La Paz Kotlin Nights La Paz - Vol. 10 https://www.meetup.com/KotlinLPZ/events/273915158/ Nuestro 10mo Kotlin Night tendrá algo especial, que no será en la noche como acostumbramos, lo realizaremos en la tarde por eso será un Kotlin Afternoon, en el cuál aprenderemos a utilizar Software externo a Kotlin pero que podemos aplicarlo a nuestras aplicaciones Android, cómo todo acerca de Firebase, Webhooks y SpringBoot y el abc de Gradle.

]]>
en 2020-10-23 2020-10-23 Dublin, Ireland Adele Carpenter Kotlin Dublin User Group Programming is hard: lessons through the eyes of a noob https://www.meetup.com/Dublin-Kotlin-User-Group/events/273876166/ When did you learn to program? Do you remember the child-like thrill of typing in some text in the command line and making the computer do something? The feeling of endless possibility?

Programming might not be magic, but it can definitely feel magical. But the more magic you need to scrape away, the harder it gets. Let’s face it, programming is hard. Once we’ve been doing it for a while, perhaps with a dash of Stockholm Syndrome, we forget how much pain growth we have gone through to get where we are.

So what might you know, but have forgotten that you ever learned it? In this talk, I will share my experiences of working on a software project as a freshly-minted software engineer. I will detail what I struggled with, where everyone around me just kind of “knew”. At the end of this talk, you will have a noob perspective on how fundamental some software fundamentals, or “knowns”, really are.

]]>
en 2020-10-23 2020-10-23 Dublin, Ireland Ian Arbuckle Kotlin Dublin User Group Building a RESTful Ktor app with Mongodb Atlas https://www.meetup.com/Dublin-Kotlin-User-Group/events/273876166/ In this session, Ian will demonstrate how to use Mongodb Atlas, a cloud database service, within a Ktor app. Are you tired of configuring a database all by yourself and want to code what matters? This talk is for you!

]]>
en 2020-10-20 2020-10-20 Oslo, Norway Marie Katrine Ekeberg Oslo Kotlin Meetup Domain Specific Languages https://www.meetup.com/meetup-group-nWeRbyMu/events/273642127/ Domain Specific Languages (DSLs) can be used to solve a lot of different problems, and Kotlin have some nifty features that let us create fluent, expressive DSLs quite easy. In this session we will look at some of those features, as well as what DSLs are. Don’t be afraid of the fancy words! We will take it slow! (the first part is just talking about standard functions in Kotlin!

]]>
en 2020-10-20 2020-10-20 Oslo, Norway Anders Mikkelsen Oslo Kotlin Meetup Script, scripting with Kotlin https://www.meetup.com/meetup-group-nWeRbyMu/events/273642127/ Intro to scripting with kotlin. We will take a look at kotlin-main-kts, and kscript. The former is the first party solution from Jetbrains, and the latter is an older third party solution.

]]>
en 2020-10-20 2020-10-20 Oslo, Norway Jarle Hansen Oslo Kotlin Meetup Functional programming with Arrow https://www.meetup.com/meetup-group-nWeRbyMu/events/273642127/ A quick intro to the arrow library, a functional companion to Kotlin's standard library. We will look at a few simple examples using arrow-core, arrow-fx and arrow-optics.

]]>
en 2020-10-20 2020-10-20 Lubumbashi, Congo Nicolas Frankel GDG Lubumbashi DevFest 2020 Pragmatic App Migration to the Cloud: Quarkus, Kotlin, Hazelcast and GraalVM in action. https://gdg.community.dev/events/details/google-gdg-lubumbashi-presents-gdg-lubumbashi-devfest-2020/ en 2020-11-04 2020-11-04 San Diego, CA Ian Brandt San Diego Kotlin User Group Monthly Kotlin Online! https://www.meetup.com/sd-kotlin/events/hrrbwrybcpbgb/ en 2020-10-31 2020-10-31 Minna, Nigeria Umar Saidu Kotlin Minna User Group, Nigeria Kotlin Clustered Webinar 2020 https://www.meetup.com/Kotlin-Minna-User-Group-Nigeria/events/273455660/ en 2020-10-18 2020-10-18 Hong Kong, China George Leung DevFest Hong Kong 2020 Kotlin as a language for concurrency https://gdg.community.dev/events/details/google-gdg-hong-kong-presents-devfest-hong-kong-2020-with-gdg-dsc-wtm/ You think of JavaScript and Go when you hear "concurrency". Let me show you how Kotlin does it better.

]]>
en 2020-10-17 2020-10-17 London, UK Mohit Sarveiya DevFest UK and Ireland 2020 Unit Testing Kotlin Channels and Flows https://www.devfest-uki.com/ Unit testing Channels and Flows can be a challenge as they are fairly new. In this talk, I will share with you how to implement and test practical examples from my experience. These examples are testing delays, retries, and errors. I'll also share testing more complex examples such as polling. For each use case, we'll look at how to use features in the coroutines library such as runBlockingTest and TestCoroutineDispatcher. From my journey of using and testing Flows in production, I'll share the challenges I experienced.

]]>
en 2020-10-17 2020-10-17 Medellín, Colombia Yury Camacho DevFest Colombia 2020 Write once share everywhere with Kotlin Multiplatform https://devfestcolombia.co/ Kotlin Multiplatform is clearly one of the best options for cross-platform code sharing, pioneered by the idea of writing only once and sharing code across IOS, Android, Web, Backend, and embedded devices. In this talk we will learn the basic and advanced concepts, how we can use it, which again brings us the version 1.4 of Kotlin related to KMP.

]]>
zh 2020-10-18 2020-10-18 Hong Kong, China Fan Shengyou DevFest Hong Kong 2020 (Mandarin) 實戰 Ktor 部署 - 以 Google Cloud 打造 CI/CD https://gdg.community.dev/events/details/google-gdg-hong-kong-presents-devfest-hong-kong-2020-with-gdg-dsc-wtm/ Ktor 是由 JetBrains 以 100% Kotlin 打造的 Web 框架,其簡潔輕量、易懂好學的設計,讓其非常適合用於網路服務的開發。不過許多新手在學會 Ktor 後最常問的問題,就是該怎麼部署到雲端?在這場分享裡,將會分享如何將 Ktor 打包成 Container Image 後部署上雲。其中會用到幾個 Google Cloud 技術及服務包括 Jib、Cloud Build 及 Cloud Run,建置成一個自動化 CI/CD 的工作流程。聽完這場分享,您將會對 Ktor、Jib 及 Google Cloud 有更進一步的認識與實務操作能力。

]]>
en 2020-10-10 2020-10-10 Cairo, Egypt Ahmed Nabil DevFest Damanhour 2020 Kotlin Multiplatform https://gdg.community.dev/events/details/google-gdg-damanhour-presents-devfest-20-1/ en 2020-10-21 2020-10-21 Cairo, Egypt Josh Long DevFest Damanhour 2020 Kotlin and Spring: Pragmatism and power https://gdg.community.dev/events/details/google-gdg-damanhour-presents-devfest-20-1/ en 2020-10-15 2020-10-15 Oslo, Norway Carlos Mota DevFest Norway 2020 A Multiplatform triathlon: Kotlin through Android, iOS and web https://gdg.community.dev/events/details/google-gdg-cloud-oslo-norway-presents-devfest-norway-2020/#0 en 2020-10-18 2020-10-18 Saudi Arabia Shady Selim DevFest Saudi Arabia 2020 Kotlin Multiplatform Mobile | كوتلين للمنصات المتعددة https://gdg.community.dev/events/details/google-gdg-cloud-saudi-presents-devfest-2020-saudi-arabia/ en 2020-10-17 2020-10-17 Fort Collins, CO, USA Enrique López Mañas DevFest Northern Colorado 2020 Coroutines and JVM https://gdg.community.dev/events/details/google-gdg-northern-colorado-androidchrome-presents-mountain-region-devfest-2020/ Have you ever wondered how the coroutines work under the hood? What were the design goals of the Kotlin coroutines and how are they implemented on JVM? This session will help you to understand some of the underlying principles behind the coroutines, and how they can be effectively be used on the JVM.

]]>
en 2020-10-17 2020-10-17 Fort Collins, CO, USA Josh Long DevFest Northern Colorado 2020 Kotlin and Spring: an Pragmatic Pair https://gdg.community.dev/events/details/google-gdg-northern-colorado-androidchrome-presents-mountain-region-devfest-2020/ Spring Boot, the convention-over-configuration centric framework from the Spring team at Pivotal, marries Spring's flexibility with conventional, common sense defaults to make application development on the JVM not just fly, but pleasant! Spring Boot aims to address the common functional and non-functional requirements that gate quickly moving to production. The framework is as clean as it gets, wouldn't it be nice if the language matched its elegance?

Kotlin, the productivity-focused language from our friends at JetBrains, takes up the slack to make the experience leaner, cleaner and even more pleasant!

The Spring and Kotlin teams have worked hard to make sure that Kotlin and Spring Boot are a first-class experience for all developers trying to get to production, faster and safer. Come for the Spring and stay for the Bootiful Kotlin.

]]>
en 2020-10-17 2020-10-17 Turin, Italy Carlos Mota DevFest Italia 2020 The Hitchhikers Guide Through Kotlin Multiplatform https://www.devfest.it/schedule/2020-10-17?sessionId=172 Since the early days of mobile that we keep seeing new frameworks being designed to overcome one of the biggest challenges: * How can I develop for both Android and iOS? Although it’s initial promises, when we talk about performance, maintainability or even customization we keep discarding these solutions and we always choose native. Fast forward to the present, and now we have two new languages: Android is Kotlin first and iOS, Swift. And if you put them side by side you can see a lot of similarities between both what will ease switching between one to the other if you have to develop for both platforms. But what I told that you could just develop in Kotlin and run it seamlessly on all devices? Here comes Kotlin Multiplatform!

]]>
ru 2020-10-17 2020-10-17 St.Petersburg, Russia Alexander Nozik [GDG] DevFest 2020 Online (Russia and Belarus) Mulitplatform science in Kotlin https://gdg-russia.com/#about#!/tab/235456433-3 Kotlin традиционно считается языком, созданным для мобильной разработки. Но придуман он был совсем для других целей. Разработчики не могли все предсказать - инструмент получился куда более универсальным, чем ожидалось. На нем можно делать даже библиотеки и приложения для науки! Об этом и поговорим.

Расскажу, как использовать мультиплатформу для науки и о науке создания мультиплатформных приложений за пределами сектора мобильной разработки. С примерами!

]]>
es 2020-10-13 2020-10-13 Bogotá, Colombia Santiago Carrillo Ada Day Conf Creando Apps en Android con Kotlin https://www.meetup.com/ada-school/events/273743263/ en 2020-10-17 2020-10-17 Dublin, Ireland Carlos Mota DevFest UK and Ireland 2020 with Google Developer Groups A Multiplatform triathlon: Kotlin through Android, iOS and Web https://www.devfest-uki.com/speakers-more-details For several years now, that we’ve been trying to find new solutions on how we could develop a single project and run it on all platforms. We’ve been seeing all types of solutions: some are web-based, others require you to learn a new language, and others even may require that you pay a monthly fee to use. It also comes with the drawback that all your UI depends on the framework implementation. So, if there’s a native update you’ll need to wait until someone rewrites the widgets for you to update your app.

Kotlin multiplatform gives us a new solution. It focuses on sharing your business logic across all platforms, leaving the UI to be implemented natively. Since it’s Kotlin, you can take full advantage of its language features - concise, safe, etc. Moreover, if you’re coming from android you might already be familiarised with Kotlin and even if you’re an iOS developer you’ll see that it’s quite similar to Swift.

]]>
en 2020-10-13 2020-10-13 Amsterdam, The Netherlands Cristian Postoaca Amsterdam QE Community Kotlin for QEs Webinar https://www.meetup.com/Amsterdam-QE-Community/events/273609565/ At this one-hour webinar, we plan to start from scratch. What to expect: * An introduction to the concepts that make Kotlin good * Compatibility between Java and Kotlin * How to write and run your first program In Kotlin

]]>
en 2020-10-17 2020-10-17 Accra, Ghana Saadat Aliyu DevFest Ghana 2020 [Virtual Event] Introducing Kotlin Multiplatform https://gdg.community.dev/events/details/google-gdg-accra-presents-devfest-ghana-2020-virtual-event-2/ en 2020-10-17 2020-10-17 Bucharest, Romania Enrique López DevFest Romania 2020 [Mobile] Coroutines for JVM https://gdg.community.dev/events/details/google-gdg-bucharest-presents-devfest-romania-2020-with-gdg/ Have you ever wondered how the coroutines work under the hood? What were the design goals of the Kotlin coroutines and how are they implemented on JVM? This session will help you to understand some of the underlying principles behind the coroutines, and how they can be effectively be used on the JVM.

]]>
en 2020-10-17 2020-10-17 Bucharest, Romania Josh Long DevFest Romania 2020 [Cloud] Kotlin and Spring: Pragmatism and Power https://gdg.community.dev/events/details/google-gdg-bucharest-presents-devfest-romania-2020-with-gdg/ Spring Boot marries flexibility with common sense defaults to make application development on the JVM pleasant. Kotlin, the productivity-focused language from JetBrains makes the experience cleaner and even more pleasant! Join Spring Developer Advocate Josh Long to learn how they work together.

]]>
en 2020-10-17 2020-10-17 Bucharest, Romania John O'Reilly DevFest Romania 2020 [Mobile] Declarative UI ❤️ Kotlin Multiplatform! https://gdg.community.dev/events/details/google-gdg-bucharest-presents-devfest-romania-2020-with-gdg/ In this session John will demonstrate the power of both Kotlin Multiplatform and Declarative UI frameworks like Jetpack Compose and SwiftUI by live-coding the development of an Android and an iOS app that utilises same shared Kotlin code.

]]>
en 2020-10-17 2020-10-17 Bucharest, Romania Magda Miu DevFest Romania 2020 [Mobile] Clean Code with Kotlin https://gdg.community.dev/events/details/google-gdg-bucharest-presents-devfest-romania-2020-with-gdg/ With Kotlin we are able to write concise, expressive and safe code. Sounds like clean code, doesn’t it? During this presentation we will recap what clean code is, we will highlight the importance of defining meaningful names and how to write clean functions and classes. Finally we will be able to learn more about the advantages of immutability and how to handle the errors in Kotlin. By the end of the session, you will have a better understanding of what clean code means and you will learn a series of tips and tricks ready to be applied in your code.

]]>
en 2020-10-07 2020-10-07 London, UK Sebastian Aigner, Raul Raja, Leland Richardson, Christina Lee Kotlin London October 2020 Online Kotlin Meetup - Kotlin 1.4 Special https://www.meetup.com/kotlin-london/events/273408201/ JetBrains' online event during 12-15 October will deep-dive into the Kotlin 1.4 release. As a Community Partner for the event, we're changing our regular virtual meetup format into a discussion panel, looking at Kotlin 1.4 and beyond.

The panel will be moderated by Pablo Gonzales Alonso. The live-stream will be available on the Kotlin London Youtube channel (https://www.youtube.com/c/kotlinlondon/).

]]>
de 2020-10-07 2020-10-07 Bern,Switzerland Adrian Burri Kotlin User Group Bern Functional Kotlin - Live Demo and Hands On https://www.meetup.com/Kotlin-User-Group-Bern/events/273563043/ Kotlin bietet einige Sprachkonstrukte, welche einen funktionalen Programmierstil unterstützen. In dieser Hands-On Session werden wir einige der zentralen Konzepte der funktionalen Programmierung erläutern und deren Umsetzung in Kotlin anhand Live-Demos und Übungen kennenlernen. Level: Anfänger - Fortgeschrittene

]]>
en 2020-10-12 2020-10-12 Minneapolis, MN Colin Lee Twin Cities Kotlin User Group Kotlin 1.4 Virtual Event https://www.meetup.com/Twin-Cities-Kotlin-User-Group/events/273272099/ The event of the year is on! Join us on October 12–15 for 4 days of Kotlin as we host the Kotlin 1.4 Online Event. You can tune in at any point during the event to listen to the talks, chat with the team, and ask the speakers questions. In addition to this, there will be lots of activities and entertainment including: Q&A sessions QuizQuest, with prize raffles for participants Virtual Kotlin Booth Event chat.

]]>
en 2020-10-13 2020-10-13 Philadelphia, PA, USA Matt Inger PhillyJUG Exploring Kotlin Coroutines: What are they and why should I be using them? https://www.meetup.com/PhillyJUG/events/270763930/ Asynchronous programming is hard. JVM users have traditionally had to rely on directly using thread pools, or integrating third party libraries like RxJava to accomplish asynchronous tasks.

Let's explore how the coroutines implementation in the Kotlin language can make asynchronous programming much more programmer friendly. In particular, how it produces more readable and easier to maintain code. We'll compare it with RxJava and see how we can go back and forth between the two.

]]>
en 2020-10-22 2020-10-22 Irvine, USA Ryan Simon OC Kotlin Krew Kotlin and Jetpack Compose Alpha https://www.meetup.com/OCKotlinKrew/events/273335404/ - Previous experience with programming in any language - Looking to learn new languages - Want to learn about new and existing Kotlin concepts - A desire to join a community of passionate Kotlin engineers

]]>
en 2020-09-29 2020-09-29 Thessaloniki, Greece Antonis Lillis Thessaloniki not-only Java Meetup Group Kotlin for Java developers https://www.meetup.com/Thessaloniki-Not-Only-Java/events/273318322/ Do you like Java but wish you didn’t have to write so much boilerplate code? Kotlin aims to address many of the pitfalls that are common with Java development, while making your code more concise, safe, and expressive. It is also 100% interoperable with Java and can be mixed in the same project.

]]>
no 2020-09-30 2020-09-30 Hamar, Norway Henrik Stene, Ole Hjalmar Herje Hamar Digirama Kotlin - Umulig å ikke bli forelska? https://www.meetup.com/Hamar-Digirama/events/273345273/ Hamar Digirama inviterer til Kotlin-kveld i avslappende omgivelser på Hamars koseligste ølbar, Gullkorn.

Kotlin er en russisk øy nær St. Petersburg innerst i Finskebukta, men også et populært programmeringsspråk på JVM-en.

Kotlin ble lansert i 2011 og er ifølge skaperne designet for å være en bedre versjon av Java.

I fjor fortalte Google at Kotlin nå var blitt deres foretrukne programmeringsspråk på Android. Her lokalt på Hamar utvikler større selskaper som Eika og Norsk Tipping integrasjonstjenester i språket.

Ønsker du å få en smakebit og er litt nysgjerrig på om Kotlin er noe for deg? Vi har 2 dyktige utviklere og foredragsholdere som gir en intro til Kotlin samt tips til gode biblioteker du burde ta i bruk.

]]>
en 2020-10-01 2020-10-01 Kano, Nigeria Saadat Aliyu Kotlin Kano User Group, Nigeria #30DaysOfKotlin https://www.meetup.com/Kotlin-Kano-User-Group-Nigeria/events/273211014/ The #30DaysOfCode challenge is going to start on the 1st of October 2020. The goal of this challenge is to encourage developers to learn and be proficient in the Kotlin language and also help newbies start working on projects using Kotlin. Participants are expected to sacrifice at least one hour every day to learn the core Kotlin.

]]>
es 2020-10-01 2020-10-01 México City, Mexico Bedu Academia de tecnología y programación México (BEDU) Kotlin: Crea una App en 90 minutos/Sesiones en vivo https://www.meetup.com/DevelopersAcademy/events/273146911/ En BEDU nos interesa que sigas en casa sano y salvo, para que podamos vernos más adelante, por esta razón hacemos nuestros Workshops en la modalidad de "Sesiones en vivo" nuestro evento "Kotlin: Crea una app en 90 minutos " el próximo Jueves 1 de Octubre a las 7 pm. Se transmitirá en la plataforma de Zoom https://zoom.us/

]]>
en 2020-10-07 2020-10-07 San Diego, CA Ian Brandt San Diego Kotlin User Group Monthly Kotlin Online! https://www.meetup.com/sd-kotlin/events/hrrbwrybcnbkb/ en 2020-10-08 2020-10-08 Washington, DC Russell Wolf AndroidSummit 2020 What’s new with Kotlin Multiplatform libraries? https://emamo.com/event/android-summit-2020/s/whats-new-with-kotlin-multiplatform-libraries-aBErON How do I create libraries for Kotlin Multiplatform projects? Kotlin lets you share common code between different target platforms, but by default only a limit set of platform-agnostic APIs are available to the code. As Multiplatform development really starts to take off, there must also be a robust ecosystem of third party libraries available to application developers.

I’ll talk through what it looks like to create such a library, drawing from my experience building and maintaining one of my own starting in the early days of Kotlin/Native. We'll talk about how to find shared abstractions around different platform APIs, how to handle the fast-paced evolution of this environment, and what this all felt like as a first-time library developer. When we're done, you’ll be ready to leverage the growing ecosystem as well as make your own contributions.

]]>
en 2020-10-08 2020-10-08 Washington, DC Kevin Galligan AndroidSummit 2020 Kotlin Multiplatform In Production https://emamo.com/event/android-summit-2020/s/kotlin-multiplatform-in-production-WvLkLN Kotlin Mutliplatform for native mobile is maturing, but it's still in the early adopter phase. That means things have been moving fast, and the docs out in the ecosystem can be confusing to navigate. However, many orgs are exploring KMP and putting KMP into production. The tech is ready today. We at Touchlab are heavily involved in both library and tool development, as well as working with industry leaders on implementing KMP solutions at scale. In this talk, I'll go over the state-of-the-art, what tools and libraries we like to use, and how to get started both with application and library development.

]]>
en 2020-10-08 2020-10-08 Berlin, Germany Rosário Pereira Fernandes .droidcon EMEA Firebase and Kotlin: Extensions, Coroutines and Flows https://www.online.droidcon.com/emea-agenda Android is now Kotlin-first, but most of the existing libraries and SDKs were written in Java. Despite the effort that the Firebase team has put in coming up with KTX libraries for their Android SDK, there are still a few Kotlin features that have been missed out.

In this session, Rosário will talk about some of the features that are present in the KTX libraries and the features that you can implement yourself to get cleaner and more idiomatic Kotlin code.

You’ll learn how Sequences, Sealed Classes, Coroutines and Asynchronous Flow can provide you with a kotlin-first experience when working with Firebase’s Android Java SDK.

]]>
en 2020-10-08 2020-10-08 Berlin, Germany Antonio Leiva .droidcon EMEA First steps into Kotlin for Android Development https://www.online.droidcon.com/emea-agenda If you're still struggling to start using Kotlin in your Android Apps, this is your best chance! I'll cover the concepts and ideas that you need to start using it, and you'll lose the fear to learn a new language. Because Kotlin is so easy to learn and so enjoyable, that you'll never look back to Java again.

Here are some things we will cover:

- Intro to Kotlin - Create a new project - Funciones - Variables - Classes - Properties - Data Classes - Extension Functions

Key learning concepts: - How to create a new Android Studio project using Kotlin - The basics of the Kotlin language - How they compare with Java and how Kotlin will boost your productivity

Recommendations for attendees: - Basic knowledge of Android development using Java - 2 screens, to be able to see their own Android Studio and the streaming at the same time

]]>
en 2020-10-08 2020-10-08 Berlin, Germany Sebastiano Poggi .droidcon EMEA Ktor to your heart’s content: easy mobile backends in Kotlin https://www.online.droidcon.com/emea-agenda Thump thump… thump thump… thump thump…

Most Android developers are familiar with Kotlin and use it every day with great success (and joy!). But the bloodline of the language extends well beyond Android! From cross-platform development, to the desktop, to the web, to backends, Kotlin’s pedigree as a versatile language puts all us developers in a great position to leverage existing knowledge for a variety of tasks outside a mobile engineer’s comfort zone.

In this session we’ll use Kotlin, Ktor and coroutines to write a backend for our splendid fictional mobile app product: PushBeat. After learning the basics of a RESTful API, we’ll see what Ktor takes care of for us, what features may be helpful for our mobile projects, and how little we actually need to learn to be a productive backend engineer in no time!

]]>
en 2020-10-08 2020-10-08 Berlin, Germany David Vávra .droidcon EMEA Practical Android CI/CD with GitHub Actions and Kotlin script https://www.online.droidcon.com/emea-agenda Setting up CI/CD pipeline should be the first thing an Android developer should do when starting a new project. Think automatic versioning, verification of pull requests, completing JIRA tasks, and automated deploys to Firebase App Distribution or Google Play. Yet many projects are still doing all of that manually. Is it hard to setup? Or too expensive? I will show you a free, easy-to-configure and flexible way with GitHub Actions and Kotlin scripts.

]]>
en 2020-10-08 2020-10-08 Berlin, Germany Tunji Dahunsi .droidcon EMEA Garbage collection free video pipelines with Kotlin and coroutines https://www.online.droidcon.com/emea-agenda In today's world where social distancing is common place, video as a medium has become increasingly important; from video conferencing at work for those who work from home, to being the major way sports are experienced in lieu of being able to watch live in person.

This talk will touch lightly on the h264 and FLV formats, and cover the Android Camera2 APIs. We'll see how the Kotlin coroutines approach to structured concurrency makes it easy to create AV pipelines on Android with minimal object allocations.

You'll leave this session with an understanding on how to create your own fast, efficient, and robust video streaming experience.

]]>
en 2020-10-08 2020-10-08 Berlin, Germany Hubert Kosacki .droidcon EMEA The Adventures of a Kotlin-based Library Developer https://www.online.droidcon.com/emea-agenda The journey through binary compatibility ambushes, exposed APIs consistency risks and Kotlin features built-in-traps might be tough. You need to be aware of these, when working on a library that is being developed in Kotlin, especially when migrating it from the plain old Java code. This presentation will show you some of the things that take place under the hood when writing Kotlin code.

]]>
en 2020-10-08 2020-10-08 Berlin, Germany Mohit Sarveiya .droidcon EMEA Writing Kotlin Compiler Plugins with Arrow Meta https://www.online.droidcon.com/emea-agenda Writing a compiler plugin is an uncharted area for many. There is very little documentation. It requires a lot of scaffolding. With the introduction of Arrow Meta, writing compiler plugins just got easier. It's a library that provides a functional API for creating plugins.

In this talk, we’ll learn about how to write and test compiler plugins with Arrow Meta. This library provides an API for source transformations, automatic code refactoring, and much more. We’ll look at main use cases from type classes, comprehensions, and lenses that are made possible with Arrow Meta. We’ll also look at how to test each use case

Under the hood, Arrow Meta supplements the compiler by hooking into the various compilation phases. We’ll look at the architecture of Arrow Meta and how this works. We’ll also explore the potential Kotlin multiplatform support. By the end of this talk, you will have a tool that you could use to create plugins.

]]>
en 2020-10-08 2020-10-08 Berlin, Germany Eric Lafortune .droidcon EMEA The effects of Kotlin inside Android apps and libraries https://www.online.droidcon.com/emea-agenda Many Android developers are working in Kotlin nowadays. On Android, your Kotlin source code gets compiled to Java byte code, and eventually to Dalvik bytecode. How is the result different compared to starting from Java source code then? Is it compatible? Can it be as compact? Is it as secure?

We'll look at the differences. We've extended our open source code optimizer ProGuard and our protection software DexGuard to fully support Kotlin. We'll now share our experiences and point out what can be important in your apps and in your libraries. We'll demonstrate our new open source tool to view the Kotlin metadata hiding inside your apps. We'll show how to optimize and obfuscate Kotlin libraries in such a way that they remain compatible in other Kotlin projects.

Armed with this knowledge, you'll better understand your own Kotlin projects and you can tune them to create more compact and more secure software.

]]>
en 2020-10-09 2020-10-09 Berlin, Germany Ivan Kinash .droidcon EMEA Kotlin Metadata and Beyond https://www.online.droidcon.com/emea-agenda Kotlin compiler uses a few different ways to store metadata for reflection - as well as other modern features of the language.

In this session, we'll discuss the design of this mechanism from the inside out. And we'll explain why it's so important to keep the metadata secure.

]]>
en 2020-10-09 2020-10-09 Berlin, Germany Lukas Lechner .droidcon EMEA Why Exception Handling with Kotlin Coroutines is hard and how to master it https://www.online.droidcon.com/emea-agenda Getting the “happy path” right with Kotlin Coroutines is pretty straightforward. On the other hand, handling exceptions appropriately when something goes wrong is not that trivial.

In this talk, you will learn about the reasons for the complexity of exception handling with Kotlin Coroutines and about all things you need to consider to appropriately deal with occurring exceptions.

You will learn when you should use a conventional try-catch clause, and when you should install a CoroutineExceptionHandler instead.

You will also learn about the special properties of top-level Coroutines when it comes to exception handling and how they differ when they are starting with launch and async.Furthermore, you will learn all about the exception handling peculiarities of the scoping functions coroutineScope{} and supervisorScope{} and why you should re-throw CancellationExceptions to avoid subtle errors.

This talk is for developers that are already familiar with the basics of Kotlin Coroutines but still struggle to understand how exception handling works in detail. By the end of this talk, you will have a better understanding of how exceptions are treated by the Coroutines machinery and how you can handle them appropriately.

]]>
en 2020-10-09 2020-10-09 Berlin, Germany Eury Perez .droidcon EMEA Write smarter code with Sealed Classes and Lambdas in Kotlin https://www.online.droidcon.com/emea-agenda Kotlin is a very powerful language with very interesting features. Sealed Classes and Lambda Functions are two of my favorites.

Let's see how we can use them to make our code looks way more elegant, by avoiding interface implementations in many places, reducing the amount of code and also take advantage of the Kotlin's smart-cast feature to have type safety and avoiding castings while doing that.

]]>
en 2020-11-09 2020-11-09 Copenhagen, Denmark Eamonn Boyle, Garth Gilmour GOTO Copenhagen A TypeScript Fan's KotlinJS Adventures https://gotocph.com/november-2020/schedule?date=2020-11-09 At Instil Software they standardize on Kotlin for server-side development. Within the training team, they offer a Kotlin Native Workshop, for which Garth and Eamonn wrote a Kotlin Native version of the classic game Breakout.

Being massive TypeScript fans, it would always be their language of choice when working on JavaScript platforms. They didn't feel the drive to switch to other languages that transpile to JS such as Fable (F#), Scala.js, or even KotlinJS, as they always saw Kotlin on the JVM as the solution to a problem, the problem being Java.

In this talk the dynamic duo will go out of their comfort zone and recreate a Breakout clone for the browser using KotlinJS.

They will make use of React, Redux and use React Three Fiber for WebGL graphics. Moreover, they will explore what this transition to KotlinJS is like for a TypeScript fanboy and try to answer some questions along the way.

]]>
en 2020-11-12 2020-11-12 Copenhagen, Denmark Eamonn Boyle, Garth Gilmour GOTO Copenhagen Learning Kotlin/JS by Building Web Apps in React & Redux https://gotocph.com/november-2020/schedule?date=2020-11-12 In this workshop we will learn the full Kotlin/JS feature set by building Web Applications in React and Redux. We will create projects from scratch based on the Kotlin Gradle DSL, and then iteratively assemble a rich UI via the Kotlin/JS language and Kotlin-React DSL. Application state will be managed via Redux using the functional style with React Hooks.

You'll learn how coroutines simplify asynchronous workflows and concurrency. You'll also learn how interoperability with TypeScript allows you to leverage existing JS libraries in a strongly typed way.

By the end of the workshop you will have been exposed to some of the advanced features of Kotlin and be comfortable using Kotlin for JS platforms.

]]>
en 2020-09-26 2020-09-26 Pune, India Christian Hujer TechnoWise TechnoWise: Kotlin from 0 to 100 https://www.meetup.com/TechnoWise/events/273205509/ KOTLIN is the new star amongst programming languages. Multi-paradigm, running on JVM, JavaScript, Android, iOS, and native runtimes, Kotlin conquers one platform after another.

But the true story behind the success of Kotlin is developer convenience. Kotlin is designed to be as much like Java as possible where it makes sense, and as different from Java as possible where the design choices of Java get in the way.

Although that legacy seems officially denied, others may describe Kotlin as the best mix between Java and Ruby.

]]>
es 2020-09-24 2020-09-24 La Paz, Bolivia Gustavo Lizárraga Kotlin La Paz Kotlin Nights La Paz - Vol. 9 https://www.meetup.com/KotlinLPZ/events/273362267/ El constante dilema de patrones de diseño, arquitecturas de diseño o arquitecturas en general es un tema que debe tomar mucha importancia en los desarrolladores, ya que debemos notar las diferencias y que debemos utilizar dependiendo el proyecto en el que estemos trabajando. Es por ello que éste Kotlin Night, estará destinado a hablar de Arquitecturas.

]]>
de 2020-10-13 2020-10-13 Köln, Germany Sebastian Aigner KKON 2020 Keynote: Keep Kotlin Fun - Ein unterhaltsamer Streifzug durch die Features von Kotlin https://rheinwerk-kkon.de/programm/aigner-keynote-keep-kotlin-fun-ein-unterhaltsamer-streifzug-durch-die-features-von-kotlin/ Von Emoji-Generatoren bis hin zu Multiplayer-Spielen, Treiber für Mini-Drucker, IoT-Integration oder Slack Message Parser: Prototypen für kuriose Ideen sind ein guter Antrieb, um Neues zu lernen – und sei es auch nur, um zu beweisen, dass Nichts unmöglich ist.

Erleben Sie hautnah den Spaß und die Faszination beim Erschaffen von etwas wirklich Außergewöhnlichem! Die kleinen Ideen, die einen nachts wachhalten, bis der erste, kleinste Proof of Concept zusammengehackt ist. Gemeinsam mit Sebastian Aigner erforschen Sie, wie Sie die mächtigen Features von Kotlin bei diesen Projekten nutzen. Dabei kommt eine bunte Mischung zum Einsatz aus Sprachfeatures, Libraries und Praxisbeispielen, die Ihnen vielleicht nicht jeden Tag begegnen.

Selbst wenn Sie gerade nicht an eigenen irrwitzigen Projekten arbeiten, werden Sie in dem Vortrag einige neue Herangehensweisen kennenlernen, um Ihre Aufgaben mit Kotlin zu lösen. Und zwar so, dass man sie nur noch schwer vergisst.

]]>
de 2020-10-13 2020-10-13 Köln, Germany Danny Preussler KKON 2020 Keynote: Mut zur Veränderung: Verlernen Sie Ihr (Java-)Wissen! https://rheinwerk-kkon.de/programm/vortrag-danny-preussler-rheinwerk-konferenz-fuer-kotlin/ Viele Kotlin-Entwickler haben vorher mit Java gearbeitet, oft jahrelang. Und am Ende ist genau diese Erfahrung der Grund, warum Kotlin so viel Zuspruch bekommt: Vieles ist deutlich einfacher und bequemer. Aber trotz der bekannten und geliebten Features von Kotlin halten zahlreiche Entwickler an den bekannten Konzepten aus der Java-Welt fest, oft unbewusst. Sie sind fast schon gefangen in Javas Denkmustern. Das hat Methode, denn was man einmal gelernt hat, verlernt man so schnell nicht wieder. Aber um sich vollständig auf Kotlin einzulassen, muss man sich auch trauen, Dinge zu verlernen …

]]>
de 2020-10-12 2020-10-12 Köln, Germany Stefan Scheidt KKON 2020 Von Java zu Kotlin – die Basics https://rheinwerk-kkon.de/programm/scheidt-von-java-zu-kotlin-die-basics/ Als ausgewachsener Java-Entwickler gelingt der Umstieg auf Kotlin meist reibungslos, ist aber auch kein Kinderspiel. In diesem Vortrag schauen wir uns klassische Pain Points der Java-Entwicklung an und wie man sie mit Kotlin elegant lösen kann. Die wichtigsten Kotlin-Konstrukte werden anhand von Java-Äquivalenten erklärt. Und um noch näher dran zu sein, zeigt Volkmar ein paar Kotlin-Zeilen in einem Live Coding.

]]>
de 2020-10-13 2020-10-13 Köln, Germany Wolfram Rittmeyer KKON 2020 Einführung in Kotlins Koroutinen https://rheinwerk-kkon.de/programm/rittmeyer-einfuerhung-in-kotlins-koroutinen/ Mit Kotlins Koroutinen wurde das Entwickeln asynchroner Programme in Kotlin stark vereinfacht. In seinem Talk zeigt Wolfram Rittmeyer, wie Koroutinen funktionieren und veranschaulicht wichtige Konzepte wie CoroutineContext, CoroutineScope, Cancellation und Exception Handling. Auch das von Jetbrains hochgehaltene Konzept der Structured Concurrency wird behandelt.

Am Ende des Vortrags kennen Sie die Vorzüge (und auch die Nachteile) von Koroutinen im Vergleich zu herkömmlichen Konzepten und können Koroutinen direkt in Ihren Kotlin-Projekten einsetzen.

]]>
de 2020-10-13 2020-10-13 Köln, Germany Werner Eberling KKON 2020 Contract Based Testing mit Kotlin https://rheinwerk-kkon.de/programm/vortrag-werner-eberling-contract-based-testing-mit-kotlin/ Contract Based Testing mal etwas anders – mit Consumer Driven Contracts (CDC) wird die Herangehensweise der API-Definition umgedreht und auf das Wesentliche reduziert. Nicht der Dienstanbieter sagt, was er alles kann. Jeder Client definiert, was er braucht! Eine Möglichkeit dafür ist die Beschreibung der gewünschten Interaktionen und das Testen derselben mittels PACT. Werner Eberling zeigt Ihnen anhand live vorgeführter Beispiele, welche Idee hinter CDC steckt. Sie erfahren, wie PACT-Erzeugung und -Verifikation mit Kotlin von statten gehen, welche Vorteile dieser Ansatz hat und was ihn von einer reinen Schnittstellendokumentation à la Swagger unterscheidet.

]]>
de 2020-10-13 2020-10-13 Köln, Germany Philipp Hauer KKON 2020 Best Practices für Unit Testing mit Kotlin https://rheinwerk-kkon.de/programm/hauer-best-prectices-fuer-unit-testing-mit-kotlin/ Unit Testing in Kotlin macht Spaß und ist gleichzeitig knifflig. Wir können stark von Kotlins mächtigen Sprachfeatures profitieren und damit lesbare und kompakte Unit Tests schreiben. Aber um überhaupt idiomatischen Kotlin-Testcode zu schreiben, benötigen wir ein bestimmtes Test-Setup.

Dieser Vortrag behandelt das nötige Wissen um Test Lifecycles, die Handhabung von Test Fixtures, die Herausforderungen beim Mocken, gute Assertion Libraries und die Mächtigkeit von Hilfsfunktionen und Data Classes. Anhand von Anekdoten aus der Praxis präsentiert Philipp Best Practices, mit denen wir Testcode schreiben, der idiomatisch, lesbar und kompakt ist und dabei sinnvolle Fehlermeldungen ausgibt.

]]>
en 2020-10-13 2020-10-13 Köln, Germany Márton Braun KKON 2020 Decompiling https://rheinwerk-kkon.de/programm/braun-decompiling/ Kotlin has many features that are leaps and bounds ahead of Java. However, its primary target platform being the JVM, all of these features still need to compile to the same bytecode as Java does. This is a look at how a variety of interesting Kotlin features are compiled to bytecode, and what their Java equivalents would be. Even though Kotlin abstracts away much of the virtual machine and the original feature set of Java with its own features, it’s still important to know what your Kotlin code compiles to. Not only can this knowledge give you the power to optimize your code, but it will also help you avoid subtle bugs that would otherwise be near impossible to track down.

]]>
de 2020-10-13 2020-10-13 Köln, Germany Daniel Bälz KKON 2020 Bessere Build-Skripte mit der Gradle Kotlin DSL https://rheinwerk-kkon.de/programm/baelz-bessere-build-skripte-mit-der-gradle-kotlin-dsl/ Sollte das Bearbeiten eines Gradle-Build-Skript nicht genauso viel Spaß machen wie die Entwicklung der App? Warum sollte ich mich mit Groovy beschäftigen, wenn ich mit Kotlin viel mehr Spaß habe? Mein Rat: Nutze einfach die Gradle Kotlin DSL!

Dieser Vortrag gibt einen Überblick über Gradle-Build-Skripte mit Groovy und der Kotlin DSL. Darüber hinaus zeigt er Schritt für Schritt die Migration eines bestehenden Android-Projekts von Groovy nach Kotlin. In dieser Migration werden wir uns die Vor- und Nachteile der Kotlin DSL genauer ansehen und die Eignung für reale Projekte diskutieren.

]]>
de 2020-10-13 2020-10-13 Köln, Germany Thomas Haug KKON 2020 Graphdatenbanken mit Kotlin https://rheinwerk-kkon.de/programm/haug-graphdatenbanken-mit-kotlin/ Spielen die Beziehungen zwischen Entitäten eine große Rolle, eignen sich zur Speicherung nicht immer klassische (= relationale) Datenbanken. Hier kommen Graphdatenbanken ins Spiel. Typische Anwendungsbeispiele sind etwa die Darstellung von Beziehungen in sozialen Netzwerken oder die Analyse von IT-Netzwerken. In diesem Vortrag werden die Zugriffsmöglichkeiten von Kotlin auf unterschiedliche Graphdatenbanken (z. B. von JanusGraph, OrientDB, Cosmos DB und Neo4j) praktisch vorgestellt.

]]>
de 2020-10-13 2020-10-13 Köln, Germany Alexander von Below, Michal Harakal KKON 2020 Kotlin Multiplatform: von allen Seiten betrachtet https://rheinwerk-kkon.de/programm/harakal-von-below-kotlin-multiplatform/ Kotlin Multiplatform erlaubt es, Kotlin auch für Systeme wie iOS zu nutzen. Auch wenn das Projekt zuletzt etwas unter dem Radar lief, hat es große Fortschritte gemacht. Dieser Talk gibt einen Überblick über den Stand der Cross-Plattform: Welche Vorteile und möglichen Einsatzgebiete gibt es? Welche Herausforderungen und Defizite stehen noch im Raum? Alexander und Michal beleuchten in diesem Vortrag neben der Android-Seite insbesondere die Frage, wie Kotlin im Ökosystem von Apple funktioniert.

]]>
de 2020-10-13 2020-10-13 Köln, Germany André Diermann KKON 2020 Kotlin erfolgreich in Projekten, Teams und Organisationen einführen https://rheinwerk-kkon.de/programm/vortrag-andre-diermann-kotlin-erfolgreich-in-projekten-teams-und-organisationen-einfuhren/ Kotlin ist eine moderne Programmiersprache, die unter Entwicklern immer beliebter wird – vor allem dank der zahlreichen smarten Sprach-Features, mit denen auch komplexe Sachverhalte sehr leichtgewichtig umgesetzt werden können. Warum also nicht gleich morgen mit der Entwicklung in Kotlin beginnen? Tatsächlich gibt es in der Praxis einige Fallstricke und Hürden zu meistern, damit eine erfolgreiche Einführung von Kotlin in Ihrem Projekt, Ihrem Team oder sogar Ihrer Organisation gelingt. In diesem diskursorientierten Vortrag stellt Ihnen André Diermann einige Transitions- bzw. Migrationsstrategien vor, damit auch Ihr Wechsel zu Kotlin von Anfang an einer voller Erfolg wird. Individuelle Fragen, persönliche Erfahrungsberichte und offene Diskussionen sind dabei sehr willkommen!

]]>
de 2020-10-13 2020-10-13 Köln, Germany Amanda Hinchman-Dominguez KKON 2020 Exploring Neural Networking with Kotlin Metaprogramming: A Cheaper Alternative for Deep Learning? https://rheinwerk-kkon.de/programm/hinchman-dominguez-exploring-neural-networking-with-kotlin-metaprogramming/ The talk highlights TornadoFX-Suite, which is a program that analyzes other TornadoFX projects and generates simple UI tests. In order to create smarter testing, we take a look at an new theory coming out of this project – how metaprogramming creates neural networking in comparison to neural networking in AI, and how neural networking in metaprogramming may provide a lot less processing power and more interesting results.

]]>
de 2020-10-13 2020-10-13 Köln, Germany Simon Wirtz KKON 2020 (Server as a Function) -> as a Service https://rheinwerk-kkon.de/programm/wirtz-server-as-a-function-as-a-service/ In diesem Vortrag lernen Sie mit „Server as a Function“ sowie „Function as a Service“ (FaaS) gleich zwei interessante Konzepte kennen und finden heraus, wie beides miteinander kombiniert werden kann. Wir wollen uns das http4k Toolkit ansehen Möglichkeiten kennenlernen, funktionale HTTP-Services mit Kotlin umzusetzen. In einem nächsten Schritt schauen wir uns an, wie http4k-Anwendungen in einer FaaS-Umgebung eingesetzt werden können. Wir nutzen dazu OpenFaaS, ein Open-Source Serverless-Framework welches auf Kubernetes betrieben wird. Das Ziel wird sein, http4k-Anwendungen als FaaS auf dieser Plattform einzusetzen. Abschließend wird gezeigt, wie die vorgestellten Technologien im Unternehmen des Referenten eingesetzt werden und wie sie genutzt werden, um eine Integrationsplattform für ein SaaS-Produkt zu schaffen.

]]>
de 2020-10-13 2020-10-13 Köln, Germany Stefan Scheidt KKON 2020 Frühling schreibt man mit K – Spring Boot mit Kotlin https://rheinwerk-kkon.de/programm/scheidt-fruehling-schreibt-man-mit-k-spring-boot-mit-kotlin/ Backend-Services für die JVM mit Spring Boot zu entwickeln fühlt sich an wie die erste warme Brise im Frühling nach einem kalten Winter. Dabei Java zu benutzen, erinnert einen aber trotz neuer Sprach-Features aus Java 11 an Schneeschippen mit Handschuhen und Mütze. Zum Glück geht es besser: mit Kotlin, einer prägnanten, sicheren, interoperablen Programmiersprache (nicht nur) für die JVM und mit hervorragendem Tool-Support. Der Talk stellt kurz die wesentlichen Stärken von Kotlin vor und zeigt dann im Live Coding, wie man mit Kotlin einen Spring Boot Microservice entwickelt. Zum Abschluss des Vortrags gibt es einen Erfahrungsbericht aus dem Einsatz in der Entwicklung einer Fulfillment-Plattform für REWE digital. Danach kann der Sommer kommen!

]]>
de 2020-10-13 2020-10-13 Köln, Germany Jan Hauer KKON 2020 Functional-Centered Design https://rheinwerk-kkon.de/programm/hauer-functional-centered-design/ Kotlin und Arrow, eine Kombination zum Schweben auf der Cloud. Anstatt uns durch den objektorientierten Dschungel von Schichten und Klassen zu kämpfen, können wir die Ausdrucksstärke des funktionalen Programmierens nutzen. Über dem Wirrwarr sind wir endlich frei, uns auf die Business-Logik zu konzentrieren. Wir erhalten kurzen und eleganten Code, der besser zu testen und verständlicher ist. Als Bonus ist die Verwendung von reactive-Techniken und Parallelisierung praktisch geschenkt. In dem Vortrag werden wir auch noch einmal das funktionale Paradigma betrachten. Anschließend steigen Sie im Live Coding voll in den funktionalen Entwurf ein und entwickeln eine kleine Spring-Boot-App. Natürlich funktional!

]]>
de 2020-10-13 2020-10-13 Köln, Germany Thomas Künneth KKON 2020 Wie man mit Kotlin native Apps für Android und iOS baut https://rheinwerk-kkon.de/programm/kuenneth-wie-man-mit-kotlin-native-apps-baut/ Kotlin hat Java unter Android als bevorzugte Sprache abgelöst. Auch im klassischen Backend gewinnt die moderne, funktionale Programmiersprache immer mehr Freunde. Besonders interessant ist aber, dass Kotlin auch für den Bau nativer iOS-Apps verwendet werden kann. Wie das funktioniert, wird in diesem Vortrag auf entwicklerfreundliche Weise dargestellt. Sie erfahren, was genau Kotlin/Native eigentlich ist, worauf man bei der Benutzung achten sollte, was schon gut klappt und was (noch) nicht. Anhand einer kleinen, aber vollständigen App werden wichtige Vorgehensweisen und Konzepte vorgestellt.

]]>
de 2020-10-13 2020-10-13 Köln, Germany Michal Harakal KKON 2020 Kotlin Compiler Plugins: Keine Scheu vor Experimenten! https://rheinwerk-kkon.de/programm/michal-harakal-kotlin-compiler-plugins-keine-scheu-vor-experimenten/ Mit Jetpack Compose, dem Toolkit zur Entwicklung deklarativer Android-Oberflächen, hat Google gezeigt: Das Kotlin Compiler Plugin ermöglicht mächtige Spracherweiterungen und Konzepte auch ohne Änderungen in Kotlin selbst. Michal Harakals Vortrag zeigt Ihnen die Struktur des Kotlin-Compilers und stellt Ihnen die verschiedenen Kompilierungsphasen sowie Googles Bibliothek „Kotlin Symbol Processing“ vor. Wichtige Vorgehensweisen und Konzepte werden im Vortrag direkt live am Code-Beispiel illustriert. Nach dem Vortrag wissen Sie, wie Sie ein eigenes Kotlin Compiler Plugin entwickeln.

]]>
en 2020-10-13 2020-10-13 Köln, Germany Annyce Davis KKON 2020 Serverless Development in Kotlin https://rheinwerk-kkon.de/programm/davis-simply-serverless/ Is your team using lambdas? Do you hear your backend developers talking about serverless applications? Curious to learn more? If so, this talk is for you. Effective serverless architectures require less backend code, less complexity, less risk, and less tech debt. But how is that possible? This talk aims to answer that question for you.

Serverless application design is becoming more and more prevalent. Now is the time to understand this powerful shift in backend development, simply.

]]>
de 2020-10-13 2020-10-13 Köln, Germany Frank Scheffler KKON 2020 Sprache als Werkzeug: DSLs mit Kotlin https://rheinwerk-kkon.de/programm/scheffler-sprache-als-werkzeug-dsls-mit-kotlin/ Domain Specific Languages eignen sich seit jeher, komplexe Codestrukturen besser lesbar auszudrücken. Dabei unterstützen sie die Vermeidung redundanten Codes und reduzieren den Blick auf die wesentlichen Aspekte der Domäne. Der Vorteil interner DSLs gegenüber externen ist, dass sie sich direkt in einer Host-Programmiersprache entwickeln lassen. Kotlin bietet dafür mit seinen kompakten Sprachmitteln eine ideale Basis. Dieser Vortrag zeigt anhand konkreter Codebeispiele die Grundlagen zur Erstellung eigener DSLs mit Kotlin.

]]>
de 2020-10-13 2020-10-13 Köln, Germany Ralf Stuckert KKON 2020 Koroutinen-Testing https://rheinwerk-kkon.de/programm/stuckert-testen-von-kotlin-koroutinen/ Mit Koroutinen lässt sich Nebenläufigkeit in Kotlin einfach und gut strukturiert abbilden. Nebenläufigen Code zu Testen ist jedoch nicht ganz einfach, und basiert oft auf Überwachung mit Timeouts. Das Coroutine Testing Package macht das Testen von Koroutinen leichter. Über Test-Dispatcher und -Scopes ermöglicht es Kontrolle über die Ausführung von Koroutinen, die dediziert angehalten und weiter ausgeführt werden können. Zeitliche Abläufe können ohne unnötiges Warten kontrolliert werden. Dieser Vortrag gibt einen Einblick in die Möglichkeiten des Coroutine Testing Package.

]]>
es 2020-09-24 2020-09-24 México City, Mexico Bedu Academia de tecnología y programación México (BEDU) Kotlin: El futuro del desarrollo móvil/Sesiones en vivo. https://www.meetup.com/DevelopersAcademy/events/272662905/ Kotlin es considerado por Google como uno de los lenguajes oficiales para desarrollar en Android, es muy fácil de aprender y tiene alta demanda en el mercado además según los últimos datos facilitados por Google en el mundo hay 2.500 millones de dispositivos activos de Android.

Estas son algunas de las ventajas que tenemos al usar Kotlin para desarrollar aplicaciones móviles:

-Reduce las líneas de código necesarias para crear una app.

-Los valores por defecto no aceptan valores nulos.

-Todas las librerías y frameworks de Java son compatibles.

]]>
en 2020-09-26 2020-09-26 Mumbai, India Carlos Mota Kotlin Mumbai Scoping Scoped Storage https://www.meetup.com/Kotlin-Mumbai/events/273000330/ This is still a sensitive subject to most of us due to the impact it had on most apps, but the most needed one! Scoped storage is one of the most important security features that has been released that empowers the user to have the final word when an app is accessing external files. In this talk, he is also going to share the dos and don’ts about these developments and how everything will get better at the end

]]>
en 2020-09-26 2020-09-26 Mumbai, India Wajahat Karim Kotlin Mumbai Compose ❤️ Dino: Building Chrome's T-Rex Game in Jetpack Compose https://www.meetup.com/Kotlin-Mumbai/events/273000330/ Although Jetpack Compose is a toolkit to create Android UI in a declarative form with the power of Kotlin language. But it can be used as a canvas for generative art, animations, or even games.

In this session, we'll take a look at the capabilities of Canvas API for Jetpack Compose and how can we implement Chrome's T-Rex Dino game. We'll discuss some challenges such as game loop, game state management, infinite parallax scrolling etc. By the end of this talk, you'll be more familiar with the concepts of Canvas in Jetpack Compose and how you can use it for games.

]]>
en 2020-09-26 2020-09-26 Hyderabad, Indian Nikhil Nanivadekar Kotlin Hyderabad Do It Yourself: Collections https://www.meetup.com/kotlinhyderabad/events/272697889/ Collections are among the basic building blocks for writing code. Frequently used collections such as List, Set, and Map are designed to serve a basic fundamental purpose, but sometimes these collections are not enough and developers will extend them to add new functionality. In this session, Nikhil will extend the Map data structure to create two new collections called as a bag (MultiSet) and a multimap (MultiValuedMap). But does just extending a collection mean that the job is considered complete? Often it is not enough. Nikhil will explain the audience the basics of creating a new collection, adding new APIs, the salient aspects of the new collection, and the various knobs and controls required in order to make it safe and usable. This talk is 100% hands-on demo with no slides and using TDD approach. All the implementations done using only the JDK data structures and no external libraries. After this talk the audience will understand the thought process which needs to be put in while extending and creating new data structures, the helpful API which needs to be added and the safe guards which need to be put in place to help the users.

]]>
en 2020-09-24 2020-09-24 Berlin, Germany Dmitry Kandalov Kotlin User Group Berlin [Virtual] Live coding server as a function with http4k https://www.meetup.com/kotlin-berlin/events/bcvtkrybcmbwb/ Http4k is a lightweight HTTP library written in Kotlin that enables serving and consuming of HTTP services in a functional and testable way. Unlike many other libraries and frameworks which have complicated abstractions and workflows, http4k captures the essence of communication over HTTP with few simple concepts. In this session, I will explain and demo the core concepts in http4k by live coding from scratch HTTP server for noughts and crosses game.

]]>
pt 2020-08-27 2020-08-27 São Paulo, Brazil Felipe Costa Kotlin Meetup São Paulo Reuso de código com Kotlin Multiplatform https://www.meetup.com/kotlin-meetup-sp/events/272701882/ pt 2020-08-27 2020-08-27 São Paulo, Brazil Armando Picón Kotlin Meetup São Paulo Introdução à Kotlin Flow https://www.meetup.com/kotlin-meetup-sp/events/272701882/ > es 2020-09-01 2020-09-01 México City, Mexico Saúl Buentello Kotlin CDMX User Group The Magic of Compiler Extensions https://www.meetup.com/Kotlin-CDMX/events/272833256/ Este mes vamos a ver un tema interesante sobre genéricos y un poco sobre testing, al igual que mencionaremos acerca de la nueva versión 1.4 de Kotlin ya en su version release.

Pronto actualizaremos la información de las platicas.

Acompañanos en nuestro quinto meetup de forma virtual, en breve compartiremos los links del streaming.

]]>
en 2020-09-12 2020-09-12 Chennai, India Shahin Taj, Sridhanya A ThoughtWorks Chennai - Women Tech Meetup Fun with Kotlin 101 [Women only] https://www.meetup.com/thoughtworks-codher/events/272654166/ This hands on session would give an overview of Kotlin and few of it's concept.

]]>
ru 2020-09-06 2020-09-06 Omsk, Russia Vladislav Unchuris GDG Omsk Kotlin multiplatform https://www.meetup.com/GDG-Omsk/events/272932932/ Обсудим Kotlin как язык, поговорим о том, где кто уже успел его применить, и затронем Kotlin multiplatform.

]]>
en 2020-09-09 2020-09-09 London, UK Gopal S Akshintala Kotlin London Fight Complexity with Functional Programming https://www.meetup.com/kotlin-london/events/272694064/ A Metric-driven approach to reduce Cognitive Complexity in a code base, using Functional Programming, demoed hands-on, by solving a complex real-world ubiquitous design challenge - REST API Bulk Request Validation, with an extensible Framework that separates what-to-do (Validations) from how-to-do (Validation Orchestration). Let's do a case study of a successful implementation done by our team in the world's largest SaaS org, Salesforce.

]]>
en 2020-09-09 2020-09-09 London, UK Pablo Gonzales Alonso Kotlin London What can autoModule do for you? https://www.meetup.com/kotlin-london/events/272694064/ We'll learn what autoModule can do for our Gradle setup. We’ll see how can we reduce the complexity of our build scripts with a bit of history of how the plugin got started.

]]>
pt 2020-09-09 2020-09-09 São Paulo, Brazil Vitor Ramos NerdZão Features úteis do Kotlin que demorei para conhecer https://www.meetup.com/Nerdzao/events/272483654/ Apresentação e exemplos de funções do Kotlin menos conhecidas: inline, infix, reified, etc.

]]>
en 2020-09-17 2020-09-17 Irvine, USA Ryan Simon OC Kotlin Krew The Journey of a Kotlin Backend - Scale to the Millions https://www.meetup.com/OCKotlinKrew/events/272558278/ Backend development is usually a tough system to crack especially coming from an iOS background. Learn first hand from an early Bird engineer how Kotlin was used to power Bird's backend infrastructure from the bottom up. We'll cover some pitfalls that you might fall into, and the key advantages of choosing a Kotlin Ktor backend as your next tech stack.

]]>
en 2020-09-22 2020-09-22 Vienna, Austria Rainer Kern Kotlin Vienna Back to School with Kotlin https://www.meetup.com/Kotlin-Vienna/events/266973108/ It’s back to School time and so we’d like to give all the Kotlin newcomers a chance for getting a taste of Kotlin. You will hear the basics of the Kotlin programming language in a introductory talk, no Kotlin experience required, Java highly recommended, at least some other general purpose object oriented language (C#, Java Script, Scala, Ruby, ...)

]]>
uk 2020-08-26 2020-08-26 Dnipro, Ukraine Evgen Surkov Kotlin Dnipro Legacy backend, error handling like a boss https://www.meetup.com/Kotlin-Dnipro/events/272397112/ Будемо говорити з досвідченими Android розробниками про те, як обробляти помилки від backend, якщо йому більше 5 років

]]>
uk 2020-08-26 2020-08-26 Dnipro, Ukraine Andrey Khristian Kotlin Dnipro Kotlin Multiplatform https://www.meetup.com/Kotlin-Dnipro/events/272397112/ Наскільки складно використовувати Kotlin Multiplatform та про те, які бібліотеки та інструменти можна для цього застосовувати.

]]>
en 2020-08-27 2020-08-27 Utrecht, Netherlands Mireille Lock OpenValue Introduction to Kotlin coroutines https://www.meetup.com/OpenValue/events/272557807/ With my current project, we have a hackday per sprint. During one of those hackdays, I discovered Kotlin's suspend functions. Functions that look exactly the same as normal functions, but by adding the keyword 'suspend' to them, you can start, pause and resume those functions without blocking. It seems like magic! Only if you don't know how it works under the hood of course. The pausing and resuming is done by coroutines, a concept I had not heard of before. That's why I spent some time reading and experimenting with Kotlin coroutines. I learned a lot about coroutines vs threads, blocking vs non-blocking, parallelism, concurrency and continuations. In this talk I would like to share what I have learned.

]]>
en 2020-08-27 2020-08-27 Utrecht, Netherlands Berwout de Vries Robles OpenValue Stairway out of dependency hell https://www.meetup.com/OpenValue/events/272557807/ My team had around fifty different but interconnected products to manage, each in their own git repository.

All of the work involved with just keeping up-to-date was really limiting our progress into more exciting features.

Over a period of two years we’ve introduced multi-branch pipelines, built a GitOps flow, migrated to a monorepo, built an auto-scaling test environment and started using Kubernetes namespaces for our testing.

In this talk we will look at both the technical solutions and the lessons learned. What worked? What didn’t work? What was worth it? What would we have done differently if we knew better?

The talk is targeted towards software developers looking for ways to improve their workflow at the team level but the lessons learned should be relevant in a much broader sense.

]]>
en 2020-08-27 2020-08-27 Dubai, United Arab Emirates Chandra Sekhar Nayak Google Developer Groups Dubai Sneaking Inside Kotlin Features https://www.meetup.com/GDG-Dubai/events/272569640/ Kotlin has many language features even though none of them are supported by JVM or Android ART. This talk will go through all the language features and understand how they work internally for JVM or ART compatibility.

]]>
en 2020-08-27 2020-08-27 Dubai, United Arab Emirates Andrei Shikov Google Developer Groups Dubai The Magic of Compiler Extensions https://www.meetup.com/GDG-Dubai/events/272569640/ Did you know that Kotlin compiler has a plugin system which allows extend its capabilities in breathtaking ways? Many highly important first party libraries, from serialization to Android specific extensions are done exactly this way. This talk explores results of my own experiments with this system and the possibilities it opens.

Get ready for a dive into compiler structure focusing on practical extension without breaking the language rules. We will go through plugins released by the community and the current state of development for those who dare to create compiler plugins themselves. At last, you will see how the compiler plugins compare to annotation processing and understand pros and cons of each.​

]]>
en 2020-08-31 2020-08-31 Johannesburg, South Africa Pamela Hill Jozi-JUG Katching up with Ktor https://www.meetup.com/Jozi-JUG/events/270783620/ Have you heard about Ktor? It's a Kotlin framework for creating asynchronous clients and servers from JetBrains and is super-easy and fun to use. In this talk, I will be looking at the server-side of things, by:

Introducing Ktor and explaining it's architecture Showing how to create a simple API using Ktor Pointing out how it leverages Kotlin's strengths Can it contend with favourites like Java EE or Spring (Boot), and in which scenarios? Is it mature enough to be used in production? After this talk, you'll be equipped to answer those questions for yourself!

]]>
ar 2020-07-04 2020-07-04 Cairo, Egypt Ahmed Nabil Egyptian Kotlin Community Kotlin Multiplatform https://www.facebook.com/events/602798430330368/ Introduction to Kotlin multiplatform and kotlin native, the fields it's used for, and quick look on the hands-on lab, it will be hosted by GDG MENA in #MENADD initiative in collaboration with Kotlin Egypt https://www.youtube.com/watch?v=rwmvYxMbVno

]]>
es 2020-08-13 2020-08-13 Medellín, Colombia Cristian Gomez Kotlin User Group Medellin TDD, Testing, el Type System y como beneficiarse de ello por https://www.meetup.com/Kotlin-User-Group-Medellin/events/272434031/ Tipos no son tests", es una expresión usada por algunos entusiastas de TDD, en esta charla veremos cómo pueden coexistir tipos y tests para lograr un mejor diseño de nuestro software, más simples y más seguros. En la primera parte veremos cómo crear tests basados en tipos y un poco de TDD en la segunda parte, crearemos un ejemplo simple usando una suite de tests para agregar funcionalidad a una aplicación ya existente.

]]>
en 2020-08-17 2020-08-17 Cambridge, MA Mark Murphy Clean Mobile Code Learn Clean Kotlin Code with Klassbook https://www.meetup.com/Clean-Mobile-Code/events/zbjkwrybclbwb/ There are many ways to learn it, some good, some even. better still. This meetup will help you learn Kotlin and adhere to Clean Code principles and techniques advocated in the Clean Mobile Code event series.

]]>
en 2020-08-17 2020-08-17 Nairobi, Kenya Chet Haase, Murat Yener Kotlin Kenya User Group Android11 MeetUp https://www.meetup.com/KotlinKenya/events/272501624/ A global series of online community meetups to discuss what’s new in Android 11, how to make your app compatible, and the essentials and best practices of modern Android development.

A focus on primarily aim Android developers who are interested in making sure their apps/games work well on the latest release of Android and want to avoid any breaking changes.

This presentation will give a quick overview of the features in the latest release: Android 11. It will also cover information about other important releases and products for Android developers, and how to find out more.

]]>
en 2020-08-20 2020-08-20 Berlin, Germany Jakub Jabłoński Kotlin User Group Berlin Informal get-together of Kotlin developers in Berlin https://www.meetup.com/kotlin-berlin/events/bcvtkrybclbbc/ en 2020-08-22 2020-08-22 Mumbai, India Subhrajyoti Sen Kotlin Mumbai Building a better codebase with Lint https://www.meetup.com/Kotlin-Mumbai/events/272546731/ In this talk, Subhrajyoti discusses some examples of custom lint checks we use on the Tickertape app to enforce out design guidelines. He will go through the source code of Android lint checking and then show how to write a custom lint rule.

This talk also demonstrates how to write test cases for the rules. By the end of the talk, you will be able to understand how lint works and how you can add custom lint rules to your projects.

]]>
en 2020-08-22 2020-08-22 Hyderabad, Indian Chandra Guntur Kotlin Hyderabad Java 8 to Java 14 - Some Notable Enhancements https://www.meetup.com/kotlinhyderabad/events/272397592/ This session shares notable changes in the Java ecosystem starting from Java 8 all the way until Java 14. No vendor-specific changes or enhancements are covered.

Given the breadth of the topic and a time limit, this session will only cover the most notable or impactful changes.

For instance, Java 9 introduced 150 new features: Java 9 changes focus on programmatic/syntactic changes for most part but will cover the new Java Module system JPMS, since it makes a huge impact for library developers.

Similar constraints apply for Java 10, 11, 12, 13 and 14. However, post-Java 9, the release cadence of 6 months has greatly reduced the number of features delivered making the content more viable to present a larger percentage of changes.

]]>
en 2020-08-25 2020-08-25 Budapest, Hungary Endre Deak, Adam Arold, Adrian Bukros Kotlin Budapest User Group Kotlin Budapest meetup - August https://www.meetup.com/Kotlin-Budapest/events/272525463/ Venue details and safety measures: The safety of our community is our #1 priority. We comply with all regulations and recommendations. Our safety measures include, but are not limited to, the following:

• We're enforcing a strict attendance limit in coordination with our venue's regulations. • The seats and tables are from the prescribed distance from one another. • Surgeon masks will be made available for every attendee on demand. • We'll be equipped with hand sanitisers. • Our venue is an inner garden with good ventilation. • We kindly ask our attendees to attend only if they weren't abroad or near exposed people in the past two weeks, and aren't experiencing symptoms themselves.

]]>
es 2020-08-06 2020-08-06 Buenos Aires, Argentina Armando Picón Android Devs Buenos Aires Introducción a Kotlin Flow https://www.meetup.com/Android-Devs-Buenos-Aires/events/272188461/ Y aparecieron los Kotlin Flow, pero ¿realmente entendemos como funcionan? En esta charla explicaremos algunos de los conceptos detrás de estos nuevos componentes y mostraremos algunos ejemplos para entender cómo funcionan

]]>
en 2020-08-19 2020-08-19 Amsterdam, The Netherlands Ionut Pruteanu IT Development Café Live Tech Talk: The Future of Automated Testing in Kotlin https://www.meetup.com/IT-Development-Cafe/events/272333122/ Testerum is a free and open-source innovative test automation platform. The platform has a friendly UI where a product owner can write the acceptance criteria in the business language and testers can transform the acceptance criteria into automated tests without programming. This way you keep the tests and documentation together and always have an overview on the project's status

]]>
en 2020-08-20 2020-08-20 Washington, DC Matt Coding Bootcamps Kotlin programming language: How it fixes many Java issues- free online workshop https://www.meetup.com/coding-bootcamps/events/267436342/ Learn constructs for both Object Oriented and Functional programming styles, which can be mixed using Kotlin. This is power packed. Kotlin is is concise, expressive, and safe. It is a modern, statically typed language within the JVM developed by JetBrains under the Apache 2.0 license.

]]>
en 2020-08-27 2020-08-27 Berlin, Germany Smile Egbai Virtual Kotlin User Groups Kotlin Mulitplatform as a Kernel https://www.meetup.com/Virtual-Kotlin-User-Group/events/272313017/ Kotlin is a powerful language with a lot of features yet to be unlocked, one of those great benefits of Kotlin is the ability to share logic structure and allow the platform-specific implementation of contracts. This talk will centre around how this feature helped me develop a feature flag library.

]]>
en 2020-09-12 2020-09-12 Hyderabad, Indian Reza Rahman Kotlin Hyderabad Jakarta EE - Present and Future https://www.meetup.com/kotlinhyderabad/events/272319084/ Java EE has been re-branded to Jakarta EE and moved to truly open source governance under the Eclipse Foundation. This session overviews what this means, offers a brief tour of the first release - Jakarta EE 8, explores current state and looks to what the future might bring including some key challenges. We will also discuss how these challenges can be overcome through active community engagement.

The technical contents of Jakarta EE 8 is mostly the same as Java EE 8 - it solidly enables HTTP/2, Server-Sent Events (SSE), JSON and aligns the platform with Java SE 8. It includes a much awaited security API overhaul as well as a slew of critical updates to APIs like JSF, JPA, JAX-RS and CDI. The true difference is how Jakarta EE is evolved in the open.

]]>
zn 2020-07-25 2020-07-25 Shanghai, China Huo Binggan Google Developer Group - GDG Shanghai Kotlin 协程那些事儿 https://www.meetup.com/Shanghai-GDG/events/271624622/ 简介:Kotlin 协程现在越来越成熟,也已经非常适合运用于生产环境当中,而广大开发者对 Kotlin 协程却充满了困惑。这一次我们就大家经常提及的问题进行详细剖析和解答。

]]>
zn 2020-07-25 2020-07-25 Shanghai, China Huang Linqing Google Developer Group - GDG Shanghai Jetpack Architecture Components 从 0 到 https://www.meetup.com/Shanghai-GDG/events/271624622/ 简介:通过线上编码方式,结合实际用例,展现 Jetpack 架构组件从 0 到 1 的使用过程

]]>
zn 2020-07-25 2020-07-25 Shanghai, China Fan Shengyou Google Developer Group - GDG Shanghai 踏上 Kotlin 学习之路 https://www.meetup.com/Shanghai-GDG/events/271624622/ 简介:在这 10 分钟的分享里,JetBrains 技术布道师将会为大家准备一份学习材料清单,让对 Kotlin 有兴趣的同学可以快速上手 Kotlin,踏上一条进入 Kotlin 的最短路程。

]]>
es 2020-07-25 2020-07-25 Valencia, Spain Carlos Ballesteros Velasco Kotlin.es Creando un Conecta-4 en Kotlin y KorGE usando TDD https://www.meetup.com/Kotlin-es/events/272028949/ En este webinar de Carlos Ballesteros Velasco veremos cómo construir un juego de Conecta-4 funcional jugable en escritorio, móvil y web usando TDD, el lenguaje de programación Kotlin y el motor para hacer videojuegos KorGE.

Retransmitiremos el webinar via youtube en directo y Tamara Gadea Morera se encargará de recopilar todas las dudas por el chat del vídeo. Al finalizar el evento contestaremos todas dudas que hayan ido surgiendo a lo largo del webinar.

]]>
es 2020-07-30 2020-07-30 Santiago, Chile Andrés Zamor GDG Santiago de Chile Remoto: Código compartido con Kotlin multiplataforma https://www.meetup.com/gdg-santiago-chile/events/271754517/ Querida comunidad! Se viene un nuevo meetup remoto! Están todos invitados a participar sin importar el nivel de conocimiento que tengan sobre el desarrollo de software, si tienen habilidades a fines, UX, Designer, reclutadores, etc. o si solo son entusiastas tecnológicos. Recuerden que este es un evento de la comunidad para la comunidad, por lo que queremos conocer sus proyectos y saber en qué están.

Código compartido con Kotlin multiplataforma: Usemos kotlin para compartir código nativo entre Android y iOS. Un breve ejemplo de cómo configurar tu library nativa en función de no reescribir código de lógica que puede ser compartida y una demo donde podremos ver algunos pros y contras de esta tecnología. Discusión abierta para generar ideas.

]]>
en 2020-08-01 2020-08-01 Hyderabad, Indian Siddhesh Pati Kotlin Hyderabad Introduction to Kotlin https://www.meetup.com/kotlinhyderabad/events/271836886/ Mobile software is a decade old passion for Siddhesh. He has built various apps on multiple mobile platforms in both personal and professional capacity. Leading the efforts of development teams he has helped businesses achieve their product goals. Sectors like banking, payments and entertainment ticketing have benefited from apps he has developed.

]]>
en 2020-08-05 2020-08-05 London, UK Mohit Sarveiya Kotlin London gRPC with Kotlin Coroutines https://www.meetup.com/kotlin-london/events/271759690/ gRPC is a technology that allows you to call server side logic from any platform using protocol buffers. What are the libraries available that allow you to create and consume gRPC services using coroutines? What are the debugging and monitoring tools we could use for gRPC?

In this talk, I will share with you how to build a gRPC server using the gRPC-Kotlin library. We’ll explore how to use protocol buffers to define different types of rpc calls that are unary and bidirectional. On the client side, we’ll also use this library to consume our gRPC service. gRPC-Kotlin provides an API that uses Flows to make rpc calls. We’ll explore how it works internally. For each rpc call we implement using coroutines, I’ll show you how to unit test it.

]]>
en 2020-08-05 2020-08-05 London, UK Uberto Barbini Kotlin London Validating Requirements and Domain with Pesticide https://www.meetup.com/kotlin-london/events/271759690/ We needed to validate our use cases with tests: - that specify the user intents, not the technical details - that are human-readable (but without regex tricks) - that verify our hexagonal architecture running both end-to-end and in the domain only - that can guide our architecture like unit-tests are driving our design

This talk is about how we solved these problems with the DDT approach and how you can apply this technique on your own backend application. A demonstration with live coding will show how to write them and use it to drive the development.

]]>
es 2020-04-28 2020-04-28 México City, Mexico Lucas Nobile Kotlin CDMX User Group Mejores prácticas al momento de desarrollar aplicaciones en kotlin https://www.meetup.com/Kotlin-CDMX/events/270048598/ https://docs.google.com/presentation/d/1PznwofG2wNkSYBcS_fCeZFyVeI2j10e3eeQ7Sfb1eJM/edit?usp=sharing Este mes hablaremos sobre mejores prácticas al momento de desarrollar aplicaciones en kotlin, cuando si y cuando olvidar hacer ese cambio que creías que te iba a solucionar la vida pero te hizo hacer refactor una semana después además de conocer como integrar Kotlin con Firebase y sacarle el mejor provecho.

]]>
es 2020-04-28 2020-04-28 México City, Mexico Gastón Saillen Kotlin CDMX User Group Kotlin Snippets FTW (For the Win) https://www.meetup.com/Kotlin-CDMX/events/270048598/ https://docs.google.com/presentation/d/1QfH-SeB7OxEVn7SNoEx-NgXBFqSDOzASMFObmtW-hVM/edit?usp=sharing Revisamos un conjunto de Kotlin snippets que podemos usar diariamente y que todo Android dev necesita conocer.

]]>
es 2020-04-28 2020-04-28 México City, Mexico Mauro Bocanegra Kotlin CDMX User Group Please KNo! https://www.meetup.com/Kotlin-CDMX/events/270048598/ https://github.com/KotlinCDMX/meetup/blob/master/Abril2020/resources/PleaseKno.pdf Things to avoid in Kotlin, Bad and worst practices and everything that should not happen in our Android code.

]]>
en 2020-04-30 2020-04-30 Amsterdam, The Netherlands Matthisk Heimensen Software development @ Xebia Coroutines Basics (Coroutine, Channels, Actors, Flows) https://www.meetup.com/Software-development-at-Xebia/events/270157263/ Matthisk Heimensen will introduce you to the Coroutine basics, explain the concept of ‘structured concurrency’, suspend functions and all the building blocks needed to properly program with coroutines. He will also cover more advanced features such as Channels and Actors. Finally, he will dive into Kotlin Flow, which is still an experimental feature. You will learn how Kotlin’s powerful concurrency primitives make reactive streams implementations safer and more powerful.

]]>
en 2020-04-30 2020-04-30 Amsterdam, The Netherlands Peter Urs Software development @ Xebia Coroutines in Spring Boot https://www.meetup.com/Software-development-at-Xebia/events/270157263/ Based on the gained knowledge of the first talk Urs Peter will show you how easy it is to apply Coroutines in Spring Boot using live-coding. Staring out with a simple rest service he will transform a CompletableFuture based endpoint into a Coroutine counterpart. He will rebuild a ServerSentEvent stream endpoint written with Reactor’s Flux with a Kotlin Flow and show you how Channels can be applied to broadcast information between Flows. He will finally explain how existing CompletableFuture or Flux/Mono based api’s can easily be ‘lifted’ into Coroutines allowing different reactive libraries to be used in a straightforward synchronous way without losing their asynchronous, non-blocking characteristics.

]]>
en 2020-04-30 2020-04-30 Amsterdam, The Netherlands Stefan Mitev The Dutch Android User Group Going with the flow https://www.meetup.com/dutch-aug/events/270163034/ A light and introductory talk about Kotlin flow that aims to inspire you and demonstrate its ease of use

]]>
en 2020-04-30 2020-04-30 Amsterdam, The Netherlands Hugo Visser The Dutch Android User Group Open the door! Getting into the garage with Android, Coroutines and a bunch of other stuff https://www.meetup.com/dutch-aug/events/270163034/ A light and introductory talk about Kotlin flow that aims to inspire you and demonstrate its ease of use

]]>
ru 2019-12-06 2019-12-06 Moscow, Russia Maria Sokolova Heisenbug Lincheck. Тестирование многопоточной структуры данных в Java https://2019.heisenbug-moscow.ru/2019/msk/talks/4hoydj6lfkvfh22jtlixkb/ Если вы писали многопоточный код, то знаете, что сложно написать его корректно сразу. Для тестирования обычно пишут стресс-тесты, покрывающие лишь некоторые опасные сценарии исполнения. Но часто для поиска ошибки такого подхода оказывается недостаточно. Для решения этой проблемы был создан lincheck — пока единственный инструмент в мире JVM, позволяющий удобно тестировать корректность (обычно линеаризуемость) многопоточного кода.

Сперва в докладе будет описано использование инструмента, затем его внутреннее устройство.

]]>
en 2019-06-26 2019-06-26 Chicago, USA Thomas Nield Kotlin Night Chicago The Many Types of "AI" https://www.meetup.com/Chicago-Kotlin/events/260487964/ As programmers, we love solving problems. However, sometimes we need more than programmer grit to solve many problems with no easy answer. Suppose you need to tightly schedule 190 classes in 20 classrooms, with different class durations, recurrences, and constraints throughout the week? What about minimizing the operating cost of a train schedule while maintaining a steady movement of passengers? How about identifying objects in images? Or simply solving a Sudoku?

]]>
en 2019-06-26 2019-06-26 Chicago, USA Victoria Gonda Kotlin Night Chicago Transforming your Tests with Kotlin https://www.meetup.com/Chicago-Kotlin/events/260487964/ We know we should write tests, and we know that Kotlin gives us some nice features to use in our code, so how can we put these two together? There are some really great ways that Kotlin is being used in test writing, and we'll look at a number of them. This will include features such as higher order functions and escaping back-ticks and how they can make your tests more expressive. We'll also look at some testing libraries that take advantage of Kotlin's features. At the end of this talk you'll walk away with an understanding of how you can use Kotlin to make your tests more enjoyable.

]]>
ja 2019-08-24 2019-08-24 Tokyo, Japan Sato Shun Kotlin Fest 2019 Kotlin型実践入門 https://speakerdeck.com/satoshun/kotlin-fest-2019-kotlinxing-shi-jian-ru-men https://kotlin.connpass.com/event/129860/ KotlinではJavaにはない様々な型に関する機能が追加されたので、それらの解説 - Smart Casts - Any、Unit、Nothing - ジェネリクス - Sealed class - 関数型

]]> ja 2019-08-24 2019-08-24 Tokyo, Japan Matsuda Jumpei Kotlin Fest 2019 K[日本語注釈つき] Deep Dive into Kotlin DSL https://speakerdeck.com/jmatsu/ri-ben-yu-zhu-shi-tuki-deep-dive-into-kotlin-dsl https://kotlin.connpass.com/event/129860/ ja 2019-08-24 2019-08-24 Tokyo, Japan Akira Aratani Kotlin Fest 2019 Kotlin Multiplatform Project入門/Introduction-Kotlin-MPP https://speakerdeck.com/aakira/introduction-kotlin-mpp https://kotlin.connpass.com/event/129860/ ja 2019-08-24 2019-08-24 Tokyo, Japan Toshihiro Yagi Kotlin Fest 2019 Kotlin コルーチンを 理解しよう https://speakerdeck.com/sys1yagi/kotlin-korutinwo-li-jie-siyou-2019-kotlinfest2019 https://kotlin.connpass.com/event/129860/ - コルーチンとはなにか、なにがうれしいのか - Kotlinにおけるコルーチンの仕組み - Kotlinコルーチンのきほん - コルーチンスコープと構造化された並行性 - コルーチンと設計 - コルーチンのテスト

]]> pl 2019-02-28 2019-02-28 Warsaw, Poland Krzysztof Romanowski Kotlin Night Warsaw The price we all pay. Does Kotlin slow down our code? https://www.meetup.com/Kotlin-Warsaw-by-Kt-Academy/events/258459508/ Kotlin, as well as other languages like Scala or Groovy is developed (echm, hacked, eckm) over JVM. We all enjoy features like extension methods or strict null management that does not have corresponding functionalities native to JVM. How does that affect performance?

Let’s run some benchmarks!

]]>
ru 2019-01-15 2019-01-15 St.Petersburg, Russia Pavel Finkelstein JUG.ru Kotlin два года в проде и ни единого разрыва https://jug.ru/2019/01/pavel-finkelstein/ en 2020-06-03 2020-06-03 London, UK Sebastian Aigner Kotlin London Unleashing more Kotlin power – in full-stack web applications https://www.meetup.com/kotlin-london/events/270844240/ In this talk, we will explore how Kotlin and its features around multiplatform projects can help tackle tasks around writing systems that are distributed across multiple platforms, such as server-client applications. In particular, we will look at how Kotlin for JVM and Kotlin/JS can play together, allowing us to share models, business logic, and most of all knowledge. We will get a broad overview of creating, managing and building such applications – all from within a single Gradle project, staying type-safe, and utilizing common and platform libraries.

We'll also briefly talk about how we at JetBrains employ these Kotlin multiplatform features to prototype new ideas and realize products – from hackathon projects to JetBrains Space, our integrated team environment

]]>
en 2020-07-01 2020-07-01 London, UK Matt Moore, Nicolás D'Cotta Kotlin London Adding pattern matching to Kotlin https://www.meetup.com/kotlin-london/events/271391822/ https://www.meetup.com/kotlin-london/events/271391822/ One of the reasons Kotlin has proven so popular is its wide array of abstractions and constructs. But pattern matching, a popular feature that in other languages allows us to easily inspect data and act accordingly, is currently missing.

This talk aims to explore the possibility of adding pattern matching to Kotlin. It will go through why and how it could be done, from adding it to the actual language to using a compiler plugin (much like kotlinx.serialization works).

]]>
en 2020-06-05 2020-06-05 Budapest, Hungary Paweł Marks Conference for Kotliners New Dokka - Designed for Fearless Creativity https://kotliners.com/conference/live Pluggability is hard. Many software projects avoid it by all means possible. Many try to contain it in the smallest possible scope. We believe that developers are creative and have specific requirements for their documentation engine. Some of them want to be able to render their docs in javadoc-compatible format. Some of them want features like a full-text search or runnable code snippets inside of the docs. And there are some that need features that we’ve never even thought about. To satisfy all of them, we decided to embrace full pluggability. And we decided to make pluggability fearless, so anyone can mix and match existing plugins or easily create new ones from scratch, without the fear of breaking anything.

In my talk, I would like to tell you how we decided to redesign and reimplement Dokka from scratch. I will introduce you to all the dangers and risks of pluggability and tell you how we mitigated them by design, grounded in strong guarantees. Finally, I want to show how easily and how much you can do with your old, boring documentation using new Dokka.

]]>
en 2020-06-05 2020-06-05 Budapest, Hungary György Móra Conference for Kotliners Integrating Kotlin into a Poliglot JVM Environment https://kotliners.com/conference/live We built a machine learning model library in Kotlin, what we train on a system mainly written in Scala, and we ship it inside Clojure powered services. It is easy, since all of them are JVM languages. Except that it's not that easy! I will talk about the good and bad surprises along the way.

]]>
en 2020-06-05 2020-06-05 Budapest, Hungary Amy Crockett, Garth Gilmour Conference for Kotliners Using Kotlin to Create Kotlin to Teach Kotlin within Space https://kotliners.com/conference/live At Instil we use Space as the primary mechanism for coaching developers during virtual training. To ensure privacy, we create a dedicated instance for every workshop we deliver. Initially, this led to headaches when we were manually configuring profiles, teams, repos, blogs, chats and checklists. We since solved this by using the Space HTTP API to create an automated pipeline. Today anyone can configure any workshop in a matter of minutes. This talk will walk you through the code behind this pipeline. In addition to the Space API itself, we will be covering OAuth, the Ktor HTTP Client, DSLs, Functional Patterns and Integrating Testing.

]]>
en 2020-06-05 2020-06-05 Budapest, Hungary Raúl Raja Martínez, Simon Vergauwen Conference for Kotliners Arrow Fx: Functional Domain Modeling with Kotlin https://kotliners.com/conference/live Simon Vergauwen is a Senior Software Engineer and Trainer at 47 Degrees, responsible for working on the core Arrow infrastructure and design. He is leading efforts to include composable optics in Arrow and revamping the Arrow Fx library to support custom error handling, safe resource management, and many modern features expected in today’s functional programming ecosystem in Kotlin.

Raúl Raja is a Co-founder and CTO of 47 Degrees and one of the core maintainers of the Arrow open-source library. Over the last few years, Raul has been working closely with the Kotlin compiler and the Arrow library to help build a new type system and features for improving the ease of practicing Typed Functional Programming in Kotlin.

]]>
en 2020-06-05 2020-06-05 Budapest, Hungary Kevin Galligan Conference for Kotliners Kotlin/Native Concurrency for Mobile Multiplatform https://kotliners.com/conference/live Kotlin Multiplatform will allow sharing native code among many platforms. The native mobile developer world, in particular, will see a lot of benefit very quickly from KMP.

The Android developer community seems pretty excited by the possibilities. However, coming from the JVM, there are new things you must learn. One of the most important is Kotlin/Native’s state and concurrency model. While the Kotlin/Native state model is conceptually simple, it is also different, and will cause some confusion if you don’t learn the rules.

]]>
en 2020-06-05 2020-06-05 Budapest, Hungary Eugenio Marletti Conference for Kotliners Confessions of a Serial K⁠–⁠otlin Multiplatform⁠–⁠er https://kotliners.com/conference/live “Multiplatform” is a paradox._ It makes things both easier and more complicated at the same time. It’s the opposite of what most _expect_ or think they need... And also the solution to their _actual_ needs. It's also more than just a technology—Ah, and you're already doing it (inefficiently)!

Then what is it, really? And why would Kotlin be any different than all those other failed multiplatform tools?

One short answer is: **Kotlin _works_ on multiple platforms, but is _not_ multiplatform.**

Sounds like another paradox? Then let us start from the beginning...

]]>
en 2020-06-05 2020-06-05 Budapest, Hungary Wojtek Kaliciński Conference for Kotliners We Suspend This Program for an Important Announcement https://kotliners.com/conference/live In this talk we'll take a good look at the current state of coroutines support in Android libraries and tools, explore some interesting and not-so-obvious edge cases when dealing with Kotlin code that includes coroutines and interop with Java, and briefly look at some new developments in Kotlin from the Android team.

]]>
en 2020-06-05 2020-06-05 Budapest, Hungary Ivan Sanchez, David Denton Conference for Kotliners Writing Test Driven Apps with http4k https://kotliners.com/conference/live Testing HTTP services can be a painful and challenging process for developers: tests are often slow running, involve complicated (or coupled) setup, rely on unreliable third party dependencies, or deal with complicated outputs.

In this talk, we demonstrate how the http4k library leverages its “Server as a Function” roots to enable writing apps which can be test-driven at all levels of the Testing Pyramid, using a set of tools derived from decades of experience testing backend applications to make many of the above issues go away.

]]>
en 2020-06-05 2020-06-05 Budapest, Hungary David Wursteisen Conference for Kotliners Let's Build a Cross-platform 3D Engine with Kotlin/Multiplatform https://kotliners.com/conference/live When creating a game, you want your game to be available on all platforms to target as many players as possible. Developing a game engine is a challenge: you have to deal with mathematical concepts, animations, player interactions... Creating an engine that runs on different platforms is even more challenging. Is Kotlin and Kotlin/Multiplatform could be the right tool to build this kind of engine? Let's check this out together.

Message for you, so you can already be aware what you can expect from this session: Using existing Java game engines, you can create a game that runs on the JVM, in a browser or on Android and iOS. But it requires some complex tooling, when tools are available for the platform you're targeting.

This session is about the creation of a game engine that runs the same way in a browser, in a JVM, on iOS or Android.

Throughout this session, attendees will learn: - Basic matrix computation needed for 3D engine; - Basic game development concept: drawing shapes on screen, dealing with skeleton animations; - How to convert a pure Kotlin/JVM library into a Kotlin/Multiplaform library; - Example of use of Kotlinx.serialization to share game content between each platforms; - What didn't work while budding this kind of engine, like building a common API over heterogeneous game engine; or converting a java engine into a Kotlin one; - The challenges to build a game engine on the top of the Open GL API. (Open GL is a 3D API available almost everywhere: WebGL (browser), Open GL ES (Android / iOS - deprecated), Open GL (JVM / Native); - Issues encounter to build such engine on different platform: name forbidden in Kotlin/JS (val input -- package input conflict). Taking very seriously the naming and the abstraction on the common.

]]>
en 2020-06-05 2020-06-05 Budapest, Hungary Sebastian Aigner Conference for Kotliners Kotlin/JS, Today and Tomorrow https://kotliners.com/conference/live The JavaScript target for Kotlin bears huge potential for bringing the language we love to the influential world of browsers and JS engines. Since its first release with Kotlin 1.1, Kotlin/JS has evolved and keeps maturing.

In this talk, we'll explore the benefits and challenges when it comes to targeting the JavaScript world with Kotlin. From standard libraries and simple DOM manipulation to building full React applications: guided by code and configuration examples, we will get an impression of the technology and its interoperability with an exciting ecosystem – including the freshest changes and additions for Kotlin 1.4 and going forward.

We'll also see how Kotlin libraries support development of Kotlin/JS applications, even beyond the browser – from concurrent applications with coroutines to painless communication supported by kotlinx.serialization. In the same context, we will also look at interesting and useful constructs we can create for Kotlin/JS in multiplatform projects.

Let us go on an adventure in my favorite ecosystem for Kotlin!

]]>
en 2020-06-05 2020-06-05 Budapest, Hungary Tahsin Dane, Martin Bonnin, Ivan Savytskyi Conference for Kotliners Apollo-Android: a Journey to Kotlin Multiplatform https://kotliners.com/conference/live With its roots in the Java world, Apollo-Android evolved to progressively support Kotlin and now Kotlin multiplatform. In this talk we will be talking about the path we took to bring Kotlin Multiplatform support and the challenges we faced along the way. We will touch topics such as migrating code from Java to Kotlin Multiplatform for both the runtime and code generation, as well as documentation and publication of Multiplatform artifacts. Lastly, we will share our plans for the future of the project.

]]>
en 2020-06-05 2020-06-05 Budapest, Hungary Marharyta Nedzelska Conference for Kotliners Building Microservices with Kotlin and gRPC https://kotliners.com/conference/live Microservice architecture is now a huge trend. All big organizations with millions of users are doing microservices. This means they have lots of channels of communication between services and need to send and get much data. At some point, you can find yourself in a situation where your current approach doesn’t provide you with efficient communication, you pay more, wait more, lose more etc. Maybe it’s time to look at gRPC… gRPC is asynchronous by its nature. But old API, Java infrastructure and verbosity make people write lots of noise and break their beautiful minds to make things done. In Kotlin we have awesome coroutines concept. So async gRPC and coroutines could be a perfect match! Let’s discover if this is possible. In this talk, we’ll learn how to build microservices using gRPC with minimum pain. We’ ll discuss the pros and cons of this approach, what can be improved, what should be added.

]]>
en 2020-06-05 2020-06-05 Budapest, Hungary Marcos Placona Conference for Kotliners Going Serverless with Kotlin https://kotliners.com/conference/live Serverless architecture is the new hot. But with a lot of different ways to build applications out there, it's hard to know where to start and what really constitutes a serverless application.

In this talk, we will investigate the tools and processes for building serverless applications using Kotlin. We will then deploy our application and look at some interesting ways we can consume our serverless apps.

Get ready to learn how serverless Kotlin makes it easier to create backends and other utilities for your applications.

]]>
en 2020-06-05 2020-06-05 Budapest, Hungary Márton Braun Conference for Kotliners Handling View State and Events with RainbowCake https://kotliners.com/conference/live RainbowCake is an architectural framework built on top of the best & latest of Jetpack and Kotlin. One of its core features is its view state and view event handling mechanism, which is somewhere between MVVM and MVI, and is powered by LiveData. In this talk, we’ll first look at the client side API of the framework, and the design decisions that went into it. Then, we’ll dive into how all of this is implemented under the hood by customizing LiveData. While the talk discusses this specific framework, the ideas in it are universal and can be used independently in any project.

]]>