Jetpack Compose: First Impressions and Learning Resources

Android’s current UI toolkit is over 10 years old now… Do stop me if you’ve heard this before 😉

As you most certainly already know, Jetpack Compose is the hot new thing for Android UI development. Its promise is to save us by making all the pain points of the old View system and XML layouts go away.

After many many preview versions, it got to beta status about a week ago. Here’s what it’s like to use Compose at the moment, and some of the best places to learn more about it.

The good

First of all, Compose is exciting. It makes a lot of basic UI work really simple, and you get to write it all in Kotlin, making use of all the language’s powerful features! The APIs have great discoverability in Android Studio, since all of it is just Kotlin code that you can access via code completion. This makes it truly easy to get started.

Kotlin’s type safety also works wonders in Compose. No passing in dp values instead of pixels, or mixing up vertical and horizontal alignment options. Everything is strongly typed, and the compiler safeguards you from making many, many mistakes.

The declarative style and state management of Compose is great as well. Writing down what you want to appear based on state is not only clear and explicit, but also a blessing after the problematic state management of the View system.

Given how much effort is going into developing and marketing Compose, it’s almost certainly the future of Android UI development. That being said, the XML system will probably never fully go away. Just like the Java to Kotlin shift, it will take a couple years until the new standard really kicks in, and we’ll occasionally still find ourselves interacting with code from the before times.

So… Get on board soon, just don’t expect all of the old system to disappear overnight. I’d certainly still suggest learning the old XML based system to anyone starting Android Development today — unless they’re somehow very certain that they’ll never work on an existing project.

Jetpack Compose comes with some cool Android Studio tooling as well. Flutter users will probably already be familiar with the handy Surround with shortcuts that let you wrap pieces of code in a new widget, and the same makes an appearance in Studio now.

Select some code, invoke Surround with (Ctrl+Alt+J on Windows, ⌥⌘J on macOS), and then hit R for a Row, C for a Column, or W for an arbitrary widget.

Another quick tip: creating a new Composable will immediately add a parameter list and a body to it, and then place your cursor inside its parameter list, to let you immediately add modifiers and other parameters.

If you don’t want to add any parameters, you can hit Tab to quickly skip to defining its content.

The bad

Now, let’s see the bad part, continuing with the tooling theme. To run Compose, you’ll have to run the latest Canary version of Android Studio. This version has… Some issues.

From my personal experience of a few days:

  • IDE Previews (which would be a really nice feature for Compose) sometimes don’t load at all, or don’t update as changes are made (even after rebuilding). Re-running either the full app or just deploying a @Preview to a device was faster than using the IDE preview feature 100% of the time.
  • The debugger never connected to either an emulator or a physical device when running Compose apps. Still didn’t manage to solve this, though I heard others had more success.
  • Logcat doesn’t show app names when running apps, making it difficult to filter the logs for the current app.
  • When running the emulator in a tool window inside the IDE, the emulator tab occasionally doesn’t appear in the preview version of Studio. I had times when I used the emulator tab inside another project in a stable Android Studio instead… I eventually gave in and reverted to using an emulator in a separate window.
  • Sometimes Studio just froze up entirely, and its process had to be killed and restarted. This happened about once a day or so.

I heard some similar anecdotal stories from others, including excessive resource usage when using Compose compared to other projects. These were occasionally fixable by restarting, invalidating caches, restarting adb, and similar “usual” debugging practices.

Another pain point of using Jetpack Compose can be that looking up how to do things is a bit hit-and-miss for the time being. For example, when you land on StackOverflow questions about it, you’ll often find answers that say “this is how to do it in dev11”, or “here’s the new API for this in alpha3”, but then none of those APIs will be present in the current beta version.

Of course, on one hand it’s nice that Compose went through a lot of iteration and they weren’t afraid to change and evolve APIs — that’s what the preview versions are for.

On the other, it makes for a somewhat unpleasant experience for developers trying to build things on the latest Compose version. Thankfully this situation will naturally improve over time, but we’ll have to wait a bit to get enough new, up-to-date answers in.

The resources

Since StackOverflow won’t be your best friend for learning Compose yet, where else can you go?

First, there’s Google’s official resources, which are a decent start:

  • Their best resource by far is the written documentation pages — get started with them here. These include a lot of helpful explanation and snippets for designing things in Compose, and also touch on more advanced topics like navigation, architecture, and interop with existing code.
  • There’s a lot of video content about Compose as well, under the #AndroidShow branding. I’ll recommend skipping most of this, especially the livestream and Q&A parts — they’re not really developer-focused, and contain a lot of hype and marketing.
    What contains a lot of value, however, are their screencasts about Compose features (which are also included in sections of the written docs). You can find these in this YouTube playlist.
  • If you’re new to Compose, the Beta overview video is also worth watching. For more longer-form introductory content, these videos from last year are all really helpful: Jetpack Compose, Thinking in Compose, Compose by example, and Compose for existing apps.
  • For hands-on practice, take a look at Google’s Compose Pathway that includes videos, articles, and code labs. This goes into significant detail in some parts — feel free to skip the things you’re not interested in learning deeply immediately, otherwise it’ll take a long time to get through it.
    I also found that some of the codelabs here were outdated (not using beta1 APIs yet), so be prepared to fiddle a bit with the code snippets provided, or to debug dependencies. Again, this is something that will be improved soon.

If you prefer reading, RayWenderlich team’s Jetpack Compose book has really solid, professional content in it, providing a complete tour for you to get started with: A nice exploration of the basic UI building blocks of Compose, as well as multiple example apps. (This, again, is slightly outdated, as its samples use alpha10. Fingers crossed that it gets a revision soon.)

For even more long-form video explanations, guidance, and demos, Exploring Jetpack Compose and Advanced Jetpack Compose by Filip Babić are both excellent.

To find quick snippets for how to perform basic things, the Compose Academy site can come in handy.

Finally, exploring Compose on your own is also a great way to learn about it. All of the APIs you use are just Kotlin code, so exploring through code completion, and jumping into the underlying implementation in Android Studio to read the source are super easy. The in-code documentation for most Compose APIs also tends to be excellent.

Conclusion

Are you excited and ready for Jetpack Compose? We know that we are, and you can look forward to more Compose content from us soon, including in our Android Chat SDK.

Tweet at us @getstream_io and tell us what you think about Compose, and what you found to be the most useful way to learn about it!

Originally published at https://getstream.io.

Click 👏 to say “thanks!” and help others find this article.

To be up-to-date with great news on Kt. Academy, subscribe to the newsletter, observe Twitter and follow us on Medium.

If you need a Kotlin workshop, check how we can help you: kt.academy.


Jetpack Compose: First Impressions and Learning Resources was originally published in Kt. Academy on Medium, where people are continuing the conversation by highlighting and responding to this story.

Continue ReadingJetpack Compose: First Impressions and Learning Resources

All the Talks at KotlinConf, Organized and Commented

The KotlinConf 2017 was on 2-3 november and it was a great conference. In this article we are going to present a short summary of the talks with links to their videos.

List of Talks

Understanding Kotlin

The talks you want to watch if you want to understand the language better: from introductory talks to deep dives.

Understand Every Line of Your Codebase

A talk by Boris Farber and Victoria Gonda, who also wrote the article: Java as your Kotlin Study Buddy. It is a talk centered on showing the Java equivalent of the Kotlin code you write and the bytecode produced by the Kotlin compiler. It is interesting especially for new Kotlin developers and people still using Java that want to see a bit of the Kotlin magic.

Introduction to Coroutines

Concept of coroutine looks amazing. I will need to play with it a little bit to get it to work though. @KotlinConf Introduction to Coroutines by Roman Elizarov https://t.co/Q7YoF6N2jF via @YouTube #kotlinconf17

— Anurag Chitnis (@AnuragChitnis) 17 novembre 2017

A talk by Roman Elizarov, who works on the Kotlin language at JetBrains. It is about one of the most exciting features of Kotlin: coroutines. In this talk you can learn why you need coroutines and how to use them with live examples.

Deep Dives into Coroutines on JVM

A talk by Roman Elizarov, who works on the Kotlin language at JetBrains. This is the deep and technical companion of the other talk by Elizarov on coroutines. It is about the technical aspects of the coroutines implementation on top of the JVM. It is a great talk for people that want to understand how coroutines work.

Idiomatic Interop

A talk by Kevin Most on Java-Kotlin interop. Kotlin and Java interop is great, but it is not perfect especially when invoking Kotlin code from Java code. In this talk you are going to know how to make the two languages work better together: from the strategies to the gotchas. This talk is perfect for Kotlin developers that have to take in account their Java users.

Kotlin Puzzlers

Lots of fun with #kotlinpuzzlers with @antonkeks at #kotlinconf17, some great laughs at the compilers expense! pic.twitter.com/Ldi6lQObes

— Neil Power (@NeilPower) 3 novembre 2017

A talk by Anton Keks on Kotlin puzzlers. This talk presents some interesting nuances of Kotlin through the use of small programs. It is a fun talk to watch if you want to test your understanding of Kotlin behavior. For instance, do you know what happens when you write

return throw return "Hello"

? Watch this talk to find out.

The Cost of Kotlin Language Features

A talk by Duncan McGregor on the costs in terms of code size and execution time of Kotlin. The talk is focused on the bytecode produced by the Kotlin compiler on the JVM. The author actually said that you shouldn’t care about such costs, but if you do the talk will shows you the small costs in terms of performance that some features of Kotlin have.

You Can, but Should You?

A talk by Mike Gouline, a software engineer who works in the health industry. This is a talk on how to be smarter in using Kotlin. It discusses and explains how to choose among the different features that Kotlin offers in a way that makes sense for your software. It does not just present the options (i.e., for vs foreach), but it gives you guidelines on how to make the choice.

It is a very interesting talk not only for Kotlin users, but for everybody that needs to learn how to better organized his code.

Deep Dive into Kotlin/Native

A talk by Andrey Breslav, the leader of Kotlin development at JetBrains. This is a talk about the inner workings of a prerelease feature of Kotlin/Native: now (soon) you could use it develop for iOS. The talk is linked to the keynote of the conference since it shows the internals of the app demoed there.

This is the best talk to watch if you are interested in understanding how Kotlin/Native and iOS work together.

Kotlin Types: Exposed

Kotlin Types: Exposed by @sveta_isakova #kotlinconf17 #sketchnotes pic.twitter.com/Hi7khgTdb3

— Chiu-Ki Chan (@chiuki) 4 novembre 2017

A talk by Svetlana Isakova, developer advocate at JetBrains and co-author of Kotlin in Action. This is a talk about Kotlin types interact with Java: what happens under the hood, what you should be aware of and explanations of some design choices made by JetBrains.

Android & Web

Talks specifically about Android, Web and KotlinJS.

Frontend Kotlin from the Trenches

A talk by Gaetan Zoritchak, on KotlinJS used for the frontend. This talk gives feedback on the journey and the technical challenges faced on developing a data visualization library: Data2viz.



A View State Machine for Network Calls on Android

A View State Machine for Network Calls on Android by @mandybess #kotlinconf17 #sketchnotes pic.twitter.com/AVwohUOGhr

— Chiu-Ki Chan (@chiuki) 2 novembre 2017

A talk by Amanda Hill on how to build a View State Machine for network calls on Android. If you are wondering why you should do that she will show you right away by building an app. Basically, it is a way to handle networking request in a way that is resistant to UI changes.

Real World Kotlin-Powered Android

A talk by James Williams, responsible for Android Curriculum at Udacity. This is about converting an Android app written in Java to Kotlin, bit by bit. It is practical and interesting way to understand some of issues involved.

Isomorphic Kotlin

A talk by Troy Miles on the server side of an Android isomorphic mobile system. The talk starts with an introduction on the issue, then continues on showing how to build a microservice with Ratpack, wire it, and deploy it on Heroku.

Going Serverless with Kotlin

A talk by Marcos Placona, who works as a developer evangelist at Twilio. This is a talk on the tools and processes to build mobile and IoT stuff with Kotlin and deploy it on AWS Lambda to go serverless with Kotlin. There are a few minutes of introduction to the advantages of going serverless and then he shows code.

How to Build a React App in Kotlin

A talk by Dave Ford on why it makes sense to use Kotlin on the web and how to build a React App with your favorite language. The talk is focused on KotlinJS and the web world. The main point of the talk is that using Kotlin is even better than using a templating system to write web interfaces (i.e., HTML). Essentially templating system are simple languages, but Kotlin is a better language that has typesafe-builders, the (internal) HTML DSL (kotlinx.html) and a few React wrappers.

Given that most Kotlin developers come from Java, this is a very interesting idea that you probably never thought about.

Spring

A few talks dedicated to the Spring Framework and its usage with Kotlin.

Bootiful Kotlin

A talk by Josh Long, author of 5 books and “the guy with most bugs per line of code on the Spring team”.

It is a demo talk about using Spring Boot with Kotlin.

Asynchronous Programming with Kotlin Coroutines in Spring

A talk by Konrad Kamiński on using coroutines for asynchronous programming in Spring. It is a code-based talk on how to use coroutines in Spring. It is quite specific, so it is great if you are interested in just that, but it also useful for current Java and Spring users to get the feel of how it is to work with Kotlin.

Why Spring Loves Kotlin

I’m really excited to learn why Spring Loves Kotlin, straight from @sdeleuze! #kotlinconf17 pic.twitter.com/EGQC7Vvax8

— Todd Ginsberg (@ToddGinsberg) 3 novembre 2017

A talk by Sebastien Deleuze, a Spring contributor working at Pivotal. This is a talk about using Kotlin for Spring applications. It starts with the reasons to choose Kotlin and then shows the various tools and features of the pair Kotlin and Spring. In this talk you will learn to transform a Spring Boot 1.0 Java + Javascript project into a Spring Boot 2.0 pure Kotlin project.

Working On Your Code

Talks about Kotlin tools, checking and generating your code programmatically.

Generating Kotlin Code

Generating Kotlin Code by @Strongolopolis @JakeWharton #kotlinconf17 #sketchnotes pic.twitter.com/uEJIYMLrgv

— Chiu-Ki Chan (@chiuki) 3 novembre 2017

A talk by Alec Strong and Jake Wharton, developers respectively at Square and Google. This is a talk about code generation to generate an API. It is a pragmatic talk: almost every slide features code. It is mostly focused on the JVM, but it also address a bit the multi-platform issues.

What’s New & Cool in Kotlin Tools

A talk by Dmitry Jemerov, the leader of the tools team for Kotlin at JetBrains. It is a demo of the new features you will get on the release 1.2. It is also useful to get to know a few practical aspects of building the cross-platform Kotlin platform.

Kotlin Static Analysis with Android Lint

Kotlin static analysis with Android Lint by @tornorbye #kotlinconf17 #sketchnotes pic.twitter.com/Qmhe8Tz9Bt

— Chiu-Ki Chan (@chiuki) 3 novembre 2017

A talk by Tor Norbye, tech lead for Android Studio. It starts with a bit of the philosophy of Android Lint (i.e., focus on Android issues, leave the generic ones to the IDE) before going to the meat of the tool. The tool can now also be used outside of Android, so it can be useful for everybody who uses Kotlin.

Lessons Learned Building a Build Tool

A talk by Cedric Beust, the creator of Android Gmail and TestNG. The talk is about Kobalt, a building system written in Kotlin with a simple DSL, inspired by Maven and Gradle. The talk explain the reason why it was created and how it was made.

Building Kotlin Applications at Scale with Gradle

A talk by Hans Dockter, creator of Gradle and founder of the company behind it. This is a talk about how to use Gradle and the Gradle plugin for Kotlin to build large applications. It is divided in two parts: a description of features and issues and a second practical part where you see how things works on an example.

Testing Kotlin at Scale: Spek

A talk by Artem Zinnatullin, on how to test at scale. This talk is about the why and how you can migrate thousands of tests from JUnit to Spek. Spek is a testing framework inspired by RSpec, designed to better organize your tests. It is an interesting talk for everybody that want to do tests with Kotlin and understanding how they can use Spek to organize large scale testing.

Experiences

Talks that focus on an experience the speaker had: their work at a specific company or for a certain project. Usually they have less code, and concentrate more on soft-skills or strategic choices.

Cords & Gumballs

A talk by Mike Hearn on the benefits and challenges of using Kotlin for an enterprise software and a small side-project. The enterprise software is Corda, the distributed ledger platform designed to record, manage and automate legal agreements between business partners. The project is written in Kotlin, but it has to support perfectly Java developers in the finance world, so it is an interesting talk for people that work in the enterprise world.

My Transition from Swift to Kotlin

A talk by Hector Matos, a senior iOS developer. The talk is both a story of the transition and a comparison between Swift and Kotlin. It is a good talk to show to your manager, if you need to persuade him or her to let you develop with Kotlin.

My Life as a Tech Transfer Monad

My Life as a Tech Transfer Monad by @headinthebox #kotlinconf17 #sketchnotes pic.twitter.com/4cvHRxo66Q

— Chiu-Ki Chan @ SF Bay Area (@chiuki) 3 novembre 2017

A talk by Erik Meijer, a computer scientist who works at Facebook and now is “he is on a quest to make uncertainty a first-class citizen in mainstream programming languages”. It is an interesting talk and indeed one of the most popular, but it is hard to describe it.

It is a talk with a lot of computer science and essentially is about trying to understand (i.e., abstracting) programming: the successes and failures that the author has encountered in this quest.

It is a great talk if you want to level up your understanding of programming.

Building and Deploying Netflix

A talk by Rob Fletcher who works at Netflix (Danny Thomas is mentioned in the abstract, but he does not appear). The talk is essentially half about the Netflix way of doing things and half about the reasons why the author of this talk chose Kotlin instead of other languages to build some tools used at Netflix.

Kickstarting Kotlin Culture: The Journey from Java to Kotlin

A talk by Neil Power, who works at Hootsuite. This talk is about the experience of the adoption of Kotlin at Hootsuite. It is both a story of the journey from Java to Kotlin and the lesson learned to build a strategy to facilitate the migration from Java to Kotlin. It is an interesting talk for the people that are considering the implementation of such strategies in their workplace.

Sharing [Kotlin code across platforms] is Caring!

A talk by Eugenio Marletti, on how Kotlin can help with issues related to multi-platform apps. This is a talk on the experience of writing a multi-platform app, the problems related to developing it and how Kotlin can be used to write the business logic once. The rest will need to be specific for each platform.

Cats and Dogs

A talk by Michael May and Roman Piel, iOS and Android developers. A fun and practical talk on how Android and iOS teams can work together in a team: design the app together, maintain the API, etc. This is a talk about code and tecnical issues (e.g., how to design the API together), but also about the organizational aspects.

Kotlin World

Everything Kotlin: from new things you can do, to better ways to do the same things you already do. Talks about how to contribute to Kotlin or help your team work better, etc. There is something for everybody, whether you are searching for new ideas or to learn something.

Building Languages Using Kotlin

You may read about the experience and the best speech there: Building Languages Using Kotlin by Federico Tomassetti on another of our articles.

The Road to Kotlintown

Learning how to beautifully execute a heist in The Road to Kotlintown by @queencodemonkey and @RunChristinaRun #kotlinconf17 pic.twitter.com/bg8vn3fO0k

— Brenda Cook (@kenodoggy) 2 novembre 2017

A talk by Huyen Tue Dao and Christina Lee, developers at Pinterest and Atlassian. This is a code-base talk on how practically convert existing code to Kotlin and learn the Kotlin way of doing things. It is a pragmatic talk for new Kotlin users or people interested in joining the good side of the JVM.

How to Kontribute

A talk by Yoshinori Isogai on how to contribute to Kotlin development as an external contributor. This is a pragmatic talk on how to partecipate to Kotlin development, particularly on a Kotlin plugin. This is a very pragmatic talk dealing with things like setting up development environment (you will need the help), unit tests, etc. It is very useful if you want to contribute to the language.

Architectures Using Functional Programming Concepts

A talk by Jorge Castillo on functional programming for Kotlin. This a code-based talk on why you will want to use functional programming and how to use functionally concepts on Kotlin using Kategeory.io, a library that brings functional types to Kotlin. The examples are mostly based on Android issues, but they can be applicable to many situations.

RX Java with Kotlin in Baby Steps

A talk by Annyce Davis, a developer, author and speaker. This is an introductory talk about RxJava and reactive programming. It is a well designed lesson on the basics: operators, observers and observable.

Kotlin for the Pragmatic Functionalist

