Wednesday, September 16, 2009

New Functionality Coming Soon

I've been doing a coding marathon (75+ hours in last 5 days) working on some exciting new features for Jarvana. The javadocs fed up by Jarvana have proven surprisingly popular, so I've created a new addition to the application that features javadoc project browsing and searching capabilities.

The biggest update is integrating URL rewriting functionality into Jarvana to clean up the URLs used by the application. I've noticed users attempting to navigate Jarvana via URL modifications, and typically they run into problems because browsing/inspecting/viewing functionality is handled differently. With the new updates, most functionality (except searching) is handled via URL rewriting. If a user changes a URL, Jarvana should handle the change directly or redirect them automatically to the right portion of the application.

The biggest challenge of the new URL rewriting is to be backwards compatible with the existing parameter-based system navigation. This is important from an SEO perspective, since we don't want to break the 75,000+ pages/URLs on our site that have been indexed by the world's most successful search engine since we released Jarvana.

Speaking of SEO, it should be interesting to see what happens to Jarvana once the URL rewriting changes are released. In the old days, URL rewriting was preferred over parameter passing, but these days, there's a chance that it could be a different story. Hopefully over time the new URLs will be determined to be better than the old URLs, and the changes won't be penalized.

Although it probably looks simple from the outside, the URL rewriting redirect functionality is actually very complicated. It's actually quite easy if you're not careful to fall into a redirect infinite loop, where servlets redirect back and forth to each other. The coding is highly reminiscent of advanced recursion, where you can terminate the recursion in different places in your code under multiple conditions.

No comments:

Post a Comment