Wednesday, October 31, 2012

BUILD 2012: Day One Keynote


Today was BUILD’s first official day, and there was a lot going on! I have a lot to cover, from the keynote to a long day full of sessions. I also had the chance to have a 1-on-1 clinic for Windows 8 apps with Microsoft’s UX guys, chat with a lot of different partner companies including Xamarin and Unity, and finally picking up my brand new Surface tablet and a Nokia Lumia 920 device. So, here it goes!


The keynote was actually pretty good, except from the long wait on the queue to get in. Seriously, queues and long waits all the time (more on this later on). However, the wait was worth it. Jordan Rudess, Dream Theater’s keyboard player was rocking the stage while people got it. It turns out that Rudess is an enthusiastic for digital music apps and modulators and is really into Windows 8. He co-created two Windows multi-touch apps called MorphWiz and Tachyion. Hopefully they will be available in the market. I must say that both apps where amazing, and they were showcased on the new all-in-one Lenovo A720s and also on a Surface tablet.


After Rudess, it was Steve Ballmer’s turn. Although I don’t really like Ballmer’s showman skills, I must say he did a good job demonstrating the different form factors, the key Windows 8 features and the overall message. Starting with a quick run down on the stats, Microsoft claims that in only three days they had 4 million Windows 8 upgrades without counting partners and OEMs. The company says that there are around 670 million computers running Windows 7, which are potential Windows 8 upgrades in the short term, and they are also foreseeing that in the next year the market will see 400 million new Windows 8 devices introduced. Those are really compelling numbers for any developer able to see the huge monetization opportunity.


Among the keynote breaking announcements were the free music streaming service that will be available in all Windows 8 devices through Xbox Music. Ballmer showcased a range of hardware from big screens, including the recent purchase of a company called Perceptive Pixel which does big interactive screens, to small screens and the hero phone. Among the most compelling was the new Lenovo ThinkPad II, which is a full Intel tablet capable of running all Windows x86 and Windows RT software, even Visual Studio and the full office suite.

Next, Ballmer called Steven Guggenheimer, Corporate Vice President for Developer and Platform Evangelism, to talk and showcase the importance of the application experience in Windows 8. The main topics were the importance of multi-task experiences where users could play, work and share seamlessly. He also pointed how Windows 8 modern applications could be introduced as companions to hardcore desktop applications. For example, he demoed a Windows 8 sketch app on a tablet that worked seamlessly with a 3D desktop application. The most compelling part was when he was playing a game while calling an intern using Skype on snap mode and having the rear tablet camera showing the audience on screen. True multi-tasking, play and work at the same time.


Ballmer got back on stage to make the announcement where were all hoping to hear. A Surface for every BUILD attendee, along with a 100GB SkyDrive storage card. The crowd went mental at this point, and I’m sure everyone was satisfied.


Then it was the turn of Kevin Gallo, Director of Program Manager for Windows Phone. Gallo went through the Windows Phone story and announced the public availability of the Windows Phone 8 SDK. He emphasized that 75% of gross apps on mobile platforms are games, and how native support and Direct3D will make Windows Phone 8 a much more compelling mobile gaming platform. Monetization was a big topic and In App purchase was announced.


Unity support for Windows 8 and Windows Phone 8 was also announced, which is great news for all Indy developers. Finally, Richard Kerris from Nokia came on stage to announce that along the Surface and the SkyDrive extended storage, every developer would also get a Nokia Lumia 920!

Nothing more to wish, a Surface tablet and a Lumia 920, killer hardware for the developers who now will hold the last word on how Windows 8 and Windows Phone 8 actually perform and engage consumers into the new generation platform.

Windows Phone SDK Available



As you might already know if you have been following the news around BUILD 2012, Microsoft has finally released the Windows Phone 8 SDK. The new platform presents a big opportunity for developers, and the mobile platform is converging with Windows 8, making it even more attractive and promising in the long run.


So don’t waste time, go ahead, download it and start building your Windows Phone 8 apps!

Get it here!

Tuesday, October 30, 2012

Troubleshooting the Samsung Slate 7


The Samsung Slate 7 tablet has been one of the most popular devices for Windows 8 development since Microsoft gave BUILD 2011 attendees a Windows 8 version of the device. After that, people started to install Windows 8 previews on normal Windows 7 Samsung Slate 7 devices, mostly for development purposes.

Several updates have been made both by Microsoft and Samsung to ensure that all drivers and features work on the Windows 7 version of the slate. However, there have been a few issues popping up from time to time.

