Windows 8: Reading the Directions

Windows 8:What is to be Learned from Build Conference
The first lesson is to see how far along Windows 8 is and its Metro interface – and who better to reveal this then 100 summer interns developing Metro style apps – see here for the details . The results are impressive. But another way to find about Windows 8 and all its goodies is to go to the Windows 8 Build Conference website and look at what Microsoft is saying about its latest version of Windows. Download the Windows 8 Preview Developrs edition [4.8GB but the best of the downloads for testing the system as it stands now].

The videos for almost all of the Windows 8 Builsd sessions, more nearly 200,  are available for online viewing or personal download. This is the approach ye Editor took and one can glean a lot of insights from these sessions. In fact this forms the core of our Details on Windows 8 post here. First we have listed the two best presentations  at the top of the table – Jensen Harris, Windows 8 Design Architect, and his talk on design  goals in the Metro UI which is the corner stone of Windows 8, Then Steve Sinofsky, President of Windows division, and his summary of the design goals of Windows 8 and how it fits with Windows Azure, Visual Studio 2011 and the vision of one OS to finally span all of the Windows supported devices and Wintel plus

Finally I have highlighted some of the most informative Build sessions in green as well as adding comments on the 5  categories the video sessions/tutorials have been grouped into: Coding, Cloud, HTML/Web, SystemDev, and UI

Topic Description of Session
Defining 8 traits of great Metro apps
Overview Keynote 1 – Steven Sinofsky
Coding in Windows 8 From these 16 coding sessions it can be seen that C++ has come back as a main language for software development at Microsoft. True there is Visual Basic, C# and HTML5; but the emphasis, as in the case of Apple’s Objective C, is an old line, close-to-the-metal C++. Ease  and speed of development be damned for “at-the-metal” features and  speed of operation. So attention will be on the C++ system development aids available in .NET Framework 4.5 and Visual Studio 2011.  

Also, like Apple , Microsoft is going heavily proprietary in development tools – a proprietary C++ with XAML, Silverlight, and a .NET 4.5 Framework which leaves its Linux Mono versions out of the latest features – so .NET programs will always run best in Windows. Finally, like Apple , Redmond  is offering up HTML5 for cross platform development – faster development but slower, less standardized, and covered in proprietary extensions [Metro for now, XAML,  ASP,  HTML5 half finished, or proprietary etc].

Coding Tips and tricks for developing Metro style apps using C++
Coding Writing modern C++ code: how C++ has evolved over the years
Coding Taming GPU compute with C++ AMP
Coding Async made simple in Windows 8, with C# and Visual Basic
Coding Future directions for C# and Visual Basic
Coding Using the Windows Runtime from C# and Visual Basic
Coding Using the Windows Runtime from C++
Coding Under the covers with C++ for Metro style apps
Coding Bringing existing C++ code into Metro style apps
Coding F# 3.0: data, services, Web, cloud, at your fingertips
Coding Improving software quality using Visual Studio 11 C++ Code Analysis
Coding A lap around Visual Studio 11 Express for Metro style apps using C++
Coding Bringing existing C++ code into Metro style apps
Coding The zen of async: Best practices for best performance
Coding Lessons learned designing the Windows Runtime
Coding Bringing existing managed code into Metro style apps
Cloud for
Windows 8
Microsoft Cloud computing in the form of Windows Azure  gets  a relaunch with Windows 8. Already supporting the Windows Azure toolkit  for Devices [which includes Windows Phone 7, iOS, and Android) now has a an Azure Toolkit for Windows  which includes a Windows Azure SDK 1.5 plus Visual Studio 11enablement. This allows developers to make connections  to sign on identities, advanced inter-device notifications among suuported mobile OS devices, while utilizing scalable cloud computing and storage as required. The Visual Studio 2011 extensions allow developing Metro style apps using Azure SQL and other Cloud and desktop resources. Development can be done in Windows 8 development languages: C/C++, C#, VB and HTML5+JavaScript. 

Windows 8 with Azure support provides a broad range of in the Cloud services in cluding SkyDrive storage, Azure SQL, and sophisticated Cloud sharing capabilities tied into a familiar Visual Studio context. This is several steps beyond the developer connections and tools available from Apple  for iOS or  Google for Android. So Microsoft is offering developers good but not necessarily best Cloud features/deals with very oood tools to incorporate them into their offerings. This is a familiar Microsoft tactic.

