One of the ironic truths of the business of web development is that we as service providers are rarely sourced for things weve never done. While new clients need the confidence that comes with experience in a certain subset of skills, we wouldnt have any of these skills unless we practiced them, or were hired for them in the first place. While most web developers came to it from a hobby-intensive interest (even CS majors,) and therefore arrive on the scene with something, we need projects that stretch our abilities, what we know about our environment, and keep us interested. This is where side projects come in (another topic entirely, for another day) and where the industrys notoriety for sometimes fudging the truth about our skills gains its credence and becomes excusable all at once.
All of this said, every time I take on a new project, theres always a component of it I have never done before. Maybe its a jQuery function Ive never used or a new ExpressionEngine Add-on, but sometimes its just simply a collection of unique strings of code. Yes, the reason the site has to be hand-coded is because your code doesnt exist yet. Neither me, nor my colleagues, nor God has ever before written your site.
So - on to e-commerce. An existing ExpressionEngine client approached me to add some pages in ExpressionEngine to go alongside a stand-alone shopping cart app they had begun working with in order to launch a new consumer-direct branch to their business. It was a terrific idea - but the more I checked out their cart, the more my head hung. There was so little flexibility and so many handicaps built into the software and their interface with it that I could not honestly express too many positive opinions about it to them, though I tried. Still, I got the job for my component and about midway through, they approached me and asked for a quote for the whole shebang, shopping cart and all. Apparently on top of the handicaps they already had, their relationship with the shopping cart provider was deteriorating. I was delighted to take this on, though it didnt happen without this sort of awkward conversation.
Had I ever developed a shopping cart before? Was I capable? Would I be available? Could I do it now? No, not after that other project finishes, now!
Hm - no I hadnt - yes I was, yes I would be, no, okay yes.
If youve never done it before, how do you know you can?
Well, other people who do what I do have done it, and there is software out there to help us get through the gritty so we can focus on the finesse of the whole thing. You can even choose the software yourself.
And with that, I was granted my first e-commerce gig. Wahoo!
My client ended up choosing Store for the software used, based on its flexibility and its offering of Fedex and UPS shipping interfaces that automatically calculate the shipping price for goods shipped. One of stores benefits that I found useful as a first-timer was the inclusion of cart -> purchase -> finish code that could be dropped in and customized as needed, but not out of sheer necessity. It helped me not miss a beat with order fields and capturing crucial info, and it helped the client see the entire build as a good value. In addition, the support we received on Store's side on how-to's and possible software bugs was great.
I cant think of any good opportunities that involve building a shopping cart for a side project at this time (unless it were for checkout on carolinecblaker.com - oh wait! yes!! ) So Im looking forward to the next shopping cart / e-commerce project to land in my inbox.