Published inKt. Academy·Aug 17, 2020Best practices coursesKt. Academy is not only about teaching Kotlin. We are great at teaching best practices too. You have probably heard about our Effective Kotlin course, but recently Włodek Krakowski joined our team of trainers with his workshops:1 min read1 min read
Published inKt. Academy·Aug 12, 2020New amazing articlesIt’s been a while since our last Medium newsletter and many great articles were published here in Kt. Academy. Let’s make a fast review of them all. Effective Kotlin series Item: Consider aggregating elements to a map Excluded Item: Use tail recursion to achieve efficient recurrence Enum vs Sealed class — which one…Kotlin1 min readKotlin1 min read
Published inKt. Academy·May 26, 2020Best Kotlin free online coursesAs for many languages, there are many free courses teaching Kotlin online. Many of them are made by JetBrains or Google, who are interested in us learning Kotlin, but there are also some made by the community members. Let’s see how you can learn Kotlin for free. JetBrains AcademyCourses4 min readCourses4 min read
Published inKt. Academy·May 12, 2020How to learn programming in 9 monthsNowadays, because of the quarantine, many people cannot do their job. They have a lot of time, but an uncertain future. In that time, programmers seem to be doing great. Not only we can do our job remotely perfectly well, but also demand for our services grew. Willing to help…Programming9 min readProgramming9 min read
Published inKt. Academy·Apr 20, 2020Item: Consider aggregating elements to a mapIt is not uncommon to have a bigger set of elements we need to access many times. It might be: A cache — data that we download from some service and then keep in local memory to access them more quickly A repository with data loaded from some file An…Kotlin4 min readKotlin4 min read
Published inKt. Academy·Mar 16, 2020Enum vs Sealed class — which one to choose?Update: Here is the newest version of this article. TL;DR: Enums have supporting functions like valueOf, values or enumValues what makes them easier to iterate over or serialize. Just like classes, they can have custom methods or hold data, but always one per enum value. They are perfect to represent…Enum5 min readEnum5 min read
Published inKt. Academy·Dec 2, 2019Excluded Item: Use tail recursion to achieve efficient recurrenceThis was meant to be an item in the Effective Kotlin (without memes), although I decided to not include it in the final book due to limited tailrec capabilities and, well, limited utility of this modifier. …Programming8 min readProgramming8 min read
Published inKt. Academy·Nov 29, 2019Effective Kotlin printed versionLately, the most common question people ask me is not “How are you doing?” but instead, “When Effective Kotlin will be available in print?”. I honestly do everything I can to make it as soon as possible, but when you are bound to provide high quality, you are not a…Kotlin3 min readKotlin3 min read
Published inKt. Academy·Oct 21, 2019The problem with extension functionsExtension functions — functions that are used like member functions, but yet defined outside of the class — are a great feature and loved by many. Although they started being overused what leads to problems we don’t know how to solve yet. Instead, you can see how some libraries avoid…Kotlin11 min readKotlin11 min read
Published inKt. Academy·Sep 17, 2019Item 30: Consider factory functions instead of constructorsUpdate: Here is the newest version of this article. This is a part of the book Effective Kotlin. Conteptually, an extension of this article by the same author, that base on Item 1 from the book Effective Java by Joshoua Bloch. The most common way for a class to allow…Kotlin12 min readKotlin12 min read