Saturday, April 12, 2014

Fairmont Copley Plaza Hotel Review

We interrupt the regular technical discussions to present you with a warning about a hotel in which you shouldn’t stay if going to Boston, MA.

The Fairmont Copley Plaza Hotel is the kind of hotel in New England that is trying to copy everything hotels in England did… 20 years ago. Hotels in good locations in England used to be expensive, have an arrogant staff, and keep their old buildings as dirt as possible. Check all those for the Fairmont Copley Plaza. Let’s get the positives out of the way quickly: the Copley Plaza has a great location and… that is it. I couldn’t think of anything else.

My terrible experience started even before arriving. Because I was in a business trip for a conference in downtown Boston, and would arrive only in the morning of the second day of my reservation, I suspected a problem might happen. Despite making a reservation on February for a stay during April, I called a week earlier to confirm that both my room would be available if arriving in the morning of the day after the beginning of the reservation, and that the room would have 2 queen bed rooms, since the reservation had a strange “1 queen bedroom minimum” in the room description. The person on the other side said that this would be no problem. I should have understood it meant they would have no problem taking the money from a reservation starting on a Monday, even if I arrived early on Tuesday. I arrived to uncover they had available only a room with a single bedroom. First time ever this happened to me since first using a hotel in the United States on 1993. Worse: I called to check, and they didn’t even care. The staff just kept repeating excuses, and when I finally said I would find another place, they offered the “solution” of adding another bed to the room. I thought that would solve the problem. Until I saw the room. It makes rooms of hotels in Europe look big. That is not a compliment to the hotels in Europe!

Now, if that was all, I would compensate the great location with the downside of having a small room, and shut up. Problem is: this already expensive hotel, keeps adding to be bad experience. Let’s ignore the fact that Internet is not included, and you pay for a very poor connection, or pay more for a decent connection. And let’s accept that this is an old hotel without parking space, charging more for the valet parking per day than the car rental company. Finally, there is no way the staff can clean the place: it is simply time to repaint, replace the carpets, and do the kind of maintenance that one expects from hotels every 10 years, and this one probably is missing for 30 years already. It was mid-April, and I set the room air conditioning to 65 degrees Fahrenheit (about 18 Celsius). The room temperature would be at 78F (~26C) several hours later. Now, prepare for what the reception told me when I asked them again about the possibility of moving to another room: “It is colder outside, and you can just open the window“. This is a Nobel Prize of Physics wasted in a hotel reception. I really needed someone to tell me about thermodynamic principles like these: creating a transfer surface between a larger colder space and a smaller closed room would make the latter colder. I just got happy that I wasn’t in the hotel in the middle of the summer. Because this “solution” also avoided another problem: the noisy air conditioning. Hard to describe in a blog without sound.

The last straw: this is a hotel that, like most nowadays, try to extract that last penny from the visitors using the TV. The free channels are impossible to watch. Fine, because I don’t usually watch TV in hotels anyway. Problem is that in this trip I took my family with me, combining a business trip with visits of one of my daughters to the colleges in the Boston area. And let’s remind those 3 in blog’s audience that the young people from Seattle have their bodies 3 time zones backward from Boston. So, when they arrive from a day of activities at 11:10pm, they still feel like it is 8:10pm, and browsing the TV channels is not something farfetched. Having an open channel showing porn content at this time is what is incredible. Shouldn’t they charge for that?

Summary: The Fairmont Copley Plaza Hotel in Boston, MA is a hotel in which you shouldn’t ever stay. Better avoid risky experiences and stay in some chain hotel, like the Westin just across the street.

Posted by MyNick in 20:42:06 | Permalink | Comments (1) »

Wednesday, March 19, 2014

Hortonworks Hears a Who

I foresee that someday HDInsight will be a great product. Taking away all the pain of configuring Hadoop clusters and providing a cloud service with direct connections to the other Windows Azure services is something of great value.

Yet, there is a problem when you take a dependency on open source: it evolves at times too quickly for one to be able to have a stable build. It is one of the beauties of open source that anyone can fix a bug, and the first person to hit one can jump right into the code and fix it. There is a problem with that approach: such person may not be the best qualified one to fix the problem. Or, in the process of fixing it, may introduce yet another bug, or even more than one. When being the early adopter of new technologies, one risks stepping into quicksand and being stuck there for a while. What makes it ironic that virtual machines with “stable” configurations of several services properly bound together are named a “sandbox”.

