Well, my first ever blog entry. I know I'm excited. First a bit of background.
I work for a large international corporation that provides IT services to other companies (typically fairly large ones). This can be project management, web site design, web applications, desktop applications, technical architecture roadmaps, consulting services, and a whole range of other related services.
As one of the main .Net people within my organisation, I carry a defacto evanglist role for .Net in general, whether I like it or not. Our organisation deals with ASP/ASP.NET/Java/J2EE/C/C++/Delphi and any other technology that will enable it to meet its client needs and/or requirements (and therefore make money).
With that in mind, it would be nice to emphatically state that .Net can meet the clients goals in each and every respect, that the architecture, performance, and features of .Net can not only meet the clients needs, but allow us, as solution providers, to exceed them. While this is certainly true in most cases, a client quite often gets immediately suspect when you zealously state that .Net will solve all their technical hurdles, and that their existing technical investments have either become obsolete and should be discarded, or that they should invest countless man hours and money deploying this new .Net technology throughout their organisation because of all the technical merits that it will garner now and in the future. Again, this may all be true, but people dont like to be bombarded with opinions, especially clients wanting their system/website/solution delivered. They want a solution to their problem in the cheapest and best way possible. I have seen a lot of projects go to different technologies and/or vendors because a solution provider was over enthusiastic about a particular technology or simply bad mouthed their existing technology in favour of an all encompassing new technology (in this case .Net).
Whats my point? Well, sometimes you have to lose a battle to win the war. Go with a clients demands on technology, and try to factor in .Net where possible, but not to extremes. An over zealous proponent can do as much harm as a really bad implementation/system for a technology. Integrate where you can, demonstrate that the part that is .Net is performing well, and has potential to perform better, but given the constraints of the system its integrating with, your options are limited. Show a client whats possible, but dont force the issue, know when to step back and allow things to proceed, perhaps not optimally for getting .Net into the picture, but in time, you can demonstrate the case.
Be a solution provider for your client, and provide a solution that meets their needs, budget and inclination. As fellow .Netters, we know that its a brilliant technology, but like politics and religion, you cant be too pushy or your technical arcguments wont mean a thing.
Hope my first blog hasn't bored you too much.