Last summer, my wife had a great idea. She wanted to start her own business from home, selling environmentally friendly baby products. She has spent hours and hours looking for products for our twins, and was frustrated that there wasn’t a website out there that offered green options for products she was looking for. BeeGreenBaby.com was born.
Being a professional web developer (and a sucker) I offered to help her build the website and run it, so she could focus on the business: managing inventory and finances and fulfilling orders. Each of us went merrily on our way, her planning out the financial aspects of out little enterprise, and myself looking for an e-commerce application that would serve as the backend for her store
When I made the offer to set up her website, I figured I would end up doing a little research, spending a few weeks creating a custom design for whatever turn-key product I ended up choosing, then spending a couple of hours a week tweaking and going over Google Analytics and creating new promotional images for sales. What I ended up with was a seven month long slog through the world’s worst open source e-commerce system, Magento E-Commerce
At the beginning, my wife asked me why I didn’t just build the website myself. Why did I need to use a third-party application? I laughed patronizingly and told her that an application like Magento would handle all the things I knew from experience take a long time to develop, like proper security, integration with third party api’s for payment processing and shipping, updates and patching, and a vibrant community for purchasing add-ins. I told her we would end up getting the site done much quicker and with better quality then we would if I tried to build an e-commerce site from scratch part-time. All I can say is this was a BIG, BIG, BIG mistake. Wow! Huge. I’m actually crying a little bit right now, just thinking about it.
If I made a list of everything about Magento that I hate, this post would be 600 pages long and my wrists would ache. But that intense, white-hot hatred is fueling my decision to rebuild the entire site in ASP.NET MVC. I started working on the rewrite a little over a month ago, and am hosting the source code on BitBucket. The new BeeGreenBaby.com is being developed using ASP.NET MVC 2, NHibernate and jQuery and compared to my experience on Magento, is extremely exciting. My last couple of posts on Mercurial have been related to this work, and I intend to write about some of the issues I have been dealing with migrating an existing site off of Magento/PHP/Linux and onto a custom built ASP.NET MVC site, hopefully running on Mono and MySQL.