• 4 Posts
  • 72 Comments
Joined 1 year ago
cake
Cake day: June 19th, 2023

help-circle

















  • Unpopular opinion perhaps, but I rather have a language that allows me to implement hacky solutions than one that requires me to completely scrap and rearchitect everything.

    I for example once had to overwrite a dozen or so of prototype methods in a JS class because the library a we were using just fell apart when doing certain things inside a Shadow DOM - it was a library that was released long before that feature. And completely rewriting huge chunks of code that interacted with that library would have wasted 100s of hours and the end result might have been really akward as well since many other systems are architected around how that one library worked. So instead it was a matter of patching in a few checks and workarounds for shadow dom elements.

    And since its extremely well documented why we decided to to that, what these hacks do I don’t see an issue with that. Obviously this shouldn’t be the modus operandi everytime but its always good to have the option i.m.o. to dig yourself out of a hole.



  • I’m more concerned that the web will get even slower and bloated. We are already seeing the first frameworks that ship a webassembly .NET runtime, Python runtime, JVM, … . I kinda fear that in 10 years when you visit a site you need to download runtime xyz in version abc for the 1000th time. All because some people or companies just can not be bothered to learn any new technology.


  • for me the biggest thing was the whole strict enforment of nullability - doesn’t always play nice with existing java code, builders (essentiay abusing the anonymous function syntax) and delegations.

    Its just very odd when you see some code from someone else who really goes to town with these things.

    Also just in general its very different approach from Java where you have to do everything with very basic but easy to understand tools while Kotlin gives you a giant toolbox to play with, but where many tools have a certain learning curve.

    But in that toolbox there are some gems. My favorites being extension methods null safe calls and pattern matching with when.