Usable AJAX (how to not break the back button) 3

Have you wondered how the websites like Gmail use Ajax and yet make sure that usability is not compromised? The trick is widely being used but still, I get almost 3-4 hits everyday on this topic. So I decided to explain it…

The problem: Sending requests to servers asynchronously using javascript to load content dynamically(or should I say AJAX?) has been around for quite some time. It became popular when Google started using it in Gmail and it has been in the buzz since then. The buzz has started dying down now with usability becoming the important aspect now. I completely agree with the trend and this post is about solving one of the problems related to it. The problem in one sentence is:

While making AJAX calls, how do you keep the behavior of back button from breaking.

To explain it further: When you are changing the state of a page, using Ajax, how do you make sure that the user can return to it or a meaningful state without problems?

The solution:

More »

Tools for a Web Developer 3

I have been developing things for internet for more then 5 years now. I started out as a script kiddie when I was in first year at DAIICT. I started out by creating simple websites using Microsoft Frontpageand publishing them on different [free] servers. As time passed, I started hacking javascript code, learnt the concept of CSS and why styling should be done using CSS and not HTML (seperate design from content!). Since then I have done countless number of projects, designed and redesigned my website and also participated in different programs(Google SOC 2007 with Drupal :).  Today, I thought I should share the programs that I use for web development and ask you what you use.

As I mostly work on windows, the programs listed here are specific to this OS. Of course this does not mean that these are as fast or function rich as vi.

Editor: I generally use multiple editors for creating the web pages. Notepad++ is one of my first choices. It has tabs, syntax highlighting and it supports almost all the languages that I want to develop in. The only thing missing is the auto-complete feature. If there is such a feature available, I could not find it.

The other editor, that I have had an on and off relationship with, is Aptana. It is a fully featured IDE based on Eclipse and supports all the client and server side languages that I can think of. The only thing that goes against it is the bulkiness. I can never open more then 10 files at a time and still work without being slowed down by it.

Reference: For references on topics related to Web Development, I usually go to Google. I specially find articles on A list Apart, quirksmode to be of real help when dealing with compatibility issues. In addition, there are quite a few resources that have come up recently. One of such resources is Google DocType.

Testing: The rule of thumb here is to develop in Firefox and then tweak and patch-up for IE. Doing work in Firefox is very easy due to the huge number of extensions and plugins that make your life easier. Firefox is also straightforward to develop for as it does not act weird in implementing web standards.

Debugging: Of course nothing is complete without proper debugging tools. Here I find the Web Developer Extension for Firefox and Firebug to be really helpful. You can do almost anything from the combination of two.

With the combination of above tools, the life has become so much easier for me :). Hope it helps you too.

Is there something that I am missing out on? Do tell me in comments!

Updates 6

Recently I have been trying to experiment with some new things(do I need to mention software related things?). One of the biggest pains in my life is to organize my time. I tend to be a bit late, and somewhat disorganized. To relieve the pain, I decided to I started out with developing a calendar gadget for windows Sidebar. The gadget was supposed to simply display a user’s calendar from Google Calendar with events and possibly provide ways to edit and add events. I started using Google Calendar APIs as they had a pretty good documentation. For some reasons(laziness?)I decided to use the AuthSub APIs that google provides for authorization and then download the calendar in JSON format. This is where I got stuck…

Detail below :)

More »

Tribute to Michael Crichton 0

Midst the political news that have been going around after the presidential elections, I came to know about the death of a great author, producer, director Michael Crichton. Although I only knew about one aspect of his works the most notable one – Books, I can’t stop feeling sad about it. His books were always talked about topics that were close to my heart – the progress that we can make with technology (and of course the disasters that can occur if proper care is not taken. ) I specially liked Jurassic Park, The lost world, prey and sphere. I will miss the all the novels he could have written and would surely be waiting for the next novel that is announced to be released sometime next year[1,2]. I wish peace for him.

The death of Authur C. Clarke earlier this year and now Crichton has surely made this a sad year for science fiction.

Blogging is difficult 2

I have been stuck at the first few lines of this post for last two days!! After writing and deleting posts on different topics and keeping the WordPress dashboard open for 48 hours continuously, I have decided to give this page a break and at least show that I am trying to write something… So a completely “no-use-blog-post”. Let it be here on my blog to show that I am trying :)