Friday, March 30, 2007

The use and ABuse of AJAX

I'd like to tackle the theory of AJAXification for a moment, mainly because I was just in the middle of an AJAX-rendered hellish portion of an otherwise OK website.

AJAX is a buzzword and people who even know it are probably some of the few web programmers out there still able to compete over 6-digit salaried jobs.

The simple definition is that AJAX is a browser-side technology -- in other words it doesn't run on the webserver, it runs on your home or office computer -- that sends data and fetches data to and from a web server without the need to reload or load the webpage. Only the portion of the webpage that needs to be changed is changed, rather than the whole webpage. It can save time and looks better to the user because the pictures and background of the page don't need to reload. It can also be a waste of time, as shown in the example below.

With the proper use of AJAX, a web application can swiftly and seamlessly load information and change something on the webpage. Perhaps it can be used to anticipate the user's next move, load some data on the sly, and have it ready to slip in with some slick javascript maneuver when the user clicks. "Ha, ha! I knew you were going to click that!" This is especially cool when there are fewer choices for what the user might do. Not so great when there is a lot of data to pull from the webserver and not so great when there are too many choices to properly anticipate the user's next maneuver or when the data being pulled is directly dependent on the user's input.

The result of AJAX used correctly is a user experience that resembles a desktop application. Google (gmail at least) has it right, and I sure hope their programmers are getting the 6-digit income they deserve.

What annoys me is when AJAX is used to "be cool" -- not to enhance the user's experience.


The application that annoyed me today is the largest area newspapers' online calendar of events. Perhaps the application ran "slick" in testing with only 5 or 10 events listed. I'm sure it ran very nicely. Especially from their high-tech offices with terrific web service, or even with the servers at the same location.

There's a mini calendar which shows a bit into next month, and underneath it, starting with "today", is a huge detailed listing (date, time, name of event, location...) of the area's events for the next several days.

Each date on the calendar is a link that, when hovered, brings up a floating list of that day's events. If there were 3 events per day, this would be bright. There's more like 40. It takes as long to load the floating list as it would to reload the web page. You have to sit there hovering your mouse over the date for what seems like an eternity as it makes a call to the database to pull up and format the day's events. There's a nice swirly thing that shows up if you hover over the mini calendar. Without the swirly thing, if I went to the mini calendar to click, I wouldn't ever know that a "cool" list would eventually pop up. It pops up next to my mouse with a listing so long that when I then move my mouse down the list I eventually hit the bottom of the browser, and the whole AJAXified listing goes away. It doesn't scroll as I move down. That's real helpful.

Ok. Well, one could live with that -- instead of hovering and getting a hand-cramp, how about clicking on the date. As one would expect, the listing under the mini calendar changes to start with the date selected. However, this incites another AJAXified call to the database to fetch several days' events and replace the vast majority of the content on the webpage. Again, this data pull results in a long "load time" for the javascript (AJAX) to pull the data. It's nice that the sidebar dancing ads don't change, but exactly what time are you saving? Does this make you look "smarter" and "slicker"? Maybe...to the advertisers since you suddenly have nothing to do but stare at their glowing undulating ads.

But let's say I want to peruse today's events, and pull up the event details for items I'm interested in in another window, or in another tab, of my browser? Then when I'm done selecting a bunch, I can look through the event's details...

Because these aren't real webpage links, it ignores my attempt to open the link in another window. They're all "javascript links" and when I click them, the entire page goes away, even if I've attempted to open it in another window or tab. To get back to the mini calendar or listing, now I have to get the whole page by going "back" in the browser. That's not the way I want webpages to behave. At all. I'm a tab-oriented person. I let pages load in another tab and look at them when I'm good and ready.

All this time my laptop fan is going nuts, the load on my laptop was increasing, my laptop was getting hotter, and it was a waste to even be on the page. I have better things to waste my time with, like ranting about the abuse of AJAX!


This is just one example of a webpage that needs an AJAX Anonymous support group. Perhaps they never thought through what the user would do, how they would expect it to behave. They created a webpage Frankenstein monster based on what was "cool". It's not EASIER. It's not CHEAPER. It's their self-aggrandizement at stake. "Look, we have AJAX!" -- so what?

It doesn't help that I went for an interview with that company a year ago and they kept asking me if I knew AJAX and I kept saying "Not Yet." I still say not yet because I'm still not convinced that anything good would come of it. I've seen very very few things that would REALLY be enhanced by the use of AJAX. AJAX is not the killer tool to make a website cool. A website is either cool or not, regardless of the technology behind it. If doing something in AJAX would really make the experience better, go for it. Gmail is cool because it rather closely replicates the experience of a desktop email application. I hardly use it, but when I did, I was suitably impressed, then went back to my own email app. :)

An online shared calendar doesn't need to be AJAXified like this one was, though. I would have preferred to load each day's events in a separate tab, or view event details for selected dates in different tabs so I could keep flipping between them and comparing times and locations to see how many events I could attend.

What this AJAX stuff does to search engine optimization: Since search engines ignore javascript, all that data means nothing to them. Terrific on a private area of a website, horrible in a calendar application.


So, in conclusion, if you're looking for AJAX because you heard that AJAX is cool, ask to see some good and bad AJAX in action and talk to an expert to decide whether or not AJAX would enhance your users' experience given what you're doing on your website.

If you really do know AJAX, please stop people before they ruin their websites with it. You have a moral and ethical responsibility to guide people correctly in how they use their websites.

Please curb your AJAX. Good boy. Sit.

[tags]custom programming,education,ajax,information,programming,rant,fads,usability,web application programming,web applications,web standards,navigation,seo[/tags]

Wednesday, March 21, 2007

How Green can you get?

I've been working on the Orange Environment website, and one perk is that I'll have a table at the Earth Day event in Warwick on April 21st.

