Don't guess or assume something, know it
Today I was reminded of a rule I try to follow (keyword, try). When developing or building things never guess or assume how something works, KNOW how it works. I finally got around to debugging a memory leak issue in a internal application here at work that has baffled my fellow employees. Although, I don't think they have spent much time working on it. I finally found the offending method and the developer on it started to do the try and compile process of debugging it. This had to be stopped because it was getting us nowhere fast. I looked into some of the internal methods of the .Net framework and found where the problem was. No matter how much my cohort would have tried he never could have fixed the problem without taking a step back and learning how everything was working. We even knew the line of code in our code that was causing the problem, but after that decompiling was necessary :).
So, what is my point? It is that when coding you need to understand how stuff works and not just start guessing. This can be applied to many different areas, not just coding, I think at least. Whenever I see someone trying to blindly fix a problem I associate it with being a newb or not very good at that specific activity. I can name quite a few areas where I just start to blindly guess at things. You can apply a more scientific process to things, but, at some point you are going to say fuck it and do some blindly stupid thing that you wish you hadn't, well at least that is how I feel sometimes.
Now where is my coffee....