Earlier quoted context omitted.
What finally got the `ln` argument order engraved in my mind was learning that you can skip the destination argument: ln -s /foo/bar/baz will create a soft link in the CWD named baz, pointing to /foo/bar/baz. So you see, if you know that you can always skip the destination, then, logically, the source must be the first one!
> logically, the source must be the first one! You mean the target, but that isn’t a logically necessary consequence at all. Conceivably, `ln` could support the following two syntaxes: ln [options] target ln [options] link_name target The way I remember the correct parameter order is that I remember it’s the non-intuitive one.
Kind of like when my wife tells me I'm doing something wrong and she wants it to be the other way.. I know she thinks this thing is important, but can't work out which way she wants it done.