I'm a very conscientious person, so I have to scrutinize myself to justify being there. When people walk up to my table and ask me why a web designer is there at a booth on Earth Day -- what can I say to defend my "position"?


  • My office runs either on sunlight from a big bay window or compact fluorescent lights
  • I use 100% post-consumer paper
    • loosleaf for client notes
    • multi-use printer/copier paper for my laserjet

  • when I get mail or fliers that are only used on one side, I keep them by the phone for quick note jotting.
  • when a paper is used on both sides, I recycle it (sometimes shredded first)
  • I have a home office only
    • the same heat for my home is heat for my office (the office room adjoins the kitchen; it's a one-zone house, but at only 830 sqft it should be!)
    • I save on auto fuel & auto wear-n-tear

  • I drive a used but still energy-efficient car for business & personal use (1994 honda civic at up to 33mpg)
  • I turn the printer off when not in use
  • I work by sunlight whenever possible
  • I leave any extra computer equipment off whenever possible so only one computer is running the majority of the time
  • I use wash-n-wear clothes for the most part
    • the washer is a high-efficiency front-loader rated exceptionally for water efficiency
    • the dryer has a dampness sensor thus is self-regulating
    • I use a scent and dye free detergent
    • I don't use a fabric softener

  • I use refurbished toner cartridges
  • we have a duplex printer, and I print on both sides of the page for any multi-page documents
  • whenever possible I print 2-up duplex, for reference documentation, because I don't mind reading tiny print, but I do mind wasting paper
  • I save the plastic &/or cellophane windows of envelopes I receive for craft projects (they make great filling for homemade cat toys!)



There are still areas in which I'm a culprit, however. I could (always) do better. We occasionally use whiteboards in my office, and I'm not really believing the EAP certification regarding the inks. I want desperately to know if there's such a thing as soy laser toner cartridges, or any other alternatives that won't turn the laser printer into a hunk of waste. I could use dryer balls, and I'm considering that (if they make the dryer even a tad more efficient it's worth a 1 time expense). I could scold my roommate for leaving the bathroom light on. I printed up letterhead I could hardly afford, it came out lousy, now I have a ton of letterhead that shouldn't have been printed in the first place, and should have been on recycled stock -- live & learn. That letterhead is now the back of any one-page fliers I produce as handouts. :)

So I guess instead of feeling guilty, I could try to relax and realize that there are a bunch of things about me that cause me to stand out in a crowd of web design/programming professionals that could be considered when positioning myself in the "green" community as well: I've been an herbalist for about 15 years, I'm an Interfaith Minister, Reiki master, & Shaman. I guess having a booth isn't such a bad idea after all!

Tuesday, March 20, 2007

The Horrors of Banking in the 21st Century

Bank acquisitions have become so commonplace around here that I'm not at all surprised to walk into my nice local upstate-only bank and find that some global giant is gobbling it up like yet another Pac-Man pellet. I look on with concern, watching them rip apart the interior of my local branches to change the branding so that we can know for 100% certain that our money is no longer helping a local institution.

They even tore out the ATM machine and replaced it with a Diebold monstrosity. It has all the bells and whistles, or should I say beeps. Every number in your password elicits a LOUD beep so everyone in the bank knows how many digits there are in your password. When the cash is coming out, it beeps loudly. Thanks for letting everyone in a 12-block radius know I now have cash in my pocket. Wheeeeee! I hope they're not rolling out these monsters in NYC proper, but they probably did. Now they're infiltrating upstate New York. As if it weren't bad enough that the bank is changing, the new regime has installed monster equipment from the same company many people suspect have rigged elections. I'm scared to death to put my credit cards and debit cards into it's gaping maw. The only thing I can say in its favor is that it has an exquisitely sensitive touch screen. Everything else -- and I mean everything -- disgusts me. Every. Shiny. Millimeter. And I'm a geek.

I had 2 accounts at this bank. One personal (free for life -- *cough*) and one business. The business account's days were numbered already -- I never have enough money in the bank to escape monthly fees -- the bank gave me my first year in business for free. I threw enough of a stink that I got my second year free. But any day now, the account is going to start costing me $12 a month. That's enough chicken to feed my family for 3 weeks!! Forget it -- I was SO out of there. I started shopping around for a new bank. One that respected that my miniscule business needs every penny it works so hard to earn.

The DDay was to be March 23. I needed that account closed before the official 100% turn-over to the other bank. I didn't want them to send me new checks with a new routing number. I didn't want their promises that things wouldn't change too much. I didn't want their new signage. I definitely didn't want the Diebold ATM.

I had an outstanding check floating around in the wild, so I called the payee, and I made arrangements to send a money order and I was to put a stop payment on the check in question. They wrote a note in my account not to cash the check. I went to put a stop payment order on the check. Note the check is only for about $40.

It would cost me $33 to put a stop payment order on the check. For crying out loud, that feeds my family chicken for over 2 months! :P That's a lot of rice & beans. I hope they sleep well at night! Who would put a $33 stop payment order on a $40 check??!?

So, given that it could cost me $40 if the check goes through after I get the money order -- or $73 if it goes through but there are insufficient funds (but wait, then another $33 on top of that if the fee for insufficient funds sends the balance into the negatives!) -- or $33 to put a stop payment on the check, I chose the best thing. I'm closing the account out. Right now. It's cheaper. They're absolutely INSANE. They've sold their soul to someone out there, and I'm just another cow to be milked for my money.

Good Bye. Good Riddance.




I want to tell you about my savior. She came into my Thursday morning referral group and mentioned Federal Credit Union and lightbulbs lit up and chorusses of angels began to sing. Nancy Finn of Mid-Hudson Valley Federal Credit Union said the magic words of lower fees, lower (or non-existant) minimum balances, non-profit bank-like institution. Magic. I promise.

I opened accounts in December, and started the confusion of having my money spread out in too many places, too many accounts to juggle, etc. I waited until after the 30 day probation period required at a new banking institution before moving all my money over. Now I'm doing all my banking at the Federal Credit Union, and only keeping the personal monster account open so that my ex has an easy place to deposit child support payments if needed.

When you open a business account at a for-profit bank, you pay probably $20 for 50 business checks. It doesn't last long. I paid $10 for a whole box of personal-sized business checks.

None of my accounts have a minimum balance, except the $5 minimum for my savings accounts -- which is more like a membership deposit. When you quit the credit union you get $5 back. Who would quit? :)

All my accounts, including joint accounts, are on one screen when I do online banking. They've created such a simple interface for banking online that I'm very impressed.

I feel like the cow that woke up from a dream to find out they were human -- was I a human dreaming I was a cow? Or am I a cow dreaming I'm human? Who cares as long as I'm not getting milked! heh

They're friendly, they're not out to get you. There are some fees if you do something stupid, just like at the for-profits, but the fees are lower, sometimes very significantly lower.

The best thing, though, is that they're local, non-profit, and they're going to stay that way. The big for-profits won't gobble them up. No Diebold machines. Please. *phew*

[tags]money,chamber,expenses,gratitude,information,inspiration,life,local business,networking,non-profit,organization,personal,prices,rant[/tags]

Wednesday, March 14, 2007

Waist not, Want not (ode to Chocolate!)

My taste in chocolate went from white and milk in childhood to darker and darker chocolates. With the one exception of some stale 70% cocoa concoction my roommate gave me, I can go up to a 90% bar and be quite happy. I keep a bag of Ghiardelli double chocolate chips in the house to dip into for a quick fix, or for a rare batch of cookies or pancakes. Organic, free trade, Swiss, German, it doesn't make much of a difference to me -- just give me my chocolate, and no one gets hurt!

