Problem with first thing to do.

Hi. Im newly involve with beagleboard xm with a week linux experience. My objective is to run .cpp code file with opencv library in beagleboard xm. I googling around and wandering at this community forum, blogs and I found that several tutorials quite useful but I face a lot of problems and dont understand majority of the instruction or topic discussed since i still a newbies. I thought maybe any experts can give a hint or guide me for this embedded journey. My questions are: 1. I burn an angstrom image from http://beagleboard.org/latest-images/ for my beagleboard xm. Is it the most efficient os that i can use? or the kernel? 2.I also tried ubuntu 14.04 (http://elinux.org/BeagleBoardUbuntu#raw_microSD_img) and it stuck after i update, upgrade, and try to boot into a gui environment. I refer to http://embedmastery.blogspot.com/2013/12/install-ubuntu-1310-on-beagle-board-xm.html and http://www.brianhensley.net/2013/01/beagleboard-xm-how-to-install-ubuntu.html for boot up and gui process. 3. Once i burn an angstrom image and boot beagleboard xm up, i read view blogs that advise to update and upgrade right after the first boot. So i tried to “opkg update” and “opkg upgrade” but it stuck at login screen after complete upgrade and reboot. What should i do? What the first thing i suppose to do after succesfully burn and boot? 4. When i gave up with update and upgrade, I just proceed and followed this tutorial here http://derekmolloy.ie/beaglebone/beaglebone-video-capture-and-image-processing-on-embedded-linux-using-opencv/ and it work until v2l-utils command. And i believe i need to install video4linux first. And how should i do it? Anyone could recommend me some links or books that i can refer as a newbie in linux on beagleboard xm. Thank you a bunch.