Live data from Hacker News

Ask HN: Go programming language is over ten years old. What do you think of it?

news.ycombinator.com

81–90 of 310 posts

Re: Ask HN: Go programming language is over ten years old. What do you think of it?

#81

Earlier quoted context omitted.

The particular combination of things is, some library includes some method signatures that accept and return a specific struct (not a specific interface). Then, also, there is no exported way to make one of that struct, or to set its fields. Now you cannot write a library that wraps the original library and exposes the same API (unless you use unsafe and reflection). In the OO languages I have encountered there seems…

Is this a different problem from private constructors / setters in OO world?

No, but it's a more prevalent problem in the actual standard library of Go. The Java standard library does not regularly use final classes with private constructors and setters as the parameter and return types in its APIs (which would also prevent people from implementing those APIs). It uses interfaces.

Re: Ask HN: Go programming language is over ten years old. What do you think of it?

#82
We have a few go web apps to maintain and, honestly it's not a pleasant experience.

- Package management is terrible. - Development on Mac is not a great experience (someone in the team purchased a paid IDE, everyone else just run everything through a docker image, are we missing something obvious?). - The language is not flexible enough (lack of generics?) and code is significantly longer. - Lots of quirks.

I'm sure you can learn the language and overcome these small annoyances (and that's exactly what we did, because we wanted to squeeze more performance out of our services), but personally I think nowadays we have better languages which perform just as well (eg. Rust).

Re: Ask HN: Go programming language is over ten years old. What do you think of it?

#83
I don't code with it but I use Hugo (a static site generator) that's written in Go because it's ridiculously fast. Ruby and JavaScript static site generators I've tried end up taking several seconds to generate a handful of pages when Hugo spits out hundreds of pages in less than a second.

It's pretty crazy how used we are now to slow dynamic languages.

I also like how Hugo is available as a single binary file - much simpler compared to the complex build chain of a typical JavaScript app.

Re: Ask HN: Go programming language is over ten years old. What do you think of it?

#84
post #33

Earlier quoted context omitted.

What limitations do you run into with the flask/python setup? (I’m not asking what ARE the limitations, I’m asking which ones specifically you run into)

For large data sets, it sometimes spends all day in GC while just loading the data into memory (this is actually more of a problem in Ruby than in Python, but it still exists here). It's also not very efficient about using memory, so it can be easier to get a dataset to fit in RAM in Go vs. Python. Python also makes it hard enough to make use of multiple cores that it becomes easier to just use Go. The same goes for…

Have you ever tried Pypy? I know when I had issues with GC and some memory usage (specifically dealing with large datasets as well, I was parsing large MySQL query results -- many millions of rows) Pypy didn't really drop memory usage much, but it did give me an almost 10x speedup. Enough that I went "oh, guess I don't need to use a different language."

Re: Ask HN: Go programming language is over ten years old. What do you think of it?

#85
It's a lovely language perfectly suited to building network-oriented services in market-driven organizations.

It's basically the only language in meaningful use that optimizes for the right things in this context: productivity at the team scale (rather than the individual scale) and making things easier for code readers (rather than code authors).

Re: Ask HN: Go programming language is over ten years old. What do you think of it?

#88
post #87

It’s a boring language and I avoid it where I can help it. Its facilities for abstraction are too limited, everything is a loop, if err return, and so on. It’s just not a language I’d use by choice for anything.

What do you prefer?

Re: Ask HN: Go programming language is over ten years old. What do you think of it?

#89
post #22

My fingers are getting real tired from typing if err != nil all the damn time. I do like it for small things - compiling to one (albeit huge) binary and its relative speediness is nice. I wouldn't use it for large systems though. The amount of code really balloons over time, relative to, say, python and that SLOC correlates to bugs and maintenance cost.

Have you considered using a snippet or macro to type the 13 characters for you? Snippets or macros are available in most editors.

Re: Ask HN: Go programming language is over ten years old. What do you think of it?

#90
post #60

Earlier quoted context omitted.

What is it that you find more convenient about Python/Flask?

Flask is better in the little mechanics of interacting with HTTP - parsing a parameter out of a URL (in Flask, it's a function argument; in Go, it's at least one extra line per arg), returning JSON (just return a dictionary in Flask), handling errors. Flask also is able to auto-reload the code when it changes (turn on development mode) which is really convenient. Plus all the ways that Python is more convenient than…

But...you are comparing a web framework with a Go's standard library. I mean, it's not a fair comparison. I'm pretty sure there are Go modules that support those handy things.
Post reply on HN