Except that those are made in a factory. The best chocolate to give, receive or eat is chocolates made with love.

Fran Greenfield (aka "Candy Fran") of Candy Designs by Fran is sought-after and well received in both Orange and Sullivan counties, and most definitely makes her chocolates with love. Hand-made, melted, dipped, coated, drizzled, packaged, and often hand-delivered, Candy Fran makes the most exquisite treats you could ever eat. People who have given her corporate gift baskets always come back to give them again and again. Last fall, all my top clients got a treat created by Fran and I got thank-you emails including one with the subject line of "MMmmmmm chocolate!"

One was undeliverable, and so I ate it (can I still deduct it from my taxes? I tried!!). Clients shouldn't move without informing their vendors *tsk*.

Fran's treats are available retail and wholesale, and she'll ship them to you or your clients. If you buy your candy from other online vendors, you might just be getting Fran's chocolates under a different name...I just hope for everyone's sake they still have a healthy dose of Vitamin-L (love), because if that's lost in translation you ought to order straight from the source.




"My name is Fran, and I'm a chocoholic...." (Fran Greenfield, Orange Networking Alliance, Feb 20, 2007)

A year ago, I joined the Orange County Chamber of Commerce, and I went to my first business networking blast last July. I didn't have the networking thing down yet, so I was sitting and crowd-watching, and saw this woman with an enormous basket of little bags. It was a "speed networking" event, and I wasn't in her row, so I didn't have the pleasure of being directly gifted with a sample. When the event was over, she announced that she had plenty left, and put them on a table on the side of the room. I still didn't "get it" and continued networking as much as I could stand to before fleeing. The event had started at 6:45am, so I beg both ignorance and exhaustion as my lame excuses.

In September there was going to be an Expo, and I considered sharing a booth at the Expo with another business. I had been taken under wing by Melanie Richards of Prism Promotions who showed me the ropes and gave me several really good lessons about networking in Orange County, NY. It was due to Melanie that I spoke to the Chamber about sharing a table, and Fran was recommended as a booth partner. I spoke to Fran about possibly sharing a booth with her, but as enticing as sharing a booth with the highly-sought-after Chocolate Lady was, I bowed out due to financial frustrations and a lack of preparation time. It was my first year in the Chamber, and I'm the type who learns (A LOT!) by watching. I volunteered to help at the event rather than take a booth. So I finally met Fran at the member dinner mixer after the event. She was bubbly, lively, friendly and forthcoming, if a little frazzled, but who isn't frazzled at the end of a long day at an expo?

I had been checking out local networking/referral groups, and because several people I had met and really liked at the Chamber were members of Business Exchange Network, I ended up joining that group. Fran is one of the members, and since I now get to see her almost every week, I'm a little more out-of-shape, a lot more chocolified, and I've gotten to know this wonderful woman much better than I would have otherwise. She is quirky, but bright and cheery, and I admire her. She's modest and exceptionally generous, and she actually has two jobs -- Candy Fran by night and child photographer by day. I can only imagine she gets the biggest and brightest smiles out of children, without needing to bribe them with chocolate, because she gets smiles out of adults without the chocolate as well, though I suppose the chocolate anticipation really helps.

If you're looking for a treat for a holiday, a gift to say Thank You to a client, something to bring for an extra "Ah" or "Oh" at a networking event, an unforgettable chocolate business card, or to put on a few pounds in absolute ecstasy, talk to Fran. If you don't believe me, come to some of the events where Fran often shares her treats by bringing samples. Or I'll send you a chocolate business card made by Fran, I have a few left...

This post is a whole lot of thank you for someone who touched my heart as well as my taste buds!

[tags]clients,Chamber,candy,creative,expenses,gratitude,holiday,humor,information,inspiration,life,local business,networking[/tags]

Sunday, March 11, 2007

Proportions of Busy-ness to Organization

There seems to be a natural law of the universe that dictates that the busier we are, the less organized we become. We're too busy to put something away. Too busy to take proper notes after a meeting or phone call. Both being busy and being disorganized lead to stress, and "stressing out" is very counter-productive -- I can't say whether it's correlation or causation, but remedying the disorganization can help sort out the busy-ness.

Just like a diabetic craves candy, sometimes we continue to crave things that are bad for us. Stress leads to a mindset that begets more stress. Stress can be addicting, because the brain chemicals that come with the pressure are addicting. Just like other addictions, however, it takes a toll on our ability to think, to plan, to be productive and to even live a longer and healthier life.

Conversely, the more organized we become, the more productive we can be. The less we need to stress. When you can easily review notes from a meeting, you can give yourself permission to "let go" and relax about it. When you know exactly what you need to do next (cf. Getting Things Done by David Allen), you can really concentrate on the one task-at-hand with all your mental ability.

I had a plan in place after last year's Tax Time to keep my books in order, and failed to make a good habit of following through on it. Thankfully I'm a pretty organized person, and don't have to stress too much to find all the paperwork I need. But now, work has picked up (finally!) and it's a bad time to have to take hours or days to do my accounting and tax paperwork. My lack of planning, poor foresight, and being somewhat disorganized are coming back to haunt me.

As a result I'm stressed, and my normally rather organized habits start falling apart at the seams. A few client notes haven't found their way into the books they need to be in. I have more hasty post-its laying around. I have to consciously review the last week to make sure I didn't miss anything important...

If you're finding that you are disorganized in direct proportion to your level of busy-ness, take a moment to step back and clear up the clutter -- it might take an hour or two, but the rewards are worthwhile, and you can get yourself back on track. It helps me to regroup, find some space on my desk, filter through the small side projects I started and abandoned part-way through.

If you are never organized in the first place, you are in danger of becoming disorganized to the point of putting yourself out of business. When you become busy, the resulting increase in disorganization may wreck your ability to focus. I've considered hiring a professional organizer on several occasions, to help me sort through the clutter. But I have meticulous systems in place, even if the system straggles a little when I have a stressful week, and there are people who need those services much more than I do.

Many people require a professional to help them set up a system in the first place: If you live in my area, I would highly recommend calling Cindy Croll of Croll Organizing (she's not a client; that's not my website :) [ed (post-September 2007) Actually, now it IS a website I have created, re-using the design of her old website!]) -- she's a highly perceptive person who tailors her organizing services to suit her clients, then leaves the client with a system in place. She specializes in small businesses and home offices, and travels throughout the Orange County area, and I believe she even goes into Rockland, and maybe even NYC. I'll see if I can get her to comment on this post so people can follow up with her. I see from her website she's giving a workshop soon!

