Kotlin Abstract Factory

The factory of factories, 'Abstract Factory' makes creating objects that are part of some 'family' easy. It is another layer over concrete factories delivering client the factory instance for creating objects of a certain variant.

Kotlin Factory Method

After the `Static Factory Method` it's time for classic `Factory`. Factory is very useful and often used construction design pattern. Kotlin has interesting advantage thanks to `sealed` and `internal` classes, that are missing in Java.

Kotlin Static Factory Methods

`Static Factory Methods` known from Java have their place also in Kotlin, although they look and behave a bit different because there is no `static` word in Kotlin. Here I'll try to show how to use `companion object` for `Static Factory Methods` and more. PS: This whole post was supposed to be about `Factory Method` with just a short mention about static factory methods, but the topic becomes more interesting than I thought :)

Kotlin Builder Pattern

The Builder Design Pattern is one of most popular and useful construction patterns in software engineering. In this post I will try to explain it and show how you can use it with Kotlin. Sadly I often see implementations that are simple translation from Java rather that utilizing cool Kotlin syntactic sugar.

Code Review Retro

This is not a list of 'golden rules' of code review, there are many blogposts about it. Here I just try to perform retrospective my own experiences.

Ultimate Github Page Deployment

Deploy Jekyll blog (like this one) on GitHub is very easy. Unless, you want to use not whitelisted plugins... but it't still doable.

IntelliJ settings repo

I'm using a few computers (and few OS-es) where I run IntelliJ Idea and Android Studio, and keeping their settings the same way everywhere was always a bit painful. Until today when I learned about `settings repository` thing!

Shell script basics

If you are lazy and you know it clap your han... write shell scripts

Overlibrarization

Sharing code between projects with your own libraries is generaly a good thing, but it comes with a cost. I'd like to share some of my experience about it.

Android build hacks #3 - documentation with Dokka

Generating documentation with Dokka and publishing it on GitHub walkthrough