Being a good developer is about a lot more than just slinging good code. After you’ve compiled your application you’ve really just begun. One important step that some developers forget is profiling.
If you’re a .NET developer make sure you run FxCop over your code. It’s a free Microsoft tool that checks your code both for performance issues as well as basic coding standards such as avoiding Hungarian notation, correctly casing variables and basic good practices. While FxCop is more geared towards framework developers it has some great performance checks and little insights into your code that can only make your applications better. Some of my favorites are warnings about unused local variables and property collections with setters, which rarely make any sense on a collection yet are so easy to do when you’re coding on auto-pilot.
If you’re a .NET or Win32 developer a great must have tool for profiling and checking over your application is AQtime. I’ve found more memory leaks and performance bottle-necks with this tool over the years that it’s easily paid for itself many times over. There is a lot to the tool and for the first year I used it I only used 5% of what this tool can do, and that was checking for memory leaks in our Delphi applications. I finally explored it’s profiling features when I was tweaking some XML parsing code and it really helps focus efforts one which lines of code you should really worry about vs. trying to optimize everything in sight.
Even if you don’t have any coin to spend try running FxCop over your .NET code, you’ll probably find a few interesting things and learn a bit about best practices.