I ended up booking two flights recently because Kayak sent me a "booking failed" email after I tried once, it failed, then tried again, and it worked. Then an hour later I got an email from Kayak saying my flight booking had failed. So of course I booked another flight. They would NOT admit the slightest wrongdoing. Never using them again.
I work on a hotel OTA and this and similar situations consume a disproportionate amount of our dev time, and I believe it should. So much travel software relies on third parties and problems with eventual consistency (read timeouts) mean that often either the customer is told their booking failed when it succeeded, or it fails after payment is taken.
We try to ensure that our support tools make these situations, and the resolutions, as clear as possible to our customer agents.
Ultimately, we are on the hook for this booking so it's in our interest to get it resolved for the customer so they are happy. Our stats show that this only happens to 0.5% of bookings, but if they aren't handled well, they take up a much larger amount of support time and then end up with an unhappy customer.
Over the last few years I've come realise that this is a fundamental cost of building travel software. You can't gloss over these problems or push them back on the customer, otherwise you simply won't have any customers left.
If you're never using them again, why not do a chargeback? (Apparently services like Uber or Airbnb ban you if you do this, so it's "mutually assured destruction"). Or call the airline and tell them how Kayak messed up.
It can be done. I've cancelled non-refundable flights for medical reasons. There is also a 24 hour period where you can cancel your flight, which I believe is by law.
As far as I know, the 24 hour cancellation rule is not international. I think it is mostly applicable to North America. If this was an international flight, it is possible that the law did not apply.
European airlines have different policies regarding cancellations, often based on the type of fare you select. Sometimes you get a full refund, other times only the taxes and fees.
It's even worse than that. My brother-in-law, who doesn't speak much English, accidentally selected the wrong option at a check-in kiosk in Las Vegas and was upsold some kind of "premier" ticket option that let him board a flight first for the low low price of $42.
After he realized he made a mistake he sought out the airline staff and they told him he had to go to some website which showed that he had checked in, but not the extra charge or option. Eventually he made his way to a service desk at the airport and they told him to call a number after he landed on the other side.
The "customer service" representative then informed him that since he had already taken the flight, he couldn't get a refund.
I helped him file a complaint with the airline explaining the English and the lack of help from airline staff and the confusing remediation directions he received. They responded very quickly informing him that he would not be refunded but to please fly again with them.
He accepted, thought about it, then went directly to the airline staff for help. They basically told him to phone/web/email and ignored him.
The kiosk was one of those touchscreen things so nobody to ask when he was making the mistake.
It is ultimately his mistake, but at the same time, they're keeping >$40 he accidentally spent so he could board an aircraft 3 minutes early. It's kind of silly.
I think this is legally required in the US, if you book directly with the airline. This is a solid reason to never book through the flight aggregators.
Expedia provides the same cancellation period as well. It saved my butt once last fall when I clicked on the wrong month in the calendar. Plus I have used it for other flight cancellations with them.
This was also the strategy of ep 1 of mad men — lucky strike’s “it’s toasted” slogan — if you say it first, then despite all tobacco being toasted, it looks like everyone else is just copying you.
If it is for a ticket originating from the US you can cancel and get a refund as long as it is within 24 hours of booking the ticket, and the ticket is at least 7 days out
I believe that "non-refundable" and "as-is" are going the way of the dodo with the millennial generation. It seems past generations were much more willing to accept large corporation policies than the current ones.
I'm curious what makes you think this. I think millennials have sat back and allowed hospitality & travel companies to get away with much more than ever.
Hotels and car rentals now have non-refundable rates, something that didn't exist 10 years ago. Many hotels add resort fees, extra service fees, charge $7 for a bottle of water, etc., that they never would have tried 10+ years ago. Airlines have long had non-refundable fares, but penalties have increased tremendously. Anecdote: a friend of mine booked a weekend trip in 2009, the return flight was Sunday 12:30 am. When I pointed out to her that was essentially Saturday night, she got on the phone to change her ticket to the last flight out that same Sunday. $40 change fee. Today that would almost surely be $100+ on any US-based airline.
All these extra fees aren't aimed at millennials specifically, but I sure don't see them resisting enough to have any of these companies reverse or reduce some of their fees in response to consumer complaints or dissatisfaction.
This has happened with me and Sri Lanka airlines (tricky to book when they block VPNs, you are in China and they have a google captcha.). I ended up with two tickets, one via their website, one via Vayama. I complained and Sri Lanka airlines reimbursed me. Even got a free business class upgrade when I checked in :-)
That sucks. No transactions ? I think companies like Kayak can get way with loose consistency guarantees and just push the onus on the user or have some money saved to reimburse you. You should file a dispute with your CC.
Seriously, UI components are hard. Even a lowly button is difficult to get right, where ”right” means ”whatever smart people have converged on after 30 years of GUIs”. Anything more complex than a button is much much harder. There are a lot of things wrong with the whole ”web app” concept but to me maybe the most important is everybody trying to implement their UI widgets from scratch. And I say this as someone whose job used to be writing and maintaining a webapp UI framework.
Right, but you don't need "smart people to converge on" an agreement as to whether or not the 2nd of February is a Thursday. That would seem to be pretty well-defined.
Yeah every other travel site seems to at least show you the proper date range. Let's not make excuses for shitty work, a date picker component isn't an NP Complete problem.
Though, it’s interesting to note that once when I took a date picker component and attempted to morph it into a full-blown MacOS calendar, with calendar appointments that slot into different time slots and don’t overlap, I found that that is an NP-Hard bin packing problem.
My comment was not meant to be an apology of any sort at all. Quite the opposite! Not all datepickers are as broken as this one, but that doesn’t mean the situation where everyone keeps reinventing things is a good one.
Well it's likely the client/server time-zone mismatch was the cause here. It could be that everyone at AirAsia, or even the majority of passengers, saw the right dates, and this edge case was simply not considered.
Assuming a timezone mismatch, it wouldn't always show up because the date would have to cross a midnight boundary for the days to be different. Even if we assumed the servers used Malaysia time rather than UTC, that leaves 8 hours in a day where North American travelers could see the right day.
Time zone shenanigans or not, it has nothing to do with UX. 2/2 is not on Thursday, anywhere in the world, period. This is simply an obvious bug and a lack of customer service, not some UI failing because UI is "really hard".
Are you aware that dates does not get influenced by timezones, right?
And not only that:
Thursday was January 31.
Friday was February 1.
Saturday was February 2.
We need to find out the date the original poster actually entered to make the booking. They may have entered 2/2/19. Perhaps the code for the calendar interpreted it literally (as year 0019) while the code to display the date string did a conversion for Y2K.
> Are you aware that dates does not get influenced by timezones, right?
Yeah, but the situation is worse than that. Weeks boundaries are influenced by a locale. What is the first day of the week? Sunday? Monday? I know that in russia a week starts with a monday. I know also that in en locales it is not the case, I was never able to understand english calendars, so the very first thing I do is fixing locale to see a "proper" calendar which I can understand.
Notice that there are no hints where is sunday and where is monday, you make a decision what is what based on data layout in a two-dimensional grid. For example, I read the screenshot in the tweet as Feb 2 is a Friday, not Thursday.
This leads me to a hypothesis what happened with AirAsia. They messed up locale dependant calculation of a week boundary. Like they added 1 instead of subtracting it, or maybe they applied the locale dependant shift of a week bondary twice, or made some other software bug like that.
Very much this. I work on a "web app" with all custom components, even the most basic input is a custom component... everything about it sucks. Keyboard navigation sucks and is redone poorly, dropdowns are godawful, styling them is no joy.
I don't know what our way out of this is. Everyone imagines their own UX and wants this or that thing to behave differently from everything else out there on the web. We'd have more usable webpages (and web apps) if we didn't spend most of our time reinventing the button... over and over and over
I've heard about this but I'm not so sure. From my limited experience, the customization is as bad or worse than say React components. And then there's the whole shady/shadow DOM. And from my experience the way that components are currently used, "slots" can get you in a lot of trouble. This is without mentioning the severe fragmentation in that space (polymer vs skatejs vs stencil vs ....)
Shadow DOM v0 was kind of a mess (the fragmentation you mention), but v1 kinda washed all that bad taste away and is a pretty sane API. I don't see libraries building on a feature as "fragmentation," however.
Slots are a powerful feature that has to be used carefully. But it's a great API foundation for a lib (which is a tendency for web platform drafts, ex. WebGL and Web Audio.)
Customization is just CSS, I'm not sure about the comparison to React. For Shadow DOM styling, we're almost at the point where the last big problem (selective and scalable piercing styles) are getting solved.
In any case, the world is better with Web Components than without. Combine them with ES Modules and you have an great ideal for the web platform to strive towards.
Agree, IMHO virtually always one should pick HTML5 components or something that is very mature, otherwise a lot of care is needed for something that works everywhere.
On the other hand, the guy is aware of the concept of a date picker and misuses a third party website's calendar for his own. This is a bit naive.
UI components might be hard, but typing <input type="date"> into a HTML document is not hard, and it's enough for the browser to do the right thing here. This screwup was entirely self-inflicted, a consequence of ignoring the well-known best practices of authoring semantically-meaningful web documents, forms and apps.
> While convenient where it works, the failure mode of type="date" and its associated date and time types is very poor. This makes it a risky choice that could leave users struggling to meet validation criteria.
I remember desktop Chrome ‘implementing’ date input a few years ago by using the number input’s spinner. If you press up the date goes to 0000-01-01. It was worse than useless because you can’t even polyfill in a JS datepicker since the usual feature detection would detect Chrome as having support for date input.
If it's a "best-practice", I honestly don't know any large, consumer-facing websites that just use input type=date, mainly because that UI sucks in most cases.
Even in this case putting the dollar amounts in the dates, which is a very useful piece of information, would need a custom date control.
That’s almost certainly an app; a web app would require quite a bit of configuration to look like that. It might be running a web view internally, though.
For better or worse, 99.9% of the web uses custom datepickers, if not for other reason than the fact that <input type=date> is not supported by all the browsers out there.
As evidenced by this example: in such cases, the client is probably wrong. They'd be better off letting the user agent display the date picker that the user is used to.
Even in the event that a browser ships a buggy date picker, at least it would be buggy on every website. The user then has a chance of understanding the bug and working around it to input the correct date.
OK, I'll use another tactic. Show me a single high-traffic travel website that uses the browser's default date picker. Travel websites are usually optimized out the wazoo because small increases in conversion rates make all the difference in this competitive business. Are you saying all those sites (the ones without bugs) are wrong?
The user is responsible for their browser. If they choose to use something that doesn't implement the spec and your site breaks, they sabotaged their own experience. That's very different to you sabotaging their experience.
Most users aren’t _choosing_ their browser, in fact they probably don’t even know what a “browser” is, relative to the “web” and the “internet”. If they’re using even a somewhat modern desktop/phone/tablet and things don’t Just Work it’s probably your fault, not theirs.
Good UI is hard, but it's also a solved problem since at least 25 years and idiots keep reinventing "solutions" the wrong way over and over again. I see developers frequently make mistakes that Windows 95 got right.
I purchased tickets on the AirAsia website recently, and I am confident that at least on Firefox, their date picker for the passenger's date of birth has an off by one bug. At least in my case, customer support was able to change the date.
Edit: I am confident because I purchased multiple tickets with multiple passengers and also had someone double check that I filled out the info correctly. All the date of births ended up being one day later than they should have been.
Sounds like a time zone round trip issue. They’re likely using timestamps (say epoch millis) to represent dates and converting it incorrectly on display.
This mistake is quite easy to make in JavaScript. Dates are internally milliseconds since epoch but if you construct a date by giving year, month, day, you get midnight in the local timezone which may well be on a different day from midnight in UTC, so if you send back a unix timestamp or (trying to be clever) use UTC functions to get a date from a Date object, you may likely get an off by one error.
Another consequence of this is that JS Date objects don't understand the concept of timezones, and only allows you to output dates in either the client timezone or UTC. This makes it extremely hard to, for example, display the arrival time of a flight in the destination timezone.
Not a misunderstanding, I'm sure they understand birth dates. But that the date picker selects the current time by default, and doesn't make that visible to the user.
There should be no time component to a properly-stored birthdate. One doesn't observe a "January 1 in Australia" birthday on December 31 in New York. Systems that presume a birthday to be other than a year+month+dayofmonth get themselves into the sort of trouble described in this thread. Birthdays well in the past, however, might need more information on the observed calendar/chronology in use in the subject's locale.
OTOH, if you need "instant of birth" then definitely get a time and timezone. Plus, converting to UTC and discarding the timezone observed at the place and political circumstance of birth would likely be a mistake.
I feel you're being pedantic. The misunderstanding is not around the concept of a birthday, yes--it's due to the use of a time-having datetime datatype for this purpose, in UI and/or application server or database layers, the latter of which ought to reject datetimes as nonconforming inputs.
Birthdates are complicated. It's quite possible for you to tell someone your birthday and be "wrong" because of the timezone you are in. Or for you to be more or less "years" old than your birth date indicates because of timezone differences between where you were born and where you are now.
Rarely matters. Simple mistake in code to forget that a birthdate should be treated as having no timezone.
Depending on time of birth it could have been you that was off by one
Might be even worse, a lot of systems only have some sort of DateTime object that automagically includes a time component (no real way to specify date-only except just using a plain string) and automagically tries to correct it based on some sort of cascade of system settings, configuration variables, application configuration, and user configuration. On a web app, those things probably exist at least on the client, server, and database, each potentially making their own attempt to 'fix' the data.
Working with dates in code is unnecessarily hard so naturally the results tend to be bug-ridden more often than not.
There's room for confusion with unlabelled days even when it's "right", though. The author says "Since when is Feb 2 on a Thursday", but I assume that's because he's used to a Sunday->Saturday layout on a calendar, whereas for me I'd assume the 2nd were a Friday based on that position as I'm used to Monday->Sunday calendars.
(Update: OK, the days ARE labelled - incorrectly. You have to click on the screenshot on Twitter to see the full screenshot. Keeping this comment here for posterity only ;-))
you need to click it, otherwise it only shows a portion of the screenshot. above "February 2019" there's a menu bar with days on it (which is incorrect).
Their cropping uses deep learning for the crop[1], but I often notice that screenshots are clipped weirdly. It makes me wonder if their training set was all photographs.
Neither was I, but turns out sturgill is right. If you click on the image in the tweet it expands to a fuller version that shows the calendar is, indeed, totally screwed :-D
Keep in mind that I open all links in a new private windows except for few services for which I stay logged in.
On twitter, clicking sometime opens a new link, sometime shows the full version of an image. Trying to right clicking all the time doesn't work, because it doesn't do anything when it is a small image that needs to be disaplayed in its full version - because they change the click behaviour via javascript.
That sounds like l10n gone seriously wrong -- maybe they literally wrote something like translation_helper(0) in that header which translates to Monday in $asian language and Sunday in English.
The bug looks like it occurs because the date picker aligns days/dates from 2017. February and March both begin on a Wednesday in the screenshot. I don't have iOS to test, but if this is the case, a flight for 1st Jan 2020 will incorrectly be aligned under Sunday instead of Wednesday.
That calendar picker seems clearly somewhere between confusing and outright broken. [ADDED: Just broken. Click through and they do have incorrect days labeled.] But there are at least two conventions: Sun->Sat and Sat->Fri (or Mon->Sun); the US tends to be the former and Europe the latter.
They should label the days to minimize confusion--I come close enough to messing up reservations as it is--but there isn't really a universal standard for the layout of weeks.
> ... the US tends to be the former and Europe the latter.
Australia is the latter, and so is most of Asia, and .. well, it's probably just bits of the USA that likes to have Sunday as the first day of the week. Date pickers in many US-originating software assume this, which is insanely frustrating for those of us not in the USA / not expecting / not wanting this.
Where were you educated, may I ask? Do you recall if this was encouraged at school or in the home?
(Did you ever wonder why 'weekend' included only one day at the end, along with one day at the start, of a week?)
Growing up I never saw a (physical) calendar that had Sunday as the first day. It's only the past ten years or so they seem to crop up more, almost exclusively online.
I suspect the relatively recent incidence is from shipped-in American culture of course. Similarly I'm seeing increasing occurrence of "February 5th, 2019" rather than the standard Australian / British format of "5th of February, 2019" (noting these sequences aligns with mm/dd/yy and dd/mm/yy preferences for US and rest-of-world respectively).
> Growing up I never saw a (physical) calendar that had Sunday as the first day. It's only the past ten years or so they seem to crop up more, almost exclusively online.
Hmmm... thinking about it a bit, it shouldn't be too hard to locate historical sources of calendars over the years (scanned in, etc). "Pin up girls" (etc) were popular in places like mechanical workshops, and I'm fairly sure there would be hobbyist collectors out there with collections online. Cultural heritage kind of thing. :)
I did a brief trawl through historical calendars on the ebay, most dating back from the mid 1960's, most from NAB or other large institutions. Surprisingly I noted that they showed Sunday as the first day of the week.
So now I'm trying to remember what calendars we had in the house growing up, and how that fits with locale settings on most OS's assuming that Australians have Monday as the first day of the week.
Checked here on our macOS (High Sierra) build server. In the system locale settings (set to "Australia") it has the first day of the week as Sunday. Which is what I'd expect, as that's the first day of the week I was taught and am used to. :)
Note - I don't think that's as change I made, as I doubt I've gone into these settings before. Not 100% sure though.
Very interesting. GMail uses Monday, but I'd have changed that a decade or so ago had it been otherwise. I checked on kde calendar (something I've never run before) and it's using my en_AU locale - and it's picked Monday. But http://demo.icu-project.org/icu-bin/locexp?d_=en&_=en_AU suggests the CLDR identifies AU as 'Sunday as first day of week', which is highly alarming. Do you know if MacOS uses CLDR, or would it be picking up Apple's assumption about AU locale preferences? (Do you have colour or color settings in your control panel?)
The macOS "System Preferences" (system wide control panel) does have a colour settings area. No mention of CLDR, it's more about the locally connected displays and their display gamut (eg Adobe RGB, sRGB, etc).
What's even more sad about the Twitter thread is that AirAsia Support is responding to everyone that commented in the thread. The responses must be automatically generated and triggered by any one of the comments... Something is definitely wrong with their system.
It seems simply employees got the task of dealing with it. But not doing anything would seem bad, so ... they reply as if every new subthread would be a genuine "bug report".
Amazing instance of how not to do teh twitter if you are a corporation.
To play devil's advocate: this is tool for helping you to search for a product. The official transaction happens at the end when they show you the date, time, airports, costs, etc. all on one page and you click "approve". (Presumably, the date was correct there.) One can certainly argue that their sales process was misleading (if only due to incompetence on their part), but that's a slightly different complaint than they saying they didn't deliver the product you agreed to purchase.
Yes, that's an argument a lawyer might make, but I disagree with the premise: Any reasonable interpretation of "agreeing to purchase" takes into account the entire dialogue between the merchant and customer, in which case the merchant told the customer two different things, and the customer reasonably didn't notice that one was different. There's no reason to assume about which version the customer agreed to.
Can't wait for airlines to add another confirmation screen to the checkout process. Please type "Yes I want this flight and I double checked the dates are correct" to proceed.
You mean: "I purchased a flight leaving on the 3rd Sunday in February".
But this should be the last resort. You should try and resolve it with customer service first. You should publicly complain about something like this anyways, so you might as well until after that doesn't resolve it before making a charge back.
I bought a Wizz "membership", promising a 10 US$ discount on all flights. Somehow I was not able to apply this membership to flights I bought after the first booking since it took them some time to internally activate it. The discount was only granted for the first two flight legs.So I bought a total 6 flight legs for 500 dollar total but based on my membership the charge should have only been 450 dollar.
I emailed them and they said that they overcharged me and asked for a 50 USD voucher since I wanted to buy extra check-in luggage anyway. They told me that my membership can not be applied to the selected flights. I emailed them screenshots, showing them that NOW I could apply the discount if I bought again but they did not accept. "Decision final."
I felt this was fraudulent, so I did a backcharge of all the charges. First the CC company settled with me, then with them, then after threatening legal action the CC voided all charges. I booked the flights with major airlines for basically the same price later (I am all major alliances gold status :-) ).
Was it worth it? It totally pissed me off. I even did not ask for money back but just for an in-house credit and I hate it when big companies try to play hardball with me. Yes, it was worth it.
On the other hand, a Chinese guy tried to sell me my own bike on a "street bicycle shop" that was stolen a few month before. I yelled at him a little bit and I gave him 100 RMB for repairs he did, bought a big lock-chain from him for another 100 RMB. These "street shops" guy are poor, they have no money. Yes, I could have called the police and fucked him over but it is easy to play hard ball against a poor guy. More fun to play hard ball against a company.
Airlines don't like admitting mistakes, and even less they like reimbursing people.
We tried the membership discount, and it worked as it should. (I bought it with the flight, so it applied instantly. Then I booked for a few more folks. But lately it doesn't make much sense, because it's only valid for one year, and who knows which budget airline will be the cheapest when we actually figure out when and where we want to go.)
Air Asia, like many discount airlines, charges different fees depending on payment method. Paying by bank transfer carries roughly half the fee of paying by credit card. So a lot of people can't do chargebacks.
AirAsia is a flaming disaster. I remember booking a flight out of Bangkok. Well, it turns out that I actually booked a flight out of the once named Bangkok airport, which isn’t actually even in Bangkok.
I complained and the “support” rep said “I hope you learned your lesson.” So I called my bank and disputed the charge, getting a full refund. Apparently they never figured out how to challenge my dispute. I hope they don’t learn that lesson.
I was sufficiently curious about this that I went and checked AirAsia's Wayback machine for this. AirAsia's flights moved around 1st of Oct 2012 from BKK to DMK. For this date, it shows two Bangkok options, listed as "Bangkok (DMK)" and "Bangkok (BKK)"[0]. By January 2013, only DMK is shown, as "Bangkok (DMK)"[1]. By the next year, it's labelled as "Bangkok - Don Mueang")[2].
DMK is very definitely in Bangkok. It’s about the same distance from the city center as BKK is.
Much like the support rep, I also hope you’ve learned to not assume that major, world-class cities only have one airport. Somehow I doubt you’d have made the same mistake in London or New York.
It’s very definitely not AirAsia’s fault that you didn’t check the airport code, and would have happened on any other DMK-based airline.
DMK (Don Mueang Airport) IS in Bangkok, so yes, the website should say "Bangkok." I will guarantee with 100% certainty that your reservation confirmation and your boarding passes (whether printed or electronic) included the code DMK and not BKK.
There are a lot of things to complain about when it comes to airlines in general, and AirAsia specifically. But not knowing what airport you booked, that's on you.
Their website was correct. Why did you assume Bangkok meant Suvarnabhumi?
If you Google for “Bangkok to Singapore” half of the flights Google will show you are from DMK.
If they’d listed UTP as being Bangkok, then sure, I’d have some sympathy, but referring to DMK as being Bangkok is probably more valid than referring to NEW as New York.
Yeah Bangkok has two airports: Suvarnabhumi (BKK) and Don Muang (DMK). BKK is the airport you land at if you are going to Thailand from Europe or North America, etc. (but not necessarily Asia). DMK is the old international airport that mostly serves domestic flights and a small set of international flights to Singapore, Cambodia, Vietnam. Air Asia only has flights at DMK so when they list Bangkok they are correct.
Similar thing in Germany - I used to live close to Frankfurt-Hahn in Germany, which is nowhere close to Frankfurt, it was renamed to Frankfurt-Hahn at the request of Ryanair.
Three times I bumped into people asking in which direction to walk to get in to get into Frankfurt - it's a 90 minutes drive...
I was there when it was just Hahn AB. When Ryanair & Air France took over after the base was closed [0] and renamed it, I knew something shady was going on. Cheap flight, but then a 2 hour bus ride to Frankfurt am Main. I bet people got angry after being fooled.
[0] Which was sad. All the pilots left with their F-16s to go to war, and the base was closed while they were gone, leaving their wives & families to pack up and return to the US.
To add to the list, there was an attempt to change the name of the Stockton Airport to San Francisco-Stockton Regional Airport. About 80 miles from San Francisco.
I assume you're talking about DMK (Don Mueang International Airport) once called "Bangkok International Airport"
Technically it is in Bangkok, it's the same distance from downtown (Asoke) as it is to the newer BKK (Suvarnabhumi Airport), just north instead of east.
Poorly/ambiguously named airports seem like a common theme. They're often named after a nearby major city, despite being inconveniently far from the respective city.
> despite being inconveniently far from the respective city
Perhaps, but not in this specific case, where DMK is no further than BKK. I'd have some sympathy for someone trying to get to London and ending up anywhere other than LHR, LCY, or maaaybe LGW. "London Oxford Airport" and "London Ashford Airport" are particularly egregious.
It's less of a problem nowadays with everyone carrying smartphones, or at least having internet access to vet these things.
But back when maps were on paper and travel agents used for the most trivial of trips, the airport names played a significant role in (mis)informing the traveler.
Ages ago when my elderly parents traveled to San Francisco to visit me, they had AAA book the flight and hotel without checking anything. They expected to land in San Francisco and stay at a nearby hotel with convenient access to the city.
SFO International is in Millbrae, quite a ways south of San Francisco proper. The nearby hotels are in an isolated pocket of industrial space on Old Bayshore Hwy, with no conveniently accessible public transportation unless you like walking on highway overpasses.
It does seem like a useful "lesson" to learn; that airports are often named after the nearestmajor city. Chicago Rockford International Airport is 85 miles from Chicago, but four miles from Rockford. Yet Chicago is the first city mentioned in its title.
I'm very curious how a bug like this could even happen. At a glance it doesn't appear to be the classic "ISO week-based year" problem discussed on HN a few times before, but somehow the code thinks Feb 1 2019 is a Wednesday... weeks starting with Sun vs Mon wouldn't account for the off-by-2 error seen here.
I’ve been scratching my head about this too. I can’t find a way to introduce such a bug in a date picker. The only one I’m thinking is a off by one when reading the month/year.
For example an API with 0-11 months, and one with 1-12. You’d get info of the wrong month.
"session timeout" is the worst thing that can happen when you're trying to book tickets. The whole experience or booking flying tickets is awful and generally takes a lot ot time. When this happens and you need to refill information that's when you book flights for the wrong date. I'm wondering how common this mistake is.
Hm. I ordered a hotel room for today (Saturday, Feb 2) earlier in the week, and was messaged asking what time I would be checking in on Thursday the 2nd. I wonder if the big is in a common industry tool.
Something's up. I got a letter a couple weeks back from my kid's school requesting a permission slip for a theater trip on Thursday Feb 2. Couldn't figure out how they landed on that date.
This gets more interesting... Googling for "Thursday Feb 2, 2019", "Thursday February 2nd, 2019", etc. returns a surprisingly large number of results containing that exact string (but fortunately, far less than the number of results containing "Sat Feb 2 2019"). If it was a widespread issue, we should be seeing more news about it throughout the rest of the month.
It's pretty ridiculous how long we've been stuck with javascript or dropdown datepickers.
I realize it's subtlety complex to internationalize but it's been a common input on forms for so long you'd assume native browser support would have been present in every browser at least a decade ago. It's baffling to me that you still can't reliably use the input type of date due to lack of support.
To be fair, custom Javascript on a website can do things that are too rare to be baked into general browser behavior, such as adding colors or icons or text to certain dates, date-range validation, disallowed dates, etc.
Is anyone else weirded out by how the AirAsia twitter account is responding to the comments? It looks like automated responses but then signs with an employee name.
This is a discount airline. They employ all kinds of tactics to part money from the customer, excessive credit card fees on top of a lousy exchange rate, very small baggage allowance hidden in the fine print,
useless insurance offers, etc.
You should be examining the confirmation screen extremely closely with an airline like this. Go ahead and blame them if you want to, but they make money on price, not reputation, and the market has chosen price over quality of service.
That's too simple a read. There are many many many low-cost airlines in Asia, and AirAsia is rarely the cheapest for any given journey. They are -- however -- pretty reliable, reasonably well organized, and I travel with them regularly on the basis that they're not as cut-throat as some of the other low-cost options.
That depends... to and from Malaysia they are often the cheapest. They also have the newly reduced 7kg carry on rule (from the pretty standard 10kg).
This is all subjective, of course, but I really don't see much of a difference between them and Peach, HK Express, or Scoot.
As a side note, Peach once double charged me for the same flight and wouldn't refund my purchase, saying it was because I used linux, and that is an unsupported OS. I contacted my credit card agency and they told me the best thing was to take the flight and charge it back after I flew, or they might cancel both tickets. You really have to be careful with these types of companies, but in my opinion, it's worth it if you pay attention.
I once tried to book flights on a popular airline website. I used four different web browsers and each one displayed the content differently, all resulting in "unexpected error". The only browser that would work was chrome, it displayed the "missing" field (date of birth)...
I ran into a similar issue applying for Global Entry. Luckily an appointment at 3am on Saturday suggested the times were in UTC. Nevertheless this was unnecessary uncertainty and anxiety - what about those who aren't familiar with UTC time?
How can we design datetime libraries to prevent these issues? Or at least make it so that error-prone behaviors must be very explicit?
Well, the problem is web apps, or seen another way, lack of good distribution mechanisms for desktop apps.
Write your frontend in Java 8 and you have access to a full blown date/time library that handles all the edge cases and has been well thought out. Do it in JS and you got bupkis.
A few months ago I had to book a round-trip and one-way trip with the same flight for the first trip.
Naturally you cannot do that in one go so I book the two things in two different orders.
I made a mistake, during the booking my credentials were automatically filled in the passenger form, I didn't checked and I ended up booking two time the same flight for me, on the same plane, with the same passenger id.
Fun fact, when I check-in for the first ticket, then the second, the website told me that I was already checked-in (which shows that internally the two tickets were seen as one).
I called the support and they reimbursed me the second (one-way) ticket. I had to book another flight the same day which cost me around 300€.
KLM, if you read me, your booking system is really fucked up. I can't understand that with the volume of order and the price of the tickets we don't have a bullet-proof system in place for years already.
More than once over the years, my wife has given herself an ordeal with reserving airfares and hotels and then had to go through website or phone support to try to untangle it. I watched it happen once, and diagnosed it as a crappy website using cookies/local storage for what appears to be a normal HTML form. This recurring flaw makes the reservation system completely unsafe with multiple tabs performing searches in parallel.
She has an almost compulsive habit to go through the booking process, pause on the final review screen with the "submit" button, and research other options in extra tabs before returning to submit the original order. The result is that she is looking at that previously rendered summary, presses submit, and gets a completely different configuration booked because the activity in the other tab contaminated the state of the pathetic web app.
Due to these experiences and others, I mistrust web programmers and try to avoid complex state. I defensively complete all my research, and then I start a fresh booking sequence in a private browser window to directly snipe the selection I desire.
In the US by LAW you have 24 hours to cancel a non-refundable flight penalty free...not sure why you'd freak out in that case if you accidentally booked the wrong flight or date.
You are getting downvoted but bringing up a good point. A few commenters are talking about US laws when his Twitter profile says he is located in Poland.
Personally I think it's the same thing as assuming everyone is male. Also assuming everyone is a software engineer. etc.
This happens because people need pretty fancy UIs. And companies want to provide these UIs.
We should be using text and structured data for all services by default. Companies should be providing simple, very simple text (or JSON if you want that) APIs by default and people should and could learn to use them.
Web browsers or other apps should and could be packed with nice UIs to browse these APIs.
Optionally, after these default browsable easy-to-use APIs were working, people could translate them into more fancy UIs, but for most things, like booking flights, that wouldn't be necessary at all (who wants a flashy colorful experience when buying tickets?).
Many big companies barely get HTTP correct. (Side-effects on GET… site breakage on back button…) I have very little hope that most could get a more complex protocol working to even a basic degree.
I was heading back home for a month. I went and took my dog to the kennel, bussed down to the airport. Was all ready to go after a couple days getting ready.
Went to check in and realized my flight was 6 weeks in the future. They let me cancel, but a flight that day was hundreds more and I wound up sitting at the airport all day.
I triple check when I book flights with google flights now.
There is some truth to this. A couple years ago I bought three tickets from AirAsia. A week before the flight there was a volcanic eruption which canceled all flights at the destination. They issued me a credit voucher for future flights. Half the credit expired before I next needed to travel to an airport they service.
I still use them because sometimes they are $300 cheaper. And they don't play hardball with luggage weights, unlike some full fare airlines like British ("Your bag is 7.8kg, the limit is 7kg, if you want to carry it on you need to remove five pieces of clothing and put them on yourself").
Had something similar trying to schedule a phone interview. The confirmation email text gave a time 3 hours before the date picker time displayed on their site. I spoke to them on the phone to manually schedule me and then we ran into a problem where there were no daily saving time zones so I had to give myself a two hour window to be sure.
Assuming people start their weeks on the same day as you do is risky at best, but interestingly this case looks like they corrected the wrong way around, resulting in a week that starts on Tuesday rather than Sunday (or Monday, which it may have been before the 'correction').
Edit: Apparently the image I was looking at wasn't the whole image.