Wednesday, July 18, 2012

Never fly Philippine Airlines

It took some doing, but Philippine Airlines have supplanted United in the "I will never fly them again unless there is no other choice" stakes.

On our most recent trip, three out of four legs of the journey were just too unpleasant, and while the last helped to smooth over the annoyance, the sum total was best summed up by Catriona who said "Dad, next time we fly, can we *not* go with the cheap airline?"

Picture this: You get onto a plane, about to take a 10 hour flight, expecting to see those in-seat monitors.  What you get is a poorly focussed overhead screen.  And a bunch of children looking really disappointed already.

The announcement comes over to "please close your windows - if you want to read, turn on your overhead lights".  You push the button.  Nothing happens.  You sit in the dark with your Kindle wondering how you're going to kill the next 10 hours.

You open the window and let the light in. A flight attendant comes and asks you to close it.  You explain that the light doesn't work.  She goes away.

The purser comes and asks you to close it.  You explain that the light doesn't work.  He shrugs.  You show him that in fact the light control actually comes out of the seat showing exposed wiring.  He laughs and goes away.  You hope that the wiring in the cockpit is in better condition.

Repeat for two more flight attendants.

For an hour you try to watch the blotchy screen showing some movie.  The movie stops.  And restarts from the beginning.  This happens several times during the flight.  They do show snippets of an insane American game show where people get hurt trying to climb over/under/through a watery obstacle course.

After 10 hours, you get off in Manila.  You are escorted up to the departures lounge, and go through security having your bags and shoes X-rayed, and being patted down.  Loo break, have a tiny ice-cream, then go to the gate (approximately 20m away from where you were last scanned) where you have to go through security again, having your bags X-rayed and being patted down.  Presumably this is because you might have visited the gun dealer in the departure lounge.  At least, you can keep your shoes on this time.

So, now you are in the "secure area" - that is, a part of the same floor that's cordoned off with those ribbons you see in bank queues. Once inside the "secure area", you realise that there are no seats left so you sit on the marble floor, only to realise that the airport roof is leaking and the floor is wet.  But it's ok, that's to make sure you don't dehydrate -- it must be, after all, it's the only source of water you have access to until your flight.  Unless you want to go through security again.  Remember, you can't bring more than 100ml into the "secure area" so don't think about going out and buying drinks for the kids.

Still, at least this next Manila to Los Angeles flight will have personal screens, won't it?  No, you probably only wanted to just sleep anyway.  This time we're split across three rows, with me behind the three kids and Pauline somewhere up frontish.  I get to share the row with a couple who were, well, large.  For the entire trip, the voice in my head was that of the male hippo in Madagascar 2 saying "Girl, you're large. You're chunky!"