Cloud What’s new in Windows Azure
Cloud Getting started with Windows Azure
Cloud Building apps with Windows Workflow Foundation and Windows Azure
Cloud Introduction to Windows Azure: the cloud operating system
Cloud Inside Windows Azure: the cloud operating system
Cloud Improving code quality with Windows error reporting
Cloud The complete developer’s guide to the SkyDrive API
Cloud Building scalable web apps with Windows Azure
Cloud Building and running HPC apps in Windows Azure
Cloud Building social games for Windows 8 with Windows Azure
Cloud Monitoring and troubleshooting Windows Azure apps
Cloud Building Windows 8 and Windows Azure apps
Cloud Using cloud storage from Windows apps
Cloud Network acceleration and other NIC technologies for the data center
Cloud Enabling the hybrid cloud using remote access appliances
Cloud Using Windows Server 8 for building private and public IaaS clouds
Cloud Inside Windows Azure storage: what’s new and under the hood deep dive
Cloud Building loosely-coupled apps with Windows Azure Service Bus Topics and Queues
Cloud Platform storage evolved
Cloud Building secure, scalable multi-tenant clouds using Hyper-V Virtualization
Cloud Enabling multi-tenancy and converged fabric for the cloud using QoS
Cloud Delivering notifications with the Windows Push Service and Windows Azure
Cloud Optimal cloud performance with BranchCache
Cloud Building device & cloud apps
Cloud Identity and access management for Windows Azure apps
HTML/Web
Development
In contrast to Windows 8’s Cloud connection where proprietary is expected/tolerated, the Windows 8 direction on HTML5 and JavaScript is more controversial. Yes, Windows has made HTML5 and JavaScript a first class player in the Metro interface while allowing IE to use either Metro or classic Windows desktop interface. Also, IE 10  has added more CSS3 and HTML5 compliance But thats the end of the good news. 

Our tests show that IE10 is less than 50% compliant with HTML5 standards using the CanIuse.com and HTML5test.com benchmarks. In addition, Microsoft is proposing a series of Metro control designs  for standardization by W3C while taking a pass on WebGL and Web SQL among others. Hunnh? Only support HTML5 to less than 50% and then ask for clearly take-it or leave it Metro standards to be approved. If Redmond had done E4x in JavaScript or DOM rationalization/deprecation of its HTML and DOM extensions – maybe then it would have a more compelling case. for its new standards.

With HTML5+JavaScript being one of the few publicly supported “cross-platform” standards, one can see an ANSI SQL debacle  breaking out in the Web arena.-  a dummy set of  ANSI SQL standard has allowed islands/silos  of information to plague developers large and small for the past 30 years in IT development. This standards abuse  epidemic is looking like it is breaking out again – 10-12 years after the debilitating Browser Wars. So  Apple with its go slow on Mac HTML5;  Apple +  Google with Webkit only touchscreen operations  and other HTML5 standards hold ups; Google proposing Dart as a JavaScript replacement and still remiss on E4X implementation; and Google and Oracle breaking out in Java mobile patent disputes – the world of Web Standards is not pretty at all – and Windows 8 directions do not help.

