3 ms·
However, during deployment, there was a lack of consideration as the periodical script was not disabled. The modified shell script was reloaded from the mi
by nh2 5y ago
However, during deployment, there was a lack of consideration as the periodical script was not disabled.
The modified shell script was reloaded from the middle.
In my opinion, this is the wrong takeaway, and an important lesson was not learned.
It's not an operator "lack of consideration".
The lesson should be "when dealing with important data, do not use outrageously bad programming languages that allow run-time code rewriting, and that continue to execute even in the presence of undefined variables".
If you use shell scripting, this is bound to happen, and will happen again.
"We'll use Python or anything else instead of shell" would fundamentally remove the possibility of this category of failure.
- 0xbadcafebee 5y agoThe problem was not that they used shell scripts. The problem was that the people writing the shell scripts were just bad programmers. If you hire a bad programmer to write them in Python, they'll still have tons of bugs. The shell scripts I write have fewer bugs than the Python code I see other teams churn out. But that's because I know what I'm doing. Don't hire people who don't know what they're doing.
- toast0 5y ago> outrageously bad programming languages that allow run-time code rewriting Almost all languages allow run-time code rewriting. Some of them just make it easier than others, and some of them make it a very useful feature. If you're very careful, updating a bash script while you're running it can be useful, but most often it's a mistake; in Erlang, hot loading is usually intentional and often useful. Most other languages don't make it easy, so you'll probably only do it if it's useful.