Comment by pydry

Comment by pydry 2 days ago

10 replies

Go is a pretty good example of how mediocre technology that would never have taken off on its own merits benefits from the rose tinted spectacles that get applied when FAANG starts a project.

christophilus 2 days ago

I don’t buy this at all. I picked up Go because it has fast compilation speed, produces static binaries, can build useful things without a ton of dependencies, is relatively easy to maintain, and has good tooling baked in. I think this is why it gained adoption vs Dart or whatever other corporate-backed languages I’m forgetting.

  • theshrike79 2 days ago

    80% of what programmers write is API glue.

    Go _excels_ at API glue. Get JSON as string, marshal it to a struct, apply business logic, send JSON to a different API.

    Everything for that is built in to the standard library and by default performant up to levels where you really don't need to worry about it before your API glue SaaS is making actual money.

  • pydry 2 days ago

    I tried out one project because of these attributes and then scrapped it fairly quickly in favor of rust. Not enough type safety, too much verbosity. Too much fucking "if err != nil".

    The language sits in an awkward space between rust and python where one of them would almost always be a better choice.

    But, google rose colored specs...

    • Mawr a day ago

      > Not enough type safety

      Sure? Depends on use case.

      > too much verbosity

      Doesn't meaningfully affect anything.

      > Too much fucking "if err != nil".

      A surface level concern.

      > The language sits in an awkward space between rust and python where one of them would almost always be a better choice.

      Rust doesn't have a GC so it's stuck to its systems programming niche. If you want the ergonomics of a GC, Rust is out.

      Python? Good, but slow, packaging is a joke, dynamic typing (didn't you mention type safety?), async instead of green threads, etc., etc.

      • pydry 16 hours ago

        >packaging is a joke

        You should see what package management was like for golang in the beginning "just pin a link to github". That was probably one of the most embarrassing technical faux pass ive ever seen.

        >dynamic typing

        Type hinting works very well in python and the option to not use it when prototyping is useful.

        >Rust doesn't have a GC so it's stuck to its systems programming niche.

        The lack of GC makes it faster than golang. It has a better type system also.

        If speed is really a concern, using golang doesnt make much sense.

    • christophilus 2 days ago

      I’m almost with you. If there was a language with a fast compiler, excellent tooling, a robust standard library, static binaries, and an F#-like type system, I’d never use anything else.

      Rust simply doesn’t cut it for me. I’m hoping Roc might become this, but I’m not holding my breath.

      • gf000 2 days ago

        OCaml? Possibly Haskell as well?

      • pydry 2 days ago

        Compiler could be faster, I guess but apart from that Rust has all of those things.

        • christophilus 2 days ago

          I find Rust's stdlib to be lacking vs Go, and so the average Rust project has a lot of dependencies. To me, Rust feels like the systems-programming equivalent to Node + NPM. Also, the compilation speed was really painful last time I used it. I'm used to the speed of Zig, Hare, Go, Bun. Rust makes me want to jab myself in the eye with a spork.

throwawayxcmz 2 days ago

Exactly.

The other jarring example of this kind of deferring logical thinking to big corps was people defending Apple's soldering of memory and ssd, specially so on this site, until some Chinese lad proved that all the imagined issues for why Apple had to do such and such was bs post hoc rationalisation.

The same goes with Go, but if you spend enough time, every little while you see the disillusionment of some hardcore fans, even from the Go's core team, and they start asking questions but always start with things like "I know this is Go and holy reasons exists and I am doing a sin to question but why X or Y". It is comedy.