{"id":3650,"date":"2019-04-03T15:59:01","date_gmt":"2019-04-03T15:59:01","guid":{"rendered":"https:\/\/voxxeddays.com\/minsk\/?p=3650"},"modified":"2019-04-03T15:59:01","modified_gmt":"2019-04-03T15:59:01","slug":"how-we-developed-channel-algorithms-in-kotlin-coroutines","status":"publish","type":"post","link":"https:\/\/voxxeddays.com\/minsk\/how-we-developed-channel-algorithms-in-kotlin-coroutines.html","title":{"rendered":"How we developed channel algorithms in Kotlin coroutines"},"content":{"rendered":"<p><a><\/a>[vc_row][vc_column][vc_empty_space height=&#8221;70px&#8221;]<div class=\"speakers  \" >\n  \t\t\t<div class=\"\">\n                <div class=\"first_line \" ><\/div>\n    \t\t\t            <div class=\"first_title \" >\n                                <p>\n                                How we developed channel algorithms in Kotlin coroutines\n                                <\/p>\n    \t\t\t            <\/div>\n   \t\t\t\t            <div class=\"first_description\">\n                                <p>\n                                Most programming languages have been introducing asynchronous programming mechanisms. Kotlin, for its part, implemented coroutines which use channels to communicate with each other. Therefore, high-load applications depend on those channels performance, so they need to be implemented in an efficient and scalable way.<\/p>\n<p>In this talk, we will discuss channel algorithms in other programming languages, how we in Kotlin developed our solution, which challenges and subtle aspects we encountered during this process, and whether we managed a real improvement of the existing solutions.<\/p>\n<table class=\"custom-info\">\n<tr>\n<td>Main language<\/td>\n<td>Russsian Proposal<\/td>\n<\/tr>\n<tr>\n<td>Audience level<\/td>\n<td>Expert &amp; Senior<\/td>\n<\/tr>\n<tr>\n<td>Type of presentation<\/td>\n<td>Slides only<\/td>\n<\/tr>\n<\/table>\n\n                                <\/p>\n                            <\/div>\n                            <div class=\"mini_gap\"><\/div>\n                <div class=\"speakers_row\">\n                    <div class=\"speakers_image\" style=\" background-image: url(https:\/\/voxxeddays.com\/minsk\/wp-content\/uploads\/sites\/42\/2019\/04\/Nikita-Koval.jpg)\">\n                    <\/div>\n                    <div class=\"centred\">\n                        <div class=\"speakers_description \">\n                            <h3>Nikita Koval<\/h3>\n                            <small><\/small>\n                            <br>\n\t\t\t\t\t        <p>\n\t\t\t\t\t        <a><\/a>Nikita works on algorithms for coroutines in the Kotlin team and has been getting a PhD at IST Austria. In addition, he teaches a course on concurrency programming at ITMO University and is interested in program analysis and verification.<br>\r\n<table class=\"custom-info\">\r\n  <tr>\r\n    <td><i class=\"fa fa-building twitter-link\"><\/i> Company<\/td>\r\n    <td>JetBrains<\/td> \r\n  <\/tr>\r\n  <tr>\r\n    <td><i class=\"fa fa-twitter twitter-link\"><\/i> Twitter<\/td>\r\n    <td><a class=\"twitter-link\" href=\"https:\/\/twitter.com\/nkoval_\" target=\"_blank\" rel=\"noopener\">nkoval_<\/a><\/td> \r\n  <\/tr>\r\n<\/table>\n\t\t\t\t\t        <\/p>\n                        <\/div>\n                    <\/div>\n                <\/div>\n\t\t\t\t\n\t\t\t    <div class=\"clear\">\n\t\t\t    <\/div>\n            <\/div>\n\t\t<\/div>[\/vc_column][\/vc_row]\n","protected":false},"excerpt":{"rendered":"<p>[vc_row][vc_column][vc_empty_space height=&#8221;70px&#8221;][\/vc_column][\/vc_row]<\/p>\n","protected":false},"author":7942,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[46],"tags":[60,59,49],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v15.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How we developed channel algorithms in Kotlin coroutines<\/title>\n<meta name=\"description\" content=\"Voxxed Days Minsk is a biggest Java Conference in Belarus and first Voxxed Days conference at the CIS region. Voxxed Days Minsk \u2013 is a hot combination of Java world known rock stars and jaw-dropping content for those truly inspired by the technology.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/voxxeddays.com\/minsk\/how-we-developed-channel-algorithms-in-kotlin-coroutines.html\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How we developed channel algorithms in Kotlin coroutines\" \/>\n<meta property=\"og:description\" content=\"Voxxed Days Minsk is a biggest Java Conference in Belarus and first Voxxed Days conference at the CIS region. Voxxed Days Minsk \u2013 is a hot combination of Java world known rock stars and jaw-dropping content for those truly inspired by the technology.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/voxxeddays.com\/minsk\/how-we-developed-channel-algorithms-in-kotlin-coroutines.html\" \/>\n<meta property=\"og:site_name\" content=\"Voxxed Days Minsk Developers Conference\" \/>\n<meta property=\"article:published_time\" content=\"2019-04-03T15:59:01+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/voxxeddays.com\/minsk\/wp-content\/uploads\/sites\/42\/2020\/03\/Vox-oct-nov-20-cover1500x500.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1500\" \/>\n\t<meta property=\"og:image:height\" content=\"500\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\">\n\t<meta name=\"twitter:data1\" content=\"aliaksandrkazhukhouski\">\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\">\n\t<meta name=\"twitter:data2\" content=\"1 minute\">\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/voxxeddays.com\/minsk\/#website\",\"url\":\"https:\/\/voxxeddays.com\/minsk\/\",\"name\":\"Voxxed Days Minsk Developers Conference\",\"description\":\"Welcome to Voxxed Days Minsk\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":\"https:\/\/voxxeddays.com\/minsk\/?s={search_term_string}\",\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/voxxeddays.com\/minsk\/how-we-developed-channel-algorithms-in-kotlin-coroutines.html#webpage\",\"url\":\"https:\/\/voxxeddays.com\/minsk\/how-we-developed-channel-algorithms-in-kotlin-coroutines.html\",\"name\":\"How we developed channel algorithms in Kotlin coroutines\",\"isPartOf\":{\"@id\":\"https:\/\/voxxeddays.com\/minsk\/#website\"},\"datePublished\":\"2019-04-03T15:59:01+00:00\",\"dateModified\":\"2019-04-03T15:59:01+00:00\",\"author\":{\"@id\":\"https:\/\/voxxeddays.com\/minsk\/#\/schema\/person\/3c270bcaedccad1522ffd757b93ad87f\"},\"description\":\"Voxxed Days Minsk is a biggest Java Conference in Belarus and first Voxxed Days conference at the CIS region. Voxxed Days Minsk \\u2013 is a hot combination of Java world known rock stars and jaw-dropping content for those truly inspired by the technology.\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/voxxeddays.com\/minsk\/how-we-developed-channel-algorithms-in-kotlin-coroutines.html\"]}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/voxxeddays.com\/minsk\/#\/schema\/person\/3c270bcaedccad1522ffd757b93ad87f\",\"name\":\"aliaksandrkazhukhouski\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/voxxeddays.com\/minsk\/#personlogo\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/823e2bec3b8033f074da9766158032f1?s=96&d=mm&r=g\",\"caption\":\"aliaksandrkazhukhouski\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","_links":{"self":[{"href":"https:\/\/voxxeddays.com\/minsk\/wp-json\/wp\/v2\/posts\/3650"}],"collection":[{"href":"https:\/\/voxxeddays.com\/minsk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/voxxeddays.com\/minsk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/voxxeddays.com\/minsk\/wp-json\/wp\/v2\/users\/7942"}],"replies":[{"embeddable":true,"href":"https:\/\/voxxeddays.com\/minsk\/wp-json\/wp\/v2\/comments?post=3650"}],"version-history":[{"count":0,"href":"https:\/\/voxxeddays.com\/minsk\/wp-json\/wp\/v2\/posts\/3650\/revisions"}],"wp:attachment":[{"href":"https:\/\/voxxeddays.com\/minsk\/wp-json\/wp\/v2\/media?parent=3650"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/voxxeddays.com\/minsk\/wp-json\/wp\/v2\/categories?post=3650"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/voxxeddays.com\/minsk\/wp-json\/wp\/v2\/tags?post=3650"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}