4 ms·
At least with GUI you can see what you are doing. `rm -rf ~ /useless` is much less likely. Bugs even in trivial one-liners are always possible.
by red75prime 7y ago
At least with GUI you can see what you are doing. `rm -rf ~ /useless` is much less likely. Bugs even in trivial one-liners are always possible.
- jolmg 7y agoYeah, you have a point. I've known people that type and execute potentially dangerous stuff without re-reading it or understanding what the command is supposed to do. I just read and make sure of what I'm about to execute when I'm working with potentially dangerous commands. I can't remember a time where I've done something as disastrous as your example. Then again, the same is possible with GUIs. People can select stuff without meaning to and deleting them without making sure of what they're doing.
- darkpuma 7y agoThis is one of those cases where danger is proportional to power.
- red75prime 7y agoSure. That's why I don't wield sledgehammer to swat a mosquito, so to speak. GUIs and TUIs have their place as well as command line programming.
- jolmg 7y agoI think a better analogy, though maybe not perfect, is a knife vs a tomato slicer[1]. Tomato slicers are safer, their features are more discoverable, and they're even easier to use, but they're bulky and less versatile. Having gotten comfortable with a knife, I like that it's easier to keep clean, takes up less space, has far more uses than slicing tomatoes, and doesn't require complicated mechanisms to adjust the width of slices. Knives are dangerous, yes, but I think most of us already easily handle that level of danger every day. [1] https://images-na.ssl-images-amazon.com/images/I/51g2vpaIPUL._SL500_AC_SS350_.jpg https://images-na.ssl-images-amazon.com/images/I/51g2vpaIPUL...
- darkpuma 7y agoI'm in love with this analogy. Too many modern GUI applications are the software equivalents of 'unitasker' kitchen gadgets. However I must note that not all GUI applications have this problem; a few exceptional examples stand out as being knives, not unitaskers. Excel is a classic example. In fact, I consider Excel proof that when programmers of GUI applications don't sneer down their noses at users who aren't professional programmers, it is possible to create very powerful and flexible GUI applications that empower those non-programmer users to implement their own custom solutions to novel problems. Sometimes I wonder if Excel could even be invented in recent years. Could you ever get an application like that past "UX experts" who think users should to be treated like idiot children?
- jolmg 7y agoFollowing the same analogy, I think Excel would be a rice cooker. You can do lots of things with it, like cooking rice, steaming vegetables, making soups, etc. You're right that it's not a unitasker, but in contrast to CLI utilities, it's not meant to be composable. With CLI, each tool specializes in doing one thing well and composing with other tools to do more complicated things. Using CLI equates to making your rice, soups and steamed vegetables with a stove, pots, lids, and steam baskets. The benefit being that you can use each of those things for more than just making your rice, soups and steamed vegetables, specially when composed with other tools, things that the rice cooker isn't prepared to do. If you ever wish to fry some food, you can't with the rice cooker, but you can with the stove. You can compose it with a pot or a pan depending on your need.
- red75prime 7y agoSledgehammer is an allegory for cognitive burden of checking and rechecking the code you write in a command line. *nix CLI for example is not an ideal of uniformity ([0]) and simplicity. It's not at the same level of simplicity as your common household knife, at least. [0]: `--opt=val`, `--opt val`, `-opt=val`, `opt=val`. First two are usually interchangeable but sometimes not. Third one was completely unexpected for me (clang uses a mix of first, second and third). Forth one is easy, only `dd` uses it.
- firethief 7y agoThat mistake would only cause minor inconvenience if you're using a snapshotting filesystem. If you aren't, there are lots of ways you can lose data, GUI or not.