Keeping organized takes work and dedication, but has many rewards. I could sail through tax time if I had kept to my system of entering receipts and invoices weekly. Instead, I have a pile of work to do, several open projects, and I have to take an entire weekend to enter receipts and fix my accounting system so I can do my taxes. The resulting stress is hampering my ability to concentrate on anything at all.

Good luck!

Monday, March 5, 2007

Easy-to-Edit website Demo Movie available!

Liberate Your Website (part 1)

I've come to realize that people aren't "getting it" when I tell them that my websites are "easy to edit" so I've created a movie (6 minutes 10 seconds) to demo it.

It isn't one of those build-your-website applications you always see on the web -- those force you to do all the dirty work and BOY can you break the website, create some hideous Frankenstein-monster website contraption that frightens away clients.

No, that's not at all what this is.

You can't really break the website when you use this application. Maybe you can make some poor content design choices, such as making all your content text bold, or italic, so that you have no means left with which to emphasize a word. Maybe you can type in all caps, make everything on the page a headline, etc. But you aren't playing with the design, only the content, of your website, and changing styles and colors is not an accident.

So, take a look at the demo and see how this is a simple CONTENT management system, and don't frighten your clients away anymore! In the demo movie -- which is only 6 minutes! -- I play with several real live websites, so you can see how easy it is to edit your own content. In 6 minutes I could hardly explain to a web designer what I want them to change on a website; I'd rather do it through the Easy-to-Edit system. That's why all my websites are using this system: in spite of being a web designer, I want to have a quick and easy way to add and edit website content on my sites.

Tuesday, February 27, 2007

Tuesday, February 6, 2007

How Design is not Art

Design in many fields is a process of creating something functional within an aesthetic guideline.

Art, on the other hand, is the path of taking a creative means to an aesthetic and evocative end.

Both certainly use aesthetics as heavy influences in their end goal, but on a practical level the two are quite different.

A design should be objectively judged against its function. A piece of art should be subjectively judged against one's aesthetic values. In a proper design course in school, one is given hard criteria against which your project is defined for a grade. In a proper art class, you are graded mainly on effort and applied techniques, not on the subjective judgement of the aesthetics of the finished works.

Better put perhaps is to give an example: A beautiful fountain is designed, a classical sculpture is art. If the fountain does not allow water to flow, the fountain ceases to be a fountain. All parameters in creating the fountain must take into account that the end goal is that the fountain shall allow water to flow and all aesthetic considerations must account for the end function of the fountain. A sculpture has no such boundaries, and the only end use is aesthetics alone. Note I have to set aside mechanical and functional sculptures -- these are design not art ;)

You can have an artist create a logo, but it may not, in the end, function as a logo. It may be a very beautiful illustration, but if it does not meet the functional parameters of a logo, it will be an illustration -- a work of art -- and not something identifying a corporate brand.

It is a generally accepted thought that art can be liked or disliked, but is not WRONG. It may be considered skilled, unskilled, "pretty" or "ugly," but it is not judged against a defined set of functional criteria. I don't hold my designs against the criteria of "art". My designs can be wrong, if their form does not facilitate their function. If their form does not facilitate their function, they're unfinished, or need to be re-thought-out.

If you purchase a finished painting, it is bad form to request correction or changes. The art is "done". Design should not be fully purchased until it is done. And for it to be done it must fulfill its functional parameters.

When you purchase a web design or a logo design from Eclectic Tech, you're not purchasing art -- I'm an occasionally inspired artist, but I'm not an exceptionally skilled or talented artist. You're purchasing a design, and I have inspiration, talent and skill in design -- in seeing the functional parameters and applying inspiration towards aesthetics while always testing the overall function against the parameters required.

[tags]creative,design,education,essay,identity,information,inspiration,logo,planning[/tags]

Monday, February 5, 2007

New Service: Project Planning

It seems that many customers who come to me have not planned their website or print project. My normal flat-fee prices don't include this time-intensive service. I would really have to get into the company in question, to almost become a temporary staff member, to plan out their website for them from soup-to-nuts.

I'm now offering project planning services, both for website design, content and feature planning, and for print design campaigns and marketing strategies. My usual services require design briefs, copy (content), assets (photos, logos, multimedia, and all other materials) and a list of features provided up-front. I will provide only cursory project planning assistance, guidance, or advice during project intake. I will not write for you, research for you, draw up diagrams, etc.

What my project planning services will provide will depend on each company's needs and budget. Prices will start at $100 for something relatively simple like site diagramming and navigation planning, and from there the sky's the limit; you tell me your budget, and I'll come up with a list of what services your budget allows for, or you give me a list of the services you're looking for, and I'll come up with a price. Or we can do hourly rates, I'll come on-site, and I'll become a member of the project team.

Services may include:

  • Serving in the capacity of a knowledgable aide in the process of project planning

  • Company profiling

  • Supplying principles or relevant persons with questionnaires for the project

  • Corporate history review

  • Mission statement assistance

  • Research into your competitors marketing materials or website

  • Market research for design related to your specific industry

  • Review of your current marketing strategy, advertising, materials, website, etc.

  • Business marketing development

  • Content planning

  • Feature planning

  • Step-by-step planning of a website or printing campaign

  • Website navigation and hierarchy planning

  • Guiding your representatives through the creation of an RFP or design brief

  • Suggestions for assets or copy to be included in the project

  • Composition of a creative brief on your behalf

  • Storyboards, mockups, thumbnails, or sketches

  • Composition of custom color schemes for the project

  • Stock photography, font, or clip art research

  • Copy editing, and review or copy writing

  • Acquiring permissions or releases for included materials

  • Supplying lists of materials to submit to Eclectic Tech or other contractors



If you choose to use another vendor to complete the project outlined, I can offer:
  • Overseeing project progress and resolution, quality control, communication with vendors

  • Vendor research (printers, programmers, designers, etc.)

  • Supply vendors with materials for the project



These services don't alleviate the principles of your organization from their responsibilities in project planning: I will need to interview them, acquire lists of materials, names to get releases for photography, a company history, supply of old marketing materials, and more. What this does is add another member to your web design team who is knowledgeable, insightful, and entirely dedicated to the one project, which allows your principles to concentrate on other projects with the assurance that if something is needed from them, it will be brought to their attention.

[tags]planning,education,information,news,print design,time,web applications, web standards,writing[/tags]

Friday, February 2, 2007

Why I always carry a pen

Today I ran to the bank to sign some official papers. I had my pen-in-hand and I was ready to sign when the bank officer offered me a pen, and my business associate said "She's always prepared."