A while ago, Microsoft partnered with Hortonworks to have the HDP (Hortonworks Data Platform) being the basis for the HDInsight clusters in Azure. You can go to the Azure Management Portal and get a HDInsight cluster provisioned in minutes. It would be all nice and splashing… and we could all be enjoying the jungle’s great joys… except for… the quicksand. If you create an HDInsight cluster as of midway through March 2014, you get Hadoop 1.2.0, HCatalog 0.11.0, Pig 0.11.0, Hive 0.11.0, Oozie 3.3.2, and some other services in some other versions. If you go to the Hortonworks site and download their Sandbox version 2.0, which was built around late October 2013, you get Hadoop 2.2.0, HCatalog 0.12.0, Pig 0.12.0, Hive 0.12.0, Oozie 4.0.0, and some other services in some other versions. Noticed a pattern? A difference in version is a difference in version, no matter how small. Even worse if it is not that small after all…

A Sandbox has an important value: when you are developing some Hadoop-based workflow and something is failing, you would very much prefer to debug issues locally. With laptops nowadays having i7 CPUs and SSDs large enough to hold at least some medium size data for tests, it is definitely worth to have local Sandbox you can use. As long as it doesn’t differ that much from what you will get in your cloud service. And as long as getting the Sandbox up and running is quick and easy.

Which bring us to the fact that Hortonworks, for a reason that I fail to understand, decided to make the HDP2 Sandbox available for VirtualBox and VMWare, and no longer for Microsoft’s Hyper-V. Maybe that is waiting for when the HDInsight image is in sync. Yet, in the meantime, a solution would be to use VirtualBox, or VMWare. However, if you just download and install both VirtualBox and the corresponding HDP2 Sandbox, you will face the following error message.
VirtualBox – Error
Failed to open a session for the virtual machine Hortonworks Sandbox 2.0.
VT-x is not available. (VERR_VMX_NO_VMX).
Details

Result Code: E_FAIL (0×80004005)
Component: Console
Interface: IConsole {db7ab4ca-2a3f-4183-9243-c1208da92392}

Quite annoyning. Yet, searching the web indicates this could likely be resolved just disabling hardware virtualization. I proceeded and did that.
C:\Program Files\Oracle\VirtualBox>VBoxManage list vms
“Hortonworks Sandbox 2.0″ {93a61b40-5bb4-4038-bf3d-e7a1285f5063}
C:\Program Files\Oracle\VirtualBox>VBoxManage modifyvm “Hortonworks Sandbox 2.0″ –hwvirtex off

That at least starts the VM in VirtualBox, only to get to this new error message:
This kernel requires an x86-64 CPU, but only detected an i686 CPU.
Unable to boot – please use a kernel appropriate for your CPU.

It looks like since a while ago VirtualBox decided to depend by default on hardware virtualization. So, the way out is to enable virtualization in the BIOS, and enable back the hardware virtualization for VirtualBox, and then disable the Microsoft Hyper-V, which would be competing with VirtualBox for the hardware-assisted virtualization:
C:\Program Files\Oracle\VirtualBox>VBoxManage modifyvm “Hortonworks Sandbox 2.0″ –hwvirtex on
>dism.exe /Online /Disable-Feature:Microsoft-Hyper-V

After a reboot, all is working! Should you need to enable again the Microsoft Hyper-V feature, that can be done via the GUI to enable/disable Windows features, or this command line:
>dism.exe /Online /Enable-Feature:Microsoft-Hyper-V /All

Now, the only the remaining problem is to get the Hortonworks Sandbox and the HDInsight images in sync… Hope someone is hearing the calls for help all over the web…

Posted by MyNick in 18:38:26 | Permalink | No Comments »

Sunday, February 23, 2014

Extra learning goals follow-up

Early last year, I set some personal learning goals not directly related to work projects: learn about the R language, the Node.js technology, and SEMAT. Following-up with the results…

