Rendered at 19:10:51 GMT+0000 (Coordinated Universal Time) with Cloudflare Workers.
melodyogonna 1 days ago [-]
Little things like this are why Go is great. People make arguments against Go based just on available language syntax, but languages are more than just syntax; it is about the end-to-end development flow. I actually think C# and the .NET platform are the only other ecosystem that looks at development the same way. In most other ecosystems, you almost always need to step outside what the built-in language platform provides for any moderately complicated use-case.
blainsmith 1 days ago [-]
I agree with you about C# there. I don't use it really at all, but the times I did it felt like I was writing Go with how nice the stdlib was and that I could just use the dotnet CLI on Linux too. It was pleasant and productive to use.
systems 1 days ago [-]
do you mean use none core libraries / 3rd party libs
or using libraries from different languages like how some libs or frameworks from different languages create bindings to python libs
many C# libs are available via Nugets, which are not more or less complicated than other languages package managers
i personally think C# package management is more obscure, compared to other languages
melodyogonna 1 days ago [-]
I mean that in both cases, the core language platform provides the tools and libraries you need to develop complete applications; you don't have to introduce external dependencies or resort to writing low-level data structures and data types.
blainsmith 1 days ago [-]
Author here... Thanks for sharing this. It has been fun to use while we get ready to launch https://probes.dev with tracing being core to the service.
lanycrost 9 hours ago [-]
Go always surprise me how well organized and well packed it is. I always used to work with opentelemetry but this core library look very strong and good. Thanks for this info
Xeoncross 1 days ago [-]
Nice! Tracking connection reuse is really important if you are running any kind of benchmarks or comparisons both as the author of a new tool / service and as the person evaluating different options or client libraries.
I've hit a lot of walls not ensuring I was using connection pools correctly even when the service I'm calling was local/docker. File descriptor exhaustion happens often if you're not careful.
s-macke 1 days ago [-]
I wish I had known this two years ago. I ended up writing my own embedded connection struct to trace these things [0].
That get's the job done too for those events depending on what you need them for. httptrace could be heavy handed if all you want is simple events like you show.
matltc 21 hours ago [-]
I picked up Go a couple weeks ago. It's giving me the same warm feeling I get when I read Ruby. When I got to the concurrency section in the tour, I fell in love. Channels and goroutines blew my mind, especially because I had been wrestling with websockets in Node.
many C# libs are available via Nugets, which are not more or less complicated than other languages package managers
i personally think C# package management is more obscure, compared to other languages
I've hit a lot of walls not ensuring I was using connection pools correctly even when the service I'm calling was local/docker. File descriptor exhaustion happens often if you're not careful.