In practical terms this translates into a simple rule: ask other people for their advice. In the age of search engines and instant access to information we have become so indoctrinated to “just Google it” that the concept of seeking out other experienced and knowledgeable individuals is sadly considered archaic. The advice I have for you on any IT project, not just ones which involve group policy, is to find other people who work in your profession and spend some time with them. For real, in person.
If nothing else, having a network of friends and colleagues with whom you maintain contact means you can discuss your work, and gain access to their knowledge in real time. They do what you do, which means they to do research into various things. Even if they don’t have the solutions to your particular problems, the chances are that the research they have done can save you quite a bit of time.
Also: don’t evangelise. People hate being preached at. It means that in the end you only end up hanging around with other people who think exactly like you. Talking to a fellow evangelist about a problem isn’t getting a second opinion: it’s the same opinion twice. We can all do with broadening our horizons, and that means taking the time to listen to people who talk about things that might go against the preconceptions and prejudices we hold.
I am saying this because from a cold blooded business standpoint, if you have two people who agree on absolutely everything, then one of them is redundant. Diversity of thought process leads to new and innovative approaches to solving problems, it leads to different approaches to research and it leads to re-examination of previous “facts” to determine if they are still valid.
Maybe I’ve just made the case for the existence of a few different flavours of IT consultant. The more important the project, the bigger the budget, the more formalised these outside opinions should probably be. I know that in my own mind it is making the case for professional social networking. By this I mean friendships with other IT workers, groups like your local LUG or the Spiceworks community. Even the comments section here on El Reg, Ars and similar sites can be gold mines of differing opinions and varying levels of professional advice.
There is no greater honour than to be asked by another professional in your field “what do you think?” Somewhere along the way many of us get caught up with thinking that we should - or worse yet, that we actually do - know everything about a topic; that asking for help or advice is weakness; and that if we disagree with someone, their opinions lack value.
There is nothing further from the truth. In a rapidly-evolving field like IT, opinions from people you disagree with are critically important. Asking for help and advice isn’t a failure, it’s a sign of professional maturity. No individual can be the ultimate programmer, systems administrator, network jockey, interface guru, web designer, rack monkey, tech bench, hell desk, project manager, MacGyver, logical thinker and all the other hats out there that need to be worn to make IT work. We all do the bits we’re best at and rely on others to get the rest done.
I am saying that none of us is as capable as all of us, but also when you lack proper management, the statement that none of us is as dumb as all of us is equally applicable.
It is difficult to temper personal and professional growth with the maturity and self awareness to look outside ourselves for answers to our problems.
You can’t know it all, and you’ll kill yourself trying.
Another thing to remember
There is a subtle difference between being able to do anything and being able to do everything.
And never forget ...
There is no absolute "best", only "better" for the particular problem and circumstances you are tackling and facing, and "better" is always a very subjective thing.
At the heart of every fanboi rant and flamewar-fest there is usually the element of, "this is best for me so it must be best for you, your solution doesn't suit me so it's a poor solution, if you choose that solution you're therefore a tosser".
I get heartily sick of blinkered views which dictate there is only one true way to do things. I had to write a Wake-On-LAN packet sending App, knocked it out in a few seconds flat in VB, worked perfectly. Then ensued the hour long and pointless lecturing from others that C is better, more powerful, more capable, VB is bloat and slow, Linux is better than Windows, blah, blah, blah.
Any chance of ensuring this becomes the very first page you see on every IT related book, tutorial, website, t-shirt, and becomes a mandatory first and last read for those studying IT in school/college/university.
Indeed, perhaps this should be the first thing you MUST read regardless of the field you're in?