[Newbie] First thing to do in Angstrom on BeagleBoard xM

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 found several tutorials from blogs, websites, and discussion in this forum quite useful but I face a lot of problems and i dont understand majority of the instructions since im still a newbies. I thought maybe anyone of you expert enough that 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 how about 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 successful boot beagleboard xm up, i read view blogs that advise to update and upgrade right after first boot. So i tried to “opkg update” and “opkg upgrade” but it stuck at automatic login screen after complete upgrade and reboot. What should i do? What actually 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?

I very appreciate if anyone of you can help me out. Or recommend me some links or books that i can refer as a newbie in linux on beagleboard xm. Thank you a bunch.