When will your project ‘grow up’ and require typesafe code?

There is common belief that after an initial very agile development period,  "grown up projects should switch to a static typed language".  This also raises the question, "are type-safe languages less suitable for early stage development?"  This page considers the evidence for these beliefs, plus considers if there is a benefit to starting dynamic and… Continue reading When will your project ‘grow up’ and require typesafe code?

Class Level Objects, Companion Objects & Instances

Topics for this section: Class Level Objects & Companion Objects:  Key Terminology. the simplest case - one object type Python - an additional object type requires precise terminology Kotlin: the companion object equates to the Python class object Class & Companion Variables and Methods vs instance methods and variables  Terminology for Clarity: Class Level Object,… Continue reading Class Level Objects, Companion Objects & Instances

Implementation: what is a practical approach?

Any software team who is considering moving to kotlin, must by definition, be currently using at least one alternative language.  To change languages, and ecosystems, is a big step.  One of the key features of kotlin is how easily and seamlessly a project can migrate from java.  Currently, that same ease of migration is far… Continue reading Implementation: what is a practical approach?

Machine Code and Global Memory

updated 1 Jan 2020 To understand how memory works, it can be useful to consider how the CPU itself works, and what follows from that is how memory works.  Languages are built on these underlying principles and automate using the different types of memory. This page uses a 'hypothetical programmable calculator' (Magic Calculator), to illustrate… Continue reading Machine Code and Global Memory

OOP vs Functional: No contest!

Moving to kotlin, the question can arise: "should I program in OOP (Object Oriented Programming) style, or move to Functional programming?".  This page examines reviews what Object Oriented programming really means, what functional programing is, and outlines how there is no incompatibility if the correct approach to OOP is in place, and the two paradigms… Continue reading OOP vs Functional: No contest!