The latest I got was that when docking the tablet on the dock, the audio stopped working. Apparently this can also happen with the HDMI output. Fortunately, this is quite easy to fix. The issue is that when the tablet is docked, audio is routed to the dock audio port, which will work only if you have speakers attached. To solve the issue, you need to make sure the audio is not routed to the dock.

To change this just bring up the mixer control and select the audio destination you want. There are several ways to get to the mixer control in Windows. One of the easiest is to right-click on the speaker icon in the system tray and choose "Open Volume Mixer." The volume mixer window has a dropdown box under the device speaker icon that offers the choices you have for where the audio is directed.

You can find a long list of discussions and solutions for different issues with the device here. Make sure you have the latest Windows 8 updates downloaded and installed (do a quick restart of the tablet just to make sure) and also check out the Samsung Windows 8 preview drivers update if you are still experiencing issues.

Virtualization in Retail: an Azure Discussion

Today at BUILD I had the chance to chat with a couple of Microsoft folks from the Windows Azure and Windows Server team. Azure has come a long way since its first public appearance. It is now a business reality and a potential solution not only for big companies, but also for start ups and individuals. I hope to be able to learn more about the new features, enhancements and offerings.


During our discussion, the guys mentioned the base three offerings:

  1. Web Sites: basically the evolution of web hosting, providing scalable and elastic web site hosting and management.
  2. Cloud Services:  essentially a virtualized solution that provides not only the virtual machines, but an OS decoupled solution following industry best practices. This allows you to deploy and update packages instead of whole VM’s while maintaining up time.
  3. Virtual Machines: full range of virtual machines available for the user to control and manage. Updates require the full VM and users need to manage and control up time while patching and updating.

The guys were quite honest when I asked them how Azure compares to Amazon Web Services and similar offerings. They said that regarding Virtualization, it was mostly a case of preference and existing knowledge and infrastructure. However, they claimed that the Cloud Services offering was a step beyond, and that the Web Hosting offering had some unique advantages, like free initial web sites and free small databases. Additionally they claim that the mobile offering is unique. Prices are still based on an hour rate, but there is a price calculation tool to have a better sense on expected costs.

The Retail Case

While talking about the different offerings and the mechanics behind it, I brought in the scenario of virtualizing client machines in retail spaces. This sounds weird even for me, but is something a few colleagues at work had proposed for big retail events, where we have to setup many machines.

See, when you have to setup a couple dozen Windows machines, which will host a Kiosk retail app, open source guys easily jump in proposing that you should use Virtual Machines.Normally, we will just create a full image from a master PC, and then copy that image across all the other machines. The problem is that sometimes you get hardware variations (different CPU, RAM or hardware peripherals) among the machines, and the image fails.

Although my first reaction when my colleagues proposed the use of VMs was to dismiss the idea (I can’t make much sense of creating a Windows VM to run on a Windows machine for a retail machine supposed to run a Windows app in Kiosk mode with full resource access need). However, it is always good to hear different opinions and learn from the discussion. Sometimes you realize that it was you who jumped to a hasty incorrect conclusion.

The Azure folks comment was that generally speaking, running a VM will have less performance than a native machine, and that external hardware access and overall resources availability might be affected. This can be corrected by optimizing the VM and the hardware for the specific scenario, which is what they actually do on the cloud. They have full control over the hardware details and homogeneity of the hardware, and they optimize the core server OS and the VMs for maximum performance. However, in the case of  my scenario, hardware might be different, and OS and VM optimization might be actually longer and more complex than just setup the native environment (including cleaning up each machine, tuning it for Kiosk mode and installing the application files and required dependencies). After all, you can easily create batch files to run some setup processes and use third party tools for the clean up.

This conversation was quite interesting for me, not only because I learned more about Azure offerings from the team itself, but because I could discuss my retail scenario and get some validation from guys that have actual real world experience with virtualization.

The Conclusion

The conclusion is that even if you can virtualize anything, it doesn’t mean you should do it !


The Linux Side note (since I remembered after writing all of the above) 

Actually, I know that we run into issues changing simple settings of a Linux VM, running on a Linux machine that we where using for one of the servers. It was frustrating to see how the VM just stopped working after changing some basic networking settings, and the actual conclusion was that maybe using a Linux VM was not as good as just running the server side code natively on a Linux machine. See, even virtualizing Linux on Linux might give you problems if the hardware, OS and app software is not optimized for the environment !

BUILD 2012: Registration Day


This is the first of a five-day post to share what I have seen, learned, liked and questioned during the Microsoft’s BUILD 2012 conference.