Aside from the "Time is my one finite commodity" email signature, my comments in my blog about time, and the sermon I gave at Toastmasters about time, I always carry a pen. Having my pen in my hand and ready was the efficiency borne of my awareness of time and not wanting to waste it for anyone. Why I had a pen with me is another story, aside from knowing I was going to the bank specifically to sign something.

I started writing poems and stories when I was 11 years old. While my muse has been blissfully quiet lately, I spent about 15 years under the constant demands of Erato, the harsh mistress of writing. Poems came to me at all times of the day, and on some occasions woke me from deep slumbers to make me press pen to paper in the darkest hours of the night. If my hand cramped and my eyes teared, it was nothing next to the torment of the poems, lyrics, inspirations, that came to me when I had nothing to record them with. Slave to this strict mistress, I obediently began to carry something -- anything -- with which I could write. She had no patience for ink blots, pens that skipped, cluttered paper, or any other excuses. When she demanded, I would write.

While under her thrall I learned to choose better pens, to choose better notebooks, to keep these instruments handy. I have a book and pen next to my bed, so that if something should take hold of me in those chilling wee hours, I wouldn't have to shiver at my desk.

One of my inspirations literally came to me in those dark hours -- lyrics for a song (perhaps her cohort Euterpe had decided to borrow me?) -- and I sat in my kitchen singing, humming, laboring and pouring out a piece inspired by the tale of Beauty and the Beast and neo-pagan symbolisms. Thankfully I haven't tried recording the song :)

Regardless, you'll notice that whenever I'm without a pen I get a haunted look of fear on my face, and perhaps I seem distracted. That's me praying earnestly to the Lady that she not strike me with inspiration at that moment.

[tags]creative,writing,freedom,gratitude,history,religion,spirituality,inspiration,personal[/tags]

Thursday, February 1, 2007

Speak Out sale - add a blog

I've changed my prices on everything except my hourly rates, as promised.

Now I've gone and put a sale on blog additions to the Easy-to-Edit website package.

Whatever it is that you have to speak about, I've got the software to help you say it!

Watch the sale page each month for specials. Most specials apply to the Easy-to-Edit package, so get the base package before the price goes up hire -- all my prices will slowly be escalating for the next several months, and proposal expiration dates will be strictly adhered to.

[tags]blog,open source,easy-to-edit,prices,programming,sale,web applications,writing[/tags]

Wednesday, January 31, 2007

Geek Your Resume

http://www.eclectictech.net/wiki/Learn/GeekYourResume

Why didn't I put this in my blog? I have no idea.

I wrote an awesome article for geeks (and anyone) on the steps & styles needed to build a proper resume. Back in May of '06. I guess I was explaining the process to someone and went whole-hog and created an article on my website for it, and I forgot to mention it in my blog for all of Technocrati to see.

With so much competition, your resume is the first thing people are going to see. You want to stand at least head, if not head & shoulders, above your fellow jobseekers. I spent time as a tech recruiter, and I say that probably 50% or more of the geeky job-seeking force needs a serious Resume 101 class. Since you're not likely to stop playing World of Warcraft long enough to take a class, but still need a job to pay the monthly fees (not to mention electricity and ISP), I'm going to give you a little boot camp (or a boot somewhere else) so you can get up-to-date.

I've included Word and Open Office resume templates with my Geek Your Resume article. With style sheets. I expect you all to get off your collective buttocks and look for work. Now.

Good luck out there, soldiers! Make me proud!

[tags]resume,job hunting, employment,humor,information,employee,essay,how to,geek,programming,tutorial,rant,competition[/tags]

Thursday, January 25, 2007

E.T. Client & Portfolio update

Preamble: I have decided I don't like Gallery2 as my portfolio application. I'm going to be working on moving back to PmWiki for my portfolio in the future -- so my latest work is not in my portfolio.

I re-created the Business Exchange Network's website in December, 2006. The old site may still be available. This is a template rather than custom design, however I custom programmed several features for the site, then donated the instructions on how to do it for other sites back at the application project site. This site incorporates a calendar, member business directory, and each member has a profile page that acts as a mini-website for them. Since a few people in the group don't have websites, this gives them a real place on the web to call home until they decide whether they want a website.

I helped out at KwicTax, LLC - programming a form on the site, adding required fields, and generally making the form and subsequent information revealed after filling out the form behave properly.

An ongoing client is up to her usual beautiful designs - Apryl of Silverflux Design has been outsourcing programming and general geekery and software installations to Eclectic Tech. This week we finished working on the Serendipity bead store website in Canada. My handiwork is the calendar and newsletter subscription integration.

In-progress Sites



Almost completed: Beth Ward of Jaidens Jewels has requested a website redesign and shopping cart. This work is in progress and if you'd like to see it before it's finished, feel free to email me.

Almost completed: Chris Zino of Zino Technical Services in Bayville, NY has requested a website design and wiki application -- he's absolutely thrilled to be using a wiki and is already creating pages on the site, and I haven't even gotten around to training him yet! :) At the time of the writing, we're still hashing out the logo for his business, and once the logo is decided we may well be changing the colors on the site, but the site is up, works, he's in business, and his contact info is there if anyone needs home audio installations, networking installation or repair, computer service, or a dozen other techie services on Long Island (Nassau & Suffolk Counties), he's your guy!

New Client: I'm under contract for the redesign and reworking of Orange Environment's website. I've started working, but there's nothing to show yet. Orange Environment is a non-profit that has been working to save the open spaces of Orange County, NY for 25 years. This is their 25th Anniversary website overhaul, and this year they'll be holding an Earth Day celebration on April 21st. Location(s) TBA. If you see my company name at the bottom of the site, then I've made progress enough to go live on my work. Until then, if you want to see the development site-in-progress, feel free to email me.

New Client: My newest client is Middletown Community Health Center (MCHC) who has requested a modernization and more features for their website. Again, if my company name is not at the bottom of the page, you're looking at their old site. Ask me for a URL for their development site-in-progress. As of the time of writing, I haven't gotten that far yet :) but work should begin shortly.

[tags]clients,activism,design,e-commerce,environment,green,holistic,identity,logo,metasite,new client,new site,non-profit,portfolio,programming[/tags]

Don't say I didn't warn you

Attention to all customers:

June of last year I raised my hourly fees. This year, I'm going to change my package prices. I've priced some exceptionally attractive packages, but I'm losing time and money on the deals.

I'm going to phase in new prices incrementally over the next several months.

Starting February 1st, I'm going to raise all the package prices on the website and any new work proposals that go out will be at the new prices -- and that raise in prices will be about 10% per month until approximately November. Proposals always go out with an acceptance clause ("prices are good if you respond within X days"), and starting February 1st, work proposal acceptance clauses will be strictly adhered to. If you call the next month, after your offer has expired, the price will go up.

