Here are a few tips for how to go about learning ColdFusion
Adobe Documentation (http://www.adobe.com/support/coldfusion/ then click on "Developer Documentation." This is a terrific resource. Look for two items in particular:
Developing ColdFusion 9 Applications - this is basically a free text book It is 1317 pages long!! It explains how to do a heck of a lot - for free!
ColdFusion 9 CFML Reference - This one is the dictionary. It is a listing of each tag and function. But, it doesn’t explain HOW to do anything.
a quick interface for the reference mentioned above. It is a faster interface
Safari Books online (http://my.safaribooksonline.com/) - this one is not free, but it lets you search through hundreds (maybe thousands) of books including some that have not been released yet (Rough Cuts - like Ben Forta's Web Application Construction Kit for CF9)
ColdFusion Meetup (http://www.meetup.com/coldfusionmeetup/) - This is an online user group which records the meetings, so you can go back to older topics which you didn't need then, but do need now.
Take a class - I also am a ColdFusion instructor, so I teach classes. Take a look at courses available online or in person.
Online Blogs - It is amazing how many tutorials are available online. Learn to fine tune your search techniques and you can find a ton of help.
Practice practice practice - actual need is the best teacher in a way. The more you just try things out, the more you learn!
I know in some languages you can choose whether you are passing by reference or by value. In CF, it is kind of tricky.
Basically, if you pass a simple value (regular variable or array) will be passing by value, but if you pass a complex object (cfc, struct, query, etc) you will be passing by reference.