I went through a tutorial of R, and was so disappointed that I considered the goal “done”. Maybe those that never knew about languages like Maple, Matlab or Mathematica may get some newfound productivity in R. I see yet another copycat language. No reason to proceed beyond my introduction-level knowledge, unless a specific project demands learning more.

SEMAT was another disappointment. Looks like CMM by another name. Why did CMM go into oblivion and insignificance? Because each time someone tries to create a “quality certification” mechanism in the software industry, companies divert efforts to the “certification” part, instead of the “quality” part. I quote directly from the site of CGI Federal, the company originally in charge of the Healthcare.gov site “Our core systems engineering business has been independently assessed at CMM Level III proficiency under standards established by the Software Engineering Institute”. It gets worse: CGI’s India-based application development centers obtain highest quality standards – CMM Level 5 (link). And with all such certification in quality available in the company, all that quality in Healthcare.gov. Soon, we still start seeing the “SEMAT certification”. I rest my case…

The bright spot was Node.js. This proved to be a very good and useful technology. With several libraries and frameworks available, it is a little confusing to decide on what to use. Yet, with Microsoft support Node.js in Visual Studio, it became almost too easy to prototype some ideas. Obviously, you have no real experience in any language/technology until you have a project with real customers, which is what I’m trying to do this year: use Node.js for a work-related project. Let’s see how that goes.

Still didn’t decide my extra-learning goals for this year in which glasses, watches and other ridiculous devices will compete to make humans look like borgs. My excitement with devices was reduced significantly after a relative that got a Surface 2 as a gift this last holiday season was robbed, and it was disappointing to see Microsoft had no anti-theft features whatsoever. Maybe studying anti-theft tech is my main goal this year.

Posted by MyNick in 19:09:30 | Permalink | No Comments »

Saturday, February 8, 2014

It Was The Best Possible Choice…

When people ask me what I think about the selection of Satya Nadella as the new Microsoft CEO, I start my answer by telling them a story.

Early on December 2002, I got a meeting request to join a few other employees in a round table with a new executive in the division I was working on. The meeting happened just a week before Christmas 2002, following the script of many such round tables I’ve attended: the top level executive talked a little about career history, repeated a few lines about the strategy to improve the business, and then listened to any “issues” that those several levels down had the courage to bring up. Most of such meetings end early, because when asked by top executives about problems most employees suddenly forget the long list of complaints they were talking about at the water cooler a few minutes back. Then the executive checks the box on “have quarterly round table with mundane workers”, and life continues.

That Satya Round Table produced something I’ve seen very few executives do in my life: a follow-up. By 6:18am on the next day, Satya sent a message to relevant people asking them to take action on a problem I had reported to him. And then the problem was solved. Obviously, by no means this demonstrates that Satya will succeed or be a better CEO than any other candidate to replace Ballmer. What it demonstrates is a courageous and objective way of listening and taking action. I’ve heard several similar stories over the years. Satya is not known for sitting on problems. And now it is the time for Microsoft to stop sitting on problems. Microsoft needed not only a CEO knowledgeable about technology and business: it needed someone courageous enough to take action. I think all boxes are really checked!

There were other consequences of that round table. While respectful, I’ve been always quite open about the problems that need to be fixed inside Microsoft. I’m not one of those obsequious people who talk about problems only to those who cannot solve it. As such, I’m not a fit for organizations in which management is always repeating upstream that the world is rosy, while talking about the problems after hours. The specific problem I brought up was solved, but by exposing it first during a round table I made a career limiting move in that division and had to leave quite soon after realizing the overall reaction. I was working on one of the problems I really like, and in the short team I had a professional loss. Yet, in the long term leaving the division brought me enormous professional and personal gain. And an enormous sensation of empowerment. A top executive had believed in me, and solved a problem. Maybe he believed too much in other people closer to him, and should have learned about the problem in some other way, and solved it sooner and without side-effects. Yet, that can only happen if employees raise to the occasion and focus on solving problems, instead of fighting for short-term personal gains. They are now empowered with someone at the top that not only listens, but takes action.

Posted by MyNick in 21:06:51 | Permalink | Comments Off

Tuesday, February 4, 2014