I will extend a courtesy for proposals that expired in January: Any proposal that expires in January can be locked in at the old rate if you sign a project agreement and submit a deposit before February 15th. Proposals that expired before January need to be re-estimated. Deadlines will also need to be changed, and it will be reflected in your work proposal.

Any customers whose proposals expired before January should request a new proposal for their work. It will give my new proposal system a good test and keep me busy.

Money Saving Tips:

  1. If your proposal or project agreement expired before January, request a new proposal or agreement and accept by February 15th or the expiration date, whichever is later.

  2. If your proposal or project agreement expires in January, sign a project agreement by February 15th.

  3. If you miss the boat, you'll pay more.

Thursday, December 21, 2006

Too late for THIS holiday season - Shop Local Online

Last month, at the Orange County Professional Women's Network, we did an exercise about holiday stress, and how to relieve it. Many people's answer to mall traffic and stress was "shopping online".

I have a better idea: Shop Local Online.

I saw a Times Herald-Record article today about shopping local. I couldn't agree more.

I have to remember to toss my e-commerce sites on sale around July-August next year, to have them ready by October-November. I might only be able to serve the first 20 or so clients, put up bare-bones undesigned sites, or I may have to hire a helper or three, but my goal, as always, is keeping the local economy thriving. I'll come up with great ideas for increasing the economy locally, but everyone has to help me out.

If we can spend the next year in a concerted effort to get local businesses online, and find unique ways to deal with the crunch shopping period that seems to now start from Halloween preparations through January, we can pull some of that economy back into the region.

Anyone with more great ideas for how to help out the local economy, let me know. Meanwhile I have more and more ideas to unleash slowly over the next year or two.

Here are some great ideas: 1) Mention to local businesses when you would have chosen them to purchase from but you didn't have the time or patience to do anything but online shopping. 2) Sponsor a local business's e-commerce site! I can put a banner ad on the e-commerce site that points to your business' site, you help the business pay for the site set-up and installation. A custom designed e-commerce site goes for $1000 and has space for 4-6 banner ads -- think of that; an e-commerce site with up to 6 $100 ad spaces with ads running for a year can slice the price down to less than half! [Ed - this price is going to be going up over the year!] 3) Mention Eclectic Tech and my Shop Local Spree that will be starting next summer -- I can start taking names on a waiting list for businesses that would get in on my sale before the sale begins! Heck, maybe I'll have 20-30 sites lined up before the summer vacation! When I officially announce the waiting list, I'll figure out how much the sale will be for ($100 off? maybe more! I only hesitate because e-commerce sites are really cumbersome projects that suck up a LOT of my time) [Ed - as of Feb 1st the plan is for $200 off on the base site, and more than half off non-product pages in July & August - with a complimentary sale for Easy-To-Edit sites with PayPal Buy Now buttons], and whether I require a small deposit to be on the list (like $50 non-refundable deposit?).

Ideally more than just gift-selling retails will want to get in on it, from a "Buy Now" button for a gift certificate on a normal site, through pizzerias and delis with website-to-fax order placing for deliveries. We just have to get creative. Give me ideas I can run with.

Criss

[tags]e-commerce,economy,money,prices,sale,web applications[/tags]

Sunday, November 26, 2006

Open Source Programmer's Insurance

Slashdot rejected my question submission, so I'll write about it in my blog and see if anyone is interested in answering it.

I have insurance, but I want exactly the RIGHT insurance. My insurance agent says that what I have may very well cover what I do, but is hunting high and low for insurance that will explicitly rather than implicitly cover both the design AND the programming portions of my business without making me broke. All she's finding are either policies with specific exclusions for web programming, or policies that are exceptionally expensive.

The problem is that every programmer is being lumped together. That means that programmers working on the stock exchange big bucks applications with billions of dollars in transactions a day at risk are being lumped in with smalltime web programming outfits like mine. I'm a programmer on the PmWiki project, and I create custom plug-ins for PmWiki for clients before contributing what I can back to the project, or accept bounties for plug-ins made directly available to the general public. I've also made alterations to other plug-ins for other open-source projects, and I'm creating an open source project or three of my own.

Now, I am not belittling the risks to my customers. I know that their business is everything to them, and that's why I'm looking for insurance. But I don't play with the big boys and my customers are not forking over the big bucks to cover the overhead I would have to pass along to my customers to cover the big insurance policies.

If I'm installing ZenCart, and ZenCart has a bug, am I covered? I never touched the back-end of the program, but of course every application -- open source or otherwise -- has inherent bugs and risks. I trust open source because the bugs are squished in a timely manner and I don't have to pay for upgrades. Would all those policies with programming exclusions cover this?

When a policy excludes programming, I see there being a really fuzzy line between "web design" and "web programming". Certainly there's a point at which something is very clearly web programming, but is it programming if I create a script that processes a webform to email the results to my client? Is it programming if I'm creating JavaScript DHTML DOM alterations? What about when I'm working on a design for a Smarty template? There's pseudocode and even PHP code in there, but it's all about the design.

In any case, what I want to know from my fellow collaborators in the world is:

What, if anything, do you do about insurance for your web application or programming company?

Do you have any suggestions for underwriters for open source programmers?

If you aren't insured, have you even considered being insured?

[tags]insurance,programming,open source,custom programming,web application programming,expenses,design,legal,money,slashdot[/tags]

Friday, November 24, 2006

milk and honey recipe

Today my son asked me about whether he could mix milk and honey. I hear about the land of milk and honey, there are dozens of blogs named milk and honey about cooking, cookbooks called milk and honey, a honey cookbook that I have on my shelf, and a medieval recipe book. None of them have a single milk and honey recipe -- unless you're looking for soap or enemas.

So I put myself to the task. Here's the recipe:

4c milk (skim, part-skim or whole)
1/4 cup honey


heat milk over medium heat (I used skim)
slowly add honey while stirring until dissolved
(coat measuring cup with a little milk to help the honey pour, or rinse with warmed milk to get out the remainder of honey.)
remove from heat before it boils (I removed it before it even scalded)

Makes 8 half-cup servings -- note that it's like candy. A full 8oz cup would probably be a lot.


This is VERY SWEET but it's also REALLY good. If you don't like things candy-sweet try less honey or add an extra cup of milk. Organic milk and raw fresh honey would probably be great -- I'd just remove it from the heat ASAP to keep the honey and milk from losing too much of their vital nutrients to the heat. Adding honey to cold milk doesn't do the same thing at all; the honey pools on the bottom of the cup.

I'm drinking it hot, and I'm chilling the rest to try it cold. My son is very happy with it. It feels like it would soothe a very sore throat.

