Parameter ordering: Destinations on the left
Most (all?) programming languages write assignment with the destination variable on the left hand side, i.e.
a = b+c;
Therefore most (all?) programmers are familiar with the destination for an operation being on the left hand side. Therefore, I think, when designing functions or commands doing copying or assignment, the result should also be on the left hand side.
- Example: memcpy in C.
- Counter-example (which confuses me): Array.copy in C#.
P.S. I recently created a nerdy privacy-respecting tool called When Will I Run Out Of Money? It's available for free if you want to check it out.