Hoi iedereen! Als Nederlandse Kotlinfan voel ik me...
# dutch
j
Hoi iedereen! Als Nederlandse Kotlinfan voel ik me ook aangetrokken om hier wat te vertellen. Ik heb Java geleerd op de universiteit als eerste echte programmeertaal, dus de stap was vrij makkelijk. Ik begon met Kotlin sinds Google het aankondigde voor Android en heb het dus geleerd in Android studio door gewoon Java bestanden om te zetten eigenlijk. Ik heb een paar apps gemaakt met de taal en begon ernaast ook andere dingen te programmeren in Kotlin. Projecten op de universiteit probeerde ik altijd te maken in Kotlin waar mogelijk (lukte me vaak niet om groepsgenoten te overhalen maar aangezien ik meestal de "programmeur" in het groepje ben heb ik het laatste woord, dus yay, Kotlin haha. Gelukkig is de taal goed leesbaar en te begrijpen). Ik heb een React website gemaakt in Kotlin/JS voor een opdracht. Was niet heel makkelijk maar ik heb er wel veel van geleerd en zelfs een blogpost geschreven er over. Ik heb geprobeerd een Kotlin Multiplatform library te schrijven voor Home Assistant waar ik ook veel van geleerd heb. Staat momenteel stil omdat ik iets wil wat de taal (nog) niet kan (suspend properties) en dat zou mijn API een stuk minder mooi maken. Plus het is een beetje langzaam soms... Sneller dan AppDeamon, maar langzamer dan de native automations van Home Assistant (Zegt je waarschijnlijk niet zo veel tenzij je Home Assistant kent, maar dat maakt niet uit). Ik heb zelfs gekeken naar compiler plugins maar dat is nog best pittig. Momenteel ben ik bezig met mijn Thesis waarvan ik implementaties (natuurlijk) ook in Kotlin schrijf. Hij gaat over data engineering en gebruikt Viktor en Apache Spark, dus ik gebruik de kotlin-spark-api library in mijn project. Ik ben tijdens het werken alleen wel tegen veel dingen aangelopen die nog niet lekker werkten met die API, maar elke keer als ik zoiets tegenkwam heb ik gewoon een issue of pull request gemaakt en er zijn er al bijna een stuk of 10 geaccepteerd dus hopelijk maakt dit Kotlin voor data scientist die Spark willen gebruiken extra aanlokkelijk :). Ben benieuwd wat ik nog meer mag gaan doen in de toekomst! :)
m
nice, Ik hoop ook echt dat Kotlin meer tractie gaat krijgen bij data scientist maar zoals je ook zegt er zit nog veel development in. Wel supper top dat je voor je Thesis Kotlin gebruikt. Ik heb zelf nog geen React website gemaakt met Kotlin/JS, maar wel met Javascript en Typescript zelf en vraag me wel af of het beter is met Kotlin. Ik zou ook graag wat meer willen te weten te komen wat je met Kotlin Multiplatform hebt gedaan. Ben niet helemaal mee met Home Assistant maar ben zeker wel geintersseerd om dingen over IOT te leren met Kotlin.
j
Ik weet het niet zo goed voor React. React is namelijk geoptimaliseerd rondom JavaScript fratsen en objecten en het werkt dus alleen als je je Kotlincode op een erg specifieke manier typt. Hij is al een beetje verouderd, maar dit is wat ik er over geschreven heb: https://discuss.kotlinlang.org/t/react-in-kotlin-js-what-i-learned-long-but-useful-read/16168 Bottom line is dat je voor React Kotlin wél goeie typing hebt maar ook redelijk wat boilerplate code. Plus andere JS/TS libraries gebruiken is nog wat lastig. Wordt wel steeds beter! Ik ben wel benieuwd naar Compose for web eigenlijk. Denk dat dat in de toekomst wel de go-to manier wordt om websites te maken met Kotlin. (Nou ja, niet alleen websites, ook apps, desktop programma's etc. Beetje wat React Native probeert, maar dan beter, want dat kan ook gewoon Kotlin Multiplatform gebruiken). Wat ik met multiplatform deed was niet heel erg speciaal hoor. Je kan met Home Assistant communiceren met een API en die library was eigenlijk een Type-safe wrapper daaromheen. Ik besloot om hem multiplatform te maken zodat de library op alle platformen gebruikt kon worden als je dat zou willen. In praktijk betekende dat dat ik geen Java libraries kon gebruiken in de API, alleen multiplatform libraries zoals ktor en korlibs' libraries. Maar ik heb nooit de hele potentie gebruikt. Het was meer een soort future-proofing om het grootste gedeelte van de library in de common module te stoppen van het Kotlin-project.
🤔 1
m
Ik ben ook benieuwd wat compose nog allemaal gaat worden het enige wat ik mij dan wel wat afvraag hoe ze met native componenten om zullen gaan. Het zou wel natuurlijk heel makelijk zijn voor te developen want uiteindelijk zou je dan eigenlijk bijna alles in een shared folder kunnen zetten van state tot matching components dan heb je enkel ios die nog met swiftui zit maar wat ik niet heel er als een probleem zie
j
Ja je zal dan waarschijnlijk een soort overkoepelende componenten krijgen met widgets die werken op alle platformen. Beetje net als React Native denk ik.