So Unfortunate, Delta

Every time I fly to the United States on personal account, I always take Delta Airlines. I may not be a frequent flyer that flies several times a year but rather Delta is my first option whenever I fly to the United States because of mileage program (having started with Northwest/WorldPerks) and the ease of flying domestic US coming from the Philippines. The last incident was however unfortunate making me reconsider flying Delta and how they treated me on my return flight to Manila last 29 November 2015.


I have a scheduled trip SFO -> LAX -> NRT -> MNL last 29 November 2015. A day before that, I checked in using the iPhone Fly Delta app and saw that I am allowed to check-in up to 7 luggage for free. Ironic as it may seem, it is clear that it’s a standard deviation from the usual allowed check-in luggage of 2 for coach passengers. At first I thought that it may be a “reward” for flying Delta for the past several years. Checking if it indeed true, I selected 7 check-in items even if I don’t plan of maximizing them, and the system allowed me to. In fact, the boarding pass generated indicated that I have 7 bags with me. At this point, I didn’t receive any prior notification nor e-mail from Delta indicating that I am traveling in a period where there is an embargo. I proceed packing my stuff and finalized them – packed them off and ready to go home, and go back to work.





My flight to LAX was scheduled at 0700H. I was at the airport around 0620H – just right that the gates are open for passengers to drop-off their luggage. Upon reaching the check-in counter and presenting my boarding pass and passport, they said that I cannot check-in more than 2 luggage. I asked them why are they not honoring the number of luggage indicated in the app. They said that there is an embargo imposed to the Philippines where one cannot check-in more than 2 luggage. I asked them, I didn’t receive any notification from Delta informing me of such restriction, much more that the app allowed me to check-in more than 2 luggage. I had to kept asking them since they offered app-based check-in plus the number of luggage that I will be bringing and yet refuse to honor it upon check-in. I asked them if they imply that their iPhone app that shows how many luggage I can bring for free is a bug but they didn’t answer it categorically.


After missing the 0700H flight, the check-in guy moved me to the 0800H to LAX which is just right for me to catch up the connecting flight to NRT with enough time to transfer my check-ins. I think by this time, they had to call the supervisor to discuss my predicament. When she came, I repeated my predicament and she answered back by saying that there’s an embargo to the Philippines that the government has “imposed”. The airline cannot do something about it. Then I asked her why did Delta, through the app, allowed me to check-in more than what is allowed if there’s indeed a restriction. In fact, I told her what I have earlier stated that I didn’t receive notifications of flight restrictions much more that their own app allowed me to select more than 2 checked baggage. She said something like this which I found to be a bit insensitive – “changes in checked-baggage provisions such as embargoes isn’t notified to passengers because it is a minor one”. How can be changes in checked-baggage provisions be a minor one considering that IT DIRECTLY AFFECTS THE PASSENGER especially during holiday season when passengers tend to buy gifts to bring home? She in a way smirked and said “sir, we’ve been going on circles” and I answered her because Delta isn’t honoring what the passenger has selected and in a way putting me in a helpless position now that I stand in front of them in the check-in counter. They may want to check the CCTV at the Delta counter last 29 November 2015 at the Domestic departure near Gate 09.


She offered me options on which isn’t workable at that time, considering that I have limited to work on to catch up my flight:

  1. Ask a relative to ship the box using a cargo forwarder. I specifically told them that my relative who dropped me off is driving back to Sacramento and is she telling me to call my relative and risking being caught by highway patrol for using phone while driving? She offered no answer.
  2. Another is to ship the extra luggage via cargo. She said that it is a separate department somewhere within SFO. I asked her if I have to pay because I am counting on the accuracy of the app where it allowed me to bring more than 2 luggage. She said yes, and I countered back to her that if she is making me at fault for believing what the Delta app offered me during check-in? We had a bit of raised voices because no one wants to fold and each has a point to raise. She said that they can’t override the system because they can’t.
  3. Call the reservations hotline and ask if they can make an exception to my case. I did call the reservations and tell the whole story again and said that there’s no embargo indicated in her records. However, she also said that her copy might not be updated and the check-in counter may have an updated one. She also mentioned that there’s no way for her to “command” instructions to the check-in counter as they belong to different departments. The hotline person asked if she can talk to the supervisor but they weren’t able to talk to because the call was placed on hold for the longest time. The call was transferred to another guy just to document but offered no resolution to my point.


Since it took a long time to discuss matters, I also missed the 0800H and I won’t be able to go home that day. That also mean that I won’t be able to report to work by December 1, Philippine time, missing my responsibilities waiting for that day. I just told them to rebook me for the next day, with the same flights even if that means that I risk losing my job for not being present on the day that I am expected to show up. My relative returned and picked me up from SFO – had to repack my stuff and readied myself to fly again the next day with only 2 checked luggage.


