Go is super productive. My day-to-day responsibilities include development in .NET and Go. A full day working in Go is like a having a pleasant day off. On the other hand, .NET is so cumbersome, complex and verbose (I've been using it since its inception), that I'd rather abandon it for good if possible.
New case studies about Google’s use of Go
111–120 of 269 posts
Re: New case studies about Google’s use of Go
#112Earlier quoted context omitted.
Whatever your opinion of the user-facing features of Google, it is true that you would not have access to most of them if Google didn't have deep skills in large-scale systems programming which allows them to whip up products that nobody else could afford to offer. How do you think they are able to offer infinite jpeg storage to every human, for free?
> infinite jpeg storage to every human, for free? How does one get free infinite jpeg storage from Google? Way back when I had Picasa and I'm 90% sure there was a paid tier. I recall hearing something about Google offering free image storage to Google Pixel owners but that is a far cry smaller number of people than "every human" and the purchase price of a Pixel device isn't free.
Store your images at photos.google.com. It is a free service with unlimited storage quota.
Re: New case studies about Google’s use of Go
#113> Looking back from 2020, Go has succeeded in both ways: it is widely used both inside and outside Google, and its approaches to network concurrency and software engineering have had a noticeable effect on other languages and their tools. Don’t know much about go myself, but I’m interested in examples of this.
Re: New case studies about Google’s use of Go
#114Re: New case studies about Google’s use of Go
#115I played around with Go a while ago, and while I appreciated the approach to concurrency, I was really put off by both the boilerplate + how primitive the type system felt. Not having map and filter due to lack of generics meant writing for loops all over the place just to filter and modify arrays. Appending elements to slices felt clumsy. The type system didn't feel expressive, and I often found myself having to res…
the key is simplicity, you're complaining about language features that allow you to write "fun" code, but remember that we spend around 80% of the time reading or debugging code, the main focus of Go is about writing code that's easy to read which will allow you to scale a project or source code with more people, also remember that easy doesn't mean simple, I think these 2 talks will make you understand my idea a lit…
map/filter and their equivalent loops are both perfectly readable, but the latter involves more boilerplate.
Re: New case studies about Google’s use of Go
#116Earlier quoted context omitted.
Discord abandoned Go due to GC overhead. https://blog.discord.com/why-discord-is-switching-from-go-to...
This is a puzzling decision on Discord's part, because they found the single line of code causing their problem and they didn't think to change that line of code for their own needs. Go distributions include the source for Go itself, so building your own Go binary with your own changes incorporated is dead easy. And, the change they needed is a single-line change, which means it's easy to bring that change forward as…
Re: New case studies about Google’s use of Go
#117Earlier quoted context omitted.
Discord abandoned Go due to GC overhead. https://blog.discord.com/why-discord-is-switching-from-go-to...
This is a puzzling decision on Discord's part, because they found the single line of code causing their problem and they didn't think to change that line of code for their own needs. Go distributions include the source for Go itself, so building your own Go binary with your own changes incorporated is dead easy. And, the change they needed is a single-line change, which means it's easy to bring that change forward as…
Re: New case studies about Google’s use of Go
#118I played around with Go a while ago, and while I appreciated the approach to concurrency, I was really put off by both the boilerplate + how primitive the type system felt. Not having map and filter due to lack of generics meant writing for loops all over the place just to filter and modify arrays. Appending elements to slices felt clumsy. The type system didn't feel expressive, and I often found myself having to res…
Golang was designed for getting shit done. If you are a big believer in OOP, then Golang feels underfeatured. But if you don't really care about OOP and you just want some of the advantages like basic inheritance, type safety, etc, Golang has everything you need to write performant, effective code quickly (there are use cases where that isn't true I'm sure, but, for me, Go's type system has been helpful and not a hinderance). There's nothing wrong with using the empty interface when you need to (any more than using any in TS, which you have to do in many applications).
I've found that Golang codebases are easy to pick up. I think everyone has some part of the Go style that they think is ugly (I 100% find append ugly), but for me this has mostly been inconsequential stuff - it has never gotten in the way of me solving business problems with high performance code. The tooling is the same (at least if you are using modules). It does its job well enough and then gets out of the way while you create business value.
I don't know your use case so this might not be relevant, but sometimes people will overuse for loops and slices when they might find it easier in Golang to pass around channels and use the pipeline pattern[1].
For me, Golang is like Python but with static typing and high performance. Fast to implement, easy to read, and focused on getting code out the door.
Re: New case studies about Google’s use of Go
#119Earlier quoted context omitted.
> infinite jpeg storage to every human, for free? How does one get free infinite jpeg storage from Google? Way back when I had Picasa and I'm 90% sure there was a paid tier. I recall hearing something about Google offering free image storage to Google Pixel owners but that is a far cry smaller number of people than "every human" and the purchase price of a Pixel device isn't free.
> How does one get free infinite jpeg storage from Google? Store your images at photos.google.com. It is a free service with unlimited storage quota.
Re: New case studies about Google’s use of Go
#120Earlier quoted context omitted.
Does C# rely on VS? MSBuild is separate from VS and you can use Rider (yay!) or VSCode instead of VS. The ecosystem is definitely growing in the last 5 years too since open source has been embraced by MS and the community. The major rewrite of .NET -> .NET Core and then now renaming it back to .NET again is good in that it's a much better framework now, bad in that it's turning out like Python 2 vs Python 3. Huge pro…
Generally speaking, C# relies on either third-party implementations like http://www.omnisharp.net or Microsoft distributions, which on Windows is largely distributed via Visual Studio Downloads page, including the Tools for Visual Studio package: https://visualstudio.microsoft.com/downloads/ Are there other releases of msbuild, for example? Yes: https://github.com/dotnet/msbuild/releases But are they separate from re…
>net5.0
>net5.0-windows
>net5.0_something
So you can use "pure" "net5.0" on Linux and generally cross-platform software meanwhile still be able to use old .NET FrameworkX winforms/wpf on "net5.0-windows".