6 ms·
What type of industry/product do you work in/on? And what sort of languages do you work in?
by nightfly 5y ago
What type of industry/product do you work in/on? And what sort of languages do you work in?
- DocTomoe 5y agoNot OP, but I see that a lot in the aerospace and heavy industry sectors. We keep laughing about "if we engineered bridges as we engineer software" ... the truth is that the areas where correct software matters tend to write very robust code, and the rest of the industry would be well advised to take notice and copy what they see. Of course, writing robust code is a skill, and it takes extra time.
- mhaberl 5y ago> and the rest of the industry would be well advised to take notice and copy what they see I don't agree. There is a good reason that aerospace industry writes robust code - in invests time (money) to avoid disasters that could cause, among other things, loss of human life. On the other hand if for example some webform validation fails because the code was written as fast (as cheap) as possible, who cares really. That is just a tradeoff, in aerospace industry you spend more to lower the risk, somewhere else you don't.
- thfuran 5y ago>On the other hand if for example some webform validation fails because the code was written as fast (as cheap) as possible, who cares really. Who knows. Maybe a billion dollar company that can't fulfill orders. Maybe a million people who suddenly can't use their bank online.
- a9h74j 5y agoYes, as a comparison, let's just take all the units (em, px, %) out of writing CSS and see how fun that becomes to review and troubleshoot.
- mhaberl 5y agoYes, sure, but a "billion dollar company" in this case does not represent the whole industry. You can probabbly find a some specific non-critical case in aerospace industry, but surely based on that example one would not suggest that the whole aerospace industry should just copy what they see in frontend dev. Context matters, there are exceptions, but the standard practices are based on average scenario, not on extremes.
- thfuran 5y agoI'm not saying that all code should be developed under standards designed for embedded control system software. I'm just saying that "oh, it's just web stuff so it can't be important" is ridiculous.
- mhaberl 5y ago>>> and the rest of the industry would be well advised to take notice and copy what they see >> I don't agree. >> [web form validation example] >> That is just a tradeoff, in aerospace industry you spend more to lower the risk, somewhere else you don't. > I'm just saying that "oh, it's just web stuff so it can't be important" is ridiculous. This feels like a straw man. The original argument is that the rest of the industry (that includes web, but a lot of other parts also) should copy what they see in aerospace industry. I believe that would not be appropriate for the rest of the industry to just copy practices from any other part because each segment has its own risk factors and expected development costs and with that in mind developed their own standard practices. Nowhere did I state that the "web stuff can't be important" nor that there is no example of web development (form validation) where the errors are insignificant. That said, I will go back to the "billion dollar company that can't fulfill orders" / "million people who suddenly can't use their bank online" catastrophe; this happens all the time. Billion dollar company doesn't fulfill orders, error is fixed, orders are fulfilled again, 0.0..01% of revenue is (maybe) lost. In aerospace industry a bug is deployed, people are dead. No bugfixing will matter after that moment. How can this two industries have the same standards of development?
- regularfry 5y agoIt takes time to learn, and to learn the value, and time to agree with the team that it's sensible. With this sort of thing - proper naming of variables - I disagree that it takes longer at point of use.
- dotancohen 5y agoI'm certain that the Mars Climate Orbiter had a lot to do with this practice.
- physicsguy 5y agoNot the commenter, but I work in scientific software development and it's just a minefield of different units, so being explicit is generally very useful. Even if you can assume you can stick to metric (you can't), what different users want varies across countries. For e.g. here in the UK we often want to represent data as millilitres, but in France the same measurements are often centilitres. I don't use libraries to enforce it though, we did try this but found it quite clunky: https://pint.readthedocs.io/en/stable/ https://pint.readthedocs.io/en/stable/
- LeifCarrotson 5y agoIt varies across different users from the same city! The same family, even! One piece of equipment I just finished working on measured and displayed vacuum at different sensors in PSIg, kPa, Pa, mmHg, and inHg. The same machine, the same measurement at different stages in the process, five different units!
- wffurr 5y agoAlso not OP, but I work on graphics software and we frequently deal with different units and use strict naming systems and occasionally types to differentiate them. Even more fun is that sometimes units alone aren't sufficient. We need to know which coordinate system the units are being used in: screen, world, document, object-local, etc. It's amazing how many different coordinate systems you can come up with... Or which time stream a timestamp comes from, input times, draw times (both of which are usually uptime values from CLOCK_MONOTONIC) or wall times.
- ReleaseCandidat 5y agoAs a bonus, coordinate systems can be left-handed or right-handed, and the axes point in different directions (relevant when loading models for example).