Data Science with Kotlin


Explore Kotlin’s Advanced Functional Programming

Since May 2017 Kotlin released by Google, 12.8% Java developers have converted to Kotlin, yet they still keep to the OO spirit of Java (for Interoperability) , not taking full advantage of FP capability of Kotlin. The OO Design Patterns of Android Java still being used instead of the FP more elegant “Monadic” Design.

1. Interview with Kotlin Designer:

2. Android Studio 3.0 Released :

2a. Android Studio v3.0 with Kotlin built-in & many improvements.

(The previous stable v2.3 needs seperate Kotlin plug-in)

2c: Gradle upgrade

3. Inner / Infix Function

4. Test (Mockito)

Kluent library:

5. Function vs Procedure vs MethodKotlin simplifies all 3 into 1 : Function which always returns a value or UNIT.

View story at

6. Kotlin has which Java lacks … “with“, “?”, …

7. Kotlin Operator Overloading aka “Convention”: ‘plus’ / ‘+’

8. JVM Byte Code Generation:

9. Reified Types

10. SICP: Sequence as conventional interfaces: eg. flatmap, map, reduce, fold


12. Generic : Kotlin入门(11)江湖绝技之特殊函数

13. Array <String>: Kotlin入门(4)声明与操作数组

14. ViewPager (Horizontal Swipe)

15. Kotlin 1.2 Beta & Multiplatform iOS

16. Kotlin Edu ( Android Studio 3.0)

17. Kotlin Style Guide

18. Android Layout Foundamental – ConstraintLayout

19. Android SDK

20. Javalin v1.0 – Web Framework for Java + Kotlin

21. Ten Modern Features (Kotlin, Clojure, Javascript, Swift…)

View story at

22. Function literals with receiver

23. Sealed classes: (restricted types no “else”)

24. Android Intent

直观 数学 Intuition in Abstract Math

Can Abstract Math be intuitive, ie understood with concrete examples from daily life objects and phenomena ?

Yes! and Abstract Math should be taught by intuitive way!

1. 直观 线性空间 : Intuition in Linear Space

(Part I & II) 矩阵 (Matrix), 线性变换 (Linear Transformation)

(Part III)

Animation: English (Chinese subtitles)

2. 直观 群论 (Intuition in Group Theory)

What is Motif (Motive 目的)

Below is an excellent intuitive explanation (in Chinese) of the abstract concept Motif by Grothendieck:

Brief SummaryMotif is the source of all “beautiful things” expressed in different forms.

Example : God created Natural Numbers (N), we express N in different forms: Binary (0, 1), Decimal (0, 1, 2 …9), Hexadecimal (0,1, 2…9, a, b, c, …f), etc. However, the “Motif” behind these forms is they all follow for (+, *) operations the same TWO Laws : 1) Commutative; 2) Distributive.

Similarly, in Algebraic Geometry applying the cohomology from Algebraic Topology: étale cohomology, crystalline cohomology, de Rham cohomology are the different forms (~ Binary, Decimal, Hexadecimal), factored through the common “Motif” of the Universal cohomology (~N).

[My Analogy in IT Language]:
Motif is like Interface or Generic, it spells out only the specification, leaving out the implementation (method) in actual classes / functions.

[怎麼理解代數幾何概念 motive?]

Ref: Alain Connes [Paragraph : Motif in a Nutshell]