Hacker News new | ask | show | jobs
by barcoder 106 days ago
I'm a long time Unity developer that in the past year picked up Godot. The speed at which Godot loads compared to Unity is staggering, it's just so much faster. When I returned to Unity I raised that my flow state was constantly being broken in a way that it wasn't when using Godot.

Entering flow is one of the beautiful things I love about programming. And being knocked out of it often feels like a physical jolt.

Lobster seems to take the idea of optimisation and speed to new levels. Entering and remaining in flow must be even easier. First though, I'll need to put the time into learning enough to be able to do it!

5 comments

Thanks for mentioning Lobster. This guy seems to have learned many lessons of language simplification and design. Looks like a promising language and I wish it success.

Ref: https://aardappel.github.io/lobster/language_reference.html

Lobster doesn’t seem that different from Lua in that regard? I won’t say it isn’t impressive, but I’m having a hard time believing the hard part of this thing was calling from an interpreted to a static language.

Edit: I was mistaken about what Lobster is (potentially compiled instead of jit), but the main point stands.

Yeah,

I'm working on an indie game project and just got frustrated with Unity, I'm porting everything over to Godot.

I even learned about using Kotlin with Godot today [0] and I am really hopeful this is stable (it seems so), because I favor a more functional style of programming and C# ends up making everything 5 times more verbose than Kotlin.

[0] https://godot-kotl.in/en/stable/

I do wonder whether Kotlin is sufficiently different from C# to make it worth developing in Godot in a non-standard way.
For me, it does.

I find Kotlin way easier to read back than C#, and for the cases where I would have reached for GDScript for its simplicity, I can use Kotlin and have still a lot of simplicity, while also having type-safety.

> I favor a more functional style of programming and C# ends up making everything 5 times more verbose than Kotlin.

As if you can't program C# functional style.

> As if you can't program C# functional style.

This, I was really impressed recently when I met a C# dev who was also a programmer (as opposed to your standard C# SaaS dev who just copy pasted from the framework docs and stack overflow and was fully automated by Claude in 2025) and he showed me how nice the language has gotten since I last used it over a decade ago when it was just Microslop Java. They've really put in work and it has a lot of great functional constructs now.

Sorry, I mean that writing functional code in C# is way more verbose than in Kotlin.

C# is already more verbose because it lacks things like union types (and so you need to have a fallback branch in every switch) and for example everything needs to be nested in a class.

Then you also have the fact that there is no "val" keyword (which makes things clearer imo) and the fact that it's generics type inferencing is only based on method arguments, which really adds a lot of noise to almost all generic functions.

I was using LanguageExt [0] in C# and I am now using Arrow [1] in Kotlin, and while LanguageExt is really nice for addressing some C# shortcomings, for me this is night and day.

[0] https://github.com/louthy/language-ext

[1] https://arrow-kt.io/

So true.

Recent changes to Xcode have meant that on device debugging now launches WAY slower for me every time.

Once it’s going it’s fine. But an extra 20 seconds every time you start the app just kills things for me. It was never instant but now it’s trash.

I get taken out of flow every time I submit my prompt to Claude. How’d you work around that?
Not every conversation is about AI. This one isn't.
Are we just assuming nobody is programming commando anymore?
If the flow is just typing prompt after prompt into AI, I guess just ignore that it's running and keep typing? Or open a new tab and keep typing. Why does Claude even break the typewriter flow thing that's going for you?
You can try not using Claude