Thought I would put up this topic as I thought it would be good for others to read that are in the same situation as myself who is currently learning how to create addons for xenforo. My Background I am a developer by trade, however not something I have been doing for years and I only code windows based .NET applications with no experience in web development. I know the basics of PHP programming, although I do need to keep learning this to become more proficient at both writing and reading code. I understand object oriented programming. I have never before created an addon for any forum software at all. So as some already know I have been trying to code an addon for mapping members, and here are the things I have learnt that I hope will help others in the same situation. Baring in mind I am still doing these things. TAKE THE TIME to set up an IDE to work in and get a local installation of xenforo set up. This is well worth the effort as it helps when trying to find out what is available in different parts of the framework. READ TUTORIALS ON HERE - There is a lot of information on xenforo that is invaluable. Look at some of the "How to's" and follow them. Do them for yourself. It will make you feel more comfortable with it besides anything else. READ THE CODE FIRST - When extending classes etc, read the code you are extending from so you understand what it is doing. I was told only yesterday by ragtek to learn to read, and this has to be the best piece of advice I have yet received. TRY TO FIGURE IT OUT - Always try to figure out what you have done wrong before asking the question. DOWNLOAD ADDONS - Download other peoples addons that achieve similar things when you are getting stuck, and look at how they have done it. For example I found how to extend the datawriter correctly by looking through the scratchpad demo by Kier. ENSURE YOU UNDERSTAND - This is something I have been guilty of in the past couple of weeks. When you do something that you have seen done elsewhere, try to understand WHY you are doing it and how that works. This way when you have problems they are easier for you to debug and fix. Feel free to add to this.