If it hasn't happened to you yet, it soon will. A client wants to know: Can you build him an interactive, electronic commerce site with a shopping cart and online ordering? First of all, what is a shopping cart? Basically it's a script that keeps track of items ordered, so that if a visitor wanders off to other sections of your site, their order is still stored, and they don't have to enter eveything all over again. Of course, the advanced packages offer various other features too, as we shall see.
September 13, 1999
So there you are, a small developer with a detailed knowledge of HTML, Photoshop, and an odd assortment of other tools like Javascript and maybe PERL. Now that you know what a shopping cart is, how to you go about building one for your client's e-commerce site?
Well, you could build a custom application using, say, Microsoft SQL Server/IIS and Javascript/VBscript, or perhaps Cold Fusion and some ODBC-compliant database. Yeah, sure you could. All it would take is a four-figure investment in software tools, a week of introductory training sessions with a couple of weeks of self-study on the side and a specially-configured server - and then you'll be ready to get started. Or maybe you could do it in Java. Maybe you have couple of database-savvy chums who would enjoy helping you.
Now that we've toured Fantasy Island, what realistic options are out there for the small developer?
Don't despair. There are several, and they occupy a spectrum in expense, functionality, and level of effort required from you.
JavaScript Shopping Carts
At the lower end, there are several JavaScript solutions that might suit you, depending upon your needs and your level of comfort with this C-like scripting language. If you're truly expert in it, you can simply write your own solution from scratch. You'll spend most of your time figuring out how to extract and parse product data from strings stored in cookies. I've gone this route myself a couple of times, and bourbon became an essential part of my toolkit. Your mileage may vary.
One step (more like a half-step, probably) up from this, you can modify a JavaScript solution that someone else has written. There are several of these on the Web, either free or available for a reasonable license fee. One serviceable JavaScript solution is the Ross Online JavaScript Store (see it at http://www.anweb.com/shopjs), and yet another is any of a range of applications from Motivational Marketing Associates at http://www.mmaweb.com/. My favorite is The Cartlet - lots of features, low price, and compatible with Solaris, Linux, and NT.
There are problems with these JavaScript solutions. For one, they all involve cookies - that is, storing a data string on the client's hard drive and retrieving it later. For a lot of Websurfers, cookies are The Great Satan. Many of these people set their browsers to reject any "write-cookie" request, and you can't argue with them - for these folks your JavaScript/cookie-based shopping system isn't going to work. Period.
The other, probably more serious, limit to JavaScript solutions is America Online. AOL's standard browsers disable JavaScript and, while it's true that the customers are free to download JS-equipped software whenever they want, you have to ask yourself how many AOL customers actually do that. Probably not many. If the AOL crowd is one you can't afford to do without, then you probably can't afford JavaScript-based solutions. Sad but true.
WebGenie Shopping Cart
The next product I want to suggest is WebGenie Shopping Cart, from the Australian company WebGenie Software. What WebGenie does is compile CGI scripts for you, based upon the data you supply. You ftp these scripts to your server's cgi-bin, and voila! you're ready to call them from your pages. All computation and data collection are done where they're probably best done, anyway - the server. WebGenie wants to use the above-mentioned JavaScript and cookies to store its data, but if it can't (perhaps the customer is one of those wild-eyed anti-cookie types) then it writes a session number based upon the customer's IP address on the server and stores its shopping data there. An interesting side effect of this is that, if you get two customers logging in from the same IP address, they could find themselves using the same shopping cart! Of course, this isn't likely to happen every day, but still, it could happen.
WebGenie is easy, quick, and runs on just about any standard Unix server. It might be all you need. You can find out more about it at www.webgenie.com
WebGenie basically just whips up CGI scripts, which you can then modify to your heart's content, so it's very flexible. The standard software license only allows you to install it on five computers, but if you buy the dearer "Web Designer" license, then you can use WebGenie to create shopping carts for an unlimited number of clients. Very cool.
In contrast to WebGenie, ShopSite, from Open Market, Inc., has clearly targeted small-to-medium merchants rather than Web developers. In the next section, we'll discuss this easy-to-use, mid-priced solution, as well as the big daddy of all shopping carts, Mercantec's SoftCart.