Agile Ajax

Really Simple History: Onwards and upwards

I'm excited to announce that I've heard the call and volunteered to tackle maintenance and stewardship of Really Simple History, Brad Neuberg's intuitive, lightweight Ajax history library. Brad developed RSH a couple of years ago, drawing inspiration from the Dojo Toolkit folks to deliver a standalone library that provides back-button and bookmarking support for Ajax apps in IE6 and various Gecko-based browsers. Since, then, many additional Ajax frameworks have implemented back-button and bookmark support, some of them drawing on Brad's work.

Meanwhile, Brad's been too busy with other projects to upgrade RSH for a variety of new and existing browsers: IE7, Opera, Safari/Mac and Safari/Windows. I asked Brad to let me take care of his baby for several reasons. For one thing, I've been an enthusiastic user of the library. For another, I've been wanting to get involved on a more formal basis with open-source JavaScript projects. But most of all, I believe RSH remains a great tool for folks who want a solution to the Ajax history issue without the overhead of a larger Ajax framework.

I'm currently working with Brad to migrate RSH to Google Code, get acquainted with the bug base, and start tackling the thorny issues surrounding Ajax history support in the 2007 browser landscape. I look forward to shamelessly pilfering the many fine solutions uncovered by a large community of developers since Brad's initial work. (Brad was kind enough to point me to this blog post from Bertrand Le Roy, which lays out many of the aforementioned fine solutions and thorny issues.)

In the meantime, I'd love to hear from RSH users about their hopes for the future of the framework. Comments, please, or ping me directly at bdillard (at) pathf.com. Thanks!

Comments: 12 so far

  1. Fantastic! We are using yui’s browser history, which seemed to be the best of the crop of history managers when we made the choice. It has to be the most brittle piece of code in our app. The most ridiculous requirement is that it has to be included inline at the top of the body. You can’t put it in a separate file. I am very glad that development of browser history is progressing. Thanks for taking this on!

    Comment by theIntuitionist, Wednesday, September 12, 2007 @ 11:39 am

  2. Big ups, Brian! I’d been occasionally checking for the latest changes to an RSH fork at http://cvs.horde.org/dimp/js/src/dhtmlHistory.js .. it’ll be good to have proper new releases.

    Comment by hdfssk, Wednesday, September 12, 2007 @ 4:39 pm

  3. Sweet, looking forward to it. Been using it for a long time.

    Comment by Trey, Wednesday, September 12, 2007 @ 5:50 pm

  4. Brian, I’m very excited that you are onboard and leading the project now. I just did a blog post about it:

    http://codinginparadise.org/weblog/2007/09/really-simple-history-finds-new-home.html

    Best,
    Brad

    Comment by Brad Neuberg, Friday, September 14, 2007 @ 1:14 pm

  5. There are a variety of forks and patches others have done on RSH. Amalgamating those is probably a good first step.

    Comment by Brad Neuberg, Friday, September 14, 2007 @ 1:15 pm

  6. hdfssk and Trey, thanks for using RSH!

    Best,
    Brad

    Comment by Brad Neuberg, Friday, September 14, 2007 @ 1:41 pm

  7. Looking forward to the next release.

    Comment by Magnus, Monday, October 8, 2007 @ 3:04 pm

  8. Thanks for putting together RSH. I am trying to use it in my code but am confused about the usage. I looked at the usage instructions at Google code, but I could not figure out how to add to history. Can you provide some more details as to when to invoke dhtmlHistory.add and historyStorage.put/get ?

    Thanks for your help.

    Comment by ms, Tuesday, November 20, 2007 @ 9:39 am

  9. Hi Brian,

    First, let me start by saying, thanks!
    I’m new to Ajax and web development. I just implemented history and bookmarking capability with RSH and it seems to be working fine. My question: does this solution also solve the search engine problem. That is, if I have a sitemap with links on all my website pages (i.e. “pages + RSH solution”) and submitted the sitemap to google, will google and other search engines be able to read them and properly index them.

    Thanks,
    - Wael

    Comment by Wael, Friday, January 4, 2008 @ 1:52 pm

  10. Hi Brian,

    First, let me start by saying, thanks!
    I’m new to Ajax and web development. I just implemented history and bookmarking capability with RSH and it seems to be working fine. My question: does this solution also solve the search engine problem. That is, if I have a sitemap with links on all my website pages (i.e. “pages + RSH solution”) and submitted the sitemap to google, will google and other search engines be able to read them and properly index them.

    Thanks,
    - Wael

    Comment by Wael, Friday, January 4, 2008 @ 1:54 pm

  11. Hi Brian (and Wael)

    After looking into this I discovered that most sitemap generators don’t support RSH links (which is probably due to “javascript” being included in each of them).

    This is because RSH links in the demos given are in the following format:


    add history

    If you use the url generated by the script in the ‘href’ content and then put the javascript link in ‘onclick’, you will find that the script is initialised but the link is ignored, yet running a sitemap generator on this will list all links within ‘href’.


    add history

    I’m not sure if this works so well when you change the linked item dynamically, but this is a decent solution in my opinion for listing items. If this method doesn’t work exactly as planned then perhaps run an .htaccess script that points to the same item and change the url to something like the following:


    add history

    With the .htaccess script the page would then be interpreted by a search bot as an existing page, yet the server would interpret the page as the ‘href’ content given in the second example.

    Comment by Mark, Wednesday, June 11, 2008 @ 6:57 am

  12. Whoops, didn’t think the html would be parsed. Here are the three examples:


    add history


    add history


    add history

    Comment by Mark, Wednesday, June 11, 2008 @ 7:09 am

Leave a comment

Powered by WP Hashcash

About Pathfinder

  • We design and build extraordinary applications for companies looking to make the next great idea a reality.
  • learn more

Topics

WordPress

Comments about this site: info@pathf.com