Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Maybe some of the old beliefs regarding startup time etc are no longer valid. Maybe the programming model isn’t as verbose as it used to be. But I don’t want to distribute a 200MB+ binary. I have colleagues who tell me that c# scripting is so awesome. One only needs .NET installed or use AOT or whatever. Sorry but Go and Rust and good forgive a python script is smaller and mostly easier to read and write then most stuff I seen other languages shoehorning into. I have nothing against Java but it isn’t the right hammer for this problem. At least for me. And I wish people wouldn’t constantly strive for the single language for every problem mindset. Yes in a Java shop it might make more sense to write cli tools and scripts also in Java. But that doesn’t mean it is the most effective toolchain in the long run.


Using modules and jlink your Java image would be much smaller than 200mb. Full desktop apps with ui’s can get down to 30mb.

I’m confused by your disregard of C# AOT. It produces binaries as small as go or rust. 1.1 MB for hello world on linux.


The problem is that packaged Java CLI utilities will also take 20MB+. The minimum size is still much too big for that class of programs. Also, AoT compilation was an absolute pain last I tried it, it's a big change for an ecosystem that was always designed as modular and dynamic. I love Java, but for CLI apps I'll take Rust whenever possible.


But it takes ages to compile. Or at least that was my experience with .NET9 a few years back.


On WSL/Fedora 43, building hello world:

    > time dotnet publish
    Restore complete (0.4s)
      dn-hw net10.0 linux-x64 succeeded (2.4s) → bin/Release/net10.0/linux-x64/publish/

    Build succeeded in 3.1s

    real    0m3.571s
    user    0m2.784s
    sys     0m0.673s

    > time go build main.go

    real    0m3.309s
    user    0m8.864s
    sys     0m1.741s

Obviously I don't know how that translates to a non-trivial application.


Are you really a developer, because it sounds like you're conflating or confusing language technologies?


This ship sailed a long time ago.

Our Go CLI tools are like 100MB+ and often we bundle them in containers that are in the GB+ territory. Nobody cares or at least has cared enough to tell us to minimize stuff.


My SSD would like a word with you :) I don’t say every app needs to be in the kb range. But it is strange that applications for the terminal eat up multiple megabytes. I see the reason when this is statically linked though and one needs stuff like open ssl etc.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: