The pages are constructed from a journey to investigate what parts of a large scale python system logically should move to python, and record what is learnt from the investigation and migration.  When moving to Kotlin from python (or ruby or php or any non-java language) a problem is that most help assumes you are already have significant experience not just with Java, but the ecosystem around Java.

A key focus of these pages is to try to provide a deeper understanding of how program features work, using explanations that do not require the reader to already have a deep understanding of the details of java. It is in the area of providing this deeper understanding, that existing material most assumes java knowledge, and has nothing covering equivalents to the very different features from dynamic languages.

The other aspect is the decision to move code, and what code makes sense to move, is different when coming from a dynamic language than with Java.

TL;DR  (or too long, didn’t read).  The text below tells you these pages have details, but reading just the headings within the page, or ‘TL;DR’ hints can allow you to skip details in pages, when you just want an overview. so this TL;DR becomes…”skip this welcome and go to contents to find what you seek”.

Kotlin is a language that can bring a revolution to programming.  Not because Kotlin is a completely new way to program, as Kotlin is not a new way to program.  But what Kotlin can do, is provide the very best know techniques available to all programmers, regardless of what they need to code.  And that is a breakthrough.  ‘The king is dying’ post may make this point clearer.

Most introductions to kotlin explain how the language differs from java. To use those introductions to kotlin may even require learning java first, which is rather silly if, for your use, kotlin will be replacing java!

These pages will provide an overview and reference for those who do know how to program, but know python rather than java.  You could use the existing tutorials that assume you know java, and then refer to these pages when a feature needs explaining without using an explanation written in terms of Java.

Why learn kotlin if you know python may explain why people with a python background may wish to learn kotlin.

The level of python expected is to the level where imports and classes are both understood.  If not at this level with python, then it may be best to consider a kotlin course with no assumed knowledge. These pages may still be useful, particularly the background, but the coding section may assume knowledge not yet covered.

These pages are still new….and still being put in place over the next two weeks.

The first background pages are now in place although more will be added.  The categories section of each page should function as a ‘table of contents’ .  The first coding page is now in place, but it is only the start.