Live data from Hacker News

Why We Switched from Python to Go (2021)

softwareengineeringdaily.com

21–30 of 301 posts

Re: Why We Switched from Python to Go (2021)

#21
post #6

"Developer productivity and not getting too creative" is NOT a point in favor of Go. Go does not have a lot of batteries included. Things like error handling, logging, test bootstrapping, etc, require consensus on the team and tight coordination. Every project is basically its own framework. Most teams are not that well-oiled. They are going to find this out the hard way. And fast? Please. If your database queries ar…

Go provides error handling and logging.

It's true that if what you're writing is an application server consisting of business logic and glue code that delegates all the "heavy lifting", performance won't be the first concern. However, even in this case, I think you'll find its easier to get sub-second response times in Go than in a language like Python.

Re: Why We Switched from Python to Go (2021)

#22

So they switched to Go from Python, because of following advantages: #1 Performance #2 Performance (to make the list longer I guess?) #5 Fast compile time... which is an advantage over Python how exactly? #7 Strong ecosystem... which brings us to disadvantage #1 - lack of frameworks (?)

#7 given Go can't compare to Python on ecosystem breadth and depth, its a curious choice of "reason to switch"

I took it to be a reason they chose Go over some other alternative to Python.

Re: Why We Switched from Python to Go (2021)

#23

So they switched to Go from Python, because of following advantages: #1 Performance #2 Performance (to make the list longer I guess?) #5 Fast compile time... which is an advantage over Python how exactly? #7 Strong ecosystem... which brings us to disadvantage #1 - lack of frameworks (?)

#7 given Go can't compare to Python on ecosystem breadth and depth, its a curious choice of "reason to switch"

It's been a while since I wanted something in Go that wasn't available, other than the obvious big-ticket items like NumPy which are ecosystems unto themselves. (Or, to put it another way, yeah, Go doesn't have NumPy, but neither does anybody else other than Python at this point.) YMMV, of course, but it's certainly not a routine occurrence.

Re: Why We Switched from Python to Go (2021)

#24

So they switched to Go from Python, because of following advantages: #1 Performance #2 Performance (to make the list longer I guess?) #5 Fast compile time... which is an advantage over Python how exactly? #7 Strong ecosystem... which brings us to disadvantage #1 - lack of frameworks (?)

> #5 Fast compile time... which is an advantage over Python how exactly?

Compiled code can have fewer runtime errors, that's a big win. I read this as golang is better than python because it's compiled and golang is better than Java and C++ because the compiler is fast.

Re: Why We Switched from Python to Go (2021)

#25
post #6

"Developer productivity and not getting too creative" is NOT a point in favor of Go. Go does not have a lot of batteries included. Things like error handling, logging, test bootstrapping, etc, require consensus on the team and tight coordination. Every project is basically its own framework. Most teams are not that well-oiled. They are going to find this out the hard way. And fast? Please. If your database queries ar…

The last time I was on a team using Go, we ended up ditching it for these reasons. We realized it took about as much specialization and wheel reinventing as Rust, which offered way better developer ergonomics in ways that mattered to us and wouldn’t panic over things that weren’t easy to predict or caught by the compiler. There were still tons of trade offs, but it worked well for us. Go is cool but I still can’t see…

I prefer Go when I want more safety/performance than Python but less ceremony than Rust.

Re: Why We Switched from Python to Go (2021)

#26
The post read like a sober description of some reasoning. The tech switch blogs we usually see are, by comparison, informal and feel somewhat half baked, where the author seems like their goal is to look like a cool leader of the valley. That’s what stuck out to me about this personally, it was refreshing

Re: Why We Switched from Python to Go (2021)

#27

I read somewhere on HackerNews that Python is kinda like a default language and rest such as Go, C, C++, Java are just for Optimization, once you figure out your solution.

I don't know who coined it but I love the term "second-best language for everything" when describing python. The ecosystem is so broad you can almost always find tools to do whatever you need, and it lets folks jump between domains simply by knowing the language.

Re: Why We Switched from Python to Go (2021)

#28
post #6

"Developer productivity and not getting too creative" is NOT a point in favor of Go. Go does not have a lot of batteries included. Things like error handling, logging, test bootstrapping, etc, require consensus on the team and tight coordination. Every project is basically its own framework. Most teams are not that well-oiled. They are going to find this out the hard way. And fast? Please. If your database queries ar…

Very surprised this is getting downvoted, I think in two years from now everyone will be singing this exact song when the next flavour of the month arrives.

Re: Why We Switched from Python to Go (2021)

#29

I read somewhere on HackerNews that Python is kinda like a default language and rest such as Go, C, C++, Java are just for Optimization, once you figure out your solution.

Python is an excellent choice for that. What I tend to do is build with Python and, if (and that's a big if) the thing needs to be orders of magnitude faster, then we profile the app to find the hot spots and optimize those, either in Python, with some better approach, or in another language still being called from Python. A rewrite of a whole service from scratch is relatively rare in my experience (unless the original is really terrible and impossible to maintain).

Re: Why We Switched from Python to Go (2021)

#30
post #25

Earlier quoted context omitted.

The last time I was on a team using Go, we ended up ditching it for these reasons. We realized it took about as much specialization and wheel reinventing as Rust, which offered way better developer ergonomics in ways that mattered to us and wouldn’t panic over things that weren’t easy to predict or caught by the compiler. There were still tons of trade offs, but it worked well for us. Go is cool but I still can’t see…

I prefer Go when I want more safety/performance than Python but less ceremony than Rust.

I think the latter point about "less ceremony" is extremely debatable especially on a larger project.
Post reply on HN