Using tools that are too complex
For the last couple of days I have become very frustrated by using VS.Net on a project. Because of this I have developed a new strategy for what tools I use. If the tool I'm using does stuff I don't understand or control I need a simpler system to fall back on.
My problem was related to using some com components. Everything worked fine until I published the project. Then some of my dll's were exchanged with other versions that did not work. I hadn't tried MSBuild yet and NAnt didn't support .Net 2.0 (well, without getting a nightly build). I was stuck with VS.Net :( I finally got it working, but without understanding why...
I will have to try and see if Sharpdevelop is anything worth for.Net 2.0 and I will have to update my version of NAnt.
If a program does "magic" stuff, it's to complex and will probably do stuff you don't want from time to time.