A talk by Paco Estévez García, a developer at Facebook. This is a talk on how you can pragmatically use functional programming with Kotlin: the language is ready today, this talk will show how to use it. He also show the issues still present. It mentions Kategory, a library which is the focus of another talk.

Kotlin EE: Boost your Productivity

A talk by Marcus Fihlon, a developer, lecturer and author. There is not an actual Kotlin EE framework, but this is a talk about using Kotlin with Java EE to create services of any size (nanoservices, microservices, etc.). This is a talk about theory and practice (i.e., code) to solve problems of enterprise developers.

Kotlinbots: Building Your Own Personal Robot Army

A talk by Adrián Catalan on how to use Android Things and how to develop software for Internet of Things devices (and robots). This is a pragmatic talk on how to develop with Android Things on Raspberry Pi to do things like switching on LEDs. So, it slightly oversells the robot army things, but it is cool nonetheless. The talk also shows the hardware part of the work: how to wire the actual wires to the board and the theory you need to work with electric circuits. It is quite an interesting talk for people willing to getting started on IoT development.

Inter-Reactive Kotlin Applications

A talk by Julien Viet, the Vert.x project lead at RedHat. This is a talk about using Kotlin to write inter-reactive Vert.x applications: perform asynchronous operations and receive events in a synchronous way. Eclipse Vert.x is a set of libraries to write application on the JVM (not necessarily with the IDE Eclipse). The talk contains both the theory and the practical aspect of writing reactive applications using Kotlin features (i.e., coroutines).

Two Stones, One Bird: Implementation Tradeoffs

A talk by Christina Lee, an Android developer at Pinterest. The title of the talk is a play on the common saying. The talk is about how to choose between two different viable options to achieve on objective. It discusses the tradeoffs of a few common programming problems with multiple solutions such as with/apply and let/also.

Kotlin for Data Science

Should we consider Kotlin for data science? Let’s see what @thomasnield9727 has to say about that! #kotlinconf17 pic.twitter.com/VqhhB58R6b

— Todd Ginsberg (@ToddGinsberg) 2 novembre 2017

A talk by Thomas Nield, author and developer. The talk is starts with an introduction to data science and its issues, then continues on why and how to best use Kotlin for data science. This talk is great if you work in an organization that need one platform to get the data scientists and developers on the same page. The author of this talk suggests to also look at kscript – Scripting Enhancements for Kotlin.

kscript – Scripting Enhancements for Kotlin

If you haven’t seen @holgerbrandl‘s talk at #kotlinconf17, definitely watch it. #kscript has some useful and interesting innovations critical for bringing #Kotlin to #DataScience https://t.co/BlVRJId83Y

— Thomas Nield (@thomasnield9727) 20 novembre 2017

A talk by Holger Brandl, data scientist at the Max Planck Institute. This is mainly a talk about kscript: a easy-to-use, very flexible, and almost zero-overhead solution to write self-contained mini-applications with Kotlin. Obviously it also has an introduction to why Kotlin was chosen and the tool developed for data science work. It is a great talk if you are interested in the practical aspects of doing data science with Kotlin, but also for general scripting.

Summary

KotlinConf was great and there was something for everybody: from real-word technical knowledge to experience ans help to better manage Kotlin projects and team. There were also interesting and unusual projects (i.e., robot army). The excitement for the future of Kotlin was palpable and we hope we are going to feel the same next year. What do you want to see next year?

The post All the Talks at KotlinConf, Organized and Commented appeared first on SuperKotlin.

Continue ReadingAll the Talks at KotlinConf, Organized and Commented

All the Talks at KotlinConf, Organized and Commented

The KotlinConf 2017 was on 2-3 november and it was a great conference. In this article we are going to present a short summary of the talks with links to their videos.

List of Talks

Understanding Kotlin

The talks you want to watch if you want to understand the language better: from introductory talks to deep dives.

Understand Every Line of Your Codebase

A talk by Boris Farber and Victoria Gonda, who also wrote the article: Java as your Kotlin Study Buddy. It is a talk centered on showing the Java equivalent of the Kotlin code you write and the bytecode produced by the Kotlin compiler. It is interesting especially for new Kotlin developers and people still using Java that want to see a bit of the Kotlin magic.

Introduction to Coroutines

Concept of coroutine looks amazing. I will need to play with it a little bit to get it to work though. @KotlinConf Introduction to Coroutines by Roman Elizarov https://t.co/Q7YoF6N2jF via @YouTube #kotlinconf17

— Anurag Chitnis (@AnuragChitnis) 17 novembre 2017

A talk by Roman Elizarov, who works on the Kotlin language at JetBrains. It is about one of the most exciting features of Kotlin: coroutines. In this talk you can learn why you need coroutines and how to use them with live examples.

Deep Dives into Coroutines on JVM

A talk by Roman Elizarov, who works on the Kotlin language at JetBrains. This is the deep and technical companion of the other talk by Elizarov on coroutines. It is about the technical aspects of the coroutines implementation on top of the JVM. It is a great talk for people that want to understand how coroutines work.

Idiomatic Interop

A talk by Kevin Most on Java-Kotlin interop. Kotlin and Java interop is great, but it is not perfect especially when invoking Kotlin code from Java code. In this talk you are going to know how to make the two languages work better together: from the strategies to the gotchas. This talk is perfect for Kotlin developers that have to take in account their Java users.

Kotlin Puzzlers

Lots of fun with #kotlinpuzzlers with @antonkeks at #kotlinconf17, some great laughs at the compilers expense! pic.twitter.com/Ldi6lQObes

— Neil Power (@NeilPower) 3 novembre 2017

A talk by Anton Keks on Kotlin puzzlers. This talk presents some interesting nuances of Kotlin through the use of small programs. It is a fun talk to watch if you want to test your understanding of Kotlin behavior. For instance, do you know what happens when you write

return throw return "Hello"

? Watch this talk to find out.

The Cost of Kotlin Language Features

A talk by Duncan McGregor on the costs in terms of code size and execution time of Kotlin. The talk is focused on the bytecode produced by the Kotlin compiler on the JVM. The author actually said that you shouldn’t care about such costs, but if you do the talk will shows you the small costs in terms of performance that some features of Kotlin have.

You Can, but Should You?

A talk by Mike Gouline, a software engineer who works in the health industry. This is a talk on how to be smarter in using Kotlin. It discusses and explains how to choose among the different features that Kotlin offers in a way that makes sense for your software. It does not just present the options (i.e., for vs foreach), but it gives you guidelines on how to make the choice.

It is a very interesting talk not only for Kotlin users, but for everybody that needs to learn how to better organized his code.

Deep Dive into Kotlin/Native

A talk by Andrey Breslav, the leader of Kotlin development at JetBrains. This is a talk about the inner workings of a prerelease feature of Kotlin/Native: now (soon) you could use it develop for iOS. The talk is linked to the keynote of the conference since it shows the internals of the app demoed there.

This is the best talk to watch if you are interested in understanding how Kotlin/Native and iOS work together.

Kotlin Types: Exposed

Kotlin Types: Exposed by @sveta_isakova #kotlinconf17 #sketchnotes pic.twitter.com/Hi7khgTdb3

— Chiu-Ki Chan (@chiuki) 4 novembre 2017

A talk by Svetlana Isakova, developer advocate at JetBrains and co-author of Kotlin in Action. This is a talk about Kotlin types interact with Java: what happens under the hood, what you should be aware of and explanations of some design choices made by JetBrains.

Android & Web

Talks specifically about Android, Web and KotlinJS.

Frontend Kotlin from the Trenches

A talk by Gaetan Zoritchak, on KotlinJS used for the frontend. This talk gives feedback on the journey and the technical challenges faced on developing a data visualization library: Data2viz.



A View State Machine for Network Calls on Android

A View State Machine for Network Calls on Android by @mandybess #kotlinconf17 #sketchnotes pic.twitter.com/AVwohUOGhr

— Chiu-Ki Chan (@chiuki) 2 novembre 2017

A talk by Amanda Hill on how to build a View State Machine for network calls on Android. If you are wondering why you should do that she will show you right away by building an app. Basically, it is a way to handle networking request in a way that is resistant to UI changes.

Real World Kotlin-Powered Android

A talk by James Williams, responsible for Android Curriculum at Udacity. This is about converting an Android app written in Java to Kotlin, bit by bit. It is practical and interesting way to understand some of issues involved.

Isomorphic Kotlin

A talk by Troy Miles on the server side of an Android isomorphic mobile system. The talk starts with an introduction on the issue, then continues on showing how to build a microservice with Ratpack, wire it, and deploy it on Heroku.

Going Serverless with Kotlin

A talk by Marcos Placona, who works as a developer evangelist at Twilio. This is a talk on the tools and processes to build mobile and IoT stuff with Kotlin and deploy it on AWS Lambda to go serverless with Kotlin. There are a few minutes of introduction to the advantages of going serverless and then he shows code.

How to Build a React App in Kotlin

A talk by Dave Ford on why it makes sense to use Kotlin on the web and how to build a React App with your favorite language. The talk is focused on KotlinJS and the web world. The main point of the talk is that using Kotlin is even better than using a templating system to write web interfaces (i.e., HTML). Essentially templating system are simple languages, but Kotlin is a better language that has typesafe-builders, the (internal) HTML DSL (kotlinx.html) and a few React wrappers.

Given that most Kotlin developers come from Java, this is a very interesting idea that you probably never thought about.

Spring

A few talks dedicated to the Spring Framework and its usage with Kotlin.

Bootiful Kotlin

A talk by Josh Long, author of 5 books and “the guy with most bugs per line of code on the Spring team”.

It is a demo talk about using Spring Boot with Kotlin.

Asynchronous Programming with Kotlin Coroutines in Spring

A talk by Konrad Kamiński on using coroutines for asynchronous programming in Spring. It is a code-based talk on how to use coroutines in Spring. It is quite specific, so it is great if you are interested in just that, but it also useful for current Java and Spring users to get the feel of how it is to work with Kotlin.

Why Spring Loves Kotlin

I’m really excited to learn why Spring Loves Kotlin, straight from @sdeleuze! #kotlinconf17 pic.twitter.com/EGQC7Vvax8

— Todd Ginsberg (@ToddGinsberg) 3 novembre 2017

A talk by Sebastien Deleuze, a Spring contributor working at Pivotal. This is a talk about using Kotlin for Spring applications. It starts with the reasons to choose Kotlin and then shows the various tools and features of the pair Kotlin and Spring. In this talk you will learn to transform a Spring Boot 1.0 Java + Javascript project into a Spring Boot 2.0 pure Kotlin project.

Working On Your Code

Talks about Kotlin tools, checking and generating your code programmatically.

Generating Kotlin Code

Generating Kotlin Code by @Strongolopolis @JakeWharton #kotlinconf17 #sketchnotes pic.twitter.com/uEJIYMLrgv

— Chiu-Ki Chan (@chiuki) 3 novembre 2017

A talk by Alec Strong and Jake Wharton, developers respectively at Square and Google. This is a talk about code generation to generate an API. It is a pragmatic talk: almost every slide features code. It is mostly focused on the JVM, but it also address a bit the multi-platform issues.

What’s New & Cool in Kotlin Tools

A talk by Dmitry Jemerov, the leader of the tools team for Kotlin at JetBrains. It is a demo of the new features you will get on the release 1.2. It is also useful to get to know a few practical aspects of building the cross-platform Kotlin platform.

Kotlin Static Analysis with Android Lint

Kotlin static analysis with Android Lint by @tornorbye #kotlinconf17 #sketchnotes pic.twitter.com/Qmhe8Tz9Bt

— Chiu-Ki Chan (@chiuki) 3 novembre 2017

A talk by Tor Norbye, tech lead for Android Studio. It starts with a bit of the philosophy of Android Lint (i.e., focus on Android issues, leave the generic ones to the IDE) before going to the meat of the tool. The tool can now also be used outside of Android, so it can be useful for everybody who uses Kotlin.

Lessons Learned Building a Build Tool

A talk by Cedric Beust, the creator of Android Gmail and TestNG. The talk is about Kobalt, a building system written in Kotlin with a simple DSL, inspired by Maven and Gradle. The talk explain the reason why it was created and how it was made.

Building Kotlin Applications at Scale with Gradle

A talk by Hans Dockter, creator of Gradle and founder of the company behind it. This is a talk about how to use Gradle and the Gradle plugin for Kotlin to build large applications. It is divided in two parts: a description of features and issues and a second practical part where you see how things works on an example.

Testing Kotlin at Scale: Spek

A talk by Artem Zinnatullin, on how to test at scale. This talk is about the why and how you can migrate thousands of tests from JUnit to Spek. Spek is a testing framework inspired by RSpec, designed to better organize your tests. It is an interesting talk for everybody that want to do tests with Kotlin and understanding how they can use Spek to organize large scale testing.

Experiences

Talks that focus on an experience the speaker had: their work at a specific company or for a certain project. Usually they have less code, and concentrate more on soft-skills or strategic choices.

Cords & Gumballs

A talk by Mike Hearn on the benefits and challenges of using Kotlin for an enterprise software and a small side-project. The enterprise software is Corda, the distributed ledger platform designed to record, manage and automate legal agreements between business partners. The project is written in Kotlin, but it has to support perfectly Java developers in the finance world, so it is an interesting talk for people that work in the enterprise world.

My Transition from Swift to Kotlin

A talk by Hector Matos, a senior iOS developer. The talk is both a story of the transition and a comparison between Swift and Kotlin. It is a good talk to show to your manager, if you need to persuade him or her to let you develop with Kotlin.

My Life as a Tech Transfer Monad

My Life as a Tech Transfer Monad by @headinthebox #kotlinconf17 #sketchnotes pic.twitter.com/4cvHRxo66Q

— Chiu-Ki Chan @ SF Bay Area (@chiuki) 3 novembre 2017

A talk by Erik Meijer, a computer scientist who works at Facebook and now is “he is on a quest to make uncertainty a first-class citizen in mainstream programming languages”. It is an interesting talk and indeed one of the most popular, but it is hard to describe it.

It is a talk with a lot of computer science and essentially is about trying to understand (i.e., abstracting) programming: the successes and failures that the author has encountered in this quest.

It is a great talk if you want to level up your understanding of programming.

Building and Deploying Netflix

A talk by Rob Fletcher who works at Netflix (Danny Thomas is mentioned in the abstract, but he does not appear). The talk is essentially half about the Netflix way of doing things and half about the reasons why the author of this talk chose Kotlin instead of other languages to build some tools used at Netflix.

Kickstarting Kotlin Culture: The Journey from Java to Kotlin

A talk by Neil Power, who works at Hootsuite. This talk is about the experience of the adoption of Kotlin at Hootsuite. It is both a story of the journey from Java to Kotlin and the lesson learned to build a strategy to facilitate the migration from Java to Kotlin. It is an interesting talk for the people that are considering the implementation of such strategies in their workplace.

Sharing [Kotlin code across platforms] is Caring!

A talk by Eugenio Marletti, on how Kotlin can help with issues related to multi-platform apps. This is a talk on the experience of writing a multi-platform app, the problems related to developing it and how Kotlin can be used to write the business logic once. The rest will need to be specific for each platform.

Cats and Dogs

A talk by Michael May and Roman Piel, iOS and Android developers. A fun and practical talk on how Android and iOS teams can work together in a team: design the app together, maintain the API, etc. This is a talk about code and tecnical issues (e.g., how to design the API together), but also about the organizational aspects.

Kotlin World

Everything Kotlin: from new things you can do, to better ways to do the same things you already do. Talks about how to contribute to Kotlin or help your team work better, etc. There is something for everybody, whether you are searching for new ideas or to learn something.

Building Languages Using Kotlin

You may read about the experience and the best speech there: Building Languages Using Kotlin by Federico Tomassetti on another of our articles.

The Road to Kotlintown

Learning how to beautifully execute a heist in The Road to Kotlintown by @queencodemonkey and @RunChristinaRun #kotlinconf17 pic.twitter.com/bg8vn3fO0k

— Brenda Cook (@kenodoggy) 2 novembre 2017

A talk by Huyen Tue Dao and Christina Lee, developers at Pinterest and Atlassian. This is a code-base talk on how practically convert existing code to Kotlin and learn the Kotlin way of doing things. It is a pragmatic talk for new Kotlin users or people interested in joining the good side of the JVM.

How to Kontribute

A talk by Yoshinori Isogai on how to contribute to Kotlin development as an external contributor. This is a pragmatic talk on how to partecipate to Kotlin development, particularly on a Kotlin plugin. This is a very pragmatic talk dealing with things like setting up development environment (you will need the help), unit tests, etc. It is very useful if you want to contribute to the language.

Architectures Using Functional Programming Concepts

A talk by Jorge Castillo on functional programming for Kotlin. This a code-based talk on why you will want to use functional programming and how to use functionally concepts on Kotlin using Kategeory.io, a library that brings functional types to Kotlin. The examples are mostly based on Android issues, but they can be applicable to many situations.

RX Java with Kotlin in Baby Steps

A talk by Annyce Davis, a developer, author and speaker. This is an introductory talk about RxJava and reactive programming. It is a well designed lesson on the basics: operators, observers and observable.

Kotlin for the Pragmatic Functionalist

A talk by Paco Estévez García, a developer at Facebook. This is a talk on how you can pragmatically use functional programming with Kotlin: the language is ready today, this talk will show how to use it. He also show the issues still present. It mentions Kategory, a library which is the focus of another talk.

Kotlin EE: Boost your Productivity

A talk by Marcus Fihlon, a developer, lecturer and author. There is not an actual Kotlin EE framework, but this is a talk about using Kotlin with Java EE to create services of any size (nanoservices, microservices, etc.). This is a talk about theory and practice (i.e., code) to solve problems of enterprise developers.

Kotlinbots: Building Your Own Personal Robot Army

A talk by Adrián Catalan on how to use Android Things and how to develop software for Internet of Things devices (and robots). This is a pragmatic talk on how to develop with Android Things on Raspberry Pi to do things like switching on LEDs. So, it slightly oversells the robot army things, but it is cool nonetheless. The talk also shows the hardware part of the work: how to wire the actual wires to the board and the theory you need to work with electric circuits. It is quite an interesting talk for people willing to getting started on IoT development.

Inter-Reactive Kotlin Applications

A talk by Julien Viet, the Vert.x project lead at RedHat. This is a talk about using Kotlin to write inter-reactive Vert.x applications: perform asynchronous operations and receive events in a synchronous way. Eclipse Vert.x is a set of libraries to write application on the JVM (not necessarily with the IDE Eclipse). The talk contains both the theory and the practical aspect of writing reactive applications using Kotlin features (i.e., coroutines).

Two Stones, One Bird: Implementation Tradeoffs

A talk by Christina Lee, an Android developer at Pinterest. The title of the talk is a play on the common saying. The talk is about how to choose between two different viable options to achieve on objective. It discusses the tradeoffs of a few common programming problems with multiple solutions such as with/apply and let/also.

Kotlin for Data Science

Should we consider Kotlin for data science? Let’s see what @thomasnield9727 has to say about that! #kotlinconf17 pic.twitter.com/VqhhB58R6b

— Todd Ginsberg (@ToddGinsberg) 2 novembre 2017

A talk by Thomas Nield, author and developer. The talk is starts with an introduction to data science and its issues, then continues on why and how to best use Kotlin for data science. This talk is great if you work in an organization that need one platform to get the data scientists and developers on the same page. The author of this talk suggests to also look at kscript – Scripting Enhancements for Kotlin.

kscript – Scripting Enhancements for Kotlin

If you haven’t seen @holgerbrandl‘s talk at #kotlinconf17, definitely watch it. #kscript has some useful and interesting innovations critical for bringing #Kotlin to #DataScience https://t.co/BlVRJId83Y

— Thomas Nield (@thomasnield9727) 20 novembre 2017

A talk by Holger Brandl, data scientist at the Max Planck Institute. This is mainly a talk about kscript: a easy-to-use, very flexible, and almost zero-overhead solution to write self-contained mini-applications with Kotlin. Obviously it also has an introduction to why Kotlin was chosen and the tool developed for data science work. It is a great talk if you are interested in the practical aspects of doing data science with Kotlin, but also for general scripting.

Summary

KotlinConf was great and there was something for everybody: from real-word technical knowledge to experience ans help to better manage Kotlin projects and team. There were also interesting and unusual projects (i.e., robot army). The excitement for the future of Kotlin was palpable and we hope we are going to feel the same next year. What do you want to see next year?

The post All the Talks at KotlinConf, Organized and Commented appeared first on SuperKotlin.

