3 ms·
To me go is a scripting language. Bash doesnt have great concurrency or type checking. When I was pulling some discord and slack it got real slow with curl and
by grogenaut 2y ago
To me go is a scripting language. Bash doesnt have great concurrency or type checking. When I was pulling some discord and slack it got real slow with curl and unmanageable with bash. Few hours later i was done with it in go and it was super fast
I often have to do similar at work where you could just bulk process say ALB access logs with bash into some simple stats, And it would work but in the time it took for bash to complete which was about 7 days per days of logs on the services that I was working on I was able to write go code that did it in a under 30 minutes for a day of logs. I was also able to easily make it where it output to parquet instead and then started pulling the data up in Jupiter notebooks and being able to get every stat I ever wanted as opposed to chucking away 99% of the data and bash. That was also able to keep my computer mostly active and maximizing bandwidth and CPU.
And if it's in go it's entirely portable cross-platform and I can build a compiler binary I can just hand the people to do the same thing. Scripting languages require a lot of environment set up and libraries and specifics that are not always true on other people's machines.
And finally as the other person said I'm actually just good at go so why would I learn bash or another scripting language that's actually not as good for this solution space