You dont need to know how to program to use gentoo. Personally, I would stick with ubuntu, its not a noob distro. If you really feel you need more control, maybe try debian which ubuntu is based off of. Other then that, there are a lot of great distros out there that require more work to get using (which is what I think you mean by advanced). Arch linux is a good distro that takes a good chunk of knowedge to make usable. Slackware also will take some know-how to setup in a useable fashion (or at least it used too).
You really have to look at what you actually need from your os? Are you looking to tinker? Do you want to spend more time setting up your OS then actually using it? Do you want to help make linux better and develop it? Do you have weird system requirements? What do you think ubuntu is missing? What do you expect to gain from gentoo?
I am a gentoo user. I love gentoo. But for a newbie it will be annoying. It will be even more annoying if you do not really have a use for anything gentoo adds that ubuntu does not have. Because you will spend hours setting gentoo up only to find you are right back with what looks like ubuntu and uses the same apps as ubuntu. The only difference is installing an app takes 5X as long. I use gentoo because I have an AMD64 processor and I wanted an AMD64 linux distro. I found ubuntu lacking in 32bit support and packages with AMD64 linux. I also found that I was hand installing a ton of packages that I needed (mplayer 32 bit for example, and tons of librarys for games and such) just to get a usuable system. With gentoo I was able to specify exactly what I needed and do everything I wanted to do without all the chroot crap that I had to go though with ubuntu. I was also able to quickly find/update/or build ebuilds for things I was missing that were not in portage. Plus I love the fact that large binary packages like nwn, ut2004, doom3, etc are managed by portage so I dont have to worry about installing or patching them. They get patched with the rest of the system. I also an a freak about what libarays I get installed. Gentoo gave me control over that, but it took me a long time to really tweak out my make.conf to really get an advantage over ubuntu. (And the advantage is debatable). The final reason I use gentoo is because I have a ton of hardware and I find updates are easier to manage if they are all the same distro. I have one machine that syncs portage and I can use my faster machines to build the packages for my slower machines (such as my router). I also can save a good deal of space on my router with some good settings in make.conf. But really, I think most people use gentoo have better options that would be less hassle to setup. However once you have it setup, the hassle is gone and you dont even notice the fact things compile. Everything is still usable while compiling new updates and niceness keeps your system snappy. I really dont think much about the fact its gentoo anymore, everything just works.