Continue ReadingAll the Talks at KotlinConf, Organized and Commented

All the Talks at KotlinConf, Organized and Commented

The KotlinConf 2017 was on 2-3 november and it was a great conference. In this article we are going to present a short summary of the talks with links to their videos.

List of Talks

Understanding Kotlin

The talks you want to watch if you want to understand the language better: from introductory talks to deep dives.

Understand Every Line of Your Codebase

A talk by Boris Farber and Victoria Gonda, who also wrote the article: Java as your Kotlin Study Buddy. It is a talk centered on showing the Java equivalent of the Kotlin code you write and the bytecode produced by the Kotlin compiler. It is interesting especially for new Kotlin developers and people still using Java that want to see a bit of the Kotlin magic.

Introduction to Coroutines

Concept of coroutine looks amazing. I will need to play with it a little bit to get it to work though. @KotlinConf Introduction to Coroutines by Roman Elizarov https://t.co/Q7YoF6N2jF via @YouTube #kotlinconf17

— Anurag Chitnis (@AnuragChitnis) 17 novembre 2017

A talk by Roman Elizarov, who works on the Kotlin language at JetBrains. It is about one of the most exciting features of Kotlin: coroutines. In this talk you can learn why you need coroutines and how to use them with live examples.

Deep Dives into Coroutines on JVM

A talk by Roman Elizarov, who works on the Kotlin language at JetBrains. This is the deep and technical companion of the other talk by Elizarov on coroutines. It is about the technical aspects of the coroutines implementation on top of the JVM. It is a great talk for people that want to understand how coroutines work.

Idiomatic Interop

A talk by Kevin Most on Java-Kotlin interop. Kotlin and Java interop is great, but it is not perfect especially when invoking Kotlin code from Java code. In this talk you are going to know how to make the two languages work better together: from the strategies to the gotchas. This talk is perfect for Kotlin developers that have to take in account their Java users.

Kotlin Puzzlers

Lots of fun with #kotlinpuzzlers with @antonkeks at #kotlinconf17, some great laughs at the compilers expense! pic.twitter.com/Ldi6lQObes

— Neil Power (@NeilPower) 3 novembre 2017

A talk by Anton Keks on Kotlin puzzlers. This talk presents some interesting nuances of Kotlin through the use of small programs. It is a fun talk to watch if you want to test your understanding of Kotlin behavior. For instance, do you know what happens when you write

return throw return "Hello"

? Watch this talk to find out.

The Cost of Kotlin Language Features

A talk by Duncan McGregor on the costs in terms of code size and execution time of Kotlin. The talk is focused on the bytecode produced by the Kotlin compiler on the JVM. The author actually said that you shouldn’t care about such costs, but if you do the talk will shows you the small costs in terms of performance that some features of Kotlin have.

You Can, but Should You?

A talk by Mike Gouline, a software engineer who works in the health industry. This is a talk on how to be smarter in using Kotlin. It discusses and explains how to choose among the different features that Kotlin offers in a way that makes sense for your software. It does not just present the options (i.e., for vs foreach), but it gives you guidelines on how to make the choice.

It is a very interesting talk not only for Kotlin users, but for everybody that needs to learn how to better organized his code.

Deep Dive into Kotlin/Native

A talk by Andrey Breslav, the leader of Kotlin development at JetBrains. This is a talk about the inner workings of a prerelease feature of Kotlin/Native: now (soon) you could use it develop for iOS. The talk is linked to the keynote of the conference since it shows the internals of the app demoed there.

This is the best talk to watch if you are interested in understanding how Kotlin/Native and iOS work together.

Kotlin Types: Exposed

Kotlin Types: Exposed by @sveta_isakova #kotlinconf17 #sketchnotes pic.twitter.com/Hi7khgTdb3

— Chiu-Ki Chan (@chiuki) 4 novembre 2017

A talk by Svetlana Isakova, developer advocate at JetBrains and co-author of Kotlin in Action. This is a talk about Kotlin types interact with Java: what happens under the hood, what you should be aware of and explanations of some design choices made by JetBrains.

Android & Web

Talks specifically about Android, Web and KotlinJS.

Frontend Kotlin from the Trenches

A talk by Gaetan Zoritchak, on KotlinJS used for the frontend. This talk gives feedback on the journey and the technical challenges faced on developing a data visualization library: Data2viz.



A View State Machine for Network Calls on Android

A View State Machine for Network Calls on Android by @mandybess #kotlinconf17 #sketchnotes pic.twitter.com/AVwohUOGhr

— Chiu-Ki Chan (@chiuki) 2 novembre 2017

A talk by Amanda Hill on how to build a View State Machine for network calls on Android. If you are wondering why you should do that she will show you right away by building an app. Basically, it is a way to handle networking request in a way that is resistant to UI changes.

Real World Kotlin-Powered Android

A talk by James Williams, responsible for Android Curriculum at Udacity. This is about converting an Android app written in Java to Kotlin, bit by bit. It is practical and interesting way to understand some of issues involved.

Isomorphic Kotlin

A talk by Troy Miles on the server side of an Android isomorphic mobile system. The talk starts with an introduction on the issue, then continues on showing how to build a microservice with Ratpack, wire it, and deploy it on Heroku.

Going Serverless with Kotlin

A talk by Marcos Placona, who works as a developer evangelist at Twilio. This is a talk on the tools and processes to build mobile and IoT stuff with Kotlin and deploy it on AWS Lambda to go serverless with Kotlin. There are a few minutes of introduction to the advantages of going serverless and then he shows code.

How to Build a React App in Kotlin

A talk by Dave Ford on why it makes sense to use Kotlin on the web and how to build a React App with your favorite language. The talk is focused on KotlinJS and the web world. The main point of the talk is that using Kotlin is even better than using a templating system to write web interfaces (i.e., HTML). Essentially templating system are simple languages, but Kotlin is a better language that has typesafe-builders, the (internal) HTML DSL (kotlinx.html) and a few React wrappers.

Given that most Kotlin developers come from Java, this is a very interesting idea that you probably never thought about.

Spring

A few talks dedicated to the Spring Framework and its usage with Kotlin.

Bootiful Kotlin

A talk by Josh Long, author of 5 books and “the guy with most bugs per line of code on the Spring team”.

It is a demo talk about using Spring Boot with Kotlin.

Asynchronous Programming with Kotlin Coroutines in Spring

A talk by Konrad Kamiński on using coroutines for asynchronous programming in Spring. It is a code-based talk on how to use coroutines in Spring. It is quite specific, so it is great if you are interested in just that, but it also useful for current Java and Spring users to get the feel of how it is to work with Kotlin.

Why Spring Loves Kotlin

I’m really excited to learn why Spring Loves Kotlin, straight from @sdeleuze! #kotlinconf17 pic.twitter.com/EGQC7Vvax8

— Todd Ginsberg (@ToddGinsberg) 3 novembre 2017

A talk by Sebastien Deleuze, a Spring contributor working at Pivotal. This is a talk about using Kotlin for Spring applications. It starts with the reasons to choose Kotlin and then shows the various tools and features of the pair Kotlin and Spring. In this talk you will learn to transform a Spring Boot 1.0 Java + Javascript project into a Spring Boot 2.0 pure Kotlin project.

Working On Your Code

Talks about Kotlin tools, checking and generating your code programmatically.

Generating Kotlin Code

Generating Kotlin Code by @Strongolopolis @JakeWharton #kotlinconf17 #sketchnotes pic.twitter.com/uEJIYMLrgv

— Chiu-Ki Chan (@chiuki) 3 novembre 2017

A talk by Alec Strong and Jake Wharton, developers respectively at Square and Google. This is a talk about code generation to generate an API. It is a pragmatic talk: almost every slide features code. It is mostly focused on the JVM, but it also address a bit the multi-platform issues.

What’s New & Cool in Kotlin Tools

A talk by Dmitry Jemerov, the leader of the tools team for Kotlin at JetBrains. It is a demo of the new features you will get on the release 1.2. It is also useful to get to know a few practical aspects of building the cross-platform Kotlin platform.

Kotlin Static Analysis with Android Lint

Kotlin static analysis with Android Lint by @tornorbye #kotlinconf17 #sketchnotes pic.twitter.com/Qmhe8Tz9Bt

— Chiu-Ki Chan (@chiuki) 3 novembre 2017

A talk by Tor Norbye, tech lead for Android Studio. It starts with a bit of the philosophy of Android Lint (i.e., focus on Android issues, leave the generic ones to the IDE) before going to the meat of the tool. The tool can now also be used outside of Android, so it can be useful for everybody who uses Kotlin.

Lessons Learned Building a Build Tool

A talk by Cedric Beust, the creator of Android Gmail and TestNG. The talk is about Kobalt, a building system written in Kotlin with a simple DSL, inspired by Maven and Gradle. The talk explain the reason why it was created and how it was made.

Building Kotlin Applications at Scale with Gradle

A talk by Hans Dockter, creator of Gradle and founder of the company behind it. This is a talk about how to use Gradle and the Gradle plugin for Kotlin to build large applications. It is divided in two parts: a description of features and issues and a second practical part where you see how things works on an example.

Testing Kotlin at Scale: Spek

A talk by Artem Zinnatullin, on how to test at scale. This talk is about the why and how you can migrate thousands of tests from JUnit to Spek. Spek is a testing framework inspired by RSpec, designed to better organize your tests. It is an interesting talk for everybody that want to do tests with Kotlin and understanding how they can use Spek to organize large scale testing.

Experiences

Talks that focus on an experience the speaker had: their work at a specific company or for a certain project. Usually they have less code, and concentrate more on soft-skills or strategic choices.

Cords & Gumballs

A talk by Mike Hearn on the benefits and challenges of using Kotlin for an enterprise software and a small side-project. The enterprise software is Corda, the distributed ledger platform designed to record, manage and automate legal agreements between business partners. The project is written in Kotlin, but it has to support perfectly Java developers in the finance world, so it is an interesting talk for people that work in the enterprise world.

My Transition from Swift to Kotlin

A talk by Hector Matos, a senior iOS developer. The talk is both a story of the transition and a comparison between Swift and Kotlin. It is a good talk to show to your manager, if you need to persuade him or her to let you develop with Kotlin.

My Life as a Tech Transfer Monad

My Life as a Tech Transfer Monad by @headinthebox #kotlinconf17 #sketchnotes pic.twitter.com/4cvHRxo66Q

— Chiu-Ki Chan @ SF Bay Area (@chiuki) 3 novembre 2017

A talk by Erik Meijer, a computer scientist who works at Facebook and now is “he is on a quest to make uncertainty a first-class citizen in mainstream programming languages”. It is an interesting talk and indeed one of the most popular, but it is hard to describe it.

It is a talk with a lot of computer science and essentially is about trying to understand (i.e., abstracting) programming: the successes and failures that the author has encountered in this quest.

It is a great talk if you want to level up your understanding of programming.

Building and Deploying Netflix

A talk by Rob Fletcher who works at Netflix (Danny Thomas is mentioned in the abstract, but he does not appear). The talk is essentially half about the Netflix way of doing things and half about the reasons why the author of this talk chose Kotlin instead of other languages to build some tools used at Netflix.

Kickstarting Kotlin Culture: The Journey from Java to Kotlin

A talk by Neil Power, who works at Hootsuite. This talk is about the experience of the adoption of Kotlin at Hootsuite. It is both a story of the journey from Java to Kotlin and the lesson learned to build a strategy to facilitate the migration from Java to Kotlin. It is an interesting talk for the people that are considering the implementation of such strategies in their workplace.

Sharing [Kotlin code across platforms] is Caring!

A talk by Eugenio Marletti, on how Kotlin can help with issues related to multi-platform apps. This is a talk on the experience of writing a multi-platform app, the problems related to developing it and how Kotlin can be used to write the business logic once. The rest will need to be specific for each platform.

Cats and Dogs

A talk by Michael May and Roman Piel, iOS and Android developers. A fun and practical talk on how Android and iOS teams can work together in a team: design the app together, maintain the API, etc. This is a talk about code and tecnical issues (e.g., how to design the API together), but also about the organizational aspects.

Kotlin World

Everything Kotlin: from new things you can do, to better ways to do the same things you already do. Talks about how to contribute to Kotlin or help your team work better, etc. There is something for everybody, whether you are searching for new ideas or to learn something.

Building Languages Using Kotlin

You may read about the experience and the best speech there: Building Languages Using Kotlin by Federico Tomassetti on another of our articles.

The Road to Kotlintown

Learning how to beautifully execute a heist in The Road to Kotlintown by @queencodemonkey and @RunChristinaRun #kotlinconf17 pic.twitter.com/bg8vn3fO0k

— Brenda Cook (@kenodoggy) 2 novembre 2017

A talk by Huyen Tue Dao and Christina Lee, developers at Pinterest and Atlassian. This is a code-base talk on how practically convert existing code to Kotlin and learn the Kotlin way of doing things. It is a pragmatic talk for new Kotlin users or people interested in joining the good side of the JVM.

How to Kontribute

A talk by Yoshinori Isogai on how to contribute to Kotlin development as an external contributor. This is a pragmatic talk on how to partecipate to Kotlin development, particularly on a Kotlin plugin. This is a very pragmatic talk dealing with things like setting up development environment (you will need the help), unit tests, etc. It is very useful if you want to contribute to the language.

Architectures Using Functional Programming Concepts

A talk by Jorge Castillo on functional programming for Kotlin. This a code-based talk on why you will want to use functional programming and how to use functionally concepts on Kotlin using Kategeory.io, a library that brings functional types to Kotlin. The examples are mostly based on Android issues, but they can be applicable to many situations.

RX Java with Kotlin in Baby Steps

A talk by Annyce Davis, a developer, author and speaker. This is an introductory talk about RxJava and reactive programming. It is a well designed lesson on the basics: operators, observers and observable.

Kotlin for the Pragmatic Functionalist

A talk by Paco Estévez García, a developer at Facebook. This is a talk on how you can pragmatically use functional programming with Kotlin: the language is ready today, this talk will show how to use it. He also show the issues still present. It mentions Kategory, a library which is the focus of another talk.

Kotlin EE: Boost your Productivity

A talk by Marcus Fihlon, a developer, lecturer and author. There is not an actual Kotlin EE framework, but this is a talk about using Kotlin with Java EE to create services of any size (nanoservices, microservices, etc.). This is a talk about theory and practice (i.e., code) to solve problems of enterprise developers.

Kotlinbots: Building Your Own Personal Robot Army

A talk by Adrián Catalan on how to use Android Things and how to develop software for Internet of Things devices (and robots). This is a pragmatic talk on how to develop with Android Things on Raspberry Pi to do things like switching on LEDs. So, it slightly oversells the robot army things, but it is cool nonetheless. The talk also shows the hardware part of the work: how to wire the actual wires to the board and the theory you need to work with electric circuits. It is quite an interesting talk for people willing to getting started on IoT development.

Inter-Reactive Kotlin Applications

A talk by Julien Viet, the Vert.x project lead at RedHat. This is a talk about using Kotlin to write inter-reactive Vert.x applications: perform asynchronous operations and receive events in a synchronous way. Eclipse Vert.x is a set of libraries to write application on the JVM (not necessarily with the IDE Eclipse). The talk contains both the theory and the practical aspect of writing reactive applications using Kotlin features (i.e., coroutines).

Two Stones, One Bird: Implementation Tradeoffs

A talk by Christina Lee, an Android developer at Pinterest. The title of the talk is a play on the common saying. The talk is about how to choose between two different viable options to achieve on objective. It discusses the tradeoffs of a few common programming problems with multiple solutions such as with/apply and let/also.

Kotlin for Data Science

Should we consider Kotlin for data science? Let’s see what @thomasnield9727 has to say about that! #kotlinconf17 pic.twitter.com/VqhhB58R6b

— Todd Ginsberg (@ToddGinsberg) 2 novembre 2017

A talk by Thomas Nield, author and developer. The talk is starts with an introduction to data science and its issues, then continues on why and how to best use Kotlin for data science. This talk is great if you work in an organization that need one platform to get the data scientists and developers on the same page. The author of this talk suggests to also look at kscript – Scripting Enhancements for Kotlin.

kscript – Scripting Enhancements for Kotlin

If you haven’t seen @holgerbrandl‘s talk at #kotlinconf17, definitely watch it. #kscript has some useful and interesting innovations critical for bringing #Kotlin to #DataScience https://t.co/BlVRJId83Y

— Thomas Nield (@thomasnield9727) 20 novembre 2017

A talk by Holger Brandl, data scientist at the Max Planck Institute. This is mainly a talk about kscript: a easy-to-use, very flexible, and almost zero-overhead solution to write self-contained mini-applications with Kotlin. Obviously it also has an introduction to why Kotlin was chosen and the tool developed for data science work. It is a great talk if you are interested in the practical aspects of doing data science with Kotlin, but also for general scripting.

Summary

KotlinConf was great and there was something for everybody: from real-word technical knowledge to experience ans help to better manage Kotlin projects and team. There were also interesting and unusual projects (i.e., robot army). The excitement for the future of Kotlin was palpable and we hope we are going to feel the same next year. What do you want to see next year?

The post All the Talks at KotlinConf, Organized and Commented appeared first on SuperKotlin.

Continue ReadingAll the Talks at KotlinConf, Organized and Commented

All the Talks at KotlinConf, Organized and Commented

The KotlinConf 2017 was on 2-3 november and it was a great conference. In this article we are going to present a short summary of the talks with links to their videos.

List of Talks

Understanding Kotlin

The talks you want to watch if you want to understand the language better: from introductory talks to deep dives.

Understand Every Line of Your Codebase

A talk by Boris Farber and Victoria Gonda, who also wrote the article: Java as your Kotlin Study Buddy. It is a talk centered on showing the Java equivalent of the Kotlin code you write and the bytecode produced by the Kotlin compiler. It is interesting especially for new Kotlin developers and people still using Java that want to see a bit of the Kotlin magic.

Introduction to Coroutines

Concept of coroutine looks amazing. I will need to play with it a little bit to get it to work though. @KotlinConf Introduction to Coroutines by Roman Elizarov https://t.co/Q7YoF6N2jF via @YouTube #kotlinconf17

— Anurag Chitnis (@AnuragChitnis) 17 novembre 2017

A talk by Roman Elizarov, who works on the Kotlin language at JetBrains. It is about one of the most exciting features of Kotlin: coroutines. In this talk you can learn why you need coroutines and how to use them with live examples.

Deep Dives into Coroutines on JVM

A talk by Roman Elizarov, who works on the Kotlin language at JetBrains. This is the deep and technical companion of the other talk by Elizarov on coroutines. It is about the technical aspects of the coroutines implementation on top of the JVM. It is a great talk for people that want to understand how coroutines work.

Idiomatic Interop

A talk by Kevin Most on Java-Kotlin interop. Kotlin and Java interop is great, but it is not perfect especially when invoking Kotlin code from Java code. In this talk you are going to know how to make the two languages work better together: from the strategies to the gotchas. This talk is perfect for Kotlin developers that have to take in account their Java users.

Kotlin Puzzlers

Lots of fun with #kotlinpuzzlers with @antonkeks at #kotlinconf17, some great laughs at the compilers expense! pic.twitter.com/Ldi6lQObes

— Neil Power (@NeilPower) 3 novembre 2017

A talk by Anton Keks on Kotlin puzzlers. This talk presents some interesting nuances of Kotlin through the use of small programs. It is a fun talk to watch if you want to test your understanding of Kotlin behavior. For instance, do you know what happens when you write

return throw return "Hello"

? Watch this talk to find out.

The Cost of Kotlin Language Features

A talk by Duncan McGregor on the costs in terms of code size and execution time of Kotlin. The talk is focused on the bytecode produced by the Kotlin compiler on the JVM. The author actually said that you shouldn’t care about such costs, but if you do the talk will shows you the small costs in terms of performance that some features of Kotlin have.

You Can, but Should You?

A talk by Mike Gouline, a software engineer who works in the health industry. This is a talk on how to be smarter in using Kotlin. It discusses and explains how to choose among the different features that Kotlin offers in a way that makes sense for your software. It does not just present the options (i.e., for vs foreach), but it gives you guidelines on how to make the choice.

It is a very interesting talk not only for Kotlin users, but for everybody that needs to learn how to better organized his code.

Deep Dive into Kotlin/Native

A talk by Andrey Breslav, the leader of Kotlin development at JetBrains. This is a talk about the inner workings of a prerelease feature of Kotlin/Native: now (soon) you could use it develop for iOS. The talk is linked to the keynote of the conference since it shows the internals of the app demoed there.

