4 ms·
There are so many Go and Rust TUI apps that I've used that look so much better than this. This reminds me of something straight out of MS-DOS. I've also yet to
by encryptluks2 4y ago
There are so many Go and Rust TUI apps that I've used that look so much better than this. This reminds me of something straight out of MS-DOS.
I've also yet to find a single .NET application that wasn't sluggish on Linux. Jellyfin, Emby, Jackett, etc all take like 5 seconds to start while Go apps take a few milliseconds.
- fuzzzerd 4y agoProbably the JIT, I expect this will improve with ahead of time compiling in the newer dotnet sdks.
- ripley12 4y agoFWIW, whenever I've profiled startup of .NET apps the JIT is pretty fast to start up. The only times I've noticed slow startup on recent .NET versions is with WPF apps, and that seems to be mostly because WPF does so much work on startup.
- zigzag312 4y agoIf I'm not mistaken, use of reflection on startup is a major contributor to slow startup. NativeAOT is both JIT free and reflection free.
- neonsunset 4y agoNativeAOT has multiple reflection compatibility modes because most code bases rely on it one way or another. Reflection-free mode works in a limited set of scenarios but greatly reduces the binary size since the compiler and linker can reason much better about which parts of the code they can trim away during compilation.
- zigzag312 4y agoI didn't know about reflection compatibility modes. Thanks! I hope source generators will eventually replace reflection from most libraries, so that reflection-free mode can become more mainstream.
- oaiey 4y agoI am looking right now for terminal ui toolkit. Can you elaborate on these in Go/Rust?
- encryptluks2 4y agoSo for Rust... Zellij, gitui, taskwarrior-tui, to name a few. For Go... cointop is one app I can think of off the top of my head. Bubbletea is an excellent framework: https://github.com/charmbracelet/bubbletea https://github.com/charmbracelet/bubbletea
- oaiey 4y agoOh I am so sorry. I just realized you mentioned "apps" not terminal frameworks. My apologies for creating effort. I think the choice of using blue background is a really horrible one :) Bubble tea seems in a slightly different space .. more like Python rich or .NETs spectre.console.
- selykg 4y ago> Oh I am so sorry. I just realized you mentioned "apps" not terminal frameworks. LOL... I just went and googled all of these and was like "why am I seeing apps... I want the actual dev libraries so I could build my own apps" Guess this explains why I was so confused.
- andrewstuart 4y ago>>There are so many Go and Rust TUI apps that I've used that look so much better than this. Like what?
- ripley12 4y agoI write a lot of .NET software that runs on Linux and for console apps, startup is generally comparable to Go - the impact of the JIT on startup times is greatly exaggerated in my experience. I'm less familiar with startup times for ASP.NET services, maybe that's the difference.
- bitwize 4y agoIt's from Miguel de Icaza, the creator of Midnight Commander. Of course it looks like MS-DOS. That's the whole point.
- masterofmisc 4y agoI actually kinda like the style but maybe thats just the nostalgia talking!
- viraptor 4y agoThese are pretty big servers with quite a few features. I haven't seen comparable implementations in go. Are you comparing them to go apps of similar complexity? Also, I'm not sure what you count as startup specifically, but are you sure they're not just doing valid work up front? Servers would normally optimise responses vs startup time.