Finally after having to use 3rd party apps to suppress Bixby for many many months, I have found a way of disabling it which :-
A > does not need a Samsung account
B > does works even on the latest update (as of 22/4/2018)
C > persists across reboots
D > does not require a 3rd party app
E > does not need root access
the process is as follows,
1> connect to the device over adb from your computer (note you need adb tools for this https://developer.android.com/studio/releases/platform-tools.html)
2> access the device shell (adb shell)
3> disable the apps with the following commands
pm disable-user com.samsung.android.bixby.agent
pm disable-user com.samsung.android.bixby.es.globalaction
pm disable-user com.samsung.android.bixby.wakeup
pm disable-user com.samsung.android.bixby.plmsync
pm disable-user com.samsung.android.bixby.voiceinput
pm disable-user com.samsung.systemui.bixby
pm disable-user com.samsung.android.bixby.agent.dummy
Bixby should no longer open when pressing the button on the side of the phone