About pipe, yes, it's just cosmetic. Some people find nested function calls hard to read, because you have to understand that they run from the inside out. So pipe lets you reorder that. It's a pedagogic choice which to use.
I would add though, that your example with map getting the uppercase of the first item is different. When you use 2 maps, you are processing the list twice. With pipe, you processing the list once but making 2 calls for each item. Aside from the performance, I think that one is easier to tell what's going on because I can see in one step what's happening to an item, rather than having to think about the list that's really being created when you do the operation in 2 maps.
Huh, that's true...I guess I've never thought about that much, but I tend to not use lambdas with multiple parameters unless I'm using formal params. I also think that, intuitively, the right arrow to helps separate how it works.
In this case, I'd personally find a nested function the easiest.