This quite informative answer to a Stackoverflow question (via) answers the question,
or at least provides a great deal of context that I didn't know.
It turns out that the reason AT&T syntax puts the destination
register second (instead of first, the way Intel syntax does) almost
certainly stretches all the way back to how PDP-11s encoded
instructions.
(The AT&T assembly syntax, commonly used on Unix systems but not
uncommonly disliked
(via),
is a cross-platform general syntax that AT&T and Unix mostly used
on a range of platforms. The specific x86 version of AT&T syntax
is yet another adaptation of this general syntax. More information
on the difference between AT&T and Intel syntax for x86 can be found
on, eg, Wikipedia.)