So here's a question, if I just want to use Linux out of the box do I have to learn any coding/programming?
Nope! Although, just as with starting out completely fresh with Windows or OS X, you'll probably have to get the hang of how a particular distribution works.
And yeah, each
distribution has its own way of doing things. Ubuntu has pushed hard for a thoroughly GUI-based interface, which lots of people like. Many of their GUI concepts are almost clones of OS X as well, so you might find that convenient.
Ubuntu is itself based on the Debian distribution. Debian is an open-source purist distribution; any source code that is copyrighted is kept out. This does end up limiting the distribution somewhat (and, in fact, one of Ubuntu's adaptations to Debian is to put that copyrighted software back in), but many movement users prefer this approach.
Fedora (by Red Hat) is another long-time popular distribution. However, it places less emphasis on having a perfect GUI experience, and more on having the latest enterprise-level software (as one of its purposes is to test out the software they use for their enterprise clients).
openSUSE is a European-oriented distribution. I haven't tried it out lately, but in the past they provided a very Windows-like experience with their GUI.
And, if you really do want to learn what is under the hood in a Linux distribution, there is always Arch.

These guys have put together a mechanism where you choose all the pieces of the system you want, build them yourself, and then install them yourself onto your own computer. This is actually not as hard as it sounds, and is by far my favorite distribution.

However, I have to admit that building an Arch Linux box is extremely time consuming...
In any case, while it can be useful to learn about controlling Linux via shell commands, it isn't really necessary. Most distributions use a "package manager" to deal with installing and uninstalling software, and have decent GUI utility apps to manage the hardware. You'll just need to get used to the system provided by the distribution you choose.