Another pet peeve of mine is that curl's URL parser is a lot more strict compared to wget.
For example:
$ curl -sSLOJ 'example.com/file name.txt'
curl: (3) URL using bad/illegal format or missing URL
$ curl -sSLOJ 'example.com/file%20name.txt'
$ ls
file%20name.txt
On the other hand, wget (without any additional flags) will produce a file called "file name.txt" for both URLs. Well, technically you also need to add a --content-on-error flag to wget because this example URL 404s.