I have several post about the PronounceMe project experiments - automatic video and voice generator for English learners. If you missed previous posts please review #pronounceMe for more information about the project, ideas behind and some statistics. In this post I'd focus on the technical implementation with some diagrams and noticeable code snippets.
kotlin
Functional Kotlin part 4: collections manipulation
This is a part 4 of the #kotlin-showoff series and it's going to be about the standard functions over the collections(mostly iterables to be precise) allowing developer to express data modification in the clean and functional way.
General convention
Although one might think that kotlin has inherited all the base collection types from the Java it's not quite true. Kotlin transparently maps existing Java collections into the Kotlin by using some tricks such as typealiasing. Collections hierarchy in Kotlin make code even more safer by imposing separation between mutable and immutable data structures. Take a look on the interfaces diagram:
Functional kotlin part 3: scoping functions
In
For folks who got lost on the word "extension functions" - it's a way to attach a function or property to the instances of the existing classes. For example, val d = 10.twice()
It's very much like Util
twice(int)
but done in a very clean way. Visually it looks like you're calling a member of the class, but in reality, the compiler calls your function passing receiver as an argument.
Functional kotlin part 2: elvis operator
Continuing series of posts #kotlin-showoff about functional constructions in kotlin I want to
Essentially, elvis operator lvalue ?: rexpression is returning left value if it's not null
or executes rexpression otherwise. The crazy thing about kotlin is most of the constructions are expressions and that gives another way to express business logic.
Functional kotlin part 1: safe calls
For the seasoned Java
This is a first of this series of posts unioned by tag #kotlin-showoff
Presentation – GCP APIs with kotlin
I was invited for the talk as part of kotlin/everywhere at GDG Cloud London meetup on June 8th 2019. Unlike previous talks in this one I focused on the live coding part after brief intro into the language.
The demo project I prepared is a web site allowing user to upload pictures into GCP Storage, automatically annotate content using Vision API, synthesise voice which describes content of the image.
Kotlin Presentation – GDG Reading Meetup @ Spaces, Reading 21 Feb 2019
Just returned from meetup where I had a talk about kotlin language - "Why Kotlin? Why now?"
The talk took place in Spaces, Reading on 21st of February 2019 and was organised by Google Developer Group Reading, namely by Chris Guest and his team.
In this talk, I highlighted reasons for learning one more language, guided through most noticeable features. In the second part, we had a live demo - kwitter REST web server.
I found people there were very friendly, it feels like they know each other for a long time. Really nice atmosphere and good vibes!
Presentation “kotlin 101 by example” @ Gran Canaria
Recently I had a talk at event organised by Google Developer Group community at lovely island Gran Canaria, Spain
Presentation “Data Mining 101” @ Santander
I had a talk "Data Mining Toolbox" in University of Cantabria, Santander, Spain organized by meetup group "Data Science Santander" on November 9th, 2017
It was my first public presentation on this topic where I accumulated some my experience in html data extraction and processing.
Safe and sound code with kotlin
Following my first talk about writing safe code in kotin at London Kotlin Meetup #2 I recently had one in Saint-Petersburg. It was organised by Spb Google Developers Group, namely by Oleg Makarov. Event took place in the most appropriate place - place where kotlin was born - Jetbrains "Universe" Office at Vasilyevskiy island (it's not kotlin island as someone might think :D).