The slim spot for Go is the devops tools space. Where Go may or may not survive. Considering the march of Rust.
457 karma · joined March 29, 2021
The slim spot for Go is the devops tools space. Where Go may or may not survive. Considering the march of Rust.
EDIT: C++ did not break C. The people managing Go have full understanding of dependencies even though they made breaking changes.
EDIT: Down voters. What pw hashing algo are you using instead of BCrypt or similair?
For services there are often better alternatives.
On Windows the big problem with DNS is that it can be changed randomly. Among all the garbage on Windows this is peak garbage. Any con can change the DNS that I explicitly told it use. DNS by it self is probably top 10 sec risk on desktop envs and it so completely broken by design. I hack it more or less daily to "debug" our sites.
Conservative people leave us with DNS, TLS/Public CAs and other sht and then they whine on HN day in and out why did a "root" cert of MS leak or whatever. Securing TLS or DNS with automatons at a large scale company is a complete nightmare.
Open XML
Graph API
Large parts of the C# Azure SDKs
MFC - perhaps not bad just very difficult
A gotcha along the same path. Deserialization of things not needed as what you get with generated clients. An aspect of interfaces in Go I really like. Remotely type what I use. Skip the rest. Not fun to have incidents caused by changes to a contract that is not even used by a service. Also hard to find.
The fall in the beginning of 2023 may be the introduction of ChatGPT. A more worrying idea is that the numbers reflect not just the decline of SO but a decline of the whole IT business.
SEO is another factor. At least I don't get as many results on SO as I used to. That may be because of many reasons but if the popularity of a site starts to fall Google search might speed that up.
EDIT: I see now that the drop started long before ChatGPT became relevant. But it won't help SO I think. Github copilot and Google featured snippets may also be factors.
1. Sunk cost. Quit before it hurts. 2. Non-technical leaders. Talk to experts when it comes to tech. I don't care if you watched a Youtube-vid. 3. Tech people that think they know it all. Don't build waste that solves problems that the business does not have. 4. Person cult. Anybody can make simple mistakes. 5. Department cult. Quit pretending that the guys at your department are smarter. 6. No scope. Define what to do. 7. No order. Prioritize what is important. 8. Premature or upfront decisions. Why create time estimates first and then figure out what to do. 9. Cowboys. Crazy time estimates that someone high up in the hierarchy just made up without talking to anybody. 10. Everything tech. Not sure why, but some dev teams can't add a simple feature without rebuilding half the tech stack. Features are built on current stack. Tech is built with tech decisions but may be necessary to add a feature. 11. Overlapping. Multiple people doing the same work. 12. Bad architecture. Architecture that does not simplify anything.