For several days I have been trying to book a flight from Newquay, only to be constantly interrupted by pages telling me the server is too busy and that there is a database problem.
Finally I managed to find the right flight, enter all my details, confirm everything including credit card numbers and just when I thought everything was booked I still got an error page.
After checking for any confirmation email, and having received none - I now have to wonder what kind of limbo my order is in, has my credit card been billed? I certainly can't go making any duplicate bookings, and the javascript to popup a help telephone number doesn't work.
I've been bitten by this before, buying a TV license online meant being billed but not getting any confirmation or feedback - only an error page.
Given how long ryanair have been selling bookings online I am rather surprised that such a fundemental part of their infrastructure (after planes, of course) is so badly knocked together.
Writting internet applications myself for a living I know what can go wrong but there is no excuse for not implementing basic good practice like informing a user that a credit card has not been billed, or providing a ticket number to pick up the transaction where it failed later, or even behaving correctly on page reloads, something trivial and that any perl developer worth hiring can do in their sleep.
As for broken javascript, do they not test the website occasionally? And the site has been experiencing problems for days, when any of the websites I am responsable for have these kind of problems I ensure that users are warned and take extra precautions against this kind of failure, rather than just leaving it to flounder under high traffic and bad practice.
I mean, how can you not notice that your website is producing error upon error and that customers can't book or are having their orders screwed after handing over credit card details.
The common sense thing to do would be to block the order page and put up a notice to the effect that orders are not being accepted - then follow Marks and Sparks example and extend the sale to meet the demand.