4 ms·
I wish the author mentioned a better Golang alternative. Rust?
by velodrome 10y ago
I wish the author mentioned a better Golang alternative. Rust?
- alexforster 10y agoC#
- lossolo 10y agoI am switching from Go to .NET Core (C#) at the moment for one application. Great experience, better language features, better syntax, easier and nicer to build huge projects with a lot of people. I still like Go but C# is light years ahead with features and i think Go is better for small, performant apps like couple KLOC but when you have big team, you need expressiveness of the language, generics and good composition then C# is better in my opinion.
- ngrilly 10y agoI don't understand the rationale underlying the link you make between having a big team and needing expressiveness/generics. Go has been explicitly designed for big projects with big teams, and the authors have explicitly limited language features to make big projects with big teams more maintainable. That said, coming from Python, I sometimes miss its expressiveness. But when I switch back to Python, I miss Go "straightforwardness".
- velodrome 10y agoHow is linux support for .NET Core?
- eternalban 10y ago"Quant found London girls seeking newness only too willing to try her new daring short mini skirt. The fashion trend took off because it was so different and to wear it well you had to be youthful to get away with an outfit that was so controversial, particularly among adults. The Quant style was soon known as the Chelsea Look." Use Go for small to medium server side systems. A lot of the issues mentioned by OP are related to scaling (in terms of codebase) stresses that Go is ill equipped to address. In the small scale, Go works like a charm. Use Go for large server side systems that compose via IPC (of whatever flavor). Lots of processes mean lots of small scale Go applications (so see above). Strongly consider Go for server side systems where 'Green Thread/Fiber/lighweight threading' is an architectural requirements. Also consider Erlang/Elixir and possibly Node. If IPC composition is also a match (see above) then Go is a serious consideration. You want a compiler in loop writing (relatively) portable cmdline tools. Go is a serious candidate here as well. I suspect a subset of the Go angst is due to philosophizing about a language that proudly wears an anti-intellectual badge on its cute furry coat. Stop doing that, accept it for what it is, and sure enough it is very useful and capable in its own niche.
- acomjean 10y agoI kinda feel rust is at a lower level than Go. Like C,c++ you are close to the hardware. Python perl php ruby are interpreted so despite best efforts by their conmunities they simply aren't as fast ( though their libraries are nice) and often fast enough. Go seems to straddle the space between the Lower and higher levels. Kinda like Java if it compiled to native. The one language that I see in the same space that is evolving fast is swift.
- leshow 10y agoRust is a low level system language, it's all about "zero-cost abstractions", being as close to bare metal as possible. That said, there are some high level ergonomic features to the language that make it seem much more high level than it is. Still, if you're looking for a language with greenthreads and a GC, Rust is not that.
- likeclockwork 10y agoD, maybe. It's both lower level and higher level than Go.