5 ms·
I don't think Go was trying to capture that space really.
by sigzero 2y ago
I don't think Go was trying to capture that space really.
- rednafi 2y agoGo initially tried to capture the C/C++ space and failed miserably. Rob Pike lamented[^1] over that in a famous blog post. It got the most love from people coming from Python and Node. Then it became the defacto language for writing networking tools, and to this day, it holds that crown. Go is in an awkward spot—it’s not dethroning Python because it’s not as expressive, academics hate it, and it’s not as fast as Zig or Rust to appeal to systems programmers. So it only makes sense to target the web services section dominated by Django and RoR. [^1]: https://commandcenter.blogspot.com/2012/06/less-is-exponentially-more.html https://commandcenter.blogspot.com/2012/06/less-is-exponenti...
- __MatrixMan__ 2y agoGo is best at interfacing with kubernetes, which I think will carry it pretty far, for better or worse.
- rednafi 2y agoYeah, Go’s niche is networking. But it could be so much more. The language is nice and fast, and there’s no reason it can’t be a solid choice outside the microservice and tooling universe.
- jen20 2y agoThe Kubernetes API is one of my least favourite Go packages - largely generated, boilerplate all over the show and hasn’t even adapted to use things like log/slog without some wrapper. A much nicer library for dealing with Kubernetes is the kube crate [1] for Rust. The worst aspect of it is the dependency discipline, though that is no worse than the official Go client. [1]: https://github.com/kube-rs/kube https://github.com/kube-rs/kube
- sroerick 2y agoNot too familiar with Go but this makes sense to me. The standard libraries are really great for microservice type stuff. Things that, as a python guy, I would have reached to Flask for. Problem is, I never reached to Flask for much of anything. I’m really having fun with Go these days, though
- rednafi 2y agoGo’s stdlib is almost as good as Python’s—with the bonus of a stricter type system and faster execution speed. Package management in Go is better too, though uv is making Python’s experience smoother. That said, Python is great, and beginners love it. For algorithms and prototyping, I still prefer it. But for writing servers, Go’s stdlib lets me spin up a production-ready, concurrent server using just the basics. What Go lacks, though, is something like Django, which it could really benefit from.
- sroerick 2y agoWSGI was a learning curve for me
- rednafi 2y agoASGI too. But it’s not too bad and tools like Starlette / FastAPI make it a breeze. Go servers are fast but generating docs from code is a lot more work which you get free in FastAPI.
- adhamsalama 2y agohttps://huma.rocks/ https://huma.rocks/ https://github.com/go-fuego/fuego https://github.com/go-fuego/fuego
- lolinder 2y ago> Go’s stdlib is almost as good as Python’s—with the bonus of a stricter type system and faster execution speed Define good, and for what applications? I'm having a very hard time imagining that go's standard library is anything like as comprehensive as python's.
- peteforde 2y agoKudos: I find this to be an exceptionally helpful and concise description of the Go meta. I would offer that Erlang did a good job of capturing the [concurrency?] space, though some of the tooling is showing its age. It's therefore interesting to see Elixir straddle the divide between Erlang and Ruby. I'm still Rails all day, but I've never stopped thinking Elixir is cool.
- out_of_protocol 2y agoWell, i think Elixir/Phoenix is better Rails than real Rails - great developer experience (and developed by rails contributors)
- arrowsmith 2y ago100%. I’m never going back.
- mstipetic 2y agoEvery time I step out of elixir I feel like I’m coding with some cumbersome construction gloves and everything is kinda coerced to work together. But for some reason it’s not picking up a lot of steam and the job situation is rough
- lolinder 2y agoTyped languages are in big time, and any dynamic language is facing an uphill battle for adoption, no matter how good it is. Elixir seems to recognize this and is getting there, but it hasn't fully arrived yet.
- blandflakes 2y agoTypes and editor tooling IMO. Both places they're making investments, but both areas where I feel like I'm giving up a lot of power, even though it's admittedly to GET a lot of power.