This is the best talk to watch if you are interested in understanding how Kotlin/Native and iOS work together.

Kotlin Types: Exposed

Kotlin Types: Exposed by @sveta_isakova #kotlinconf17 #sketchnotes pic.twitter.com/Hi7khgTdb3

— Chiu-Ki Chan (@chiuki) 4 novembre 2017

A talk by Svetlana Isakova, developer advocate at JetBrains and co-author of Kotlin in Action. This is a talk about Kotlin types interact with Java: what happens under the hood, what you should be aware of and explanations of some design choices made by JetBrains.

Android & Web

Talks specifically about Android, Web and KotlinJS.

Frontend Kotlin from the Trenches

A talk by Gaetan Zoritchak, on KotlinJS used for the frontend. This talk gives feedback on the journey and the technical challenges faced on developing a data visualization library: Data2viz.



A View State Machine for Network Calls on Android

A View State Machine for Network Calls on Android by @mandybess #kotlinconf17 #sketchnotes pic.twitter.com/AVwohUOGhr

— Chiu-Ki Chan (@chiuki) 2 novembre 2017

A talk by Amanda Hill on how to build a View State Machine for network calls on Android. If you are wondering why you should do that she will show you right away by building an app. Basically, it is a way to handle networking request in a way that is resistant to UI changes.

Real World Kotlin-Powered Android

A talk by James Williams, responsible for Android Curriculum at Udacity. This is about converting an Android app written in Java to Kotlin, bit by bit. It is practical and interesting way to understand some of issues involved.

Isomorphic Kotlin

A talk by Troy Miles on the server side of an Android isomorphic mobile system. The talk starts with an introduction on the issue, then continues on showing how to build a microservice with Ratpack, wire it, and deploy it on Heroku.

Going Serverless with Kotlin

A talk by Marcos Placona, who works as a developer evangelist at Twilio. This is a talk on the tools and processes to build mobile and IoT stuff with Kotlin and deploy it on AWS Lambda to go serverless with Kotlin. There are a few minutes of introduction to the advantages of going serverless and then he shows code.

How to Build a React App in Kotlin

A talk by Dave Ford on why it makes sense to use Kotlin on the web and how to build a React App with your favorite language. The talk is focused on KotlinJS and the web world. The main point of the talk is that using Kotlin is even better than using a templating system to write web interfaces (i.e., HTML). Essentially templating system are simple languages, but Kotlin is a better language that has typesafe-builders, the (internal) HTML DSL (kotlinx.html) and a few React wrappers.

Given that most Kotlin developers come from Java, this is a very interesting idea that you probably never thought about.

Spring

A few talks dedicated to the Spring Framework and its usage with Kotlin.

Bootiful Kotlin

A talk by Josh Long, author of 5 books and “the guy with most bugs per line of code on the Spring team”.

It is a demo talk about using Spring Boot with Kotlin.

Asynchronous Programming with Kotlin Coroutines in Spring

A talk by Konrad Kamiński on using coroutines for asynchronous programming in Spring. It is a code-based talk on how to use coroutines in Spring. It is quite specific, so it is great if you are interested in just that, but it also useful for current Java and Spring users to get the feel of how it is to work with Kotlin.

Why Spring Loves Kotlin

I’m really excited to learn why Spring Loves Kotlin, straight from @sdeleuze! #kotlinconf17 pic.twitter.com/EGQC7Vvax8

— Todd Ginsberg (@ToddGinsberg) 3 novembre 2017

A talk by Sebastien Deleuze, a Spring contributor working at Pivotal. This is a talk about using Kotlin for Spring applications. It starts with the reasons to choose Kotlin and then shows the various tools and features of the pair Kotlin and Spring. In this talk you will learn to transform a Spring Boot 1.0 Java + Javascript project into a Spring Boot 2.0 pure Kotlin project.

Working On Your Code

Talks about Kotlin tools, checking and generating your code programmatically.

Generating Kotlin Code

Generating Kotlin Code by @Strongolopolis @JakeWharton #kotlinconf17 #sketchnotes pic.twitter.com/uEJIYMLrgv

— Chiu-Ki Chan (@chiuki) 3 novembre 2017

A talk by Alec Strong and Jake Wharton, developers respectively at Square and Google. This is a talk about code generation to generate an API. It is a pragmatic talk: almost every slide features code. It is mostly focused on the JVM, but it also address a bit the multi-platform issues.

What’s New & Cool in Kotlin Tools

A talk by Dmitry Jemerov, the leader of the tools team for Kotlin at JetBrains. It is a demo of the new features you will get on the release 1.2. It is also useful to get to know a few practical aspects of building the cross-platform Kotlin platform.

Kotlin Static Analysis with Android Lint

Kotlin static analysis with Android Lint by @tornorbye #kotlinconf17 #sketchnotes pic.twitter.com/Qmhe8Tz9Bt

— Chiu-Ki Chan (@chiuki) 3 novembre 2017

A talk by Tor Norbye, tech lead for Android Studio. It starts with a bit of the philosophy of Android Lint (i.e., focus on Android issues, leave the generic ones to the IDE) before going to the meat of the tool. The tool can now also be used outside of Android, so it can be useful for everybody who uses Kotlin.

Lessons Learned Building a Build Tool

A talk by Cedric Beust, the creator of Android Gmail and TestNG. The talk is about Kobalt, a building system written in Kotlin with a simple DSL, inspired by Maven and Gradle. The talk explain the reason why it was created and how it was made.

Building Kotlin Applications at Scale with Gradle

A talk by Hans Dockter, creator of Gradle and founder of the company behind it. This is a talk about how to use Gradle and the Gradle plugin for Kotlin to build large applications. It is divided in two parts: a description of features and issues and a second practical part where you see how things works on an example.

Testing Kotlin at Scale: Spek

A talk by Artem Zinnatullin, on how to test at scale. This talk is about the why and how you can migrate thousands of tests from JUnit to Spek. Spek is a testing framework inspired by RSpec, designed to better organize your tests. It is an interesting talk for everybody that want to do tests with Kotlin and understanding how they can use Spek to organize large scale testing.

Experiences

Talks that focus on an experience the speaker had: their work at a specific company or for a certain project. Usually they have less code, and concentrate more on soft-skills or strategic choices.

Cords & Gumballs

A talk by Mike Hearn on the benefits and challenges of using Kotlin for an enterprise software and a small side-project. The enterprise software is Corda, the distributed ledger platform designed to record, manage and automate legal agreements between business partners. The project is written in Kotlin, but it has to support perfectly Java developers in the finance world, so it is an interesting talk for people that work in the enterprise world.

My Transition from Swift to Kotlin

A talk by Hector Matos, a senior iOS developer. The talk is both a story of the transition and a comparison between Swift and Kotlin. It is a good talk to show to your manager, if you need to persuade him or her to let you develop with Kotlin.

My Life as a Tech Transfer Monad

My Life as a Tech Transfer Monad by @headinthebox #kotlinconf17 #sketchnotes pic.twitter.com/4cvHRxo66Q

— Chiu-Ki Chan @ SF Bay Area (@chiuki) 3 novembre 2017

A talk by Erik Meijer, a computer scientist who works at Facebook and now is “he is on a quest to make uncertainty a first-class citizen in mainstream programming languages”. It is an interesting talk and indeed one of the most popular, but it is hard to describe it.

It is a talk with a lot of computer science and essentially is about trying to understand (i.e., abstracting) programming: the successes and failures that the author has encountered in this quest.

It is a great talk if you want to level up your understanding of programming.

Building and Deploying Netflix

A talk by Rob Fletcher who works at Netflix (Danny Thomas is mentioned in the abstract, but he does not appear). The talk is essentially half about the Netflix way of doing things and half about the reasons why the author of this talk chose Kotlin instead of other languages to build some tools used at Netflix.

Kickstarting Kotlin Culture: The Journey from Java to Kotlin

A talk by Neil Power, who works at Hootsuite. This talk is about the experience of the adoption of Kotlin at Hootsuite. It is both a story of the journey from Java to Kotlin and the lesson learned to build a strategy to facilitate the migration from Java to Kotlin. It is an interesting talk for the people that are considering the implementation of such strategies in their workplace.

Sharing [Kotlin code across platforms] is Caring!

A talk by Eugenio Marletti, on how Kotlin can help with issues related to multi-platform apps. This is a talk on the experience of writing a multi-platform app, the problems related to developing it and how Kotlin can be used to write the business logic once. The rest will need to be specific for each platform.

Cats and Dogs

A talk by Michael May and Roman Piel, iOS and Android developers. A fun and practical talk on how Android and iOS teams can work together in a team: design the app together, maintain the API, etc. This is a talk about code and tecnical issues (e.g., how to design the API together), but also about the organizational aspects.

Kotlin World

Everything Kotlin: from new things you can do, to better ways to do the same things you already do. Talks about how to contribute to Kotlin or help your team work better, etc. There is something for everybody, whether you are searching for new ideas or to learn something.

Building Languages Using Kotlin

You may read about the experience and the best speech there: Building Languages Using Kotlin by Federico Tomassetti on another of our articles.

The Road to Kotlintown

Learning how to beautifully execute a heist in The Road to Kotlintown by @queencodemonkey and @RunChristinaRun #kotlinconf17 pic.twitter.com/bg8vn3fO0k

— Brenda Cook (@kenodoggy) 2 novembre 2017

A talk by Huyen Tue Dao and Christina Lee, developers at Pinterest and Atlassian. This is a code-base talk on how practically convert existing code to Kotlin and learn the Kotlin way of doing things. It is a pragmatic talk for new Kotlin users or people interested in joining the good side of the JVM.

How to Kontribute

A talk by Yoshinori Isogai on how to contribute to Kotlin development as an external contributor. This is a pragmatic talk on how to partecipate to Kotlin development, particularly on a Kotlin plugin. This is a very pragmatic talk dealing with things like setting up development environment (you will need the help), unit tests, etc. It is very useful if you want to contribute to the language.

Architectures Using Functional Programming Concepts

A talk by Jorge Castillo on functional programming for Kotlin. This a code-based talk on why you will want to use functional programming and how to use functionally concepts on Kotlin using Kategeory.io, a library that brings functional types to Kotlin. The examples are mostly based on Android issues, but they can be applicable to many situations.

RX Java with Kotlin in Baby Steps

A talk by Annyce Davis, a developer, author and speaker. This is an introductory talk about RxJava and reactive programming. It is a well designed lesson on the basics: operators, observers and observable.

Kotlin for the Pragmatic Functionalist

A talk by Paco Estévez García, a developer at Facebook. This is a talk on how you can pragmatically use functional programming with Kotlin: the language is ready today, this talk will show how to use it. He also show the issues still present. It mentions Kategory, a library which is the focus of another talk.

Kotlin EE: Boost your Productivity

A talk by Marcus Fihlon, a developer, lecturer and author. There is not an actual Kotlin EE framework, but this is a talk about using Kotlin with Java EE to create services of any size (nanoservices, microservices, etc.). This is a talk about theory and practice (i.e., code) to solve problems of enterprise developers.

Kotlinbots: Building Your Own Personal Robot Army

A talk by Adrián Catalan on how to use Android Things and how to develop software for Internet of Things devices (and robots). This is a pragmatic talk on how to develop with Android Things on Raspberry Pi to do things like switching on LEDs. So, it slightly oversells the robot army things, but it is cool nonetheless. The talk also shows the hardware part of the work: how to wire the actual wires to the board and the theory you need to work with electric circuits. It is quite an interesting talk for people willing to getting started on IoT development.

Inter-Reactive Kotlin Applications

A talk by Julien Viet, the Vert.x project lead at RedHat. This is a talk about using Kotlin to write inter-reactive Vert.x applications: perform asynchronous operations and receive events in a synchronous way. Eclipse Vert.x is a set of libraries to write application on the JVM (not necessarily with the IDE Eclipse). The talk contains both the theory and the practical aspect of writing reactive applications using Kotlin features (i.e., coroutines).

Two Stones, One Bird: Implementation Tradeoffs

A talk by Christina Lee, an Android developer at Pinterest. The title of the talk is a play on the common saying. The talk is about how to choose between two different viable options to achieve on objective. It discusses the tradeoffs of a few common programming problems with multiple solutions such as with/apply and let/also.

Kotlin for Data Science

Should we consider Kotlin for data science? Let’s see what @thomasnield9727 has to say about that! #kotlinconf17 pic.twitter.com/VqhhB58R6b

— Todd Ginsberg (@ToddGinsberg) 2 novembre 2017

A talk by Thomas Nield, author and developer. The talk is starts with an introduction to data science and its issues, then continues on why and how to best use Kotlin for data science. This talk is great if you work in an organization that need one platform to get the data scientists and developers on the same page. The author of this talk suggests to also look at kscript – Scripting Enhancements for Kotlin.

kscript – Scripting Enhancements for Kotlin

If you haven’t seen @holgerbrandl‘s talk at #kotlinconf17, definitely watch it. #kscript has some useful and interesting innovations critical for bringing #Kotlin to #DataScience https://t.co/BlVRJId83Y

— Thomas Nield (@thomasnield9727) 20 novembre 2017

A talk by Holger Brandl, data scientist at the Max Planck Institute. This is mainly a talk about kscript: a easy-to-use, very flexible, and almost zero-overhead solution to write self-contained mini-applications with Kotlin. Obviously it also has an introduction to why Kotlin was chosen and the tool developed for data science work. It is a great talk if you are interested in the practical aspects of doing data science with Kotlin, but also for general scripting.

Summary

KotlinConf was great and there was something for everybody: from real-word technical knowledge to experience ans help to better manage Kotlin projects and team. There were also interesting and unusual projects (i.e., robot army). The excitement for the future of Kotlin was palpable and we hope we are going to feel the same next year. What do you want to see next year?

The post All the Talks at KotlinConf, Organized and Commented appeared first on SuperKotlin.

Continue ReadingAll the Talks at KotlinConf, Organized and Commented

All the Talks at KotlinConf, Organized and Commented

The KotlinConf 2017 was on 2-3 november and it was a great conference. In this article we are going to present a short summary of the talks with links to their videos.

List of Talks

Understanding Kotlin

The talks you want to watch if you want to understand the language better: from introductory talks to deep dives.

Understand Every Line of Your Codebase

A talk by Boris Farber and Victoria Gonda, who also wrote the article: Java as your Kotlin Study Buddy. It is a talk centered on showing the Java equivalent of the Kotlin code you write and the bytecode produced by the Kotlin compiler. It is interesting especially for new Kotlin developers and people still using Java that want to see a bit of the Kotlin magic.

Introduction to Coroutines

Concept of coroutine looks amazing. I will need to play with it a little bit to get it to work though. @KotlinConf Introduction to Coroutines by Roman Elizarov https://t.co/Q7YoF6N2jF via @YouTube #kotlinconf17

— Anurag Chitnis (@AnuragChitnis) 17 novembre 2017

A talk by Roman Elizarov, who works on the Kotlin language at JetBrains. It is about one of the most exciting features of Kotlin: coroutines. In this talk you can learn why you need coroutines and how to use them with live examples.

Deep Dives into Coroutines on JVM

A talk by Roman Elizarov, who works on the Kotlin language at JetBrains. This is the deep and technical companion of the other talk by Elizarov on coroutines. It is about the technical aspects of the coroutines implementation on top of the JVM. It is a great talk for people that want to understand how coroutines work.

Idiomatic Interop

A talk by Kevin Most on Java-Kotlin interop. Kotlin and Java interop is great, but it is not perfect especially when invoking Kotlin code from Java code. In this talk you are going to know how to make the two languages work better together: from the strategies to the gotchas. This talk is perfect for Kotlin developers that have to take in account their Java users.

Kotlin Puzzlers

Lots of fun with #kotlinpuzzlers with @antonkeks at #kotlinconf17, some great laughs at the compilers expense! pic.twitter.com/Ldi6lQObes

— Neil Power (@NeilPower) 3 novembre 2017

A talk by Anton Keks on Kotlin puzzlers. This talk presents some interesting nuances of Kotlin through the use of small programs. It is a fun talk to watch if you want to test your understanding of Kotlin behavior. For instance, do you know what happens when you write

return throw return "Hello"

? Watch this talk to find out.

The Cost of Kotlin Language Features

A talk by Duncan McGregor on the costs in terms of code size and execution time of Kotlin. The talk is focused on the bytecode produced by the Kotlin compiler on the JVM. The author actually said that you shouldn’t care about such costs, but if you do the talk will shows you the small costs in terms of performance that some features of Kotlin have.

You Can, but Should You?

A talk by Mike Gouline, a software engineer who works in the health industry. This is a talk on how to be smarter in using Kotlin. It discusses and explains how to choose among the different features that Kotlin offers in a way that makes sense for your software. It does not just present the options (i.e., for vs foreach), but it gives you guidelines on how to make the choice.

It is a very interesting talk not only for Kotlin users, but for everybody that needs to learn how to better organized his code.

Deep Dive into Kotlin/Native

A talk by Andrey Breslav, the leader of Kotlin development at JetBrains. This is a talk about the inner workings of a prerelease feature of Kotlin/Native: now (soon) you could use it develop for iOS. The talk is linked to the keynote of the conference since it shows the internals of the app demoed there.

This is the best talk to watch if you are interested in understanding how Kotlin/Native and iOS work together.

Kotlin Types: Exposed

Kotlin Types: Exposed by @sveta_isakova #kotlinconf17 #sketchnotes pic.twitter.com/Hi7khgTdb3

— Chiu-Ki Chan (@chiuki) 4 novembre 2017

A talk by Svetlana Isakova, developer advocate at JetBrains and co-author of Kotlin in Action. This is a talk about Kotlin types interact with Java: what happens under the hood, what you should be aware of and explanations of some design choices made by JetBrains.

Android & Web

Talks specifically about Android, Web and KotlinJS.

Frontend Kotlin from the Trenches

A talk by Gaetan Zoritchak, on KotlinJS used for the frontend. This talk gives feedback on the journey and the technical challenges faced on developing a data visualization library: Data2viz.



A View State Machine for Network Calls on Android

A View State Machine for Network Calls on Android by @mandybess #kotlinconf17 #sketchnotes pic.twitter.com/AVwohUOGhr

— Chiu-Ki Chan (@chiuki) 2 novembre 2017

A talk by Amanda Hill on how to build a View State Machine for network calls on Android. If you are wondering why you should do that she will show you right away by building an app. Basically, it is a way to handle networking request in a way that is resistant to UI changes.

Real World Kotlin-Powered Android

A talk by James Williams, responsible for Android Curriculum at Udacity. This is about converting an Android app written in Java to Kotlin, bit by bit. It is practical and interesting way to understand some of issues involved.

Isomorphic Kotlin

A talk by Troy Miles on the server side of an Android isomorphic mobile system. The talk starts with an introduction on the issue, then continues on showing how to build a microservice with Ratpack, wire it, and deploy it on Heroku.

Going Serverless with Kotlin

A talk by Marcos Placona, who works as a developer evangelist at Twilio. This is a talk on the tools and processes to build mobile and IoT stuff with Kotlin and deploy it on AWS Lambda to go serverless with Kotlin. There are a few minutes of introduction to the advantages of going serverless and then he shows code.

How to Build a React App in Kotlin

A talk by Dave Ford on why it makes sense to use Kotlin on the web and how to build a React App with your favorite language. The talk is focused on KotlinJS and the web world. The main point of the talk is that using Kotlin is even better than using a templating system to write web interfaces (i.e., HTML). Essentially templating system are simple languages, but Kotlin is a better language that has typesafe-builders, the (internal) HTML DSL (kotlinx.html) and a few React wrappers.

Given that most Kotlin developers come from Java, this is a very interesting idea that you probably never thought about.

Spring

A few talks dedicated to the Spring Framework and its usage with Kotlin.

Bootiful Kotlin

A talk by Josh Long, author of 5 books and “the guy with most bugs per line of code on the Spring team”.

It is a demo talk about using Spring Boot with Kotlin.

Asynchronous Programming with Kotlin Coroutines in Spring

A talk by Konrad Kamiński on using coroutines for asynchronous programming in Spring. It is a code-based talk on how to use coroutines in Spring. It is quite specific, so it is great if you are interested in just that, but it also useful for current Java and Spring users to get the feel of how it is to work with Kotlin.

Why Spring Loves Kotlin

I’m really excited to learn why Spring Loves Kotlin, straight from @sdeleuze! #kotlinconf17 pic.twitter.com/EGQC7Vvax8

