Thursday, December 24, 2009

No love for so called "technology consultants"

<LONG_RANT>This is going to be a very foul mouthed review on Carnival Cruise web site, and consultants in general.

A lot of the marketing/sales-head tell me that closing is not about using the actual product, but unique EXPERIENCE of getting it. When you buy a purse or iPhone, you're not just using it. You're experiencing the joy of superb service, the joy of selecting from good selections, the smell of unwrapping the package, the ease of opening up the package, etc. Well, let me just say that the experience of getting a cabin [for my dad] from Carnival Cruises is HORRIBLE, and I'm most likely not going to repeat the Carnival experience again. Here's my story in the course of several days:

Initially it shows a few choices available. I tried them all.


Initially:
1) The web site shows availability... plenty of it
2) I try to book one of them
3) At the very last step, I put in my credit card number, but the system keeps saying something to the effect "Unknown error, please try again." I tried other choices, same thing. Wasted my time.
4) I call them up directly. The ticket agent guy says he has the LIVE system and that what I see may be different (he means delayed, outdated). He says he sees no availability and that he needs to put me on the waiting list. He said to call back later to check with them.

Follow through:
1) The web site no longer shows availability. I keep checking.
2) Occasionally, it shows availability
3) After 2, I call back service. He says yes he sees an opening, but he can't move the waiting list to the available room because someone from "Sailing coordination" locked up my reservation.
4) I ask if I can call Sailing Coordinator directly. I call them up, but the clerk says she doesn't see availability anymore. She says to keep calling her back if I see something.
6) I ask her if there's any automated way of doing this. Nope. It's all manually entered. Some guy at Carnival punches in reservation on some legacy system. Can you believe this???
7) I repeat some of these steps over and over and over again


I tried the ocean view and suite. NOT AVAILABLE after you click Details.

I'm sorry. The web site is a total PIECE OF BADLY MESHED CRAP, written in... what do you know, nothing other than the infamous M$ ASP shitframework! The UI really blows too. It's as if some guy slapped some GUI on it quickly and got paid and ran away quickly. Listen up Carnival:
  • If something is not available, WHY EVEN OFFER A CHOICE TO PICK IT??!!! What's the point of letting people pick something and then output an error message? There were at least 4 different cases where it showed something available, and after a few subsequent clicks, it ended with "Sorry, this is not available." Like, WTF?!?#? This is almost as bad as the Priceline experience.
  • The default credit card input box is ____ ____ ____ ____ (4 4-digit box). If I pick American Express, the box should change to ____ ______ ____ (4-digit, 6-digit, 4-digit box). Look, almost all modern e-commerce websites will change the box today to be more user friendly. However, the Carnival website doesn't change the box, so I'm essentially typing in 15 digits in a 16 digit box, which looks awful and confuses the hell out of me (and I'm suppose to not get confused because I'm in the computer industry). Totally unintuitive. Lame.
  • After putting in credit card number, if something goes wrong, output a more informative error message. Nope, Carnival just says something to the effect "unknown error, try again." I tried 5 times, same shit. Is it the card? Or wrong name? Or badly input symbols? WHAT? "Uknown error." WTF? At this point, I'm so annoyed that I'm willing to go to another cruise (and I looked around but there is none that fits the date/location of my choice). I keep coming back to Carnival in the absence of other cruises.
  • Carnival Cruise web site is a low volume web site. It does NOT need to handle huge QPS like Amazon. So it's not that hard to implement a real-time, synchronous back-end reservation system. Despite their low volume requirements, why are they still using 1980s system that requires a clerk doing manual data entry into their system? Uber lame!!!
  • Why the hell do you even bother using Microsoft solution? Look, even though it's a low volume web site, it is still friggingly SLOW!!!! Each click is anywhere between 500ms to 5 seconds response time. This is clearly pathetic by today's standards. Any CTO allowing Microsoft solution is ignorant and needs to be fired or better yet, shot dead, period. Total piece of garbage.
  • Why can't I book more than 1 room with one account? Why is your UI so stubborn on a 1 account:1 booking mapping? Lack of foresight, or stupidity!?!

So after a while clicking and actually going somewhere (on a random basis), I finally get this "unavailable message". Why don't you just tell me it's not available in the first place? I wasted over 10 minutes on your stupid site already just to see this message. NOT IMPRESSED.

In short, The Carnival system blows. Their UI is laughable (did some 17 year old high school student implement it?), their backend is slow, and their reservation really needs to be upgraded to a more real-time and synchronous system. I'm almost certain that they've lost customers to better cruise sites. Every little detail counts, and Carnival just doesn't get it, period. It's sad to see something like this running live on production.
</LONG_RANT>

What I experienced on Carnival isn't unique to Carnival, but to many old/traditional companies that seem reluctant to jump on the technology bandwagon. Like many old companies, Carnival is not a technology driven company, nor is it interested in investing in it. It rather pays some people that call themselves "experts" or "technology consultants" and get just get the job done. So typically these old companies will pay millions and millions of dollars for a solution. They will enumerate a feature list. Does the website do X? Check. Does the website do Y? Check. So on so forth. The end product from this type of consulting is a product that looks like Microsoft Zune. The Zune has a long list of bells and whistles, and is superior to iPod by at least 3X on paper comparison list. But even though iPod lacks tons of features, it still sells better. Why? A good product is not about how many things it can do, but how well the little things it can do. A Zune does much more than an iPod, but iPod does the few things that matter much better. Likewise, the Carnival Cruise site may do all the things that other e-commerce sites do, but for what they do, they do it terribly. This is just the nature of outsourcing work; work that is not done out of passion, shows a lack of quality. Work that is done out of mercenary needs, shows sloppiness. You know, there is a saying in the consulting world that says something to the effect that consulting firms profit greatly from ignorance. I can't agree more with this. Carnival web site is horribly done and they paid dearly for it because they're ignorant about technology.

Nice error, Carnival. Maybe you should change your slogan from:
"FUN FOR ALL, AND ALL FOR FUN"
to something more accurate:
"PISSED OFF FOR ALL, AND ALL FOR PISSED OFF."

Seriously, traditional non-technology companies need to embrace technology. Invest long term in technology. Hire real computer scientist and people who have done real work in the technology world. Hire people who are passionate about technology. Don't hire charming guys that dress up nicely in suits and ties. In geekland, good looks don't always equate to the best job done. In fact, I'm certain there's a strong inverse correlation. Lastly, my take is that traditional companies should not treat technology as if it were just some stupid job that needs to get outsourced and get it over with. Technology is constantly evolving, and technology needs to be upgraded from time to time; backend migration to a real storage solution and deprecate your mainframe systems (it's a ONE TIME COST every 2-4 decades), and constantly update disposable frontend (Java->Flash->Ajax->HTML5/CSS3->so on so forth) every 2 years at minimum. Spend a lot of time data-mining web traffic (if Carnival actually did this, they'd realize serious problems and fixed them already). The number of people who will buy online will only increase, and it is just a matter of time before it dominates phone and travel agency orders. So don't ignore technology. Learn to understand it. Learn to invest long term in it. Learn to profit from it. Technology is your friend. Embrace it.

Have a Merry Christmas.

No comments:

Post a Comment