Interesting week around here, starting with a job interview on Monday morning with a media firm having some very high end clients and web sites to go along with them. The job title is “HTML Artisan”, rather like that moniker myself, and mostly consists of taking a multi-media rich (think mucho Flash) web site and reproducing it all in html and dynamic javascript as close as possible to the original in looks, and completely in functionality. The functionality is kept through further degrades in rendering capabilities while serving up alternate content to cell phones and other devices, and they are working on modularizing as much as possible. I was the first interviewee, a good sign I hope! Things seemed to go well, they had a quiz to see if I really was an expert and both were happy that I got the answers immediately. There was a validation error in one of their examples that I wasn’t sure was intended or not as a hidden quiz, but I pointed it out anyways as it was the old error of just putting a pound # symbol in an href to go to the top of the page and I’ve run into situations where they just don’t work unless it’s a properly valid named anchor. Everyone interviewed will be contacted in the New Year, so it’s a bit of a waiting game for a bit on that opening.
Elsewhere in the IT world, getting around to investigating the latest shopping cart software offerings and starting with Zen Cart. First impression – there’s a lot of stuff in it. Unpacked with the demo files and docs, it’s 10.5 MB not counting database tables and the admin area has a gazillion places where one can change things. A colleague of mine is looking for something unbreakable and simple for the admin for a client, but the demo has all the modules running with bunches of categories and sales/pricing type examples so will have to do a non-demo install as well to see what it’s really like customizing for a client from the ground up. At demo level, it definitely is something that would require more than a little effort from whomever the client decides to designate the admin/manager of the “store” and creating new admins I noticed that there isn’t “levels” of users or admins. An irate employee could easily break the site temporarily as everything is available when anyone is admin, and it would be nice to restrict certain people to be allowed to do just some things like add and remove products and nothing else like in the layout configs for instance. Perhaps that functionality is there, haven’t found it yet though.
Compared to using something like Smarty templates the html and the php code for Zen Cart is horribly mixed together, but on the positive side they have come up with a system in the core code to look for an extra folder/directory name for duplicate custom over-ride files for php that generates HTML, there by leaving the originals intact and the custom templates etc. untouched through upgrades and mods, which can be quickly reversed during testing. The spaghetti code could be a lot worse and it’s not bad at all if you’re familiar with seeing php mixed in with html, so I’ll have no problems changing things around. I thought it was a nice touch, although it’s another link a store manager wouldn’t be able to do anything with, was a grep like facility to look up the constants to change the language file values. Enter your string of text, and it did a search of the templates to find the relevant file name and line number for the corresponding constant for modification.
The admin area as mentioned has everything showing by default, and for the uninitiated which of the 80 plus links in the demo to choose from to start off with is going to be a little daunting. Like a real store, the store manager/admin needs to have a decent knowledge of commerce and eventually they would know which areas they don’t need to bother with. Also like a real store, the inventory and categories/groups and pricing would all be worked out before the initial launch and familiarity with the product itself would aid in learning the software.
They use a block/column system for layout similar to Drupal with a choice of left/right/center combinations of columns and a header/footer, the default css is much simpler than Drupal though and it feels more solid, which means easier to adjust/modify. The standard HTMLarea wysiwyg set to XHTML comes with it for the store manager to create “sale” or advert pages adding to it’s weight, but expect some weight from what feels like so far to be solid, feature-rich store management software.