It’s difficult to create a site that looks great across browsers. The weaker web developers simply give up – supporting only a piece of the market, squandering opportunity for themselves or their customers.
But, now the ante is raised with responsive web design. Leveraging CSS media queries, developers rearrange content to accommodate the width (et al) of different screen sizes. And it’s not simply a normal site with a mobile site, too. Users are coming at you with a myriad screen sizes.
When I started writing Windows 8 apps, one of my first productions was wrapping file operations in a helper class called StorageHelper. This class has successfully been leveraged by thousands of Windows 8 developers. I certainly use it every time I interact with a File or a Setting.
But the StorageHelper isn’t perfect in every scenario. For most mainstream applications it is perfect. But for some edge cases where file operations occur in parallel, an asynchronous read or write may not complete before another operation is attempted on the same file. This causes parallel locking. Hans Windhoff, a community developer in Colorado, took my StorageHelper and updated it with the solution – solving locks with some smarts and voodoo.
At the CES Keynote, some amazing things happened. For not being part of CES, Microsoft was all over it!
“It should be clear that there is no rule that says displays or computers need to be flat, opaque or rigid.“ “Microsoft vision is that sensors like Kinect combined with flexible, transparent and projected displays will bring us to a point where any object can be a surface and can be a computer.“
“It should be clear that there is no rule that says displays or computers need to be flat, opaque or rigid.“
“Microsoft vision is that sensors like Kinect combined with flexible, transparent and projected displays will bring us to a point where any object can be a surface and can be a computer.“
Across the Microsoft platform we have Windows Client, Windows Phone, Windows Server, Microsoft Xbox, and Windows Embedded. Each exists to address a specific type of device and user scenario. But what’s great is that each participates in the Windows Design Language.
The Windows Design Language is a set of principles that help designers and developers layout excellent apps and excellent user experiences. It drives consistency across apps and across the Microsoft platform. And, it is beautiful.
Note: The Windows Style varies from device type to device type. The Windows 8 style guide, for example, is only related to the Windows Phone style guide. It is not identical because the interface is distinct. Sometimes consistency is mistaken for uniformity. The flexibility within the Windows Style not only extends across device-types, but also to individual apps, letting developers innovate distinctive yet consistent apps.
Consider this image. It depicts four separate applications. Their UI is quite distinct. However, each of them has acute similarities that are prescribed by the Windows Design Language. In this case, specific to Windows 8, it is illustrating compliance to the Windows 8 Silhouette.
Native applications on mobile devices deliver a great experience to users. Only native applications can deliver excellent fidelity and performance, and support a disconnected state. But if you don’t know the devices mobile technology development can be difficult.
Mobile web sites deliver a poor experience to users. Mobile web sites are simply web pages; they cannot access the device itself and necessitate an always-connected device. But because it’s just HTML, developers have an easier time supporting multiple devices.
Mixing native with web is PhoneGap – it executes local HTML and JavaScript in an embedded browser wrapper app. PhoneGap apps are not as awesome as native apps, but they are surely the next best thing – and are a viable option. These types of apps don’t require developers to know much about a device – and can be deployed across the various mobile platforms with little investment. They also have access to the device itself (including sensors, battery and more); they support offline scenarios, too.
There are four supported orientations in Windows 8. There is Full View, Snap View, Fill View and Portrait View. Each is important in the overall strategy of Windows 8. In order to get your app into the Windows Store, you must support the Full, Snap and Fill view. And to support them, XAML uses ViewStates that easily execute custom animations and show your tailored content.
The different views in Windows are something developers have to deal with but are fundamentally one of Windows 8’s core differentiators in the marketplace. Since a Windows 8 is only active when it is visible it means that only one app can run at a time – similar to the IPad. But because of SnapView, Windows 8 allows users to view more than one app at a time, even if the second app is in a narrow format. As a result, the user can enjoy more than one app at a time, increasing the opportunity for productivity.
The image above shows the Full, Snap, and Fill View on a slate device, respectively. It is an important note to say that Snap is not a touch-only mechanism. I run on a desktop that has no touch input. I use snap. It allows me to have more than one Windows 8 app up at one time. It also allows me to have a desktop app and a Windows 8 app running at the same time. It’s nice.
Abstract: Jerry Nixon welcomes Eric Battalio, Ayman Shoukry and Raman Sharma from the Visual C++ team as they discuss how you can develop Windows 8 apps using C++. Tune in as they provide best practices and reasons why you would want to use this language.
Custom XAML controls are a breeze. But, honestly, if you aren’t familiar with building them, there’s a learning curve. Let’s break this barrier and build a custom user control together.
I’ll build a control that works like a standard oven dial. The application uses of such a control are many. The implementation is a little sticky, but I can do it in about 10 minutes. That should raise your confidence a little. Plus, it will demonstrate the flexibility and power of the XAML framework for building complex controls with simple implementation.
This is a combined post of part 1, 2, and three especially united for my readers. in this episode I have a lot of fun with Buck Woody who has forgotten more about Data Modeling that most of us. Listen in and take a course with the professor.
Abstract: Jerry Nixon welcomes Sr. Technology Specialist from the Windows Azure team, Buck Woody to the show as they kick-off their 3 part series on how data applies to developers and how this ties in with Windows Azure’s service offerings. Tune in for part 1 of this 3 part series as they discuss data modeling and how this should be used first in the design process.
Looking for a great set of C++ resources out there? There is an increasing focus on native programming on our client stack, especially with gaming and high fidelity graphics being super important. If you look at the number of sessions dedicated to DirectX and C++ in the recently concluded //build, it should be obvious. Clearly not all of us will focus in this area, but if you are interested in building an expertise in the area, I wanted to collect some of the training resources available for you to use.