Microsoft 2014 Super Bowl Ad

I’ve been told this is the first ever ad by Microsoft during a Super Bowl

Great ad, and effective marketing. People contacted me about how they noticed the many shots including Kinect for Windows in this video. Meanwhile, when I was working on Computer Vision within the Kinect for Windows team, I had a lot of conversions that went like this:

Person: _ What are you working on nowadays?

Me: _ The Kinect for Windows SDK.

Person: _ Yeah. They should make a version of that for Windows.

Me: _ Exactly. That is what I’ve been working on.

Person: _ When will it be available?

Me: _ It has been available already for months.

Person: _ I didn’t know about that!

And I rest my case…

Posted by MyNick in 07:28:40 | Permalink | Comments Off

Saturday, February 1, 2014

Microsoft CEO 3.0

Friends asked me if Microsoft employees have any say on the choice of the next CEO. Luckily, the answer is no. That is the task of the board. Employees should be focused on their daily job. There is definitely some talk about the CEO search internally. But it just replaces normal chat about something else, which could be as good as the Seahawks season, or as boring as the weather in the Seattle region, or just the usual complaint about something. And Microsoft employees are experts on complaining about anything (in the line to get a free Surface a couple of years ago, people complained it was being given away in just one color!).

This is not a popularity contest, or a “geek contest”. This is the first time a huge tech company of the “consumer electronics era” has the opportunity to replace a CEO who started on the early days of the company, and the replacement is not triggered by despair over business results, or health conditions. There is no book of instructions that the board could read in a situation like this one. Who has done something like this in the past? Apple was so “sure” that Steve Jobs would succeed when back to the company that he was for a long time the “interim CEO”. As that was not exactly a planned CEO succession process.

There is no reason to despair. So far, if one considers the big scheme of things, everything is being done perfectly. First, Ballmer announced the timeline for departure, allowing the board to approach candidates openly. Then, the board kept things to themselves. Usually Microsoft groups leak information quite badly. Yet, the board has done a good job. It is impossible to secretly talk with external candidates (they do have to talk with their boards, or managers, and the spouses). Leaking of those names was expected. And everyone knows who the internal candidates are.

Is it taking too long? I don’t think so. It is obvious everyone would like the new CEO announcement as soon as possible. However, if one announces in August that a CEO replacement will happen within 12 months, I don’t see why despair by February. The “market” will continue speculating with the stock, no matter what. This is not the time to be “agile”. We want a CEO that is ready, not a “Windows Vista”-style CEO that will demand a service pack before anybody decides to “install”. Then it never really gets acceptance, and creates mistrust for future versions. All we don’t need is to be a couple of years from now still thinking about “what would Ballmer do”, stuck in the past like the users that refuse to upgrade from Windows XP.

The new CEO will be welcome when the board is ready to decide, and he/she is ready to accept. Employees are ready to install CEO 3.0, when it is ready.

Posted by MyNick in 18:29:58 | Permalink | Comments Off

Tuesday, January 28, 2014

Netflix and Roku

Services and devices… That is where the world is going. Tell that to Netflix and Roku. Suddenly, Netflix stopped streaming. But only in the Roku 3 devices I have. Other devices stream fine. The Roku device works fine with all other stream services (TED, Amazon, Dishworld, YouTube, etc.). The Netflix channel in Roku shows the list of shows, starts to download, and gets stuck at 25%. Then it shows a message “We’re having trouble playing this title right now. Please try again later or select a different title (aip-701)”. Obviously, trying later or another title brings back the same error.

I’ve tried already removing and adding back the Netflix channel, soft device resets, and a full factory reset. Too time-consuming and pathetic. I’m sticking to the other devices I have to watch Netflix, while using Roku for whatever works. I’m unsure of who to blame for this issue. A quick Internet search indicates that each company blames the other. This is definitely making the case for sticking to a single company delivering both the device and the content. Not exactly the best scenario for customers…

Posted by MyNick in 08:21:32 | Permalink | Comments Off

Saturday, December 28, 2013

Nokia 1520 vs Wireless Charging in the USA

I was quite happy with my Nokia 920. However, given the special promo of the Microsoft Store, I decided to get the Nokia 1520 for one of my AT&T lines. Wrong move.

