Direct USB boot of a Pi3B or Pi3B+ works for me, even with another non-boot USB storage device connected. But RonR is correct that the bootcode.bin only method may fail with more than one USB storage device connected (bootcode.bin will only attempt to boot the first USB drive it finds, and there is no way to ensure that will always be your intended boot device).
However, there are problems associated with keeping /boot on the SD card as well. The script that automatically resizes the root partition will work on your USB boot device when booted directly, or using bootcode.bin only, but it will fail if /boot and / (root) are on different devices. And mucking about with partitions can be a daunting task for those not familiar with such things.
There is no one-answer-fits-all solution.