4 ms·
> I get the point about external symbols and location database, but oftentimes time is precious and having fully laid out stack trace in the log will allow you
by umanwizard 7y ago
> I get the point about external symbols and location database, but oftentimes time is precious and having fully laid out stack trace in the log will allow you to get to the root much faster.
You can also set up a service that automatically symbolicates everything in a log file as soon as it is generated, before a human ever even looks at it.
Granted, yes, this is slightly more complicated, but the point is that the toolchain should let the developers choose which strategy they want to use.
- crehn 7y agoThere is a big difference between choose and do.
- umanwizard 7y agoI don't understand what you mean; can you elaborate?
- mynegation 7y agoNot a parent commenter but I interpreted that as: given choice between alternatives A (fast and good enough) and B (more complex and much better) you would want to choose B but end up doing A for various reasons (lack of time, unclear ROI etc)
- umanwizard 7y agoSure, but the toolchain designers can (relatively easily) offer both, so that people who really do have the resources and/or need to do B can do so.
- firethief 7y agoAre we still talking about a language that protects its users from the ability to write generics?
- umanwizard 7y agoThat’s a language feature; we’re talking about build flags. IMO, adding a build flag wouldn’t meaningfully change how simple the language is to learn and use, whereas there is at least a credible argument that generics would.
- koffiezet 7y ago> let the developers choose Absolutely not. Developers making choices about stuff like that is asking for troubles. I'm an SRE - and this is how production issues start, because some dev decided that somehow, in production, something like this should not be there, until problems pop up, but then it's too late. For us it's simple, the moment it hits the CI/CD pipeline, it's a production build, even if it happens just end up on some test or staging environment. If you possibly need it there, you need it on production. Our way of working means that the exact same build artifact should be promotable to production.