JavaScript frameworks

I am getting more and more comfortable with different javascript frameworks.
The simple reason is that frameworks got much better.
I used javascript here and there before but tried to stay away from internals and poluting my memory with different behaviors of JavaScript in different browsers.

My first encounter with AJAX was via using MagicAjax.net at the begining of 2005. Later when Atlas/ASP.NET AJAX got better I start using it for my projects.
I have now enough understanding to see that ASP.NET AJAX can be somewhat havy and from now on I am trying to use more browser friendlier and much lighter options utilizing following javascript libraries and CSS resources:
  • jQuery is a fast, concise, JavaScript Library that simplifies how you traverse HTML documents, handle events, perform animations, and add Ajax interactions to your web pages. jQuery is designed to change the way that you write JavaScript.
  • Ext JS 2.0 Ext JS is a cross-browser JavaScript library for building rich internet applications.
  • Dynamic Drive's new CSS library! Here you'll find original, practical CSS codes and examples such as CSS menus to give your site a visual boast.
Combine this with the good server side scripting technology like ASP.NET, PHP, Ruby on Rails and others and you may get very close to perfect harmony and nice warm Zen like feeling about design and performance of your web application. ;-)

Quest: is AJAX bad for SEO?

This sounds like a simple question. I will say like many other developers/architects/consultants - "It depends..."

Bottom line AJAX is bad for SEO!
For publicly facing company websites, were SEO important, stick with the server side scripting such as ASP.NET, PHP, Ruby on Rails and others.
I am not mentioning static HTML pages here since medium and big size companies most likely will have data driven web site.

If you are building Line of Service business application AJAX will only make your application better.
Do not think twice learn it well and use it.

If you absolutely have to use AJAX follow "Unobtrusive JavaScript" pattern.
AJAX is great tool when used for proper application types.

Here is my prediction -> 3 years from now Search engines will learn to understand and properly index and rank RIA/AJAX/FLASH/Silverlight/Flex/Put your faviorite client side technology here. Until then ...

AJAX and SEO: How to have an SEO Friendly AJAX website using jquery
http://www.davidpirek.com/blog.aspx?n=AJAX-and-SEO:-How-to-have-an-SEO-Friendly-AJAX-website-using-jquery

http://www.seomoz.org/crawl-test

12 More SEO Tips for 2007 http://www.seochat.com/c/a/Search-Engine-Optimization-Help/12-More-SEO-Tips-for-2007/

SEO Myths  http://www.seochat.com/c/a/Search-Engine-Optimization-Help/SEO-Myths/3/
SEO for AJAX http://www.johnon.com/270/seo-for-ajax.html
AJAX, Web 2.0 and SEO http://www.hybrid6.com/webgeek/2007/01/ajax-web-20-and-seo.php
Web 2.0 Technologies and Search Visibility http://searchenginewatch.com/showPage.html?page=3624222
Unobtrusive JavaScript http://en.wikipedia.org/wiki/Unobtrusive_JavaScript
CSS, AJAX, Web 2.0 & Search Engines http://www.seroundtable.com/archives/006889.html
Search engine optimization http://en.wikipedia.org/wiki/Search_engine_optimization

Distributed memory object caching system, generic in nature, but intended for use in speeding up dynamic web applications by alleviating database load.

http://www.danga.com/memcached/

Have not use it yet but heard a lot of good things about it.

WatiN - Web Application Testing In .Net

http://www.codeproject.com/KB/aspnet/WatiN.aspx
http://watin.sourceforge.net/
http://watintestrecord.sourceforge.net/

Best Practices for Speeding Up Your Web Site

Best Practices for Speeding Up Your Web Site -> http://developer.yahoo.com/performance/rules.html#etags
Firebug -> https://addons.mozilla.org/en-US/firefox/addon/1843
YSlow   -> http://developer.yahoo.com/yslow/

HttpWebRequest and GZip Http Responses -> http://www.west-wind.com/WebLog/posts/102969.aspx