Today was the registration and welcoming day at Redmond’s Microsoft Campus. Right of the bat, I can say that the shuttle organization was great. If you were lucky enough to stay at one of the recommended hotels, then you have exclusive buses or shuttles picking you right at the door of the hotel to take you to the campus, with a service running around every 15 minutes. However, there are general shuttles running all over town every 20 minutes or so.

I definitely wasn’t one of the first to arrive to campus, but even arriving less than two hours after registration opened the queue was quite long. I’d say it took me around an hour to get through and pick my batch and freebies, and when I got out, the queue was exactly the same size. Is impressive to be around so many geeks.


The freebies included a nice T-shirt, an especial MSDN issue, a guide to the conference and sessions schedule, a discount card for Microsoft retail stores, a voucher to use at the Microsoft campus store (normally accessible to Microsoft employees only and with discount prices), and a free offer to take certification exams while at the conference. Additionally I got my first batch sticker and a wrist band to attend the party. Not bad for a start.


Afterwards I headed to the campus showroom, where people is supposed to get impressed and excited about Microsoft hardware and story while going through a bit of memorabilia. I had the opportunity to visit the showroom in early 2010 while on a Silverlight boot camp, but they did quite a few additions for this time. First, you go through some memorabilia items and photos of the original BASIC team.

Afterwards you get to Microsoft’s current hero device, the Surface tablet. They has an arrange of four Surface tablets showcasing the Touch and Type covers and the Windows RT OS.


I must say that I was impressed by the feeling and responsiveness of the Touch Cover. Even if you don’t have much travel time and feedback from the keys, it feels quite comfortable. I was amazed by the feel and accuracy of the track pad, which although is small, it performs quite well. The Touch Cover feels great when folded, and the keys input is deactivated instantly when folded backwards. The Type Cover was really thin for being more like a classic physical keyboard. The travel time and feedback is noticeable and is quite accurate. Probably this would be a good addition to the bundle of you plan to write a lot (meaning, I’ll definitely get one).


The tablet itself is great. Although thicker than other tablets and a bit heavier, it actually feels great. Well balanced and easy to grab and hold, even with one hand. The materials feel good to the touch, the screen is fingerprint resistant and the kick stand works as promised. I must say I really liked the tablet, and I could say is probably the best option out there.


Apart from the Surface area, you get a separate stand with an arrange of Windows 8 laptops and ultra-books. Nothing impressive here if you are looking for the best of the best, or at least sleek hardware that can compete with Apple’s. I already mentioned in my IFA 2012 articles, that the Asus Zenbook is by far the best and nicest ultra-book in the market, and is what you should get if you can afford it. Moving forward, you get a setup installation with a PixelSense Table (formerly the original Surface). The table has an amazing potential to attract people and clients, and I still believe is the best multi-touch, multi-user device for retail installations. However, developing Surface apps is expensive and the device is still far too expensive, so third parties always find difficult to make a successful business case out of it. Still, the table had the best apps created by Microsoft and partners, and I always enjoy seeing people spending so much time playing with it.

After this, there was a stand with a few Windows Phone 7 devices (in a poor display to be honest) and then another stand with Windows 8 tablets, including the Asus Vivo Tab RT and the Sony VAIO Duo. I must say that the Asus Vivo tablet is quite compelling. It is light and comfortable, a good match to the Surface tablet.


Channel9 had a section of the room reserved, but nothing was going on at the time. Hopefully, they will have some good shows going on during the conference.

I must say that the showroom wasn’t very impressive. Although they have cutting-edge hardware and a good range of installations, including big multi-touch screens, Xbox stations including some with Kinect sensors attached, nice lightning and all the new range of Windows 8 devices; the overall experience lacks an emotional impact. This is something that I can’t quite explain. I’m not much of an Apple fan, but I get the emotional reaction whenever I pop into an Apple store. This wasn’t like this, which is strange. I’d like Microsoft to become better at retail displays and emotional engagement. Hopefully this is the beginning of a better path for them, which indirectly will benefit all companies working on retail installations (keep in mind that apart from Apple, nobody else achieves the same, even when using Apple hardware).

After the showroom I did a quick check at the Microsoft store and noted a few things I’d like to get before I leave. You have one voucher only, and you can only use it once, so you need to get everything you need (and under the amount limit) in one go.


Finally I got out of the building and headed to the welcoming reception for a couple of beers. I had the chance to chat and meet a few folk, discuss the expectations and the latest announcements. I also had the change to talk with a couple of Microsoft gurus, including the guys from Windows Azure and Windows Server (more of that to come in another post).

Now is time for me to organize my schedule tomorrow and have some sleep for an early start. Stay tuned, and see you tomorrow (By the way, all this writing, editing and posting have been done from a Windows 8 machine).

