This is a read-only archive. Find the latest Linux articles, documentation, and answers at the new Linux.com!

Linux.com

Feature

Shopping with the Mozilla Amazon Browser

By Leslie P. Polzer on March 15, 2007 (7:00:00 AM)

Share    Print    Comments   

Amazon.com is the most popular online retailer. While you can, of course, access the site with any browser, developer Fabio Serra has created Mozilla Amazon Browser (MAB), a browser-based application that relies on Mozilla's XML User Interface Language (XUL) technology to implement its graphical user interface.

With XUL, developers write a user interface in XML, using a set of well-defined and portable widgets. The resulting application will run in Mozilla-based browsers only (including Firefox and SeaMonkey), although preview releases of a standalone environment under the name of XULRunner are currently being developed. MAB's Web site claims that the latest version, 1.4.1, has been tested with Firefox versions 1.5 to 2.0, running on Windows XP, GNU/Linux, and Mac OS X.

I installed the software to Swiftfox, which is a vanilla Firefox version optimized for a specific CPU. Like most Firefox extensions, installation involves downloading the XPI file (MAB-XPI for Firefox 2.0 or Firefox 1.0), allowing XPI installation for the site, and then restarting the browser. After that, MAB is accessible via the Tools menu. You have the choice of opening it in a new tab or new window; there's no way to open it in the current window.

MAB started quickly and provided me with a familiar interface, which is roughly divided into two columns: the left column shows an overview of the things you have searched for, while the right one provides details of a single item.

Solid help is available, giving you any information you might need, but most users will be able to use MAB right away without reading the help.

Searching and browsing

You can use MAB to search for the usual items: books, music, electronics -- basically every product category that Amazon offers. MAB supports searching six local subsidiaries of Amazon (com, ca, co.jp, de, fr, and co.uk), which means that China is missing. You can define the sort order of the search results using appropriate fields -- for example, price. The search doesn't offer as many options as Amazon's "Extended Search" does, but it should suffice for most purposes. The number of results returned is configurable from 10 to 50 in increments of 10. You can, however, always request more with the click of a button. When data needs to be transferred for any purpose, a progress bar shows how long it is going to take.

Mozilla Amazon Browser
Mozilla Amazon Browser - click to enlarge
MAB offers one thing Amazon's Web sites do not: the search results stay. You can run three searches and then take a look at all the resulting items simultaneously. Very handy.

Another nice feature is the "Icon" view mode, which makes you feel as if you're shopping on a bazaar: a bunch of mixed things to look at, but no direct glance at any other information. Unfortunately, this mode also exposes the absence of an important feature in MAB: Amazon's standard way of displaying search results, where visitors can look at the item and at the same time read its title, rating, and price. This is reason enough for me to stick to Amazon's Web site instead of the Mozilla Amazon Browser. The "Icon" view mode also lacks a context menu, whereas the list view has a rich one that offers a lot of actions at a click.

The detailed product information MAB provides is basically the same as what's available via Amazon's Web site. However, MAB by default only gets a basic set of details. Other information, such as customer reviews, can be fetched when you need them.

MAB's user interface is a bit clumsy at times: for example, when I let one column of a table grow, I'm used to the other columns shifting to make room; that's the default behaviour of the major toolkits. In MAB, however, the next column gets squished. This is most likely a problem at the XUL layer.

Unfortunately, the keyboard shortcuts are meager. That's too bad, since a well-planned scheme could have given MAB a real edge.

MAB doesn't offer much functionality with respect to buying. It can put items in your shopping cart and later take you to the Amazon Web site, where you can complete the transaction. There's no way of looking into the shopping cart with MAB, since Amazon doesn't seem to offer an interface for this. MAB could, however track the items that were put into the basket on its own.

Conclusion

Mozilla Amazon Browser has a lot of potential, and so does XUL, since they enable developers familiar with Web technologies to break free from the constraints of traditional Web applications -- in this case, without AJAX. But both need some time to work on the problems still present.

Leslie P. Polzer is a technical writer, consultant, and Free Software advocate.

Leslie P. Polzer is an independent professional specializing in the development of dynamic Web sites.

Share    Print    Comments   

Comments

on Shopping with the Mozilla Amazon Browser

Note: Comments are owned by the poster. We are not responsible for their content.

The code that binds.

Posted by: Anonymous Coward on March 15, 2007 11:18 PM
XUL is to Mozilla what ActiveX is to IE. A trick pony that ties you to a particular browser.

#

Re:The code that binds.

Posted by: Jeremy Akers on March 15, 2007 11:33 PM
No, actually it's not...

XUL is an open specification that may be used in any browser that chooses to support it, and it's cross platform so it doesn't lock you into a particular platform. There are numerous browsers that currently support XUL.

ActiveX is proprietary, and you must license it from Microsoft before you can add support for it into your product.

#

