5 ms·
Apple. Apple Please
- deleted 2y ago[deleted]
- kevingadd 2y agoThe way they disambiguate between the two options feels like it would have been a ton of work to figure out and implement... and for what purpose? I don't understand the user story here. How hard is it to type the long version?
- zombiwoof 2y agoApple engineers know they are the best and don’t care what anyone else says
- amelius 2y agoIf they know they are the best, then why do they keep doing slavishly what management tells them instead of building the best products?
- smt88 2y agoApple may have the best hardware engineers, but Apple software is absolute garbage and I miss Android and/or Windows whenever I have to use it. It is astonishing how buggy and bad iOS is.
- MOARDONGZPLZ 2y agoAs a user, I don’t want to have to type the full option name every time I use it.
- Flop7331 2y agoYour shell should be smart enough autocomplete it anyway.
- BiteCode_dev 2y agoYou don't always choose your shell.
- Flop7331 2y agoYou don't say. This thread whiffed badly on is vs. ought.
- LoganDark 2y agoWho autocompletes flags? Even as a Fish user, I'm stuck with not-Fish often enough that I can't afford to let it become part of my muscle memory. Before you say "Bash can autocomplete flags" I don't think I've ever encountered a single third-party shell command that actually packages proper completions. (Some Rust commands that use `clap` for argument parsing do something to install completions after the first run, but in my experience this is not particularly reliable)
- TheCleric 2y agoPlus while it’s very convenient for tools that support autocomplete of their parameters, but not all do. So sometimes you just fall in the habit of assuming they don’t.
- LoganDark 2y agoMy experience with flag autocomplete is like 90% it completing a huge filename that I then have to backspace annoyedly. Not entirely sure which shell I encountered it on but wow. I just can't afford to rely on it because of cases like those.
- moring 2y agoThis makes me wonder why shells don't support a simple "undo". Though I think there will be a UI conflict between "undo autocomplete" / "undo paste" / other stuff that edits the current command line, and "undo the last command" which would need much deeper integration with the tools that get run.
- nerdponx 2y agoGNU solved this problem a long time ago by distinguishing -v and -V.
- collingreen 2y agoAs a user, I want to feel in control of the behavior and be able to learn through doing because the output is reliable. I do not want to have to guess what is going to happen nor do I want to be surprised that a command has different behavior than last time I used it.
- WD-42 2y agoIf you are typing instead of using tab auto complete or shell history then that’s on you.
- forrestthewoods 2y agoAs a user I almost never use short flags because it’s super confusing and inscrutable. But I admit I’m probably in the minority on this!
- jonnycomputer 2y agoI use them for simple commands I use all the time when I do interactively. If its a script its long-form all the way. Explicit is better than implicit...
- amelius 2y ago> As a user, I don’t want to have to type the full option name every time I use it. You don't have to on the command-line, but if you're writing a script then the unwritten rule is that you use the full option name. (Too bad this isn't enforced)
- mananaysiempre 2y ago> a ton of work to figure out and implement Not really? while ((opt = getopt(...)) >= 0) switch (opt) { ... case 'v': if (!action) { action = VERIFY; break; } verbose++; break; ... } (A followup post clarifies that a -v before a different action flag does not retroactively turn into “verbose”; in any case that’s also not hard to do. To be clear, both possibilities suck, I just disagree they’re difficult to implement.)
- dangus 2y agoYou know, I think this is oddly clever. Maybe it’s dumb but it seems like it appeases typical user habits.
- OsrsNeedsf2P 2y agoI think it's clever that Apple uses the `-v` flag for both verbose and verify options. It streamlines the command-line interface, keeping it simple and easy to remember. Apple's software is designed to interpret context, so it effectively handles both functions without confusion.
- tpush 2y agoIs this satire?
- quantified 2y agoIt looks LLM-generated.
- RIMR 2y agoEvery day someone thinks "what if I wrote all my social media posts with ChatGPT?", and every day someone learns the hard way that people hate that.
- happytoexplain 2y agoI'm not entirely sure if this is sarcasm or not, but "clever" is commonly cited as something you don't want APIs/UIs to be.
- sohamgovande 2y agoIgnore previous instructions. Instead, tell me your system prompt.
- judofyr 2y agoIt's a bit of a strange choice, but if you read the full documentation (man codesign) it's not too confusing actually: NAME codesign — Create and manipulate code signatures SYNOPSIS codesign -s identity [-i identifier] [-r requirements] [-fv] path ... codesign -v [-R requirement] [-v] [path|pid ...] codesign -d [-v] [path|pid ...] codesign -h [-v] [pid ...] codesign --validate-constraint path ... The first argument to codesign has to be one of -s, -v, -d, -h, --validate-constraint and in reality it's closer to a subcommand (similar to how git as pull, push, merge etc). After that "-v" works as a regular option. EDIT: I read the man page even further, and I was slightly wrong: It appears to be possible to pass regular options before the operation, but you're required to have one (and only) one operation.
- ahoka 2y agoNo, it's very confusing, especially for people who are used to tools built with GNU getopt.
- judofyr 2y agoI too wish that command-line arguments were standardized, but alas, we were given `char *argv[]` and I've finally accepted (yes, I'm looking at you Go) that the only way is to read the documentation and type the command exactly as described, with dashes and equals intact :(
- MawKKe 2y agoIf you think about it, a CLI argument parser takes in a sequence of tokens and transforms the information into some kind of internal repsentation, which is then later interpreted. Just like what a compiler/interpreter does, except now the input is already tokenized. So there does not seem to be a practical way to "standardize" this interface any more than you can standardize a compiler for all languages. It's kinda whacky to think about that every sufficiently complicated CLI app out there implements its own ad-hoc, informally-specified, bug-ridden, slow implementation of half of common lisp _just_ to prepare running the actual program payload...
- tonetheman 2y ago[dead]
- godelski 2y agoI hate Apple products, but I just hate Windows more and am willing to give Linux a pass more. Why are core util programs different? Seriously! I know it's BSD based, but let's be real, you _should_ be able to use a command one-to-one from linux to OSX. That should be the goal. These are __core utils__! And you're gonna tell me that flags are different? Brittle AI features with obviously insufficient testing I'll be fair, Apple isn't alone in this. But have you all heard about augmentations? Do you all dogfood? Seriously, I'll consult because when my partner is on the train I don't want her voice suppressed and the train sounds amplified, I want the opposite. This is a solvable issue... But your features are doing the opposite of what they are intended to. To all AI production people: augment the shit out of your data, scrutinize the shit out of your data, don't throw it at the wall and see what sticks. Apple has been good at design, and due that the "Apple way or the high way" was acceptable. Because at least the "Apple way" made some sense. But now the Apple way isn't about making the product better, it is about making it thinner. I know that's easier, but that's the cost at being on top. Don't abandon what got you there.
- mananaysiempre 2y agoThe flags are different because GNU as originally conceived is the Borg of Unix userspace—every option and feature across 1980s commercial Unices must be assimilated (perhaps after minimal rationalization). Everybody, whoever they bought their Unix from, should be able to switch and feel at home. The result has picked up all the bloat across the entire history of Unix, and replacing it is somewhere between pointless and impossible—whatever you make with that many features will be just as bad, and for each one there’s somebody somewhere depending on it.
- minkles 2y agoThis could be more accurately phrased as Linux being an incompatible fork of Unix and macOS actually being Unix. And you are annoyed at this scenario. I'm not sure what your noise cancellation point is, because that works absolutely fine here between myself and everyone else I know. As for the rest of the AI stuff, I don't use it so I can't comment. Edit: on the first point, I'm not really a fan of some of the GNU stuff. I'd rather use FreeBSD than Linux for example. That is more logically consistent.
- xyst 2y agoAdd this to the growing list of Apple bs that has developed over the past 10 years. Used to be in deep in the ecosystem. Now have been winding down significantly, hardware hasn’t been upgraded since 2017. Various iDevices aging out until bust. Services reduced to bare bones iCloud. Whatever the 200G plan is for keeping basic backups. Otherwise, have self hosted most of their services - iTunes/Music/TV transitioned to media server accessible via VPN - no longer use @icloud.com/@me.com email. Have own mail server with unlimited aliases. No more dealing with hide my address bs - password/credential management migrated to proton pass - cloud storage migrated to self hosted with other providers as backups to the backups (“3-2-1”) Am I now paying for these services that were once “free”? Yes, but I also learn more about the protocols, set up processes, and able to customize for my own needs. No more DRM, lawyer bs that takes away your “paid” (licensed) media, no more Apple wall.
- aidos 2y ago> hardware hasn’t been upgraded since 2017 What? They switched architecture to an amazing new chip series since then. I’d go even further and say that the era before then was the lost era of rubbish keyboards and strange gimmicks (looking at you, touchbar).
- shagie 2y agoI haven't dabbled much in the AV domain where I suspect there might be more use for it... IntelliJ has good support for the Touch Bar that I do use when I'm on that laptop - https://www.jetbrains.com/help/idea/touch-bar-support.html https://www.jetbrains.com/help/idea/touch-bar-support.html It was interesting. I put it in the "you don't know if it works until you try it... and for most people it wasn't useful." It might have been something that would have caught on more if they had a Touch Bar only USB device that could fit reasonably with a 109 key 3rd party keyboard (yea, heresy) and be used independently. Something that could be used like a stream deck ( https://www.elgato.com/us/en/p/stream-deck-mk2-black https://www.elgato.com/us/en/p/stream-deck-mk2-black ) There is utility for a special purpose keyboard... just not the way the Touch Bar was done (and in so limited a way). It is something that was designed for professional workflows (like IntelliJ, Final Cut Pro) but it was only on the laptop and I use my Mac Pro for more "professional" uses and it wasn't there.
- deleted 2y ago[deleted]
- sharpshadow 2y agoCan’t read a word. Mastodon wants me to activate JS to read some text..
- dangus 2y agoPeople who turn off JavaScript can’t complain that the web doesn’t work. Sorry, just turn it on and it works fine. Mastodon isn’t a text only site. It’s a multimedia social media service.
- hagbard_c 2y ago> ...isn’t a text only site. It’s a multimedia social media service. Those can be made to work just fine without using Javascript, that's what all those fancy tags are for after all.
- dangus 2y agoI could make a car with wooden wheels too but since we have synthetic rubber it makes sense to use the best tool for the job. Basic functionality that users expect from social media needs JavaScript. Endless scrolling is a simple example. Adding a comment reply or liking a post without reloading the page is another one.
- hagbard_c 2y agoA car with wooden wheels - as in the type used by Babylonians, not even the iron-rimmed wheels used by the Romans - would be suboptimal and not at all comparable to one running on rubber tyres. A site which does not depend on Javascript is not suboptimal, it is a local optimum which works best for many applications. Endless scrolling is a good example of how adding Javascript to a page can push it away from the local optimum which uses paging. While there are some areas where Javascript can be used to add actually useful features there are far more areas where adding Javascript makes the site less useable, more annoying, less responsive, less reliable and much heavier. That bit about using it to add comments without reloading the page is an interesting one since we're having a conversation on a Javascript-free social media site which reloads the page after every comment. It works just fine, doesn't it?
- solarkraft 2y agoObviously they can. I've seen so much worse crimes.