Monday, October 29, 2012

Meet Windows Phone 8


It is an exciting week, and it is part of an exciting holiday’s season for the technology industry, and in particular for Windows users. Windows Phone 8 has been officially announced by Microsoft during a press conference held a few hours ago in San Francisco.

While I organize my BUILD schedule at the hotel in Seattle, I wanted to share the announcements for the new generation of Windows Phone 8 applications and devices.

Current Stats


Microsoft claims that the Windows Phone store now has around 120,000 applications and keeps growing by the day. It is going to support 50 different languages and 191 countries. Clearly localization and emerging markets are a big part of the Windows Phone market. Devices will hit stores in Europe this week, and the US in November.

Windows Phone 8 Concepts

WP8 is centered about the people and the users with a  clear focus on personalization. Connectivity is one of the main topics, making a WP8 device the best companion for Windows. As they put it (kind of based in my own interpretation), Jobs made a phone for himself, which people actually liked, although every iPhone looks exactly the same. Google then made the Android platform to power devices made for…well, Google ! Microsoft learned the lessons, and is aligning all their services and hardware so the phone is actually made for you ! (I know, sounds like advertisement, but I believe that’s what there are trying to convey, whether you agree or not) !

Windows Phone 8 Features


Shared Windows 8 Kernel: although Windows Phone 8 is NOT a Windows 8 device per se, it shares a lot of core code, technologies and drives, making the integration of the phone and the PC much more easy and seamless for the user. Among the core Windows 8 features supported by the phone are multi-core processors, multiple screen resolutions (480x800, 1280x768 and 1280x720) and microSD storage. Also, don’t forget the anticipated NFC support, which will make sharing content between devices and apps much more sleeker and seamless for users.


New Live Tiles: you have now the ability to modify the size your home screen tiles  into three different sizes. Notifications and animations will be automatically updated for their final size.


New Live Apps and Wallet: apps integration with core phone services like wallet, hubs and the lock screen have been enhanced. Apps can now feed the lock screen with a variety of information, from updates and notifications, to background pictures coming from social networks.

Social Integration: you can now share pictures to Twitter and Facebook in an easier way. The Facebook application has been revamped to offer photo streams and other optimized features.

Skype: the new version will be available for Windows Phone 8, allowing users to easily use Skype for calling and messaging contacts and use video calls. The new app shares much of the functionality and look & feel with the Windows 8 version.


Unity3D Support: Windows Phone 8 is now fully supported by Unity 3D, one of the best gaming 3D engines out there, and used heavily for iOS, Android, Desktop and Web game development. Native Code and Unity3D support will rapidly increase the amount and quality of games in the platform.

Apps: Windows Phone 8 now supports and offers popular iOS and Android applications and games like Pandora, Angry Birds Star Wars, Urban Spoon and Temple Run.

DataSense: a new tightly integrated feature that allows users to make the most out of their data allowance, by closely monitoring data usage, WiFi availability, close-limit alerts, live tile notification and application data-usage tracking. Microsoft expects users to achieve even 45% more web browsing time by using DataSense.


Kid’s Corner: a new feature targeting parents, which allows the owner to set a “safe” mode with restricted apps and content. Parents will be able to set this “alternative” mode containing only kids content (selected apps and games) which is entered by doing an horizontal swipe from the lock screen (instead of the normal vertical swipe, which should be protected by the user’s pin). The alternative mode allows customization of tiles and colors, just as the normal mode. The feature can be turned on/off if not useful for the user.

Interoperability: Microsoft is making sure that is easy for users to switch to Windows Phone. They are making available a set of applications to import content from other platforms. Microsoft claims that the whole iTunes collection, including user’s playlists can be imported to the Windows Phone 8 platform is less than 5 minutes.


People Hub: enhancements have been made to include a new feature called “Rooms” which allows to set a group or list of people into a private channel. The people in the room is able to share messages, updates, photos and calendar appointments only with the room members in a private way. The feature is supposed to partially work with users of other platforms, although iPhone was the only one explicitly shown.


SkyDrive: improvements over the cloud connectivity system to make it easier and more seamless to share content with all the user’s devices through the cloud. The full suite of Office applications will be completely in sync over the air, without any need to plug the devices to the PC. Photos, music and documents can be easily shared and maintained across all Windows devices. OneNote offers full voice support making it easier than even to take notes and sync them over the cloud.


Camera: clearly the hero devices for Windows Phone 8 have gone through major improvements on the camera hardware. However, Microsoft has made great progress on the software. The Camera core application now exposes lenses, which developers and companies can create to apply effects and all sort of applications that integrate with the core camera app. This is a clever model since it allows devs to deliver cool camera apps without having to re-create the whole camera controller.