— Todd Ginsberg (@ToddGinsberg) 3 novembre 2017

A talk by Sebastien Deleuze, a Spring contributor working at Pivotal. This is a talk about using Kotlin for Spring applications. It starts with the reasons to choose Kotlin and then shows the various tools and features of the pair Kotlin and Spring. In this talk you will learn to transform a Spring Boot 1.0 Java + Javascript project into a Spring Boot 2.0 pure Kotlin project.

Working On Your Code

Talks about Kotlin tools, checking and generating your code programmatically.

Generating Kotlin Code

Generating Kotlin Code by @Strongolopolis @JakeWharton #kotlinconf17 #sketchnotes pic.twitter.com/uEJIYMLrgv

— Chiu-Ki Chan (@chiuki) 3 novembre 2017

A talk by Alec Strong and Jake Wharton, developers respectively at Square and Google. This is a talk about code generation to generate an API. It is a pragmatic talk: almost every slide features code. It is mostly focused on the JVM, but it also address a bit the multi-platform issues.

What’s New & Cool in Kotlin Tools

A talk by Dmitry Jemerov, the leader of the tools team for Kotlin at JetBrains. It is a demo of the new features you will get on the release 1.2. It is also useful to get to know a few practical aspects of building the cross-platform Kotlin platform.

Kotlin Static Analysis with Android Lint

Kotlin static analysis with Android Lint by @tornorbye #kotlinconf17 #sketchnotes pic.twitter.com/Qmhe8Tz9Bt

— Chiu-Ki Chan (@chiuki) 3 novembre 2017

A talk by Tor Norbye, tech lead for Android Studio. It starts with a bit of the philosophy of Android Lint (i.e., focus on Android issues, leave the generic ones to the IDE) before going to the meat of the tool. The tool can now also be used outside of Android, so it can be useful for everybody who uses Kotlin.

Lessons Learned Building a Build Tool

A talk by Cedric Beust, the creator of Android Gmail and TestNG. The talk is about Kobalt, a building system written in Kotlin with a simple DSL, inspired by Maven and Gradle. The talk explain the reason why it was created and how it was made.

Building Kotlin Applications at Scale with Gradle

A talk by Hans Dockter, creator of Gradle and founder of the company behind it. This is a talk about how to use Gradle and the Gradle plugin for Kotlin to build large applications. It is divided in two parts: a description of features and issues and a second practical part where you see how things works on an example.

Testing Kotlin at Scale: Spek

A talk by Artem Zinnatullin, on how to test at scale. This talk is about the why and how you can migrate thousands of tests from JUnit to Spek. Spek is a testing framework inspired by RSpec, designed to better organize your tests. It is an interesting talk for everybody that want to do tests with Kotlin and understanding how they can use Spek to organize large scale testing.

Experiences

Talks that focus on an experience the speaker had: their work at a specific company or for a certain project. Usually they have less code, and concentrate more on soft-skills or strategic choices.

Cords & Gumballs

A talk by Mike Hearn on the benefits and challenges of using Kotlin for an enterprise software and a small side-project. The enterprise software is Corda, the distributed ledger platform designed to record, manage and automate legal agreements between business partners. The project is written in Kotlin, but it has to support perfectly Java developers in the finance world, so it is an interesting talk for people that work in the enterprise world.

My Transition from Swift to Kotlin

A talk by Hector Matos, a senior iOS developer. The talk is both a story of the transition and a comparison between Swift and Kotlin. It is a good talk to show to your manager, if you need to persuade him or her to let you develop with Kotlin.

My Life as a Tech Transfer Monad

My Life as a Tech Transfer Monad by @headinthebox #kotlinconf17 #sketchnotes pic.twitter.com/4cvHRxo66Q

— Chiu-Ki Chan @ SF Bay Area (@chiuki) 3 novembre 2017

A talk by Erik Meijer, a computer scientist who works at Facebook and now is “he is on a quest to make uncertainty a first-class citizen in mainstream programming languages”. It is an interesting talk and indeed one of the most popular, but it is hard to describe it.

It is a talk with a lot of computer science and essentially is about trying to understand (i.e., abstracting) programming: the successes and failures that the author has encountered in this quest.

It is a great talk if you want to level up your understanding of programming.

Building and Deploying Netflix

A talk by Rob Fletcher who works at Netflix (Danny Thomas is mentioned in the abstract, but he does not appear). The talk is essentially half about the Netflix way of doing things and half about the reasons why the author of this talk chose Kotlin instead of other languages to build some tools used at Netflix.

Kickstarting Kotlin Culture: The Journey from Java to Kotlin

A talk by Neil Power, who works at Hootsuite. This talk is about the experience of the adoption of Kotlin at Hootsuite. It is both a story of the journey from Java to Kotlin and the lesson learned to build a strategy to facilitate the migration from Java to Kotlin. It is an interesting talk for the people that are considering the implementation of such strategies in their workplace.

Sharing [Kotlin code across platforms] is Caring!

A talk by Eugenio Marletti, on how Kotlin can help with issues related to multi-platform apps. This is a talk on the experience of writing a multi-platform app, the problems related to developing it and how Kotlin can be used to write the business logic once. The rest will need to be specific for each platform.

Cats and Dogs

A talk by Michael May and Roman Piel, iOS and Android developers. A fun and practical talk on how Android and iOS teams can work together in a team: design the app together, maintain the API, etc. This is a talk about code and tecnical issues (e.g., how to design the API together), but also about the organizational aspects.

Kotlin World

Everything Kotlin: from new things you can do, to better ways to do the same things you already do. Talks about how to contribute to Kotlin or help your team work better, etc. There is something for everybody, whether you are searching for new ideas or to learn something.

Building Languages Using Kotlin

You may read about the experience and the best speech there: Building Languages Using Kotlin by Federico Tomassetti on another of our articles.

The Road to Kotlintown

Learning how to beautifully execute a heist in The Road to Kotlintown by @queencodemonkey and @RunChristinaRun #kotlinconf17 pic.twitter.com/bg8vn3fO0k

— Brenda Cook (@kenodoggy) 2 novembre 2017

A talk by Huyen Tue Dao and Christina Lee, developers at Pinterest and Atlassian. This is a code-base talk on how practically convert existing code to Kotlin and learn the Kotlin way of doing things. It is a pragmatic talk for new Kotlin users or people interested in joining the good side of the JVM.

How to Kontribute

A talk by Yoshinori Isogai on how to contribute to Kotlin development as an external contributor. This is a pragmatic talk on how to partecipate to Kotlin development, particularly on a Kotlin plugin. This is a very pragmatic talk dealing with things like setting up development environment (you will need the help), unit tests, etc. It is very useful if you want to contribute to the language.

Architectures Using Functional Programming Concepts

A talk by Jorge Castillo on functional programming for Kotlin. This a code-based talk on why you will want to use functional programming and how to use functionally concepts on Kotlin using Kategeory.io, a library that brings functional types to Kotlin. The examples are mostly based on Android issues, but they can be applicable to many situations.

RX Java with Kotlin in Baby Steps

A talk by Annyce Davis, a developer, author and speaker. This is an introductory talk about RxJava and reactive programming. It is a well designed lesson on the basics: operators, observers and observable.

Kotlin for the Pragmatic Functionalist

A talk by Paco Estévez García, a developer at Facebook. This is a talk on how you can pragmatically use functional programming with Kotlin: the language is ready today, this talk will show how to use it. He also show the issues still present. It mentions Kategory, a library which is the focus of another talk.

Kotlin EE: Boost your Productivity

A talk by Marcus Fihlon, a developer, lecturer and author. There is not an actual Kotlin EE framework, but this is a talk about using Kotlin with Java EE to create services of any size (nanoservices, microservices, etc.). This is a talk about theory and practice (i.e., code) to solve problems of enterprise developers.

Kotlinbots: Building Your Own Personal Robot Army

A talk by Adrián Catalan on how to use Android Things and how to develop software for Internet of Things devices (and robots). This is a pragmatic talk on how to develop with Android Things on Raspberry Pi to do things like switching on LEDs. So, it slightly oversells the robot army things, but it is cool nonetheless. The talk also shows the hardware part of the work: how to wire the actual wires to the board and the theory you need to work with electric circuits. It is quite an interesting talk for people willing to getting started on IoT development.

Inter-Reactive Kotlin Applications

A talk by Julien Viet, the Vert.x project lead at RedHat. This is a talk about using Kotlin to write inter-reactive Vert.x applications: perform asynchronous operations and receive events in a synchronous way. Eclipse Vert.x is a set of libraries to write application on the JVM (not necessarily with the IDE Eclipse). The talk contains both the theory and the practical aspect of writing reactive applications using Kotlin features (i.e., coroutines).

Two Stones, One Bird: Implementation Tradeoffs

A talk by Christina Lee, an Android developer at Pinterest. The title of the talk is a play on the common saying. The talk is about how to choose between two different viable options to achieve on objective. It discusses the tradeoffs of a few common programming problems with multiple solutions such as with/apply and let/also.

Kotlin for Data Science

Should we consider Kotlin for data science? Let’s see what @thomasnield9727 has to say about that! #kotlinconf17 pic.twitter.com/VqhhB58R6b

— Todd Ginsberg (@ToddGinsberg) 2 novembre 2017

A talk by Thomas Nield, author and developer. The talk is starts with an introduction to data science and its issues, then continues on why and how to best use Kotlin for data science. This talk is great if you work in an organization that need one platform to get the data scientists and developers on the same page. The author of this talk suggests to also look at kscript – Scripting Enhancements for Kotlin.

kscript – Scripting Enhancements for Kotlin

If you haven’t seen @holgerbrandl‘s talk at #kotlinconf17, definitely watch it. #kscript has some useful and interesting innovations critical for bringing #Kotlin to #DataScience https://t.co/BlVRJId83Y

— Thomas Nield (@thomasnield9727) 20 novembre 2017

A talk by Holger Brandl, data scientist at the Max Planck Institute. This is mainly a talk about kscript: a easy-to-use, very flexible, and almost zero-overhead solution to write self-contained mini-applications with Kotlin. Obviously it also has an introduction to why Kotlin was chosen and the tool developed for data science work. It is a great talk if you are interested in the practical aspects of doing data science with Kotlin, but also for general scripting.

Summary

KotlinConf was great and there was something for everybody: from real-word technical knowledge to experience ans help to better manage Kotlin projects and team. There were also interesting and unusual projects (i.e., robot army). The excitement for the future of Kotlin was palpable and we hope we are going to feel the same next year. What do you want to see next year?

The post All the Talks at KotlinConf, Organized and Commented appeared first on SuperKotlin.

Continue ReadingAll the Talks at KotlinConf, Organized and Commented

All the Talks at KotlinConf, Organized and Commented

The KotlinConf 2017 was on 2-3 november and it was a great conference. In this article we are going to present a short summary of the talks with links to their videos.

List of Talks

Understanding Kotlin

The talks you want to watch if you want to understand the language better: from introductory talks to deep dives.

Understand Every Line of Your Codebase

A talk by Boris Farber and Victoria Gonda, who also wrote the article: Java as your Kotlin Study Buddy. It is a talk centered on showing the Java equivalent of the Kotlin code you write and the bytecode produced by the Kotlin compiler. It is interesting especially for new Kotlin developers and people still using Java that want to see a bit of the Kotlin magic.

Introduction to Coroutines

Concept of coroutine looks amazing. I will need to play with it a little bit to get it to work though. @KotlinConf Introduction to Coroutines by Roman Elizarov https://t.co/Q7YoF6N2jF via @YouTube #kotlinconf17

— Anurag Chitnis (@AnuragChitnis) 17 novembre 2017

A talk by Roman Elizarov, who works on the Kotlin language at JetBrains. It is about one of the most exciting features of Kotlin: coroutines. In this talk you can learn why you need coroutines and how to use them with live examples.

Deep Dives into Coroutines on JVM

A talk by Roman Elizarov, who works on the Kotlin language at JetBrains. This is the deep and technical companion of the other talk by Elizarov on coroutines. It is about the technical aspects of the coroutines implementation on top of the JVM. It is a great talk for people that want to understand how coroutines work.

Idiomatic Interop

A talk by Kevin Most on Java-Kotlin interop. Kotlin and Java interop is great, but it is not perfect especially when invoking Kotlin code from Java code. In this talk you are going to know how to make the two languages work better together: from the strategies to the gotchas. This talk is perfect for Kotlin developers that have to take in account their Java users.

Kotlin Puzzlers

Lots of fun with #kotlinpuzzlers with @antonkeks at #kotlinconf17, some great laughs at the compilers expense! pic.twitter.com/Ldi6lQObes

— Neil Power (@NeilPower) 3 novembre 2017

A talk by Anton Keks on Kotlin puzzlers. This talk presents some interesting nuances of Kotlin through the use of small programs. It is a fun talk to watch if you want to test your understanding of Kotlin behavior. For instance, do you know what happens when you write

return throw return "Hello"

? Watch this talk to find out.

The Cost of Kotlin Language Features

A talk by Duncan McGregor on the costs in terms of code size and execution time of Kotlin. The talk is focused on the bytecode produced by the Kotlin compiler on the JVM. The author actually said that you shouldn’t care about such costs, but if you do the talk will shows you the small costs in terms of performance that some features of Kotlin have.

You Can, but Should You?

A talk by Mike Gouline, a software engineer who works in the health industry. This is a talk on how to be smarter in using Kotlin. It discusses and explains how to choose among the different features that Kotlin offers in a way that makes sense for your software. It does not just present the options (i.e., for vs foreach), but it gives you guidelines on how to make the choice.

It is a very interesting talk not only for Kotlin users, but for everybody that needs to learn how to better organized his code.

Deep Dive into Kotlin/Native

A talk by Andrey Breslav, the leader of Kotlin development at JetBrains. This is a talk about the inner workings of a prerelease feature of Kotlin/Native: now (soon) you could use it develop for iOS. The talk is linked to the keynote of the conference since it shows the internals of the app demoed there.

This is the best talk to watch if you are interested in understanding how Kotlin/Native and iOS work together.

Kotlin Types: Exposed

Kotlin Types: Exposed by @sveta_isakova #kotlinconf17 #sketchnotes pic.twitter.com/Hi7khgTdb3

— Chiu-Ki Chan (@chiuki) 4 novembre 2017

A talk by Svetlana Isakova, developer advocate at JetBrains and co-author of Kotlin in Action. This is a talk about Kotlin types interact with Java: what happens under the hood, what you should be aware of and explanations of some design choices made by JetBrains.

Android & Web

Talks specifically about Android, Web and KotlinJS.

Frontend Kotlin from the Trenches

A talk by Gaetan Zoritchak, on KotlinJS used for the frontend. This talk gives feedback on the journey and the technical challenges faced on developing a data visualization library: Data2viz.



A View State Machine for Network Calls on Android

A View State Machine for Network Calls on Android by @mandybess #kotlinconf17 #sketchnotes pic.twitter.com/AVwohUOGhr

— Chiu-Ki Chan (@chiuki) 2 novembre 2017

A talk by Amanda Hill on how to build a View State Machine for network calls on Android. If you are wondering why you should do that she will show you right away by building an app. Basically, it is a way to handle networking request in a way that is resistant to UI changes.

Real World Kotlin-Powered Android

A talk by James Williams, responsible for Android Curriculum at Udacity. This is about converting an Android app written in Java to Kotlin, bit by bit. It is practical and interesting way to understand some of issues involved.

Isomorphic Kotlin

A talk by Troy Miles on the server side of an Android isomorphic mobile system. The talk starts with an introduction on the issue, then continues on showing how to build a microservice with Ratpack, wire it, and deploy it on Heroku.

Going Serverless with Kotlin

A talk by Marcos Placona, who works as a developer evangelist at Twilio. This is a talk on the tools and processes to build mobile and IoT stuff with Kotlin and deploy it on AWS Lambda to go serverless with Kotlin. There are a few minutes of introduction to the advantages of going serverless and then he shows code.

How to Build a React App in Kotlin

A talk by Dave Ford on why it makes sense to use Kotlin on the web and how to build a React App with your favorite language. The talk is focused on KotlinJS and the web world. The main point of the talk is that using Kotlin is even better than using a templating system to write web interfaces (i.e., HTML). Essentially templating system are simple languages, but Kotlin is a better language that has typesafe-builders, the (internal) HTML DSL (kotlinx.html) and a few React wrappers.

Given that most Kotlin developers come from Java, this is a very interesting idea that you probably never thought about.

Spring

A few talks dedicated to the Spring Framework and its usage with Kotlin.

Bootiful Kotlin

A talk by Josh Long, author of 5 books and “the guy with most bugs per line of code on the Spring team”.

It is a demo talk about using Spring Boot with Kotlin.

Asynchronous Programming with Kotlin Coroutines in Spring

A talk by Konrad Kamiński on using coroutines for asynchronous programming in Spring. It is a code-based talk on how to use coroutines in Spring. It is quite specific, so it is great if you are interested in just that, but it also useful for current Java and Spring users to get the feel of how it is to work with Kotlin.

Why Spring Loves Kotlin

I’m really excited to learn why Spring Loves Kotlin, straight from @sdeleuze! #kotlinconf17 pic.twitter.com/EGQC7Vvax8

— Todd Ginsberg (@ToddGinsberg) 3 novembre 2017

A talk by Sebastien Deleuze, a Spring contributor working at Pivotal. This is a talk about using Kotlin for Spring applications. It starts with the reasons to choose Kotlin and then shows the various tools and features of the pair Kotlin and Spring. In this talk you will learn to transform a Spring Boot 1.0 Java + Javascript project into a Spring Boot 2.0 pure Kotlin project.

Working On Your Code

Talks about Kotlin tools, checking and generating your code programmatically.

Generating Kotlin Code

Generating Kotlin Code by @Strongolopolis @JakeWharton #kotlinconf17 #sketchnotes pic.twitter.com/uEJIYMLrgv

— Chiu-Ki Chan (@chiuki) 3 novembre 2017

A talk by Alec Strong and Jake Wharton, developers respectively at Square and Google. This is a talk about code generation to generate an API. It is a pragmatic talk: almost every slide features code. It is mostly focused on the JVM, but it also address a bit the multi-platform issues.

What’s New & Cool in Kotlin Tools

A talk by Dmitry Jemerov, the leader of the tools team for Kotlin at JetBrains. It is a demo of the new features you will get on the release 1.2. It is also useful to get to know a few practical aspects of building the cross-platform Kotlin platform.

Kotlin Static Analysis with Android Lint

Kotlin static analysis with Android Lint by @tornorbye #kotlinconf17 #sketchnotes pic.twitter.com/Qmhe8Tz9Bt

— Chiu-Ki Chan (@chiuki) 3 novembre 2017

A talk by Tor Norbye, tech lead for Android Studio. It starts with a bit of the philosophy of Android Lint (i.e., focus on Android issues, leave the generic ones to the IDE) before going to the meat of the tool. The tool can now also be used outside of Android, so it can be useful for everybody who uses Kotlin.

Lessons Learned Building a Build Tool

A talk by Cedric Beust, the creator of Android Gmail and TestNG. The talk is about Kobalt, a building system written in Kotlin with a simple DSL, inspired by Maven and Gradle. The talk explain the reason why it was created and how it was made.

Building Kotlin Applications at Scale with Gradle

A talk by Hans Dockter, creator of Gradle and founder of the company behind it. This is a talk about how to use Gradle and the Gradle plugin for Kotlin to build large applications. It is divided in two parts: a description of features and issues and a second practical part where you see how things works on an example.

Testing Kotlin at Scale: Spek

A talk by Artem Zinnatullin, on how to test at scale. This talk is about the why and how you can migrate thousands of tests from JUnit to Spek. Spek is a testing framework inspired by RSpec, designed to better organize your tests. It is an interesting talk for everybody that want to do tests with Kotlin and understanding how they can use Spek to organize large scale testing.

Experiences

Talks that focus on an experience the speaker had: their work at a specific company or for a certain project. Usually they have less code, and concentrate more on soft-skills or strategic choices.

Cords & Gumballs

A talk by Mike Hearn on the benefits and challenges of using Kotlin for an enterprise software and a small side-project. The enterprise software is Corda, the distributed ledger platform designed to record, manage and automate legal agreements between business partners. The project is written in Kotlin, but it has to support perfectly Java developers in the finance world, so it is an interesting talk for people that work in the enterprise world.

My Transition from Swift to Kotlin

