Reverse engineering is really a pretty cool area of computer security. You need not be frightened by it though if you have limited programming knowledge. That said, the more programming knowledge you have the better, especially so as it pertains to Assembly. There are certain things that you will be looking for in an executable that you are attempting to do RCE (reverse code engineering) on. The usual error prone functions such as the str* series is always a good start. Also you may want to go looking for any mathematical functions which could indicate encryption are always a good bet as well. There is some very interesting research being done as I believe I already mentioned by the Metasploit crew on a new tool that will help one do RCE. Anyhow, should any of you have some war stories you would like to share that Reverse Engineering related feel free to share them.