In the USA, AT&T decided to prolong the war of the wireless charging technologies. While my Nokia Lumia 920 from AT&T used the Qi standard, the US version of the Nokia Lumia 1520 depends on the covers used by the PMA standard (more on this here).

During the buying process, I asked twice if the 1520 could use my previous 920 chargers. I was twice told that the chargers would work fine. Luckily, I could get to the same person later, and was given the option of returning the device, or getting a free PMA cover. Since the 1520 is not that large, I decided for the cover (irony aside, I did like the phone!). Problem is: the Microsoft Store didn’t have the charging mat to sell at that time. That is what I call planning…

Posted by MyNick in 19:53:00 | Permalink | Comments Off

Friday, December 27, 2013

Error messages: the 2013 list

Another year, another wave of absurd error messages. This year, I’m introducing screenshots. Because it is becoming hard to believe some of these messages really happened. Also a first: a contribution from a friend. As with my collection of pictures of vanity plates for cars, I started to get friends sharing their contributions, showing absurd moments using the software developed by the best logical minds on the planet. Or so developers would like to believe…

5) Skype Disk I/O error. This was already bad enough. By not including a link to a contact page in the sentence about contacting Skype customer support, it is likely customers need to find their way through the help (that has room for improvement) or do a web search…

4) Bing search not available. Since we got into the topic of a web search, the first ever contribution from a friend, who was using a Mac to search for details of a movie for a child. Great that his default search engine was Bing. Not that great that the result is a pathetic error message full of GUIDs presented to end-users!

3) Windows Update errors. It is not only that this happens. It is also the fact that it happens frequently, with different error codes. Worse that the error codes are not unique for different problems. The whim of a developer decides if a new error code will be created for a new scenario, or if a previous error code will just be reused from a “similar enough” situation. The result is that KB articles trying to help someone resolve each error code have 10 paths for one to follow before having any hope of resolving the situation. Which is frequently resolved just by changing the error code!

2) Microsoft Store Placeholder Error File. As many other people, I received a lot of e-mail from the Microsoft Store warning me of the holiday promotions. As many other people, I’ve tried to access the site to purchase an item through one of such promotions. As many other people, I got to several “high access volume” error messages. What I got that was unique was that somehow I once got to a “Placeholder Error File”. I was even able to report this internally and, to my surprise through a lot of serendipity, this report got to the right destination and the problem was resolved. It shouldn’t ever have happened in the first place. It is the basics of shipping or releasing software: seek for TODOs and placeholders!

1) Your computer is low on memory. It is bad enough when you have unclear, unhelpful, pathetic error messages. It is worse when those disturb your work frequently. The worst scenario is when the message is being shown in the wrong situation. Somehow, one of my machines with a brand new install of Windows 8.1 started to frequently complain of low memory despite having more than 6GB of free memory available. The only possible upside: it got the dubious honor of being the worst error message I’ve seen in 2013!

Posted by MyNick in 16:09:53 | Permalink | Comments Off

Monday, December 16, 2013

The Hidden Microsoft Surface

Last year, Microsoft produced a great product: the Microsoft Surface. It was widely available. There were no news of manufacturing defects or any other problems that usually plague a device launch. However, it had the wrong price at launch. Besides a U$900M write-off, the result was almost a year missed on application development for the Windows RT environment. Developers don’t want to invest time and effort on a new environment that is born already confusing everyone with a wrong name.

This year, Microsoft produced another great product: the Microsoft Surface 2. The price point at launch was very competitive for a faster device, with higher resolution. This time, the product is mostly unavailable during the critical holiday season. Several people have already told me they would buy a Surface 2 if available. However, given its unavailability, they will have to buy an iPad or, supreme misery, a Kindle HDX. The painful first world problems…

Considering only such two variables, we have the possibilities of:

1) Wrong price; wrong production/distribution

2) Wrong price; right production/distribution

3) Right price; wrong production/distribution

4) Right price; right product/distribution

Options 2 and 3 are covered. Should Microsoft cover option 1 next, or add another variable to the model, like manufacturing defects?

Posted by MyNick in 17:52:36 | Permalink | Comments Off