May make a good substitute for eggnog for people who don't like the idea of drinking eggs :) I didn't try adding any spices to it, and I'm sure that using whole milk would make it thicker and of course more fattening (thus probably tasting even better). If I try adding spices I'll add them to the comments.

Note that milk and honey baths are used to prepare livestock for county fairs and shows. LOL

[tags]recipe,milk,honey,family,candy[/tags]

Monday, October 16, 2006

Why I Won't Build Your "MySpace Killer"

Often the topic of starting a "great" web business comes up, and in my age and wisdom (being both old to be a freelance web programmer, and one of a minority of women in the field) -- there's two ways to go: thinking "in" the box = come up with new brilliant technology, patent it and hire people to program it better and faster than anyone else can so you can quickly market it. If it climbs to the top before it is cloned you become the next target for people trying to out-do your website. This track is getting VERY old, VERY fast. Mainly you and your absolute best friend need to be programmers to do this (think Microsoft, Google...) because you can't trust anyone with your terrific idea. Also it has to be so ground-breaking that only the best (read: smartest, wise, long-range thinking) of venture capitalists will see the end of the rainbow where the pot of gold sits. If it is easy to get the funding for your idea, someone probably is making it already.

Thinking "out" of the box = coming up with a way to use normal everyday technology to do something that fills -- rather than creates -- a real need or niche. It's cheaper, faster, and if it really IS filling a need, it's going to spread by word-of-mouth, and it won't be "just a fad". This technique aims lower and comes in under the radar -- no billion dollar baby here -- but it's safer, less stressful, and you don't have to be a programmer, generally speaking. The programmer is unlikely to run off with your baby if it doesn't look like a "google killer".

The problem is that great ideas are easy -- the means to really make them work is the harder part (invention = 1% inspiration, 99% perspiration). I'm frustrated with people who want to "share" the rewards of their great web program idea (equity sharing) of up to 50%, but won't be doing any of the actual work to make it hang together and be practical. If someone comes to me with a truly great idea (and I have NDA's if they don't), I can find them a great programming team, but the team will probably want cash on delivery, not equity. More "google killers" die every day than make it. They're not original ideas, and if a site dies before it makes money, there's no equity and it's a huge waste of the programmer's time.

Imagine that someone turned to you and said, "I have a great idea for a newspaper! I'll give you the ideas, you develop the newspaper and run it, staff it, write for it, etc. I'll give you 50%." That approach frustrates me. People don't get it. I can translate it to dozens of other fields -- "I have a great plan for a house, you just have to build it. Then you can live on the top floor, and I'll live downstairs. Ok?"

Somewhere in there people are cheapening the act of programming. After all, it's just bits and bytes, right???

The Internet mimics life in a "survival of the fittest" way. I don't pretend to know what's "cool" or "hot" anymore -- I work with "useful" :) I won't get rich but that wasn't in my personal game plan. I have my own great or good ideas, some might make me money, some won't but will look really good on my resume.

Then there's the flip side of this: If you're not the head of the programming team and you've paid someone to build the google killer -- what if it works? Now you have to program new features, fix bugs, etc. You either need to re-hire the same team, or get a programming staff. You go on Craigslist and choose the person who claims somehow to be able to fulfill your great Internet dream, but if you have this beautiful web baby together, are you really ready for that long-term commitment with a total dweeb with no business sense?

I can't wait to be so busy with people I've looked in the eye and shaken the hands of that I can't afford to even GLANCE at another Craigslist ad. I love my clients dearly, but you don't know how rare it was that the people I dealt with BECAME clients at all. I certainly wouldn't want to become business partners with some guy with the "next killer app" idea and had to actually look on Craigslist for a programmer. So wait -- your only experience is the front end of websites as a user, and you think you can somehow manage a killer web application programming team? That's an incredibly poor business move and you'll get laughed out of the bank. And you want the programmer to work for nothing but equity? That's spec work.

That brings me to another thing: Have you ever had one of those managers who knows absolutely nothing about what you do? It happens in IT all the time, but much less so in other professions. BUT if you've ever heard a nurse bitch that someone "stepped in" as the head of the nursing staff from a business-only background, you might get the idea. In most large corps -- and this is a place where Microsoft does NOT get bad rankings -- the heads of the corporation have NO IDEA how to produce their main products...much less have a clue what their IT department does sitting at their computers all day.

It's never a good idea to manage something you don't understand. Ever.

On that note, are you interested in a basic web programming class? :)

Monday, October 9, 2006

Classes in PHP (object oriented programming)

From a post to a user/developer list I'm on. Since I've never seen a great explanation of ANY object oriented programming, I figured I'd give a brief go at it.

Classes are a code structure from the object-oriented-programming side of PHP. A class is beyond a function. The class definition creates an ideal "object" (rather than an actual object, that comes later), and assigns it properties (variables) and methods (functions). Think of "object" in this case as a function on steroids.

Here's the basic class syntax for how I would deal with shoelaces (I'm using comments for a real life physical action that I don't feel like emulating in real code) -- but note that an "object" isn't usually a physical object -- it could be an email, data, graphics, form buttons, or something even more abstract.

class Shoelaces {
var $tied = false;
// maybe we should double-knot them?
var $double = false;

function tie_shoelaces () {
if ($this->tied) { return; }
// instruction to grab shoelaces here
$this->pull_tight();
$this->overhand_knot();
$this->pull_tight();
$this->make_loop("right");
$this->make_loop("left");
$this->overhand_knot();
$this->pull_tight();
if($this->double) {
$this->overhand_knot();
$this->pull_tight();
}
}

function pull_tight() {
// yank whatever is in your hands
// in opposite directions
}
function overhand_knot() {
// loop item in right hand around item
// in left hand one complete rotation
// hold item in right hand again
}
function make_loop($side) {
// creates a loop from the left
// or right side of the lace
}
}


Here's how you use the class within the program flow (this code would be in the master body of your program -- or in another function
or class):

// create an object instance -- this is a specific local
// copy of the class for this specific instance/call.
$bootlaces = new Shoelaces;
// set the properties
$bootlaces->tied = false;
$bootlaces->double = true;
// tie the shoelaces (call the method i.e. execute the function)
$bootlaces->tie_shoelaces();

Now you should have a doubleknotted shoelace on your boots. This code can easily be reused for $sneakers also. Or even hacked for tying laces on other objects.

