I have got to admit when I first dived into this course I would not have had such a solid understanding of javascript as I would have now. While building some of my projects especially when I was using rails as an api I discovered a marvelous feature javascript provides to its developers, hoisting. Hoisting is in javascript refers to how and where we declare our javascript variables, it allows variables to declared after it has been used, in other words a variable can be used before it is declared. When I first saw this topic I was really confused, after taking some to appreciate it I began to find it very useful. With Javascript hoisting we can move all javascript variable and function declarations to the top of the current scope which makes it is easy to reassign variables. This javascript fundamental came in handy when I was trying to build bigger javascript applications that required me to call javascript functions before they are actually declared.