HTML/Web Windows Phone: building optimized sites using the web browser control in IE9
HTML/Web WebMatrix: uber geek in designer clothes
HTML/Web Building real-time web apps with HTML5 WebSockets
HTML/Web Building Metro style apps using JavaScript
HTML/Web Metro style apps using HTML5 from start to finish
HTML/Web Manual testing of Windows Metro style apps built using HTML
HTML/Web 50 tricks to make your Metro style apps and sites using HTML5 faster
HTML/Web Optimize your website using ASP.NET and IIS8
HTML/Web Bring apps to life with Metro style animations in HTML5
HTML/Web Building offline access in Metro style apps and websites using HTML5
HTML/Web Building great networked media devices for Play To apps using HTML5
HTML/Web Building high performance Metro style apps using HTML5
HTML/Web Create reusable custom Metro style controls in JavaScript
HTML/Web Designing systems and developing drivers for NFC
HTML/Web Build data-driven collection and list apps using ListView in HTML5
HTML/Web Build polished collection and list apps in HTML5
HTML/Web Introduction to the Internet Explorer launch assessment
HTML/Web Building responsive apps and sites with HTML5 web workers
HTML/Web Anatomy of HTML5 sites and Metro style apps using HTML5
HTML/Web Programming SVG and canvas graphics in a Metro style app based on HTML5
HTML/Web Seamlessly interacting with web and local data
HTML/Web Reach your customers’ devices with one beautiful HTML5 user interface
HTML/Web Reaching more customers with accessible Metro style apps in HTML5
HTML/Web Building data-driven HTML5 apps with WCF RIA Services
HTML/Web Building real-time web apps with WebSockets using IIS, ASP.NET and WCF
HTML/Web ASP.NET 4.5 loves HTML5, CSS3 & JavaScript
HTML/Web Using the Windows Runtime from JavaScript
HTML/Web What’s new with HTML5, Javascript, and CSS3
HTML/Web Designing Metro style apps using CSS3
HTML/Web Stand out with styling in your HTML app
HTML/Web Make great Metro style apps that are touch-optimized using HTML5
HTML/Web Introducing the Windows libraries for JavaScript
HTML/Web Create rich, data-driven Web apps with ASP.NET 4.5 Web Forms
HTML/Web Building Web APIs in Windows Azure with WCF to reach any device
HTML/Web Progressively enable the mobile web with ASP.NET, HTML5, and jQuery Mobile
HTML/Web Building beautiful and interactive apps with HTML5 & CSS3
HTML/Web Code with confidence: dynamic web content in Metro style apps using HTML5
HTML/Web Making apps social and connected with HTTP services
HTML/Web Best practices for writing safe and secure Metro style apps using HTML5
HTML/Web A deep dive into Expression Blend for designing Metro style apps using HTML
HTML/Web Building Windows runtime sockets apps
System
Development
System Development presents a lot of internal conflicts for Microsoft with Windows 8. TheRegister picks up the potential for internecine here over .NET, SilverLight, new security edicts, etc. However from this viewers perspective the delivery of lots of new development tools like an energized Visual Studio 11, XAML expanded, and the Use of Expression Blend for live program UI styling in debug mode – these are big development wins. 

Also the Async keywords for threading and speed support, contracts, and identities has Microsoft squaring off with key issues. in systeme development. But notably Microsoft and Intel are taking different paths on GPU and multi-core utilization. Likewise it has banned plugins and Flash from Metro IE – what other surprises lurk for developers in the system context? A lot of 3rd party developers must be wondering. 

SystemDev Advanced IntelliTrace in production with Visual Studio 11
SystemDev Building great Windows 8 systems
SystemDev What’s new in .NET Framework 4.5
SystemDev What’s new in Visual Studio 11
SystemDev What’s new in Visual Studio 11 for Application Lifecycle Management
SystemDev Architectural discovery with Visual Studio 11
SystemDev OData Futures: creating the web of data
SystemDev New techniques to develop low-latency network apps
SystemDev Analyzing “big data” with LINQ to HPC
SystemDev Improving performance with the Windows Performance Toolkit
SystemDev Windows Runtime internals: understanding “Hello World”
SystemDev Lap around the Windows Runtime
SystemDev Building event-driven, long-running apps with Windows workflow
SystemDev Deep dive into the kernel of the .NET Framework
SystemDev A .NET developer’s view of Windows 8 app development
SystemDev Improving code quality with Windows error reporting
SystemDev Power your app with Live services
SystemDev Debugging connected Windows 8 apps
SystemDev Real time communication: keep your Metro style app connected whether it is running or suspended
SystemDev Media fundamentals of a communications app
SystemDev Delivering great device installation experiences
SystemDev Developer collaboration with Team Foundation Server 11
SystemDev Building continuously available systems with Hyper-V
SystemDev Designing systems for continuous availability and scalability
SystemDev Designing systems for continuous availability – multi-node with block storage
SystemDev Tips & tricks: how to use Visual Studio to the fullest
SystemDev Windows 8 kernel debugging: New protocols and certification requirements
SystemDev Windows Server 8
SystemDev SPA 3.0 – A simple server performance tuning advisor
SystemDev Windows Server performance improvements and optimizations
SystemDev A deep dive into Hyper-V networking
SystemDev Building hardware-based security with a Trusted Platform Module (TPM)
SystemDev Extending the Hyper-V switch
SystemDev Designing the building blocks for a Windows Server 8 cloud
SystemDev Understanding USB 3.0 in Windows 8
SystemDev Developing drivers in Visual Studio
SystemDev Running Windows from an external USB drive with Windows To Go
SystemDev Understanding Wi-Fi Direct in Windows 8
SystemDev Design for a multimillion thin client market with RemoteFX
SystemDev Share: your app powers the Windows 8 share experience
UI Design The great news is that Microsoft will not have to hear the old canard that they are strictly “copying Apple GUI ideas” and failing to innovate. Tiles, over icons,  a very clever pruning of touch screen gestures, and active use of animations, putting Expression Blend as a live “style debugger” are all seriously good innovations. 

