In general, if a non-system installed and maintained binary needs to be accessible system-wide to multiple users, it should be placed by an administrator into /usr/local/bin. There is a complete hierarchy under /usr/local that is generally used for locally compiled and installed software packages.
If you are the only user of a binary, installing into $HOME/bin is the appropriate location since you can install it yourself and you will be the only consumer. If you compile a software package from source, it's also appropriate to create a partial or full local hierarchy in your $HOME directory. The full local hierarchy would look like this.
$HOME/bin Local binaries
$HOME/etc Host-specific system configuration for local binaries
$HOME/games Local game binaries
$HOME/include Local C header files
$HOME/lib Local libraries
$HOME/lib64 Local 64-bit libraries
$HOME/man Local online manuals
$HOME/sbin Local system binaries
$HOME/share Local architecture-independent hierarchy
$HOME/src Local source code
When running configure, you should define your local hierarchy for installation by specifying $HOME as the prefix for the installation defaults.
./configure --prefix=$HOME
Now when make && make install are run, the compiled binaries, packages, man pages, and libraries will be installed into your $HOME local hierarchy. If you have not manually created a $HOME local hierarchy, make install will create the directories needed by the software package.
Once installed in $HOME/bin, you can either add $HOME/bin to your $PATH or call the binary using the absolute $PATH. Some distributions will include $HOME/bin into your $PATH by default. You can test this by either echo $PATH and seeing if $HOME/bin is there, or put the binary in $HOME/bin and executing which binaryname. If it comes back with $HOME/bin/binaryname, then it is in your $PATH by default.