Re:The code that binds.

Posted by: Anonymous Coward on March 16, 2007 10:34 AM
ActiveX is proprietary, and you must license it from Microsoft before you can add support for it into your product.

No it's not, in fact Microsoft handed ownership of the spec over to the Open Group many years ago.

As a practical matter, though, ActiveX is pretty much a Windows-only technology. And it's a known security nightmare, so even Microsoft is trying to get away from it.

#

Re:The code that binds.

Posted by: twocents on March 16, 2007 12:07 AM
Have to agree... It appears to be similar to IE's ActiveX despite the response below. Also, after a search.. little in the way of multiple browsers using this technology set (save gecko-based browsers).

When it comes to introducing new tech-sets, better that they remain server based (php, perl, asp...) then tying them to specific browsers.

Not that familiar with XUL but according to WIKI:
<a href="http://en.wikipedia.org/wiki/XUL" title="wikipedia.org">http://en.wikipedia.org/wiki/XUL</a wikipedia.org>

XUL (pronounced zool ([zu:l])), the XML User Interface Language, is a proprietary XML user interface markup language developed by the Mozilla project.

There's no formal specification of Mozilla XUL, although developer documentation is available [1]. [...More on the link above...]

#

Re:The code that binds.

Posted by: Jeremy Akers on March 16, 2007 01:43 AM
"Have to agree... It appears to be similar to IE's ActiveX despite the response below. Also, after a search.. little in the way of multiple browsers using this technology set (save gecko-based browsers)."


Gecko is open source, and using gecko is the easiest way to implement XUL support, as all the code to support XUL is already built into Gecko. A quick list of browsers that use Gecko (In alphabetical order):


* Alefox
* Beonex Communicator
* Camino (formerly Chimera)
* CompuServe
* DocZilla
* Epiphany
* Flock
* Galeon
* IceWeasel
* K-Meleon
* K-MeleonCCF
* K-Ninja
* Kazehakase
* Lolifox
* Madfox
* ManyOne
* Mozilla Application Suite
* Firefox
* Netscape
* Salamander
* SeaMonkey
* Skipstone
* uBrowser
* Torpark


So I fail to see how you're locked in. These all use Gecko, but as it's open source, anyone is free to modify it, and no-one is locked in to anything. This is quite different from browsers based on the IE engine, where they ARE locked in. They can not modify the engine to fit their needs.


"When it comes to introducing new tech-sets, better that they remain server based (php, perl, asp...) then tying them to specific browsers."


As shown above, you're not tied to a single browser. Anyone can use gecko and/or XUL to build a browser, and there are TONS of browsers already out there. Also, whether it's better to have it server based or client based it a rather arbitrary opinion not based on any real facts.


"Not that familiar with XUL but according to WIKI:"


Not sure why you would search the wikipedia for this when you could go straight to the horses mouth:


<a href="http://www.mozilla.org/projects/xul/" title="mozilla.org">http://www.mozilla.org/projects/xul/</a mozilla.org>

<a href="http://www.mozilla.org/projects/xul/joy-of-xul.html" title="mozilla.org">http://www.mozilla.org/projects/xul/joy-of-xul.ht<nobr>m<wbr></nobr> l</a mozilla.org>


And as far as no XUL specification existing:

<a href="http://www.mozilla.org/projects/xul/xul.html" title="mozilla.org">http://www.mozilla.org/projects/xul/xul.html</a mozilla.org>


-Jeremy

#

Re:The code that binds.

Posted by: twocents on March 16, 2007 03:19 AM
Thanks for the information Jeremey and I say the following respectfully...

It's still Gecko and not all of these browsers incorporate XUL. K-Meleon, for example, has versions with/without XUL, portable versions, etc. Alot of the elements used in XUL can already be implemented using commonplace techniques. Many of the browsers you listed aren't even in the same league as the big four (IE, Firefox, Opera and Safari). Let's not forget the number of alternative engines out there (Lynx) and older OSes (yes, including IE on older M.S. OSes) that are still in use. It's not like XUL hasn't been around for a while.

Implementing client-side tech for one rendering engine (no matter how many off-shots exist for it) and building sites around a specific technology causes the same kinds of problems we had with IE. For example, there's absolutely nothing wrong with Opera (a viable alternative browser) except issues arising out of sites writing to specific browsers. I'm not a big fan of MS but they have a strategy that has worked -- before they introduce proprietary tech, they involve as many 3rd parties effected and make sure that issues are lessened.

Mozilla has introduced "new" tech (some time back...) and by doing so they need to proactively get the other major players involved.

There's a ton of web 2.0 stuff out there that's server-based (frameworks including java,<nobr> <wbr></nobr>.Net, and so many others) with which just about anything is possible (including desktop-type interfaces) and will run on any browser. We're now at a point that pages are once again being written to specific browsers (Yahoo Mail and Hotmail are good examples) and it leaves some of the other developers out there being forced to make choices they really don't need to.