The following day, I didn’t do online check-in, but rather did it in the airport. This time, I took a video of the check-in process and and again I was offered to check-in more than 2 luggage with the same number as it was the previous day – 7 pieces checked for free. Yes, I was able to fly and upon arrival in Japan, I received a message from a colleague that the president has announced that they decided to have me forced resign from the company for not being in the office by December 1. I kept that thought hanging since pending receiving actual word from either HR or from the president himself, it might be still uncertain.



Upon arriving in the Philippines, clearing immigration and picking up my checked luggage, I was enraged to see someone who had more than 2 checked luggage picked up from Bay #1 in Manila. I might be wrong but I checked the name and it belonged to the same person. I even had to talk to a ground crew of Delta and asked why was that being allowed to have considering that SFO staff said that there’s an embargo and more than 2 luggage isn’t allowed. The ground crew offered an explanation that the passenger may belong to a tier in the Skymiles program which is a plausible one.

The following day, I reported back to work and confirmed the result – I am removed from work, for not being in the office by December 1, Manila time.

I am still thirsty for answers to some perplexing questions that’s related to this issue:

  1. Who actually imposes baggage embargo – airline or country? I find it disturbing when the SFO supervisor said that the embargo is imposed by the country. I saw a link online – states information about embargo. It has been more than 2 years when that question was asked, and yet the embargo information or restriction hasn’t been transparent to the passengers then till now.
  2. How far does the airline’s responsibility go on notifying travel-related changes that affect passenger’s schedule? I find it irresponsible that the supervisor would just say that the embargo is a minor issue considering that the passenger didn’t receive notifications on the said restrictions and the app allowed him to check-in more than the standard. No accountability even for presenting false information to the customer?


Glad that Skymiles aren’t expiring. If only ANA-United was a good alternative, I would have taken it. Oh well.

I Have Moved!


It’s been a long time since I last blogged and I decided to resume it on my self-hosted domain –

I think I would be able to express better my thoughts on things about the Web,  life,  travels,  and photography on a platform that gives me flexibility.

As part of the revamp, I decided to drop the name BuLOnG for another one that better reflects my personal perspective – #theboywhotravels. I am still fixing some items on the new location but I will try to be more active on that one.

To all the readers and those who have participated in this blog, thanks for being a part. A chapter has closed and a better one has opened on


ASP.NET SignalR – Beyond the Chat Application

Last January 30, I talked about ASP.NET SignalR 2.0 and what are the other uses of the technology aside from the chat application that’s widely available in the internet.

The first time I talked about SignalR (Q2 2013) is about the overview of the technology, and how it is used based on the chat application. From that point, I haven’t seen any implementation yet on how can it be used in business applications – a world where I actually work in. Although a quick check now on the project’s SignalR GitHub page, there are some projects/applications published using this technology.

Fortunately, an unfortunate incident that was reported before by a friend was a good business case where this technology can be implemented. The scenario is something like this:

Employee was working on an application where the users are located on multiple locations and multiple timezones. Employee worked with the business partner to schedule the production release of the approved enhancements. Business sent out prior notifications to the departments through e-mail and employee worked on the technical team that will assist in the release. Departments are responsible for cascading this information to their respective units as they are more aware of the specific roles for their group.

The release was made but had to be pulled out minutes after due to business reasons. The time in between the post release and the time it had to be reverted, data corruption happened and these needs to be corrected. It took a long time and large effort to reach out to different users to remediate data fixes.

A root cause analysis was conducted and one of the suggestions is that in the future releases, introduce the app_offline.htm file in the root folder of the application to make sure that no one is actually working on the application on the time of the release.

While the app_offline.htm file effectively excludes everyone from the application (aka “soft offline”), this might be costly for some who are currently working on the application. Either they had to re-upload a large file, re-input lots of data once an abrupt “activation” of the app_offline.htm file is put into place. It would be nice if these people would be notified of the upcoming outage ONLY if there’s a way to identify their current site activity and send them notices as warning to save their changes.

Building up a prototype using SignalR might be useful for these reasons:

  • Current users of the application are considered as “clients” connected to the server. Application administrators don’t need access to the web server just to get the number of users online (through perfmon) OR use an application level variable (and using that nasty Application.Lock() method) that can probably cause performance penalties.
  • I can treat the whole application as a glorified “chat session” and send broadcast messages to all or specific users (more on the sample application). I can send notifications individually or to everyone, as I desire through divs triggered according to events.

In my talk, I used two pages to demonstrate SignalR. It all started with converting a SignalR 1.x application to version SignalR 2.0.x and build the demo from that.

Client Page (signalr-Notification.aspx)

The client page provides three different ways of participating in the application session (or “chat”) – using the current windows identity, a client-input name, or a value taken from the web.config.


Once you have selected your “identity”, you would see a familiar chat window similar to the chat demo. What made this demo different is that you have three functionality that builds on top of the chat demo.

The first two buttons in this page provide notification to all connected users, while the last one just provide notification to the user calling the function. The first button sends notification based on a fixed value. This could either be a standard greeting to those joining the session or any hardcoded value (e.g. name of the application, etc) that you wish to broadcast.