Xbox Music: for Windows 8 and Windows Phone 8, the music services are now aligned and called Xbox music. All previous systems and external platform content can be imported into the new Xbox music. The cloud integration and interconnectivity has been enhanced so music can be streamed between devices over the air.


Internet Explorer 10: Windows Phone 8 devices come with IE10, so far doing quite well on supporting HTML5 and the cutting-edge web standards, providing a better and faster web browsing experience.


Maps: the maps functionality has been improved with Nokia’s map technologies to provide better information and offline usage.

Backup: a new feature that allows user to create phone content backups on the cloud, including photos, text messages, documents and settings.

Voice Support: improved across the whole WP8 platform and making it it easier for third party applications to support it.

Screenshots Enabled: Finally Microsoft enabled screenshot capture from the phone. You can just press Start and Power buttons and a screenshot will be taken and saved to the Screenshots album in Photos.

Hardware: There will be a whole new set of Windows Phone 8 devices and a lot of different variations. The hero devices are the Nokia Lumia 920, Samsung’s ATIV S and HTC’s Windows Phone 8X. Devices will begin availability this week in Europe and US will be following in November.

SDK: Microsoft said that the Windows Phone SDK will be publicly available tomorrow, so get it as soon as it comes out and start building your Windows Phone 8 apps.

Check the Windows Phone site for a full list of the Windows Phone 8 features here.
If you are new to Windows Phone, this is a good start.

That’s all for now, need to get to Microsoft campus to start the BUILD conference journey!

Images Credit: Screenshots have been downloaded from Microsoft’s sites.

Saturday, October 27, 2012

A Quick Catch-up

While I pack for attending BUILD next week, I though about doing a little catch up with Industry News, Blog Articles and tech goodness.

A couple of weeks ago I had a tough week launching a retail event in New York, one of the biggest and most challenging in my career actually ! After that, it was a hard week at work preparing global rollouts of the solution and making sure the app is rock solid and at industrial level (I hope I’ll be able to publish more on the topic soon).

Anyways, here’s a list of catch up that is worth if you have a little time now and want a summary of the latest tech industry sayings.

The C# Programming Guide at MSDN
Casting is a Polymorphism Fail, by Erik Dietrich
Great discussion about Casting in StackOverflow
A Practical Introduction to Base Encoding, by Jonathan Cutrell
Article about TDD on Plural Sight Blog
Interesting PC World article by Mark Sullivan about Touchscreen Technologies
Anatomy of a Solid-State Drive, by Michael Cornwell
Arstechnica review of the current hero 7-inch tablets on the market
The Truth about NuGet
What is Apple’s Fusion Drive?
A few words for Hackathons
Fun Kinect + SQL Experiment
Online Coding Tools Top20 by
Good article about Senior Engineers on Kitchen Soap’s blog
Kate Matsudaira Blog about Leadership and similar topics in Tech
Neural Network Back-Propagation for Programmers, by James McCaffrey (One of my University graduation projects was a Neural Network!)
Automated testing and research software
.NET Scaling article by Demis Bellot
About ClearType and how fonts work on screens
About SSH and Passwordless logins for Developers
Test of Time: Design Patterns Now
Demystifying Garbage Collectors at Zor’s Blog
A Bandwidth Breakthrough

A bit about TypeScript

A Real TypeScript adoption story

Windows 8

“Windows 8 runs existing and new applications while Windows RT only runs new applications.”

WinRT is the platform for “modern” windows applications, and Surface RT runs Windows RT version, which is based on WinRT. In other words, WinRT the operating system, can only run WinRT applications, but WinRT applications can also run on Windows 8.

Windows 8 Blog’s recent Posts
Features in Office 2013
Arstechnica in-depth look at WinRT
Arstechnica hands-on Windows 8 OS
Getting websites ready for IE10 and Windows Phone 8
Microtropolis Art Installation in NYC
Casey Muratori detailed view about Gaming in the context of Windows 8
What you need to know when designing a Windows 8 App


Surface Website
Surface Facebook
Surface Twitter
Microsoft News
In-Depth Review of the Surface RT by AdandTech
Using the Surface RT, by TechCrunch 
Look Inside History by The Verge

Windows Phone

Stay Tuned for October 29th big announcements!
Memory Profiling
Latest Windows Phone Hero devices

I’ll be at Microsoft’s BUILD 2012 next week. Hopefully getting first hand information, news, tips, and hands-on experiences. Stay tuned!