Nagyban hozzájárul az is.
Programozási paradigmák tudják befolyásolni komolyabb mértékben a rendszer komplexitását, de ez a fejlesztőkön múlik hogyan használják rosszul vagy jól.
Erről is szól a poszt, hogy nem kell átírni, lehet hozzáfejleszteni, vagy csak a kritikus részeket átírni.
Persze, lehet ilyet csinálni, ahogy írtam is, de ez növeli a karbantartás és fejlesztés költségét. Egy polyglot kódbázishoz minden azon dolgozó fejlesztőnek fel kell vennie az új tudást. Ez hatással van a tanulási görbére, és behoz egy állandó problémát az új fejlesztések esetén. Az új igények miatt refaktorálni kellene a régi kódot, felmerül a kérdés, hogy akkor írjuk át az egészet az új nyelvre, vagy fektessünk energiát a régibe?
Az automatikus kódtranszformációtól engem egy picit ráz a hideg, hogy az emberileg mennyire marad majd karbantartható, de biztos van az a kiindulási állapot, amikor ez már nem oszt vagy szoroz.
Egyáltalán nem új nyelvről van szó, idestova 11 éves.
Érdemi népszerűségre 2017-ben tett szert, mikor Androidon támogatott nyelv lett. Java-s léptékben a Kotlin még fiatalnak számít.
Jó fejlesztőket sok esetben könnyebben találsz olyan nyelvekhez, amik korszerűek és/vagy nagy potenciállal rendelkeznek a jövőt illetően.
Nekem nem ez a tapasztalatom. Go (vagy Rust) fejlesztőket is baromi nehéz találni, és ezek még mainstreamnek számítanak. Az egyéb képességek ezen a ponton még képbe sem jöttek. Biztos vannak olyan nyelvek, amik determinálják a potenciális jelentkezők képességeit és/vagy korábbi tapasztalatait (Haskell, Clojure, Erlang, stb), de általánosságban nem érzem úgy, hogy ez jellemző lenne.