A talk by Hector Matos, a senior iOS developer. The talk is both a story of the transition and a comparison between Swift and Kotlin. It is a good talk to show to your manager, if you need to persuade him or her to let you develop with Kotlin.

My Life as a Tech Transfer Monad

My Life as a Tech Transfer Monad by @headinthebox #kotlinconf17 #sketchnotes pic.twitter.com/4cvHRxo66Q

— Chiu-Ki Chan @ SF Bay Area (@chiuki) 3 novembre 2017

A talk by Erik Meijer, a computer scientist who works at Facebook and now is “he is on a quest to make uncertainty a first-class citizen in mainstream programming languages”. It is an interesting talk and indeed one of the most popular, but it is hard to describe it.

It is a talk with a lot of computer science and essentially is about trying to understand (i.e., abstracting) programming: the successes and failures that the author has encountered in this quest.

It is a great talk if you want to level up your understanding of programming.

Building and Deploying Netflix

A talk by Rob Fletcher who works at Netflix (Danny Thomas is mentioned in the abstract, but he does not appear). The talk is essentially half about the Netflix way of doing things and half about the reasons why the author of this talk chose Kotlin instead of other languages to build some tools used at Netflix.

Kickstarting Kotlin Culture: The Journey from Java to Kotlin

A talk by Neil Power, who works at Hootsuite. This talk is about the experience of the adoption of Kotlin at Hootsuite. It is both a story of the journey from Java to Kotlin and the lesson learned to build a strategy to facilitate the migration from Java to Kotlin. It is an interesting talk for the people that are considering the implementation of such strategies in their workplace.

Sharing [Kotlin code across platforms] is Caring!

A talk by Eugenio Marletti, on how Kotlin can help with issues related to multi-platform apps. This is a talk on the experience of writing a multi-platform app, the problems related to developing it and how Kotlin can be used to write the business logic once. The rest will need to be specific for each platform.

Cats and Dogs

A talk by Michael May and Roman Piel, iOS and Android developers. A fun and practical talk on how Android and iOS teams can work together in a team: design the app together, maintain the API, etc. This is a talk about code and tecnical issues (e.g., how to design the API together), but also about the organizational aspects.

Kotlin World

Everything Kotlin: from new things you can do, to better ways to do the same things you already do. Talks about how to contribute to Kotlin or help your team work better, etc. There is something for everybody, whether you are searching for new ideas or to learn something.

Building Languages Using Kotlin

You may read about the experience and the best speech there: Building Languages Using Kotlin by Federico Tomassetti on another of our articles.

The Road to Kotlintown

Learning how to beautifully execute a heist in The Road to Kotlintown by @queencodemonkey and @RunChristinaRun #kotlinconf17 pic.twitter.com/bg8vn3fO0k

— Brenda Cook (@kenodoggy) 2 novembre 2017

A talk by Huyen Tue Dao and Christina Lee, developers at Pinterest and Atlassian. This is a code-base talk on how practically convert existing code to Kotlin and learn the Kotlin way of doing things. It is a pragmatic talk for new Kotlin users or people interested in joining the good side of the JVM.

How to Kontribute

A talk by Yoshinori Isogai on how to contribute to Kotlin development as an external contributor. This is a pragmatic talk on how to partecipate to Kotlin development, particularly on a Kotlin plugin. This is a very pragmatic talk dealing with things like setting up development environment (you will need the help), unit tests, etc. It is very useful if you want to contribute to the language.

Architectures Using Functional Programming Concepts

A talk by Jorge Castillo on functional programming for Kotlin. This a code-based talk on why you will want to use functional programming and how to use functionally concepts on Kotlin using Kategeory.io, a library that brings functional types to Kotlin. The examples are mostly based on Android issues, but they can be applicable to many situations.

RX Java with Kotlin in Baby Steps

A talk by Annyce Davis, a developer, author and speaker. This is an introductory talk about RxJava and reactive programming. It is a well designed lesson on the basics: operators, observers and observable.

Kotlin for the Pragmatic Functionalist

A talk by Paco Estévez García, a developer at Facebook. This is a talk on how you can pragmatically use functional programming with Kotlin: the language is ready today, this talk will show how to use it. He also show the issues still present. It mentions Kategory, a library which is the focus of another talk.

Kotlin EE: Boost your Productivity

A talk by Marcus Fihlon, a developer, lecturer and author. There is not an actual Kotlin EE framework, but this is a talk about using Kotlin with Java EE to create services of any size (nanoservices, microservices, etc.). This is a talk about theory and practice (i.e., code) to solve problems of enterprise developers.

Kotlinbots: Building Your Own Personal Robot Army

A talk by Adrián Catalan on how to use Android Things and how to develop software for Internet of Things devices (and robots). This is a pragmatic talk on how to develop with Android Things on Raspberry Pi to do things like switching on LEDs. So, it slightly oversells the robot army things, but it is cool nonetheless. The talk also shows the hardware part of the work: how to wire the actual wires to the board and the theory you need to work with electric circuits. It is quite an interesting talk for people willing to getting started on IoT development.

Inter-Reactive Kotlin Applications

A talk by Julien Viet, the Vert.x project lead at RedHat. This is a talk about using Kotlin to write inter-reactive Vert.x applications: perform asynchronous operations and receive events in a synchronous way. Eclipse Vert.x is a set of libraries to write application on the JVM (not necessarily with the IDE Eclipse). The talk contains both the theory and the practical aspect of writing reactive applications using Kotlin features (i.e., coroutines).

Two Stones, One Bird: Implementation Tradeoffs

A talk by Christina Lee, an Android developer at Pinterest. The title of the talk is a play on the common saying. The talk is about how to choose between two different viable options to achieve on objective. It discusses the tradeoffs of a few common programming problems with multiple solutions such as with/apply and let/also.

Kotlin for Data Science

Should we consider Kotlin for data science? Let’s see what @thomasnield9727 has to say about that! #kotlinconf17 pic.twitter.com/VqhhB58R6b

— Todd Ginsberg (@ToddGinsberg) 2 novembre 2017

A talk by Thomas Nield, author and developer. The talk is starts with an introduction to data science and its issues, then continues on why and how to best use Kotlin for data science. This talk is great if you work in an organization that need one platform to get the data scientists and developers on the same page. The author of this talk suggests to also look at kscript – Scripting Enhancements for Kotlin.

kscript – Scripting Enhancements for Kotlin

If you haven’t seen @holgerbrandl‘s talk at #kotlinconf17, definitely watch it. #kscript has some useful and interesting innovations critical for bringing #Kotlin to #DataScience https://t.co/BlVRJId83Y

— Thomas Nield (@thomasnield9727) 20 novembre 2017

A talk by Holger Brandl, data scientist at the Max Planck Institute. This is mainly a talk about kscript: a easy-to-use, very flexible, and almost zero-overhead solution to write self-contained mini-applications with Kotlin. Obviously it also has an introduction to why Kotlin was chosen and the tool developed for data science work. It is a great talk if you are interested in the practical aspects of doing data science with Kotlin, but also for general scripting.

Summary

KotlinConf was great and there was something for everybody: from real-word technical knowledge to experience ans help to better manage Kotlin projects and team. There were also interesting and unusual projects (i.e., robot army). The excitement for the future of Kotlin was palpable and we hope we are going to feel the same next year. What do you want to see next year?

The post All the Talks at KotlinConf, Organized and Commented appeared first on SuperKotlin.

Continue ReadingAll the Talks at KotlinConf, Organized and Commented

All the Talks at KotlinConf, Organized and Commented

The KotlinConf 2017 was on 2-3 november and it was a great conference. In this article we are going to present a short summary of the talks with links to their videos.

List of Talks

Understanding Kotlin

The talks you want to watch if you want to understand the language better: from introductory talks to deep dives.

Understand Every Line of Your Codebase

A talk by Boris Farber and Victoria Gonda, who also wrote the article: Java as your Kotlin Study Buddy. It is a talk centered on showing the Java equivalent of the Kotlin code you write and the bytecode produced by the Kotlin compiler. It is interesting especially for new Kotlin developers and people still using Java that want to see a bit of the Kotlin magic.

Introduction to Coroutines

Concept of coroutine looks amazing. I will need to play with it a little bit to get it to work though. @KotlinConf Introduction to Coroutines by Roman Elizarov https://t.co/Q7YoF6N2jF via @YouTube #kotlinconf17

— Anurag Chitnis (@AnuragChitnis) 17 novembre 2017

A talk by Roman Elizarov, who works on the Kotlin language at JetBrains. It is about one of the most exciting features of Kotlin: coroutines. In this talk you can learn why you need coroutines and how to use them with live examples.

Deep Dives into Coroutines on JVM

A talk by Roman Elizarov, who works on the Kotlin language at JetBrains. This is the deep and technical companion of the other talk by Elizarov on coroutines. It is about the technical aspects of the coroutines implementation on top of the JVM. It is a great talk for people that want to understand how coroutines work.

Idiomatic Interop

A talk by Kevin Most on Java-Kotlin interop. Kotlin and Java interop is great, but it is not perfect especially when invoking Kotlin code from Java code. In this talk you are going to know how to make the two languages work better together: from the strategies to the gotchas. This talk is perfect for Kotlin developers that have to take in account their Java users.

Kotlin Puzzlers

Lots of fun with #kotlinpuzzlers with @antonkeks at #kotlinconf17, some great laughs at the compilers expense! pic.twitter.com/Ldi6lQObes

— Neil Power (@NeilPower) 3 novembre 2017

A talk by Anton Keks on Kotlin puzzlers. This talk presents some interesting nuances of Kotlin through the use of small programs. It is a fun talk to watch if you want to test your understanding of Kotlin behavior. For instance, do you know what happens when you write

return throw return "Hello"

? Watch this talk to find out.

The Cost of Kotlin Language Features

A talk by Duncan McGregor on the costs in terms of code size and execution time of Kotlin. The talk is focused on the bytecode produced by the Kotlin compiler on the JVM. The author actually said that you shouldn’t care about such costs, but if you do the talk will shows you the small costs in terms of performance that some features of Kotlin have.

You Can, but Should You?

A talk by Mike Gouline, a software engineer who works in the health industry. This is a talk on how to be smarter in using Kotlin. It discusses and explains how to choose among the different features that Kotlin offers in a way that makes sense for your software. It does not just present the options (i.e., for vs foreach), but it gives you guidelines on how to make the choice.

It is a very interesting talk not only for Kotlin users, but for everybody that needs to learn how to better organized his code.

Deep Dive into Kotlin/Native

A talk by Andrey Breslav, the leader of Kotlin development at JetBrains. This is a talk about the inner workings of a prerelease feature of Kotlin/Native: now (soon) you could use it develop for iOS. The talk is linked to the keynote of the conference since it shows the internals of the app demoed there.

This is the best talk to watch if you are interested in understanding how Kotlin/Native and iOS work together.

Kotlin Types: Exposed

Kotlin Types: Exposed by @sveta_isakova #kotlinconf17 #sketchnotes pic.twitter.com/Hi7khgTdb3

— Chiu-Ki Chan (@chiuki) 4 novembre 2017

A talk by Svetlana Isakova, developer advocate at JetBrains and co-author of Kotlin in Action. This is a talk about Kotlin types interact with Java: what happens under the hood, what you should be aware of and explanations of some design choices made by JetBrains.

Android & Web

Talks specifically about Android, Web and KotlinJS.

Frontend Kotlin from the Trenches

A talk by Gaetan Zoritchak, on KotlinJS used for the frontend. This talk gives feedback on the journey and the technical challenges faced on developing a data visualization library: Data2viz.



A View State Machine for Network Calls on Android

A View State Machine for Network Calls on Android by @mandybess #kotlinconf17 #sketchnotes pic.twitter.com/AVwohUOGhr

— Chiu-Ki Chan (@chiuki) 2 novembre 2017

A talk by Amanda Hill on how to build a View State Machine for network calls on Android. If you are wondering why you should do that she will show you right away by building an app. Basically, it is a way to handle networking request in a way that is resistant to UI changes.

Real World Kotlin-Powered Android

A talk by James Williams, responsible for Android Curriculum at Udacity. This is about converting an Android app written in Java to Kotlin, bit by bit. It is practical and interesting way to understand some of issues involved.

Isomorphic Kotlin

A talk by Troy Miles on the server side of an Android isomorphic mobile system. The talk starts with an introduction on the issue, then continues on showing how to build a microservice with Ratpack, wire it, and deploy it on Heroku.

Going Serverless with Kotlin

A talk by Marcos Placona, who works as a developer evangelist at Twilio. This is a talk on the tools and processes to build mobile and IoT stuff with Kotlin and deploy it on AWS Lambda to go serverless with Kotlin. There are a few minutes of introduction to the advantages of going serverless and then he shows code.

How to Build a React App in Kotlin

A talk by Dave Ford on why it makes sense to use Kotlin on the web and how to build a React App with your favorite language. The talk is focused on KotlinJS and the web world. The main point of the talk is that using Kotlin is even better than using a templating system to write web interfaces (i.e., HTML). Essentially templating system are simple languages, but Kotlin is a better language that has typesafe-builders, the (internal) HTML DSL (kotlinx.html) and a few React wrappers.

Given that most Kotlin developers come from Java, this is a very interesting idea that you probably never thought about.

Spring

A few talks dedicated to the Spring Framework and its usage with Kotlin.

Bootiful Kotlin

A talk by Josh Long, author of 5 books and “the guy with most bugs per line of code on the Spring team”.

It is a demo talk about using Spring Boot with Kotlin.

Asynchronous Programming with Kotlin Coroutines in Spring

A talk by Konrad Kamiński on using coroutines for asynchronous programming in Spring. It is a code-based talk on how to use coroutines in Spring. It is quite specific, so it is great if you are interested in just that, but it also useful for current Java and Spring users to get the feel of how it is to work with Kotlin.

Why Spring Loves Kotlin

I’m really excited to learn why Spring Loves Kotlin, straight from @sdeleuze! #kotlinconf17 pic.twitter.com/EGQC7Vvax8

— Todd Ginsberg (@ToddGinsberg) 3 novembre 2017

A talk by Sebastien Deleuze, a Spring contributor working at Pivotal. This is a talk about using Kotlin for Spring applications. It starts with the reasons to choose Kotlin and then shows the various tools and features of the pair Kotlin and Spring. In this talk you will learn to transform a Spring Boot 1.0 Java + Javascript project into a Spring Boot 2.0 pure Kotlin project.

Working On Your Code

Talks about Kotlin tools, checking and generating your code programmatically.

Generating Kotlin Code

Generating Kotlin Code by @Strongolopolis @JakeWharton #kotlinconf17 #sketchnotes pic.twitter.com/uEJIYMLrgv

— Chiu-Ki Chan (@chiuki) 3 novembre 2017

A talk by Alec Strong and Jake Wharton, developers respectively at Square and Google. This is a talk about code generation to generate an API. It is a pragmatic talk: almost every slide features code. It is mostly focused on the JVM, but it also address a bit the multi-platform issues.

What’s New & Cool in Kotlin Tools

A talk by Dmitry Jemerov, the leader of the tools team for Kotlin at JetBrains. It is a demo of the new features you will get on the release 1.2. It is also useful to get to know a few practical aspects of building the cross-platform Kotlin platform.

Kotlin Static Analysis with Android Lint

Kotlin static analysis with Android Lint by @tornorbye #kotlinconf17 #sketchnotes pic.twitter.com/Qmhe8Tz9Bt

— Chiu-Ki Chan (@chiuki) 3 novembre 2017

A talk by Tor Norbye, tech lead for Android Studio. It starts with a bit of the philosophy of Android Lint (i.e., focus on Android issues, leave the generic ones to the IDE) before going to the meat of the tool. The tool can now also be used outside of Android, so it can be useful for everybody who uses Kotlin.

Lessons Learned Building a Build Tool

A talk by Cedric Beust, the creator of Android Gmail and TestNG. The talk is about Kobalt, a building system written in Kotlin with a simple DSL, inspired by Maven and Gradle. The talk explain the reason why it was created and how it was made.

Building Kotlin Applications at Scale with Gradle

A talk by Hans Dockter, creator of Gradle and founder of the company behind it. This is a talk about how to use Gradle and the Gradle plugin for Kotlin to build large applications. It is divided in two parts: a description of features and issues and a second practical part where you see how things works on an example.

Testing Kotlin at Scale: Spek

A talk by Artem Zinnatullin, on how to test at scale. This talk is about the why and how you can migrate thousands of tests from JUnit to Spek. Spek is a testing framework inspired by RSpec, designed to better organize your tests. It is an interesting talk for everybody that want to do tests with Kotlin and understanding how they can use Spek to organize large scale testing.

Experiences

Talks that focus on an experience the speaker had: their work at a specific company or for a certain project. Usually they have less code, and concentrate more on soft-skills or strategic choices.

Cords & Gumballs

A talk by Mike Hearn on the benefits and challenges of using Kotlin for an enterprise software and a small side-project. The enterprise software is Corda, the distributed ledger platform designed to record, manage and automate legal agreements between business partners. The project is written in Kotlin, but it has to support perfectly Java developers in the finance world, so it is an interesting talk for people that work in the enterprise world.

My Transition from Swift to Kotlin

A talk by Hector Matos, a senior iOS developer. The talk is both a story of the transition and a comparison between Swift and Kotlin. It is a good talk to show to your manager, if you need to persuade him or her to let you develop with Kotlin.

My Life as a Tech Transfer Monad

My Life as a Tech Transfer Monad by @headinthebox #kotlinconf17 #sketchnotes pic.twitter.com/4cvHRxo66Q

— Chiu-Ki Chan @ SF Bay Area (@chiuki) 3 novembre 2017

A talk by Erik Meijer, a computer scientist who works at Facebook and now is “he is on a quest to make uncertainty a first-class citizen in mainstream programming languages”. It is an interesting talk and indeed one of the most popular, but it is hard to describe it.

It is a talk with a lot of computer science and essentially is about trying to understand (i.e., abstracting) programming: the successes and failures that the author has encountered in this quest.

It is a great talk if you want to level up your understanding of programming.

Building and Deploying Netflix

A talk by Rob Fletcher who works at Netflix (Danny Thomas is mentioned in the abstract, but he does not appear). The talk is essentially half about the Netflix way of doing things and half about the reasons why the author of this talk chose Kotlin instead of other languages to build some tools used at Netflix.

Kickstarting Kotlin Culture: The Journey from Java to Kotlin

A talk by Neil Power, who works at Hootsuite. This talk is about the experience of the adoption of Kotlin at Hootsuite. It is both a story of the journey from Java to Kotlin and the lesson learned to build a strategy to facilitate the migration from Java to Kotlin. It is an interesting talk for the people that are considering the implementation of such strategies in their workplace.

Sharing [Kotlin code across platforms] is Caring!

A talk by Eugenio Marletti, on how Kotlin can help with issues related to multi-platform apps. This is a talk on the experience of writing a multi-platform app, the problems related to developing it and how Kotlin can be used to write the business logic once. The rest will need to be specific for each platform.

Cats and Dogs

A talk by Michael May and Roman Piel, iOS and Android developers. A fun and practical talk on how Android and iOS teams can work together in a team: design the app together, maintain the API, etc. This is a talk about code and tecnical issues (e.g., how to design the API together), but also about the organizational aspects.

Kotlin World

Everything Kotlin: from new things you can do, to better ways to do the same things you already do. Talks about how to contribute to Kotlin or help your team work better, etc. There is something for everybody, whether you are searching for new ideas or to learn something.

Building Languages Using Kotlin

You may read about the experience and the best speech there: Building Languages Using Kotlin by Federico Tomassetti on another of our articles.

The Road to Kotlintown

Learning how to beautifully execute a heist in The Road to Kotlintown by @queencodemonkey and @RunChristinaRun #kotlinconf17 pic.twitter.com/bg8vn3fO0k

— Brenda Cook (@kenodoggy) 2 novembre 2017

A talk by Huyen Tue Dao and Christina Lee, developers at Pinterest and Atlassian. This is a code-base talk on how practically convert existing code to Kotlin and learn the Kotlin way of doing things. It is a pragmatic talk for new Kotlin users or people interested in joining the good side of the JVM.

How to Kontribute

A talk by Yoshinori Isogai on how to contribute to Kotlin development as an external contributor. This is a pragmatic talk on how to partecipate to Kotlin development, particularly on a Kotlin plugin. This is a very pragmatic talk dealing with things like setting up development environment (you will need the help), unit tests, etc. It is very useful if you want to contribute to the language.

Architectures Using Functional Programming Concepts