The second button broadcasts value from the web.config file. As indicated in the scenario above, it would have been better if the current users using the application prior the updates be notified that the application would go offline in x number of minutes. Case for example, if the website is scheduled to go offline in a specific time, you can get the value of the offline schedule (date or datetime) from the web.config and broadcast it to the users. This button is quite flexible on what data to broadcast or notify since you have control on what data to display to the connected users.

The third button simply displays how many users are connected to the application at that point. That’s just it. You would know how many people are actually having an active session with the application. Previously on ASP.NET Membership, the basis of number of users online is based on the users’ login session. However, if I say I login and close the browser after authentication, I would still be recognized as “online”.

Admin Page (signalr-Admin.aspx)

Getting through the admin page needs you to be identified again in the system. I just basically reused the first page and added admin-related items.

In the admin page, I displayed all connected users and their corresponding connection IDs. From this point, the “admin” can send individual messages to the user or broadcast to all a message. This is similar to a Facebook notification wherein people associated or a specific person gets notified for an update or message.


The demo files can be downloaded through my Skydrive folder and is provided as is.

There are other enhancements/items that I am working on this project:

  • Ability to return back to the admin who among the users have acknowledged the notification. An event can be raised and capture the current username of the user who clicked the notification.
  • Do a comparative speed/latency test on connections coming from different browsers. Note that SignalR’s mode of transport depends on the type of browser that a user uses to work with the application.

Questions? Feel free to ask them in the comments.🙂

Updating from Windows 8.1 to 8.1 Pro

Today marked the General Availability of Windows 8.1. While I am a MSDN subscriber, the slow connection getting the bits made it through the GA of the OS. The road to updating from Windows 8 Pro to Windows 8.1 Pro wasn’t a smooth one – at the least on my current setup. Here are the issues that I passed through:

1) My Windows 8 Pro installation sits on a virtual hard drive. Given that, I cannot “upgrade” my image with 8.1 with an ISO. While I haven’t tried updating it via the Windows Store, I prefer having an ISO lunging around. What I did is to back-up the files in my Windows 8 Pro installation to another storage and followed the VHD installation again.

It went smoothly and as far as I can remember, the installation is faster as compared to Windows 8.

2) During the post-install process, I accidentally keyed-in a Windows 8.1 product key (other SKUs being 8.1 Pro and Enterprise but the image of the non-Pro and Pro is just the same). I didn’t realize it until I installed Visual Studio 2013 and an error was reported that I cannot add myself to the Hyper-V Administrator’s group. I launched the MMC snap-in and tried adding the Local Users and Groups section – it said though that the version of Windows 8.1 doesn’t allow me to do it. I checked the product key that I got hours earlier and indeed it is the base SKU product key that I keyed-in. I tried changing the product key clicking this area:

Unfortunately, despite best efforts to click on it – it doesn’t help. Then I scrolled around, looked for forum posts and never I did realize that the answer to my question is in the same screen as above.

That prompted me to a 2 step process of providing the pro product key. After 1 restart and voila,  I am updated to the pro version! Much more I like it and the fact that I can now boot directly to the desktop is a wow!

We sometimes overlook things, it happens.🙂

Second Time Around

This year’s Microsoft MVP Summit is my second (2011 was the first) and so far the best that I have experienced! It was without my knowledge that this year, if not for my friend that 2013 would be the 20th year that the program is in place and making it in this momentous event has caught me by surprise.

The range of topics for my specific area of expertise are exciting in the sense that I can’t wait to get dirty with my hands as well using those. Of course, what they’re are – are still covered by NDA hence, it can’t be released in public until Microsoft makes it public themselves. I could remember that during the last summit, what we are currently using were previewed then but with MVPs’ input and in various CTP releases, they have shipped a good product where everyone is pleased (not giving specifics but it is released in VS 2012).🙂

Prior to the summit, selecting my sessions, I realized that most of ASP.NET/IIS related topics are assigned in Hyatt. In a way, I am disappointed by it as the previous summit that I have attended, sessions were held in the main campus in various buildings. Given that I have attended only 2, there were some differences with the range of activities held however, I am pretty much satisfied with how things worked this time – logistics, food, internet (a must!) and activities.

This slideshow requires JavaScript.

But more than the sessions, I really liked as well the activities on socialization where I got to meet not only Microsoft People that I look up to but also different MVPs from other countries such as Germany, Switzerland, Japan, and UK. Likewise, I was able to meet Filipino MVPs who are based on other countries as well. Aside from pleasantries, the exchange of communication was the highlight of the event. That is where we put faces behind the names and talk about common interests and share techniques and approaches that would help fill up best-practices in our respective organizations. The camaraderie has shown that the MVPs are not just techie guys but fun guys as well fueled with passion to use and share about the Microsoft technologies. This passion drives the most of us to PASS It ON to others to make lives, experiences, and computing better!

Happy 20th Microsoft MVP!