Every once in a while, I get someone who asks me what I recommend for a hosting environment (Windows, UNIX, Linux, etc) or database system. Questions about my opinion on specific technologies raise a little warning flag with me because they are usually a veiled invitation to a political discussion on the merits of the questioner's pet environment.
Well, we have a saying around here: "It's just another operating system." And you can replace the words "operating system" with "programming language," or "database system," or any other class of technology. I've worked in far too many different environments to fall prey to the bigotry that polarizes a lot of the development community.
Do I think I'm somehow enlightened? Nope. I've just discovered over time that customers don't really care about technology, unless it is for political reasons. Technology is just a tool. It's a means to an end, and that end is to produce an application that helps customers do their jobs better. By better, I mean more quickly, easily and accurately. Customers don't care about how you used the latest tools with the fanciest features, if your results fail in accomplishing the prime directive of getting the job done. And sometimes they do fail. As I've said before, on the bleeding edge, the blood is usually the customer's.
This makes me sound like a real conservative fuddy-duddy, but that couldn't be farther from the truth. I crave new technology. Part of the reason I have experience in developing software for mainframes, mini systems, and personal computers is that I kept putting myself in the way of new technological challenges. I constantly work to improve my company's techniques and methodologies. But my enthusiasm is tempered by a desire to produce reliable, usable, and maintainable software for my customers. New technologies take time to master, and my customers expect to have their applications built by a master, not a novice. For instance, right now I'm mastering Microsoft Visual Studio .NET, because that is where future Web development is going on Windows platforms. But my customers won't get .NET applications from me until I've created a couple of complete projects on my own and can give them their money's worth.
You might be wondering what this has to do with doing business on the Web. The point I'm making to all you Web site owners out there is that you shouldn't worry too much about the underlying technology. Your focus should be on usability and reliability, in that order. To a point, you will be willing to put up with occasional down time if you like using the tools when they are available. If you hate using the tools, reliability won't mitigate your frustration level. Ideally, you want both usability and reliability, of course.
Web developers are just as guilty of spreading hype about their pet tools as other technologists. They will try to convince you that you just can't live without that flash animation, graphical menu with rollovers, or some JavaScript-intensive feature. What they don't tell you is that your visitors are going to leave your site before it finishes downloading because it takes so long to load, or that the next release of Netscape or Internet Explorer will include "enhancements" that cause the scripting to stop working, or that visitors think the flash animation is cool the first time and annoying from then on. You get to find that out later so you can pay them to fix it or undo it. Darn, I stepped onto that soapbox again.
Anyway, the bottom line here is that you should keep your requirements focused on the business reasons for creating your Web site. All technology is "dead end" because it has such a short life span. Let your business requirements dictate when it makes sense to rebuild and take advantage of the latest and greatest. And keep in mind that the latest is not necessarily the greatest. Be prepared to temper the enthusiasm of your Web developer, who can't help being a technologist, after all. Look for developers who put a priority on producing the best product for you and your customers. |