Now, the parts people have the hardest time wrapping their brain around:

  • Calling it "object" "method" "instance" etc. -- It's a prepackaged set of code (class), functions (methods) and one particular time you call the code (instance -- such as $bootlaces or $sneakers). Call them what you want to but remember the standard synonyms so you aren't confused when you read about them.

  • The term "$this" inside the class definition -- $this is "$this object" or a place holder for the namespace INSIDE the object. I guess that once you call an instance, PHP translates $this to $bootlaces or $sneakers -- it's a generic "variable" that points back to the parent object and allows you to keep your scope within the object clear.

  • Translating this idea to actual code since I wimped out for understanding by using a physical not computing activity, so see a practical real-world paradigm for a class below.



There is no place to run code in the object without defining a function/method. It's confusing to call it an object method when obviously you're even using the syntax "function" :P

I didn't use it above, but there's also something called a "constructor method" and in PHP5 there's a destructor method. All this means is "automatically run this function when I create the class instance" or a destructor is something auto-run when you destroy the object instance (not sure how, I don't do PHP5 yet -- maybe unset()?)

Syntax for a constructor in PHP4 is to name the constructor function the same name as the class name -- inside the class definition.

	function Shoelaces() {}



I know this is probably confusing, so feel free to ask questions. Note however that this completely protects the code and variables of the class from colliding with the names of other items in the program. The only name of concern is the class itself. Other people can use your class pretty easily -- it makes a very portable chunk of code. There's more to it, but this is enough to actually get you using this idea if you decide it would make code more efficient.

A real example would be creating an "Email" class where you can set up emails to be sent.

class Email {
var $to = "";
var $from = "myname@example.com";
var $subject = "";
var $body = "";

function Set_Params ($to, $subject, $body, $from=$this->from) {
//assign to class values
$this->to = $to;
//etc. ...
}

// a couple internal functions not used outside the
function validate_email () {
//validation in here
}
function make_headers () {
//create headers including From - output to class variable
$this->headers = $headers;
}



function SendEmail() {
// validate TO & FROM email addresses
$this->validate_email($this->to);
$this->validate_email($this->from);
// create headers
$this->make_headers();
// send the email (should add custom From header too)
mail($this->to, $this->subject, $this->body, $this->headers);
}
}


$email4Larry = new Email;
// set the properties
$email4Larry->Set_Params(
"larry@example.com", "Hi, Larry", $body);
$email4Larry->SendEmail();


More some other time if anyone's interested.

Friday, September 22, 2006

Shopping Cart Showdown

Here's the deal.

I need a shopping cart for a client. I have basic functionality the shopping cart MUST have. Not necessarily because the client demanded them but because I'm forming a hairbrained notion that these are some type of milestone or rite of passage for shopping carts.

1) coupons & discounts -- there's nothing like putting a coupon with your ad or on an invoice. Even better, giving out coupon codes in your newsletters. Make sure they're paying attention! Many carts don't seem to have this. The granddaddy of shopping carts in the open-source world requires being broken TWICE to have coupons ("easy discounts" and "easy coupons" must be added to oscommerce aka OSC to get coupons). Bonus points for coupon support out-of-the-box.

QuickCart & Viart Free have coupons out-of-the-box according to shopping-cart-reviews.com.

2) a template system with under 50 files. OSC fails this test, requiring nearly EVERY file to be changed to consistently alter the HTML appearance features of the website. ZenCart has 95 template files not counting those for the admin panel. Viart Free has 115 template files.

Winner: QuickCart (loaded version) comes in at under 38 -- note "page.tpl" is the "main page" of the site. Other template pages MAY NOT NEED TO BE ALTERED! I haven't figured that out conclusively. But they're not using something standardized like Smarty so you need some PHP savvy to plow through them.

3) separation -- real separation -- of logic and design. ZenCart is OK on this one. OSC fails miserably. Viart Free comes out on top -- using Smarty templating! WOOT! However note the loss on #2, coming in at 95 template files. Shame on them! Smarty is much MUCH smarter than that!

Viart Free, as I mentioned, uses Smarty, and has a standard "header" "footer". In spite of 115 files, using Smarty would probably make it a pleasure. I'm upset that there's no standard "right-sidebar" type formats, but that can easily be added to header/footer files so I'm happy enough.

QuickCart also seems to have real separation of logic vs design, so it's the 2nd runner up for not using a standard templating system like Smarty.


4) real-world examples that show off the system's flexibility for customization & style.

This is a tough cookie because people are generally lazy. I looked 3 times at http://www.mals-e.com/home.php because it had some of the better shopping cart examples I'd seen. Custom buttons, horizontal instead of vertical cart display, entirely different layouts. Turns out this is a free hosted service, you don't install the software, you do have to muck around in your website's HTML, but it's really a service that handles the customer's orders off your site. It allows a lot of flexibility, and he's hoping you make so many sales that you want the advanced site features, which are not make-or-break deals. I don't see coupon/discount code entry, so Mal's service fails #1, but it wins on 2 & 3. How much more separate from the logic can you be?

Viart has an odd quantity feature that involves a drop-down, but that's probably fixable. It requires clicking a JavaScript pop-up to confirm putting something into your shopping basket, which is awkward. These are awkward, but livable issues, but all the sites I looked at had these issues so no one bothered fixing them.

QuickCart -- they don't have that many sites in English, and they have SO MANY in other languages, I needed to narrow the playing field. So of the English sites, I saw minor promising variants in the cart design itself -- something near impossible to do in OSC -- as well as at least one site where the overall design was beautifully done very differently from the others. The cart behaved the way I would want a cart to behave. At least one site had web sites up for sale, with a number of options for ordering, which is something I may be doing myself.

5) No restrictions.

Viart Free fails here. Limited to 50 products. It requires a Zend optimizer installation. But it does install on GoDaddy. However, this is not terribly expensive to upgrade at $119, if you go over 10 categories/50 products.

In any case, the winner system from looking at the websites is Mal's service -- but if I eliminate the one host I bumped into during my search for something better, QuickCart did better than Viart.


The winning system today: QuickCart. Several hundred shops are listed, though some are spammers or the domains are now invalid. One problem is that I've not seen very strongly customized category views, and that's an area I'll need to customize. If you expect to have a very small cart, don't forget to check out Viart Free. Notable mention for money: SquirrelCart -- at about $70 it looks like a good bang for the buck -- but I can't say how it does amongst all the criteria mentioned here, since I couldn't evaluate it.

Note that many carts were eliminated from the contest for a variety of reasons. #1 price. #2 bad reviews out of the starting box (such as VirtueMart/Joomla! which has been repeatedly reported as having the shittiest support forum, being overly complex, etc. If I want that shit, I'll go back to OSC).

Ok, so next I'll be working with QuickCart and I'll let people know how it goes.

[tags]e-commerce, programming, reviews, design, competition, custom programming, education, metasite, usability, web applications[/tags]