Alex Bosworth makes some good observations in his list of Ajax Mistakes. I’m currently deep into tuning a pretty much 100% Ajax driven site, and comparing what I’ve built with what Alex has figured out is sort of eye opening. There are mistakes on his list that I’ve seen and have identified in my own app, and ones I hadn’t even considered.
And also, because the app rarely, if ever, reloads the page the URL never changes. This causes all sorts of problems including, most importantly, totally and completely breaking the back button. I haven’t figured out a good way of making the back button work in a page that never goes “forward” in the traditional browser sense, but I know I’m not the only one working on the problem. Another Alex, Alex Russell has a lot to say on Ajax and back buttons, and has offered up a solution which I’ll have to try.
If I can’t solve those problems above, my app is little more than a poorly designed Flash movie, which isn’t something that sits well with me.