A talk by Jorge Castillo on functional programming for Kotlin. This a code-based talk on why you will want to use functional programming and how to use functionally concepts on Kotlin using Kategeory.io, a library that brings functional types to Kotlin. The examples are mostly based on Android issues, but they can be applicable to many situations.

RX Java with Kotlin in Baby Steps

A talk by Annyce Davis, a developer, author and speaker. This is an introductory talk about RxJava and reactive programming. It is a well designed lesson on the basics: operators, observers and observable.

Kotlin for the Pragmatic Functionalist

A talk by Paco Estévez García, a developer at Facebook. This is a talk on how you can pragmatically use functional programming with Kotlin: the language is ready today, this talk will show how to use it. He also show the issues still present. It mentions Kategory, a library which is the focus of another talk.

Kotlin EE: Boost your Productivity

A talk by Marcus Fihlon, a developer, lecturer and author. There is not an actual Kotlin EE framework, but this is a talk about using Kotlin with Java EE to create services of any size (nanoservices, microservices, etc.). This is a talk about theory and practice (i.e., code) to solve problems of enterprise developers.

Kotlinbots: Building Your Own Personal Robot Army

A talk by Adrián Catalan on how to use Android Things and how to develop software for Internet of Things devices (and robots). This is a pragmatic talk on how to develop with Android Things on Raspberry Pi to do things like switching on LEDs. So, it slightly oversells the robot army things, but it is cool nonetheless. The talk also shows the hardware part of the work: how to wire the actual wires to the board and the theory you need to work with electric circuits. It is quite an interesting talk for people willing to getting started on IoT development.

Inter-Reactive Kotlin Applications

A talk by Julien Viet, the Vert.x project lead at RedHat. This is a talk about using Kotlin to write inter-reactive Vert.x applications: perform asynchronous operations and receive events in a synchronous way. Eclipse Vert.x is a set of libraries to write application on the JVM (not necessarily with the IDE Eclipse). The talk contains both the theory and the practical aspect of writing reactive applications using Kotlin features (i.e., coroutines).

Two Stones, One Bird: Implementation Tradeoffs

A talk by Christina Lee, an Android developer at Pinterest. The title of the talk is a play on the common saying. The talk is about how to choose between two different viable options to achieve on objective. It discusses the tradeoffs of a few common programming problems with multiple solutions such as with/apply and let/also.

Kotlin for Data Science

Should we consider Kotlin for data science? Let’s see what @thomasnield9727 has to say about that! #kotlinconf17 pic.twitter.com/VqhhB58R6b

— Todd Ginsberg (@ToddGinsberg) 2 novembre 2017

A talk by Thomas Nield, author and developer. The talk is starts with an introduction to data science and its issues, then continues on why and how to best use Kotlin for data science. This talk is great if you work in an organization that need one platform to get the data scientists and developers on the same page. The author of this talk suggests to also look at kscript – Scripting Enhancements for Kotlin.

kscript – Scripting Enhancements for Kotlin

If you haven’t seen @holgerbrandl‘s talk at #kotlinconf17, definitely watch it. #kscript has some useful and interesting innovations critical for bringing #Kotlin to #DataScience https://t.co/BlVRJId83Y

— Thomas Nield (@thomasnield9727) 20 novembre 2017

A talk by Holger Brandl, data scientist at the Max Planck Institute. This is mainly a talk about kscript: a easy-to-use, very flexible, and almost zero-overhead solution to write self-contained mini-applications with Kotlin. Obviously it also has an introduction to why Kotlin was chosen and the tool developed for data science work. It is a great talk if you are interested in the practical aspects of doing data science with Kotlin, but also for general scripting.

Summary

KotlinConf was great and there was something for everybody: from real-word technical knowledge to experience ans help to better manage Kotlin projects and team. There were also interesting and unusual projects (i.e., robot army). The excitement for the future of Kotlin was palpable and we hope we are going to feel the same next year. What do you want to see next year?

The post All the Talks at KotlinConf, Organized and Commented appeared first on SuperKotlin.

Continue ReadingAll the Talks at KotlinConf, Organized and Commented

All the Talks at KotlinConf, Organized and Commented

The KotlinConf 2017 was on 2-3 november and it was a great conference. In this article we are going to present a short summary of the talks with links to their videos.

List of Talks

Understanding Kotlin

The talks you want to watch if you want to understand the language better: from introductory talks to deep dives.

Understand Every Line of Your Codebase

A talk by Boris Farber and Victoria Gonda, who also wrote the article: Java as your Kotlin Study Buddy. It is a talk centered on showing the Java equivalent of the Kotlin code you write and the bytecode produced by the Kotlin compiler. It is interesting especially for new Kotlin developers and people still using Java that want to see a bit of the Kotlin magic.

Introduction to Coroutines

Concept of coroutine looks amazing. I will need to play with it a little bit to get it to work though. @KotlinConf Introduction to Coroutines by Roman Elizarov https://t.co/Q7YoF6N2jF via @YouTube #kotlinconf17

— Anurag Chitnis (@AnuragChitnis) 17 novembre 2017

A talk by Roman Elizarov, who works on the Kotlin language at JetBrains. It is about one of the most exciting features of Kotlin: coroutines. In this talk you can learn why you need coroutines and how to use them with live examples.

Deep Dives into Coroutines on JVM

A talk by Roman Elizarov, who works on the Kotlin language at JetBrains. This is the deep and technical companion of the other talk by Elizarov on coroutines. It is about the technical aspects of the coroutines implementation on top of the JVM. It is a great talk for people that want to understand how coroutines work.

Idiomatic Interop

A talk by Kevin Most on Java-Kotlin interop. Kotlin and Java interop is great, but it is not perfect especially when invoking Kotlin code from Java code. In this talk you are going to know how to make the two languages work better together: from the strategies to the gotchas. This talk is perfect for Kotlin developers that have to take in account their Java users.

Kotlin Puzzlers

Lots of fun with #kotlinpuzzlers with @antonkeks at #kotlinconf17, some great laughs at the compilers expense! pic.twitter.com/Ldi6lQObes

— Neil Power (@NeilPower) 3 novembre 2017

A talk by Anton Keks on Kotlin puzzlers. This talk presents some interesting nuances of Kotlin through the use of small programs. It is a fun talk to watch if you want to test your understanding of Kotlin behavior. For instance, do you know what happens when you write

return throw return "Hello"

? Watch this talk to find out.

The Cost of Kotlin Language Features

A talk by Duncan McGregor on the costs in terms of code size and execution time of Kotlin. The talk is focused on the bytecode produced by the Kotlin compiler on the JVM. The author actually said that you shouldn’t care about such costs, but if you do the talk will shows you the small costs in terms of performance that some features of Kotlin have.

You Can, but Should You?

A talk by Mike Gouline, a software engineer who works in the health industry. This is a talk on how to be smarter in using Kotlin. It discusses and explains how to choose among the different features that Kotlin offers in a way that makes sense for your software. It does not just present the options (i.e., for vs foreach), but it gives you guidelines on how to make the choice.

It is a very interesting talk not only for Kotlin users, but for everybody that needs to learn how to better organized his code.

Deep Dive into Kotlin/Native

A talk by Andrey Breslav, the leader of Kotlin development at JetBrains. This is a talk about the inner workings of a prerelease feature of Kotlin/Native: now (soon) you could use it develop for iOS. The talk is linked to the keynote of the conference since it shows the internals of the app demoed there.

This is the best talk to watch if you are interested in understanding how Kotlin/Native and iOS work together.

Kotlin Types: Exposed

Kotlin Types: Exposed by @sveta_isakova #kotlinconf17 #sketchnotes pic.twitter.com/Hi7khgTdb3

— Chiu-Ki Chan (@chiuki) 4 novembre 2017

A talk by Svetlana Isakova, developer advocate at JetBrains and co-author of Kotlin in Action. This is a talk about Kotlin types interact with Java: what happens under the hood, what you should be aware of and explanations of some design choices made by JetBrains.

Android & Web

Talks specifically about Android, Web and KotlinJS.

Frontend Kotlin from the Trenches

A talk by Gaetan Zoritchak, on KotlinJS used for the frontend. This talk gives feedback on the journey and the technical challenges faced on developing a data visualization library: Data2viz.



A View State Machine for Network Calls on Android

A View State Machine for Network Calls on Android by @mandybess #kotlinconf17 #sketchnotes pic.twitter.com/AVwohUOGhr

— Chiu-Ki Chan (@chiuki) 2 novembre 2017

A talk by Amanda Hill on how to build a View State Machine for network calls on Android. If you are wondering why you should do that she will show you right away by building an app. Basically, it is a way to handle networking request in a way that is resistant to UI changes.

Real World Kotlin-Powered Android

A talk by James Williams, responsible for Android Curriculum at Udacity. This is about converting an Android app written in Java to Kotlin, bit by bit. It is practical and interesting way to understand some of issues involved.

Isomorphic Kotlin

A talk by Troy Miles on the server side of an Android isomorphic mobile system. The talk starts with an introduction on the issue, then continues on showing how to build a microservice with Ratpack, wire it, and deploy it on Heroku.

Going Serverless with Kotlin

A talk by Marcos Placona, who works as a developer evangelist at Twilio. This is a talk on the tools and processes to build mobile and IoT stuff with Kotlin and deploy it on AWS Lambda to go serverless with Kotlin. There are a few minutes of introduction to the advantages of going serverless and then he shows code.

How to Build a React App in Kotlin

A talk by Dave Ford on why it makes sense to use Kotlin on the web and how to build a React App with your favorite language. The talk is focused on KotlinJS and the web world. The main point of the talk is that using Kotlin is even better than using a templating system to write web interfaces (i.e., HTML). Essentially templating system are simple languages, but Kotlin is a better language that has typesafe-builders, the (internal) HTML DSL (kotlinx.html) and a few React wrappers.

Given that most Kotlin developers come from Java, this is a very interesting idea that you probably never thought about.

Spring

A few talks dedicated to the Spring Framework and its usage with Kotlin.

Bootiful Kotlin

A talk by Josh Long, author of 5 books and “the guy with most bugs per line of code on the Spring team”.

It is a demo talk about using Spring Boot with Kotlin.

Asynchronous Programming with Kotlin Coroutines in Spring

A talk by Konrad Kamiński on using coroutines for asynchronous programming in Spring. It is a code-based talk on how to use coroutines in Spring. It is quite specific, so it is great if you are interested in just that, but it also useful for current Java and Spring users to get the feel of how it is to work with Kotlin.

Why Spring Loves Kotlin

I’m really excited to learn why Spring Loves Kotlin, straight from @sdeleuze! #kotlinconf17 pic.twitter.com/EGQC7Vvax8

— Todd Ginsberg (@ToddGinsberg) 3 novembre 2017

A talk by Sebastien Deleuze, a Spring contributor working at Pivotal. This is a talk about using Kotlin for Spring applications. It starts with the reasons to choose Kotlin and then shows the various tools and features of the pair Kotlin and Spring. In this talk you will learn to transform a Spring Boot 1.0 Java + Javascript project into a Spring Boot 2.0 pure Kotlin project.

Working On Your Code

Talks about Kotlin tools, checking and generating your code programmatically.

Generating Kotlin Code

Generating Kotlin Code by @Strongolopolis @JakeWharton #kotlinconf17 #sketchnotes pic.twitter.com/uEJIYMLrgv

— Chiu-Ki Chan (@chiuki) 3 novembre 2017

A talk by Alec Strong and Jake Wharton, developers respectively at Square and Google. This is a talk about code generation to generate an API. It is a pragmatic talk: almost every slide features code. It is mostly focused on the JVM, but it also address a bit the multi-platform issues.

What’s New & Cool in Kotlin Tools

A talk by Dmitry Jemerov, the leader of the tools team for Kotlin at JetBrains. It is a demo of the new features you will get on the release 1.2. It is also useful to get to know a few practical aspects of building the cross-platform Kotlin platform.

Kotlin Static Analysis with Android Lint

Kotlin static analysis with Android Lint by @tornorbye #kotlinconf17 #sketchnotes pic.twitter.com/Qmhe8Tz9Bt

— Chiu-Ki Chan (@chiuki) 3 novembre 2017

A talk by Tor Norbye, tech lead for Android Studio. It starts with a bit of the philosophy of Android Lint (i.e., focus on Android issues, leave the generic ones to the IDE) before going to the meat of the tool. The tool can now also be used outside of Android, so it can be useful for everybody who uses Kotlin.

Lessons Learned Building a Build Tool

A talk by Cedric Beust, the creator of Android Gmail and TestNG. The talk is about Kobalt, a building system written in Kotlin with a simple DSL, inspired by Maven and Gradle. The talk explain the reason why it was created and how it was made.

Building Kotlin Applications at Scale with Gradle

A talk by Hans Dockter, creator of Gradle and founder of the company behind it. This is a talk about how to use Gradle and the Gradle plugin for Kotlin to build large applications. It is divided in two parts: a description of features and issues and a second practical part where you see how things works on an example.

Testing Kotlin at Scale: Spek

A talk by Artem Zinnatullin, on how to test at scale. This talk is about the why and how you can migrate thousands of tests from JUnit to Spek. Spek is a testing framework inspired by RSpec, designed to better organize your tests. It is an interesting talk for everybody that want to do tests with Kotlin and understanding how they can use Spek to organize large scale testing.

Experiences

Talks that focus on an experience the speaker had: their work at a specific company or for a certain project. Usually they have less code, and concentrate more on soft-skills or strategic choices.

Cords & Gumballs

A talk by Mike Hearn on the benefits and challenges of using Kotlin for an enterprise software and a small side-project. The enterprise software is Corda, the distributed ledger platform designed to record, manage and automate legal agreements between business partners. The project is written in Kotlin, but it has to support perfectly Java developers in the finance world, so it is an interesting talk for people that work in the enterprise world.

My Transition from Swift to Kotlin

A talk by Hector Matos, a senior iOS developer. The talk is both a story of the transition and a comparison between Swift and Kotlin. It is a good talk to show to your manager, if you need to persuade him or her to let you develop with Kotlin.

My Life as a Tech Transfer Monad

My Life as a Tech Transfer Monad by @headinthebox #kotlinconf17 #sketchnotes pic.twitter.com/4cvHRxo66Q

— Chiu-Ki Chan @ SF Bay Area (@chiuki) 3 novembre 2017

A talk by Erik Meijer, a computer scientist who works at Facebook and now is “he is on a quest to make uncertainty a first-class citizen in mainstream programming languages”. It is an interesting talk and indeed one of the most popular, but it is hard to describe it.

It is a talk with a lot of computer science and essentially is about trying to understand (i.e., abstracting) programming: the successes and failures that the author has encountered in this quest.

It is a great talk if you want to level up your understanding of programming.

Building and Deploying Netflix

A talk by Rob Fletcher who works at Netflix (Danny Thomas is mentioned in the abstract, but he does not appear). The talk is essentially half about the Netflix way of doing things and half about the reasons why the author of this talk chose Kotlin instead of other languages to build some tools used at Netflix.

Kickstarting Kotlin Culture: The Journey from Java to Kotlin

A talk by Neil Power, who works at Hootsuite. This talk is about the experience of the adoption of Kotlin at Hootsuite. It is both a story of the journey from Java to Kotlin and the lesson learned to build a strategy to facilitate the migration from Java to Kotlin. It is an interesting talk for the people that are considering the implementation of such strategies in their workplace.

Sharing [Kotlin code across platforms] is Caring!

A talk by Eugenio Marletti, on how Kotlin can help with issues related to multi-platform apps. This is a talk on the experience of writing a multi-platform app, the problems related to developing it and how Kotlin can be used to write the business logic once. The rest will need to be specific for each platform.

Cats and Dogs

A talk by Michael May and Roman Piel, iOS and Android developers. A fun and practical talk on how Android and iOS teams can work together in a team: design the app together, maintain the API, etc. This is a talk about code and tecnical issues (e.g., how to design the API together), but also about the organizational aspects.

Kotlin World

Everything Kotlin: from new things you can do, to better ways to do the same things you already do. Talks about how to contribute to Kotlin or help your team work better, etc. There is something for everybody, whether you are searching for new ideas or to learn something.

Building Languages Using Kotlin

You may read about the experience and the best speech there: Building Languages Using Kotlin by Federico Tomassetti on another of our articles.

The Road to Kotlintown

Learning how to beautifully execute a heist in The Road to Kotlintown by @queencodemonkey and @RunChristinaRun #kotlinconf17 pic.twitter.com/bg8vn3fO0k

— Brenda Cook (@kenodoggy) 2 novembre 2017

A talk by Huyen Tue Dao and Christina Lee, developers at Pinterest and Atlassian. This is a code-base talk on how practically convert existing code to Kotlin and learn the Kotlin way of doing things. It is a pragmatic talk for new Kotlin users or people interested in joining the good side of the JVM.

How to Kontribute

A talk by Yoshinori Isogai on how to contribute to Kotlin development as an external contributor. This is a pragmatic talk on how to partecipate to Kotlin development, particularly on a Kotlin plugin. This is a very pragmatic talk dealing with things like setting up development environment (you will need the help), unit tests, etc. It is very useful if you want to contribute to the language.

Architectures Using Functional Programming Concepts

A talk by Jorge Castillo on functional programming for Kotlin. This a code-based talk on why you will want to use functional programming and how to use functionally concepts on Kotlin using Kategeory.io, a library that brings functional types to Kotlin. The examples are mostly based on Android issues, but they can be applicable to many situations.

RX Java with Kotlin in Baby Steps

A talk by Annyce Davis, a developer, author and speaker. This is an introductory talk about RxJava and reactive programming. It is a well designed lesson on the basics: operators, observers and observable.

Kotlin for the Pragmatic Functionalist

A talk by Paco Estévez García, a developer at Facebook. This is a talk on how you can pragmatically use functional programming with Kotlin: the language is ready today, this talk will show how to use it. He also show the issues still present. It mentions Kategory, a library which is the focus of another talk.

Kotlin EE: Boost your Productivity

A talk by Marcus Fihlon, a developer, lecturer and author. There is not an actual Kotlin EE framework, but this is a talk about using Kotlin with Java EE to create services of any size (nanoservices, microservices, etc.). This is a talk about theory and practice (i.e., code) to solve problems of enterprise developers.

Kotlinbots: Building Your Own Personal Robot Army

A talk by Adrián Catalan on how to use Android Things and how to develop software for Internet of Things devices (and robots). This is a pragmatic talk on how to develop with Android Things on Raspberry Pi to do things like switching on LEDs. So, it slightly oversells the robot army things, but it is cool nonetheless. The talk also shows the hardware part of the work: how to wire the actual wires to the board and the theory you need to work with electric circuits. It is quite an interesting talk for people willing to getting started on IoT development.

Inter-Reactive Kotlin Applications

A talk by Julien Viet, the Vert.x project lead at RedHat. This is a talk about using Kotlin to write inter-reactive Vert.x applications: perform asynchronous operations and receive events in a synchronous way. Eclipse Vert.x is a set of libraries to write application on the JVM (not necessarily with the IDE Eclipse). The talk contains both the theory and the practical aspect of writing reactive applications using Kotlin features (i.e., coroutines).

Two Stones, One Bird: Implementation Tradeoffs

A talk by Christina Lee, an Android developer at Pinterest. The title of the talk is a play on the common saying. The talk is about how to choose between two different viable options to achieve on objective. It discusses the tradeoffs of a few common programming problems with multiple solutions such as with/apply and let/also.

Kotlin for Data Science

Should we consider Kotlin for data science? Let’s see what @thomasnield9727 has to say about that! #kotlinconf17 pic.twitter.com/VqhhB58R6b

— Todd Ginsberg (@ToddGinsberg) 2 novembre 2017

A talk by Thomas Nield, author and developer. The talk is starts with an introduction to data science and its issues, then continues on why and how to best use Kotlin for data science. This talk is great if you work in an organization that need one platform to get the data scientists and developers on the same page. The author of this talk suggests to also look at kscript – Scripting Enhancements for Kotlin.

kscript – Scripting Enhancements for Kotlin

If you haven’t seen @holgerbrandl‘s talk at #kotlinconf17, definitely watch it. #kscript has some useful and interesting innovations critical for bringing #Kotlin to #DataScience https://t.co/BlVRJId83Y

— Thomas Nield (@thomasnield9727) 20 novembre 2017

