is that this appropriate?
Sure, the commentary about main and trailing zeroes equivalent to endianness appears appropriate to me.
So does getblockheader (verbose = false) return little-endian hex:
I feel it returns the header in Bitcoin’s community serialization, which has most integer values in little-endian byte-order. This conflicts with Web requirements however that is the way in which Satoshi Nakamoto needed it.
and getblockhash […] return big-endian hex,
Sure. I consider Satoshi Nakamoto and different builders most well-liked to current particular person integers in big-endian as that makes most sense to conventionally educated folks the place fifteen is written as 15 not 51 as a result of ten is greater than 5.
Why is not all the pieces the identical endianness?
I doubt anybody actually is aware of Satoshi Nakamoto’s intent right here. He was conscious of endianness issues in porting Bitcoin code between architectures (and I feel discouraged use of PPC for that reason).
I believe a few of this springs from traits of C and C++ programming and habits widespread in that neighborhood. These points may not come up in community purposes written in different programming languages and written to adapt to Web RFC requirements.
RFC1700 by Reynolds and Postel in 1994 says
When a multi-octet amount is transmitted probably the most important octet is transmitted first.
Bitcoin violates that rule.
The consequence is that, in Bitcoin, I discover you must pay particular consideration to endianness and thoroughly code round it. I additionally discover that many individuals are tripped up by this.