However, this viewer has some distinct reservations on the Metro UI and some of its restrictions – see here for details. In addition how well the classic Windows interface  with all its chrome and controls works well in many contexts. Thus Visual Studio Express 2011 retains a classic desktop interface because it fits better than Metro. Will Redmond allow not just integration of classic desktop UI with metro UI – but both to flourish?

UI Design 8 traits of great Metro style apps
UI Design Platform for Metro style apps
UI Design Tools for building Metro style apps
UI Design Designing Metro style: principles and personality
UI Design Reach a worldwide audience by building a world-ready app
UI Design Fundamentals of Metro style apps: how and when your app will run
UI Design Windows Phone user experience design
UI Design Windows Phone: building apps that customers love, end to end
UI Design Build world-ready Metro style apps using XAML
UI Design Build accessible Metro style apps using XAML
UI Design Tips and tricks for developing Metro style apps using XAML
UI Design Build assistive technologies for Windows 8
UI Design Extending the media platform using input, output and processing plug-ins
UI Design Integrating stunning media experiences in XAML
UI Design Windows Phone: how to build a game
UI Design Windows Phone app performance and optimization
UI Design Windows Phone multitasking
UI Design From touch to gamepads: master player input in your Metro style game
UI Design Windows Phone XAML apps
UI Design Tuning GPU usage for any form factor
UI Design Building a great Metro style device app for your camera
UI Design Building a great Metro style device app for your printer
UI Design Building Metro style apps that connect to specialized devices
UIDesign Creating great Metro Style Apps
UI Design Metro style apps using XAML: Make your app shine
UI Design Unit testing your Metro style apps built using XAML
UI Design Metro style apps using XAML: what you need to know
UI Design Integrating with the Windows device experience
UI Design Make great touch apps using XAML
UI Design The lifetime of XAML text: from input to display through printing
UI Design Connecting Bluetooth Low Energy devices to Windows
UI Design Prepare your apps for Windows 8 and beyond
UI Design Being pragmatic by leveraging existing code in Metro style apps
UI Design It’s not a great phone app without ASP.NET services and push notifications
UI Design Create cool image effects with Direct2D
UI Design Your Metro style app, video and audio, Part 1
UI Design Achieving high performance 2D graphics with Direct2D
UI Design Compelling audio and video for Metro style games
UI Design 3D Graphics in Metro Style Apps and Games
UI Design Introduction to DirectX for Metro style apps
UI Design Designing Metro style apps that are touch-optimized
UI Design Building great touch systems
UI Design Build advanced touch apps in Windows 8
UI Design Understanding the Windows 8 graphics driver model
UI Design Create experiences that span devices
UI Design How to declare your app’s capabilities
UI Design Reach all your customer’s devices with one beautiful XAML user interface
UI Design Stand out with styling and animation in your XAML app
UI Design Your Metro style app, video and audio, Part 2
UI Design Async everywhere: creating responsive APIs & apps
UI Design Build polished collection and list apps using XAML
UI Design Build data-driven collection and list apps using XAML
UI Design A deep dive into VS 11 Express for designing Metro style apps using XAML
UI Design Introducing Metro style device apps
UI Design Using files: accessing, searching, and acting
UI Design Using location & sensors in your app
UI Design A lap around DirectX game development tools
UI Design Building Xbox LIVE games for Windows 8
UI Design Bring pen and touch input to your Metro style apps with ink
UI Design The web-to-Windows journey: turning your web assets into a Windows app
UI Design Search: integrating into the Windows 8 search experience
UI Design Remote desktop experience in Windows 8
UI Design Under the hood: installation and updates for Metro style apps
UI Design Building and delivering a great Metro style app for your device
UI Design Creating immersive data experiences with Entity Framework
UI Design Using tiles and notifications
UI Design Building Metro style apps that print
UI Design Building great Metro style gallery apps today
UI Design Capturing personal photos, video, and audio in Metro style apps
UI Design Using connected devices in Metro style apps
UI Design Building great Metro style apps for mobile broadband devices