A talk by Holger Brandl, data scientist at the Max Planck Institute. This is mainly a talk about kscript: a easy-to-use, very flexible, and almost zero-overhead solution to write self-contained mini-applications with Kotlin. Obviously it also has an introduction to why Kotlin was chosen and the tool developed for data science work. It is a great talk if you are interested in the practical aspects of doing data science with Kotlin, but also for general scripting.

Summary

KotlinConf was great and there was something for everybody: from real-word technical knowledge to experience ans help to better manage Kotlin projects and team. There were also interesting and unusual projects (i.e., robot army). The excitement for the future of Kotlin was palpable and we hope we are going to feel the same next year. What do you want to see next year?

The post All the Talks at KotlinConf, Organized and Commented appeared first on SuperKotlin.

Continue ReadingAll the Talks at KotlinConf, Organized and Commented

All the Talks at KotlinConf, Organized and Commented

The KotlinConf 2017 was on 2-3 november and it was a great conference. In this article we are going to present a short summary of the talks with links to their videos.

List of Talks

Understanding Kotlin

The talks you want to watch if you want to understand the language better: from introductory talks to deep dives.

Understand Every Line of Your Codebase

A talk by Boris Farber and Victoria Gonda, who also wrote the article: Java as your Kotlin Study Buddy. It is a talk centered on showing the Java equivalent of the Kotlin code you write and the bytecode produced by the Kotlin compiler. It is interesting especially for new Kotlin developers and people still using Java that want to see a bit of the Kotlin magic.

Introduction to Coroutines

Concept of coroutine looks amazing. I will need to play with it a little bit to get it to work though. @KotlinConf Introduction to Coroutines by Roman Elizarov https://t.co/Q7YoF6N2jF via @YouTube #kotlinconf17

— Anurag Chitnis (@AnuragChitnis) 17 novembre 2017

A talk by Roman Elizarov, who works on the Kotlin language at JetBrains. It is about one of the most exciting features of Kotlin: coroutines. In this talk you can learn why you need coroutines and how to use them with live examples.

Deep Dives into Coroutines on JVM

A talk by Roman Elizarov, who works on the Kotlin language at JetBrains. This is the deep and technical companion of the other talk by Elizarov on coroutines. It is about the technical aspects of the coroutines implementation on top of the JVM. It is a great talk for people that want to understand how coroutines work.

Idiomatic Interop

A talk by Kevin Most on Java-Kotlin interop. Kotlin and Java interop is great, but it is not perfect especially when invoking Kotlin code from Java code. In this talk you are going to know how to make the two languages work better together: from the strategies to the gotchas. This talk is perfect for Kotlin developers that have to take in account their Java users.

Kotlin Puzzlers

Lots of fun with #kotlinpuzzlers with @antonkeks at #kotlinconf17, some great laughs at the compilers expense! pic.twitter.com/Ldi6lQObes

— Neil Power (@NeilPower) 3 novembre 2017

A talk by Anton Keks on Kotlin puzzlers. This talk presents some interesting nuances of Kotlin through the use of small programs. It is a fun talk to watch if you want to test your understanding of Kotlin behavior. For instance, do you know what happens when you write

return throw return "Hello"

? Watch this talk to find out.

The Cost of Kotlin Language Features

A talk by Duncan McGregor on the costs in terms of code size and execution time of Kotlin. The talk is focused on the bytecode produced by the Kotlin compiler on the JVM. The author actually said that you shouldn’t care about such costs, but if you do the talk will shows you the small costs in terms of performance that some features of Kotlin have.

You Can, but Should You?

A talk by Mike Gouline, a software engineer who works in the health industry. This is a talk on how to be smarter in using Kotlin. It discusses and explains how to choose among the different features that Kotlin offers in a way that makes sense for your software. It does not just present the options (i.e., for vs foreach), but it gives you guidelines on how to make the choice.

It is a very interesting talk not only for Kotlin users, but for everybody that needs to learn how to better organized his code.

Deep Dive into Kotlin/Native

A talk by Andrey Breslav, the leader of Kotlin development at JetBrains. This is a talk about the inner workings of a prerelease feature of Kotlin/Native: now (soon) you could use it develop for iOS. The talk is linked to the keynote of the conference since it shows the internals of the app demoed there.

This is the best talk to watch if you are interested in understanding how Kotlin/Native and iOS work together.

Kotlin Types: Exposed

Kotlin Types: Exposed by @sveta_isakova #kotlinconf17 #sketchnotes pic.twitter.com/Hi7khgTdb3

— Chiu-Ki Chan (@chiuki) 4 novembre 2017

A talk by Svetlana Isakova, developer advocate at JetBrains and co-author of Kotlin in Action. This is a talk about Kotlin types interact with Java: what happens under the hood, what you should be aware of and explanations of some design choices made by JetBrains.

Android & Web

Talks specifically about Android, Web and KotlinJS.

Frontend Kotlin from the Trenches

A talk by Gaetan Zoritchak, on KotlinJS used for the frontend. This talk gives feedback on the journey and the technical challenges faced on developing a data visualization library: Data2viz.



A View State Machine for Network Calls on Android

A View State Machine for Network Calls on Android by @mandybess #kotlinconf17 #sketchnotes pic.twitter.com/AVwohUOGhr

— Chiu-Ki Chan (@chiuki) 2 novembre 2017

A talk by Amanda Hill on how to build a View State Machine for network calls on Android. If you are wondering why you should do that she will show you right away by building an app. Basically, it is a way to handle networking request in a way that is resistant to UI changes.

Real World Kotlin-Powered Android

A talk by James Williams, responsible for Android Curriculum at Udacity. This is about converting an Android app written in Java to Kotlin, bit by bit. It is practical and interesting way to understand some of issues involved.

Isomorphic Kotlin

A talk by Troy Miles on the server side of an Android isomorphic mobile system. The talk starts with an introduction on the issue, then continues on showing how to build a microservice with Ratpack, wire it, and deploy it on Heroku.

Going Serverless with Kotlin

A talk by Marcos Placona, who works as a developer evangelist at Twilio. This is a talk on the tools and processes to build mobile and IoT stuff with Kotlin and deploy it on AWS Lambda to go serverless with Kotlin. There are a few minutes of introduction to the advantages of going serverless and then he shows code.

How to Build a React App in Kotlin

A talk by Dave Ford on why it makes sense to use Kotlin on the web and how to build a React App with your favorite language. The talk is focused on KotlinJS and the web world. The main point of the talk is that using Kotlin is even better than using a templating system to write web interfaces (i.e., HTML). Essentially templating system are simple languages, but Kotlin is a better language that has typesafe-builders, the (internal) HTML DSL (kotlinx.html) and a few React wrappers.

Given that most Kotlin developers come from Java, this is a very interesting idea that you probably never thought about.

Spring

A few talks dedicated to the Spring Framework and its usage with Kotlin.

Bootiful Kotlin

A talk by Josh Long, author of 5 books and “the guy with most bugs per line of code on the Spring team”.

It is a demo talk about using Spring Boot with Kotlin.

Asynchronous Programming with Kotlin Coroutines in Spring

A talk by Konrad Kamiński on using coroutines for asynchronous programming in Spring. It is a code-based talk on how to use coroutines in Spring. It is quite specific, so it is great if you are interested in just that, but it also useful for current Java and Spring users to get the feel of how it is to work with Kotlin.

Why Spring Loves Kotlin

I’m really excited to learn why Spring Loves Kotlin, straight from @sdeleuze! #kotlinconf17 pic.twitter.com/EGQC7Vvax8

— Todd Ginsberg (@ToddGinsberg) 3 novembre 2017

A talk by Sebastien Deleuze, a Spring contributor working at Pivotal. This is a talk about using Kotlin for Spring applications. It starts with the reasons to choose Kotlin and then shows the various tools and features of the pair Kotlin and Spring. In this talk you will learn to transform a Spring Boot 1.0 Java + Javascript project into a Spring Boot 2.0 pure Kotlin project.

Working On Your Code

Talks about Kotlin tools, checking and generating your code programmatically.

Generating Kotlin Code

Generating Kotlin Code by @Strongolopolis @JakeWharton #kotlinconf17 #sketchnotes pic.twitter.com/uEJIYMLrgv

— Chiu-Ki Chan (@chiuki) 3 novembre 2017

A talk by Alec Strong and Jake Wharton, developers respectively at Square and Google. This is a talk about code generation to generate an API. It is a pragmatic talk: almost every slide features code. It is mostly focused on the JVM, but it also address a bit the multi-platform issues.

What’s New & Cool in Kotlin Tools

A talk by Dmitry Jemerov, the leader of the tools team for Kotlin at JetBrains. It is a demo of the new features you will get on the release 1.2. It is also useful to get to know a few practical aspects of building the cross-platform Kotlin platform.

Kotlin Static Analysis with Android Lint

Kotlin static analysis with Android Lint by @tornorbye #kotlinconf17 #sketchnotes pic.twitter.com/Qmhe8Tz9Bt

— Chiu-Ki Chan (@chiuki) 3 novembre 2017

A talk by Tor Norbye, tech lead for Android Studio. It starts with a bit of the philosophy of Android Lint (i.e., focus on Android issues, leave the generic ones to the IDE) before going to the meat of the tool. The tool can now also be used outside of Android, so it can be useful for everybody who uses Kotlin.

Lessons Learned Building a Build Tool

A talk by Cedric Beust, the creator of Android Gmail and TestNG. The talk is about Kobalt, a building system written in Kotlin with a simple DSL, inspired by Maven and Gradle. The talk explain the reason why it was created and how it was made.

Building Kotlin Applications at Scale with Gradle

A talk by Hans Dockter, creator of Gradle and founder of the company behind it. This is a talk about how to use Gradle and the Gradle plugin for Kotlin to build large applications. It is divided in two parts: a description of features and issues and a second practical part where you see how things works on an example.

Testing Kotlin at Scale: Spek

A talk by Artem Zinnatullin, on how to test at scale. This talk is about the why and how you can migrate thousands of tests from JUnit to Spek. Spek is a testing framework inspired by RSpec, designed to better organize your tests. It is an interesting talk for everybody that want to do tests with Kotlin and understanding how they can use Spek to organize large scale testing.

Experiences

Talks that focus on an experience the speaker had: their work at a specific company or for a certain project. Usually they have less code, and concentrate more on soft-skills or strategic choices.

Cords & Gumballs

A talk by Mike Hearn on the benefits and challenges of using Kotlin for an enterprise software and a small side-project. The enterprise software is Corda, the distributed ledger platform designed to record, manage and automate legal agreements between business partners. The project is written in Kotlin, but it has to support perfectly Java developers in the finance world, so it is an interesting talk for people that work in the enterprise world.

My Transition from Swift to Kotlin

A talk by Hector Matos, a senior iOS developer. The talk is both a story of the transition and a comparison between Swift and Kotlin. It is a good talk to show to your manager, if you need to persuade him or her to let you develop with Kotlin.

My Life as a Tech Transfer Monad

My Life as a Tech Transfer Monad by @headinthebox #kotlinconf17 #sketchnotes pic.twitter.com/4cvHRxo66Q

— Chiu-Ki Chan @ SF Bay Area (@chiuki) 3 novembre 2017

A talk by Erik Meijer, a computer scientist who works at Facebook and now is “he is on a quest to make uncertainty a first-class citizen in mainstream programming languages”. It is an interesting talk and indeed one of the most popular, but it is hard to describe it.

It is a talk with a lot of computer science and essentially is about trying to understand (i.e., abstracting) programming: the successes and failures that the author has encountered in this quest.

It is a great talk if you want to level up your understanding of programming.

Building and Deploying Netflix

A talk by Rob Fletcher who works at Netflix (Danny Thomas is mentioned in the abstract, but he does not appear). The talk is essentially half about the Netflix way of doing things and half about the reasons why the author of this talk chose Kotlin instead of other languages to build some tools used at Netflix.

Kickstarting Kotlin Culture: The Journey from Java to Kotlin

A talk by Neil Power, who works at Hootsuite. This talk is about the experience of the adoption of Kotlin at Hootsuite. It is both a story of the journey from Java to Kotlin and the lesson learned to build a strategy to facilitate the migration from Java to Kotlin. It is an interesting talk for the people that are considering the implementation of such strategies in their workplace.

Sharing [Kotlin code across platforms] is Caring!

A talk by Eugenio Marletti, on how Kotlin can help with issues related to multi-platform apps. This is a talk on the experience of writing a multi-platform app, the problems related to developing it and how Kotlin can be used to write the business logic once. The rest will need to be specific for each platform.

Cats and Dogs

A talk by Michael May and Roman Piel, iOS and Android developers. A fun and practical talk on how Android and iOS teams can work together in a team: design the app together, maintain the API, etc. This is a talk about code and tecnical issues (e.g., how to design the API together), but also about the organizational aspects.

Kotlin World

Everything Kotlin: from new things you can do, to better ways to do the same things you already do. Talks about how to contribute to Kotlin or help your team work better, etc. There is something for everybody, whether you are searching for new ideas or to learn something.

Building Languages Using Kotlin

You may read about the experience and the best speech there: Building Languages Using Kotlin by Federico Tomassetti on another of our articles.

The Road to Kotlintown

Learning how to beautifully execute a heist in The Road to Kotlintown by @queencodemonkey and @RunChristinaRun #kotlinconf17 pic.twitter.com/bg8vn3fO0k

— Brenda Cook (@kenodoggy) 2 novembre 2017

A talk by Huyen Tue Dao and Christina Lee, developers at Pinterest and Atlassian. This is a code-base talk on how practically convert existing code to Kotlin and learn the Kotlin way of doing things. It is a pragmatic talk for new Kotlin users or people interested in joining the good side of the JVM.

How to Kontribute

A talk by Yoshinori Isogai on how to contribute to Kotlin development as an external contributor. This is a pragmatic talk on how to partecipate to Kotlin development, particularly on a Kotlin plugin. This is a very pragmatic talk dealing with things like setting up development environment (you will need the help), unit tests, etc. It is very useful if you want to contribute to the language.

Architectures Using Functional Programming Concepts

A talk by Jorge Castillo on functional programming for Kotlin. This a code-based talk on why you will want to use functional programming and how to use functionally concepts on Kotlin using Kategeory.io, a library that brings functional types to Kotlin. The examples are mostly based on Android issues, but they can be applicable to many situations.

RX Java with Kotlin in Baby Steps

A talk by Annyce Davis, a developer, author and speaker. This is an introductory talk about RxJava and reactive programming. It is a well designed lesson on the basics: operators, observers and observable.

Kotlin for the Pragmatic Functionalist

A talk by Paco Estévez García, a developer at Facebook. This is a talk on how you can pragmatically use functional programming with Kotlin: the language is ready today, this talk will show how to use it. He also show the issues still present. It mentions Kategory, a library which is the focus of another talk.

Kotlin EE: Boost your Productivity

A talk by Marcus Fihlon, a developer, lecturer and author. There is not an actual Kotlin EE framework, but this is a talk about using Kotlin with Java EE to create services of any size (nanoservices, microservices, etc.). This is a talk about theory and practice (i.e., code) to solve problems of enterprise developers.

Kotlinbots: Building Your Own Personal Robot Army

A talk by Adrián Catalan on how to use Android Things and how to develop software for Internet of Things devices (and robots). This is a pragmatic talk on how to develop with Android Things on Raspberry Pi to do things like switching on LEDs. So, it slightly oversells the robot army things, but it is cool nonetheless. The talk also shows the hardware part of the work: how to wire the actual wires to the board and the theory you need to work with electric circuits. It is quite an interesting talk for people willing to getting started on IoT development.

Inter-Reactive Kotlin Applications

A talk by Julien Viet, the Vert.x project lead at RedHat. This is a talk about using Kotlin to write inter-reactive Vert.x applications: perform asynchronous operations and receive events in a synchronous way. Eclipse Vert.x is a set of libraries to write application on the JVM (not necessarily with the IDE Eclipse). The talk contains both the theory and the practical aspect of writing reactive applications using Kotlin features (i.e., coroutines).

Two Stones, One Bird: Implementation Tradeoffs

A talk by Christina Lee, an Android developer at Pinterest. The title of the talk is a play on the common saying. The talk is about how to choose between two different viable options to achieve on objective. It discusses the tradeoffs of a few common programming problems with multiple solutions such as with/apply and let/also.

Kotlin for Data Science

Should we consider Kotlin for data science? Let’s see what @thomasnield9727 has to say about that! #kotlinconf17 pic.twitter.com/VqhhB58R6b

— Todd Ginsberg (@ToddGinsberg) 2 novembre 2017

A talk by Thomas Nield, author and developer. The talk is starts with an introduction to data science and its issues, then continues on why and how to best use Kotlin for data science. This talk is great if you work in an organization that need one platform to get the data scientists and developers on the same page. The author of this talk suggests to also look at kscript – Scripting Enhancements for Kotlin.

kscript – Scripting Enhancements for Kotlin

If you haven’t seen @holgerbrandl‘s talk at #kotlinconf17, definitely watch it. #kscript has some useful and interesting innovations critical for bringing #Kotlin to #DataScience https://t.co/BlVRJId83Y

— Thomas Nield (@thomasnield9727) 20 novembre 2017

A talk by Holger Brandl, data scientist at the Max Planck Institute. This is mainly a talk about kscript: a easy-to-use, very flexible, and almost zero-overhead solution to write self-contained mini-applications with Kotlin. Obviously it also has an introduction to why Kotlin was chosen and the tool developed for data science work. It is a great talk if you are interested in the practical aspects of doing data science with Kotlin, but also for general scripting.

Summary

KotlinConf was great and there was something for everybody: from real-word technical knowledge to experience ans help to better manage Kotlin projects and team. There were also interesting and unusual projects (i.e., robot army). The excitement for the future of Kotlin was palpable and we hope we are going to feel the same next year. What do you want to see next year?

The post All the Talks at KotlinConf, Organized and Commented appeared first on SuperKotlin.

Continue ReadingAll the Talks at KotlinConf, Organized and Commented

Building Languages using Kotlin – KotlinConf

I attended KotlinConf to give a presentation about Building Languages using Kotlin. It was an amazing experience. The organization was great, and the whole experience increased my enthusiasm towards Kotlin: I thought it was not possible and I was proved wrong.

It was very nice to meet not only other Kotlin enthusiasts but also a lot of developers from JetBrains. I am in awe of what that company is doing with Kotlin, with their IDEs and with Jetbrains MPS.

While you can read online statistics about growing Kotlin adoption is very different to meet people from top companies, coming from all around the world, eager to listen what is new about Kotlin. You really feel that the Kotlin community is growing.

I was mind blowed by the first keynote: the support for multi-platform Kotlin projects is awesome. Imagine writing modules that you can share in applications across the JVM, Android, iOS application and the browser. Isn’t it incredible? Well, get used to it, because it is here, it is real and it will have an impact on our lifes as developers. For details take a look at the KotlinConf Keynote Recap and if you cannot believe me take a look at the official app of the conference with modules running on the server, the browser, Android, and iOS.

Below there is the video of my presentation and here you can find the slides.

Building Languages using Kotlin – Code

You can get the code and subscribe to receive news from SuperKotlin.

The post Building Languages using Kotlin – KotlinConf appeared first on SuperKotlin.

Continue ReadingBuilding Languages using Kotlin – KotlinConf

Building Languages using Kotlin – KotlinConf

I attended KotlinConf to give a presentation about Building Languages using Kotlin. It was an amazing experience. The organization was great, and the whole experience increased my enthusiasm towards Kotlin: I thought it was not possible and I was proved wrong.

It was very nice to meet not only other Kotlin enthusiasts but also a lot of developers from JetBrains. I am in awe of what that company is doing with Kotlin, with their IDEs and with Jetbrains MPS.

While you can read online statistics about growing Kotlin adoption is very different to meet people from top companies, coming from all around the world, eager to listen what is new about Kotlin. You really feel that the Kotlin community is growing.

I was mind blowed by the first keynote: the support for multi-platform Kotlin projects is awesome. Imagine writing modules that you can share in applications across the JVM, Android, iOS application and the browser. Isn’t it incredible? Well, get used to it, because it is here, it is real and it will have an impact on our lifes as developers. For details take a look at the KotlinConf Keynote Recap and if you cannot believe me take a look at the official app of the conference with modules running on the server, the browser, Android, and iOS.

Below there is the video of my presentation and here you can find the slides.

Building Languages using Kotlin – Code

You can get the code and subscribe to receive news from SuperKotlin.

The post Building Languages using Kotlin – KotlinConf appeared first on SuperKotlin.

Continue ReadingBuilding Languages using Kotlin – KotlinConf

End of content

No more pages to load