(realise that I've been switching from second person to first person - give up dreams of being a novelist)

But you're in LA now - have a holiday, and try not to think about the flight home.  If you have to think about Manila, think about how cheap the ice-creams were.

Legoland.
Disneyland.
Fireworks in a carpark on July 4th.
Universal Studios.
Legoland again.
Fly to Washington.
Smithsonian x 2
Too many burgers, too many cokes, this is holiday living.
Drive to Pennsylvania
Climbed on by niece and nephew

Too soon it's over and you are winging back from Washington to LAX arriving at about 2:30pm and having to wait till 10:30pm, thinking "I'll check the suitcases and then grab a bus somewhere outside the airport".  Bzzzt, sorry, Philippine Airlines don't begin checking in until 6:45pm.  Ok, this one isn't completely their fault but if the whole trip had been with them, I'd have been able to check the bags in in Washington.

Ok, we're back - side trip was acceptable though it was a little tricky dragging 3 suitcases and 5 people each with backpacks onto a peak-hour city bus.  Again, can't blame the airline for that.

At about 10:45, learn that "because the plane is lighter than we thought, we don't want to stop in Guam to refuel".  "Hooray" shouts the crowd.  "... so, we'll be delaying the flight until 1:30am so that when we get to Manila Airport it will actually be open."   "Boo!" shouts the crowd.  "... so, here is a $12 voucher that you can use at any of two eateries here in no-mans-land behind security -- no, they won't work anywhere else".

(Hmmm, and yet the airports Facebook page says "always open" - sigh)

Get on the plane and discover that the little man at checkin who told us that the last side-row of seats reclines, was lying.  They don't.  They would block the exit door. He had deliberately moved us there to keep us altogether and we explicitly said that we would only go there if they reclined.  So he said "sure they do".  First rule of airlines - get the passenger to be someone else's problem, preferably at another airport.

We complain to the purser and get the girls moved forward about 40 rows, leaving us boys at the back.  Next to a walrus.  I don't know what else to say, just try to imagine someone who can snore loud enough to be heard over an airplane engine.  Thomas can't take it and moves forward with the girls, leaving Jonathan and I with more room.  And a noisy walrus who, to be fair, eventually shut the hell up.  But that just made it easier to hear the scary rattling noises from above.

Try to lift the arm rest to use that extra space?  Aha, no, they have that covered too, they only raise about 2/3 of the way making it impossible to spread out.

Well, at least this time the plane has those little screens.  Look, Movies and TV. Hmmm, movies aren't anything special, what do they have on the TV - *one* program.  One! And for irony, it's "a documentary on aviation technology".  After the flight, you learn that in fact the people over on the right hand side of the plane had dozens of TV shows to watch.  Or perhaps it was "front" vs "back".

Watch a couple of movies. This part was ok.  But it's what we were expecting on every leg.

When the flight is just about over, we discover that in fact when they moved the girls, there were three empty seats behind them - they could have moved us all, they just didn't think we'd want to.

Back at Manila.  Back to double-goes on the security ride.  At least, this time it wasn't raining.

Notice that the security area has been set up so that the guy looking at the X-ray screen has to shade it with his hand the entire day, because they placed the screen such that the sun shines directly on it through wall-to-ceiling windows - what a shame they couldn't have anticipated, while designing the airport, that the sun actually shines.  This just reinforces the notion that all of this security crap is based on the notion that the guy before you was incompetent.  Not to mention the tautological sign that justifies it by saying "Philippine law requires that all bags be inspected when passing through inspection points".  So, if they hadn't put an inspection point in, there would have been no need for an inspection point. "It's a bypass, ya gotta build bypasses".

One last plane.  One last chance for reasonable entertainment.  Why does the screen say TV but doesn't mention Movies?  And why is there so much "Glee" in the TV section?  After four reboots (did you know those things run Linux? We do now), the Movies actually show up.  So, the final leg of the trip is tolerable.  Not surprisingly, it was the shortest of the bunch at less than eight hours (Manila to Sydney is faster because it's downhill all the way).

Oh, by the way, you know how nice a warm pork bun can be?  Not surprisingly, the "warm" isn't optional - a cold pork bun snack really doesn't do anything for me, but they served it anyway.

All told, there weren't any catastrophes, no lost bags, no falling out of the sky. Just a series of unpleasant experiences which left you with the feeling that "this is an airline that is just a bit manky".

Your mileage may vary.  But I've flown Singapore Airlines, I've flown Air New Zealand, I know it can be done a lot better than Philippine Airlines did on four flights out of four.

Friday, April 6, 2012

AutoCAD 2013 and LiteHtml.dll

Installing AutoCAD 2013 is complaining about LiteHtml.dll. Whats the story?

I can't say for sure, but I think you'll find that you have an over zealous system administrator who decided to deploy a security system that can only have been designed by chimps, then implemented by the most idiotic intern at Microsoft.

Go read this Knowledge Base article: http://support.microsoft.com/kb/2264107

Can you believe that? Some idiot thinks that DLLs are always completely self-contained, that no-one other than Microsoft might build an application where DLL1 depends on DLL2 which happens to be delivered as part of the same product.

This wouldn't be so bad if the numb nuts that actually implemented the security feature actually knew what they were doing. It appears that setting the CWDIllegalInDllSearch entry does not "omit the current directory from the search". Instead, it changes the order it considers directories. If a matching DLL is in the current directory, it halts the scan immediately. Doesn't check that the DLL would have been found via the official path strategy - it just stops.

Now, it's fine to say "but this is a vector for malware". Sure it is, but if someone can install a DLL into your application directory, then they can change your application as well, so this hack prevents *nothing*.

In case one of the afore-mentioned chimps is listening, they should find someone smarter than they are and ask what the letters in DLL mean. Dynamic Link Library. Suggesting that you can work around the problems this security setting causes by explicitly (and manually) loading the libraries you need with LoadLibrary() misses the point that there are no published APIs that tell you what libraries a specific DLL needs. If I have to write my app so that it analyses every DLL it loads, then every DLL that *they* load, recursing till I hit metal, then there is no point in actually *linking* against those libraries.