Usually, there are a bunch of rules and best practices which help optimizing a w
ID: 649641 • Letter: U
Question
Usually, there are a bunch of rules and best practices which help optimizing a website, bring new customers, and in general making user experience fast, smooth and pleasant while (sometimes) reducing the server load.
Also, usually, the largest companies don't bother to use those best practices. Except for few companies (like Google), on the largest websites, we can see:
table layouts, not minified JavaScript, no CSS sprites where they should be, several CSS files, intrusive JavaScript even in situations where it was simple to be unobtrusive, calls to JavaScript files in <head/>, etc.
meaningless errors, annoying popups, register forms with huge amount of fields to fill, UX issues on register
Explanation / Answer
I'd be willing to bet that there are two answers that address your question. These are just my opinion based on what I've seen from high output commercial production companies, so take them with a grain of salt:
Best practices in the web world evolve faster than you can implement them. What's here today is gone tomorrow. True, this may be starting to slow down as Web2.0 application development practices get a little more mature, but web development as we know it now is still in its infancy. Most large companies (like some that you mentioned) have been around longer than many of those best practices have existed. So, either they've put together a list of their own best practices and follow them internally, largely ignoring what's going on in the wild, or they adopt the newest best practices as they move onto new applications.
Pretty similar to the first point, the applications that large corporations have put out in the past may have been developed (or largely developed) prior to a lot of those best practices figured out. If it ain't broke, why fix it? What's already been created is already generating them revenue, so why would they take engineers off of new projects that will generate them new revenue and put them on old projects that may need some tweaks that are mostly transparent to most users (and at the end of the day, what engineer will want to work on some old dusty application with a bad code base)? As much as I love elegant code and keeping up with standards, it just doesn't make good business sense imo.
Again, just my opinion, but it makes sense to me :)
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.