Your syntax is definitely simpler. One reason we did it the way we did was to get compiler checking for operators. We've tried to follow idioms in different client libraries, and for the statically compiled languages, we've tried to make it so if it compiles, it will work.
Since the field comes first (orderId().startsWith()), if you try to call an operator on a field that does not support it, it will not compile.