I looked over the links you provided and I must say it's impressive and easy to follow technology. I see immediate benefits for kiosks, lan-users, bringing online apps offline, proprietary business applications with easy Lan&Remote-based administration (though many are already doing this by running lamp, wimp tech locally), etc.. I also see long-term negatives in regard to small devices with limited resources (Nokia800, PocketPCs, smartphones).

Another useful and impartial link is at:
<a href="http://www.xml.com/pub/a/2007/01/31/xul-enhanced-web-apps.html" title="xml.com">http://www.xml.com/pub/a/2007/01/31/xul-enhanced-<nobr>w<wbr></nobr> eb-apps.html</a xml.com>

Some of the samples are extraordinary - terrific, in fact! But they only work on my Gecko-based browsers (Firefox, K-Meleon) - which is to say they only run on the same rendering engine; and not Opera and IE (not to mention other alternative engines I run locally for testing).

I wish Mozilla the best with XUL but if this technology is going to see the light of day (and I hope it does), they need to pro-actively work with other browser developers (seek them out, provide extensive support, etc). In the meantime I'll keep slamming sites that force me to switch browsers when there is no reason to.

#

Re:The code that binds.

Posted by: twocents on March 16, 2007 03:24 AM
(sorry for the double-post. Wasn't paying attention to the default format. Not sure how to delete the previous post after submission)

Thanks for the information Jeremey and I say the following respectfully...

It's still Gecko and not all of these browsers incorporate XUL. K-Meleon, for example, has versions with/without XUL, portable versions, etc. Alot of the elements used in XUL can already be implemented using commonplace techniques. Many of the browsers you listed aren't even in the same league as the big four (IE, Firefox, Opera and Safari). Let's not forget the number of alternative engines out there (Lynx) and older OSes (yes, including IE on older M.S. OSes) that are still in use. It's not like XUL hasn't been around for a while.

Implementing client-side tech for one rendering engine (no matter how many off-shots exist for it) and building sites around a specific technology causes the same kinds of problems we had with IE. For example, there's absolutely nothing wrong with Opera (a viable alternative browser) except issues arising out of sites writing to specific browsers. I'm not a big fan of MS but they have a strategy that has worked -- before they introduce proprietary tech, they involve as many 3rd parties effected and make sure that issues are lessened.

Mozilla has introduced "new" tech (some time back...) and by doing so they need to proactively get the other major players involved.

There's a ton of web 2.0 stuff out there that's server-based (frameworks including java,<nobr> <wbr></nobr>.Net, and so many others) with which just about anything is possible (including desktop-type interfaces) and will run on any browser. We're now at a point that pages are once again being written to specific browsers (Yahoo Mail and Hotmail are good examples) and it leaves some of the other developers out there being forced to make choices they really don't need to.

I looked over the links you provided and I must say it's impressive and easy to follow technology. I see immediate benefits for kiosks, lan-users, bringing online apps offline, proprietary business applications with easy Lan&Remote-based administration (though many are already doing this by running lamp, wimp tech locally), etc.. I also see long-term negatives in regard to small devices with limited resources (Nokia800, PocketPCs, smartphones).

Another useful and impartial link is at:
<a href="http://www.xml.com/pub/a/2007/01/31/xul-enhanced-web-apps.html" title="xml.com">http://www.xml.com/pub/a/2007/01/31/xul-enhanced-<nobr>w<wbr></nobr> eb-apps.html</a xml.com>

Some of the samples are extraordinary - terrific, in fact! But they only work on my Gecko-based browsers (Firefox, K-Meleon) - which is to say they only run on the same rendering engine; and not Opera and IE (not to mention other alternative engines I run locally for testing).

I wish Mozilla the best with XUL but if this technology is going to see the light of day (and I hope it does), they need to pro-actively work with other browser developers (seek them out, provide extensive support, etc). In the meantime I'll keep slamming sites that force me to switch browsers when there is no reason to.

#

Re:The code that binds.

Posted by: Anonymous Coward on March 17, 2007 12:20 AM
I don't think that the intention of this is to be so much a pure web app. XUL apps (IMHO) are more like cross-platform desktop apps. They can be delivered by the web, certainly, but they can play in a different sandbox.

This appears to me me to be more of a desktop client for Amazon. In that task, it seems to be a wonderful application of XUL stuff.

#

Dumb

Posted by: Anonymous Coward on March 16, 2007 04:27 AM
It sounds pretty dumb.
Should someone download a separate special web-browser to use for shopping on just one site, when shopping can be done on any browser?

Also, "Mozilla" is a trademark of Mozilla Corporation.

#

This story has been archived. Comments can no longer be posted.



 
Tableless layout Validate XHTML 1.0 Strict Validate CSS Powered by Xaraya