BUILD keynote day 1–Metro experience with Jupiter, XAML and HTML5/JS
Highlights
- You can download the developer preview of Windows 8
http://dev.windows.com/
http://blogs.msdn.com/b/b8/archive/2011/09/13/welcome-to-windows-8-the-developer-preview.aspx - The confusion around HTML5, xaml and Jupiter is finally cleared up.
The new immersive apps (full screen, metro style apps which are launched from the tile based interface) can be built in either C#/XAML or HTML5/JS. Under the covers it reflects into the WinRT APIs. Apps built like this will run on ANY Win8 machine (x86, ARM, etc)
- Silverlight & WPF are "legacy". They put it onto the slide for show. The Win8 xaml looks to be 90% compatible with Silverlight. Demos are shown where they take a Silverlight app, copy/paste the code into a new Win8 XAML app, and only a few namespaces need to be changed. A silverlight grid is then changed to use the native WinRT grid to make it touch enabled and "Metro-y"
- The Win8 XAML app is ported to Windows Phone 7 with only 1 line changed.
- New version of Visual Studio available to help build apps for Win 8 "Microsoft Visual Studio 11 Express for Windows Developer Preview" (got to love Microsoft product names)
- Expression blend works for editing the HTML5/JS apps
- The native WinRT controls work in XAML and HTML5
- New windows 8 app store. Store & submission process VERY similar to Windows Phone 7. Can submit via Visual Studio
Paul Thurrott: "Biggest point of Windows Store: Microsoft is NOT taking a 30 percent cut. It will take a ZERO percent cut." - Win8 machines can be easily restored back to a "clean base image" that developer can specify. Keeps all files, just reverts apps. (Reset/Refresh)
- Windows Live application integration. Nice support for photos, calendar, mail, people. Very similar to Windows Phone 7 built in features.
Windows user account settings Synced across PCs via the cloud (profile photo, etc) - Win8 specs are the same as Win 7. Consumes less memory after startup.
Boot times have been massively reduced. Cold boot demo shows the PC almost starting faster than the monitor can turn on.
Useful articles
- Brief analysis of Metro on Windows 8 by Long Zheng http://www.istartedsomething.com/20110914/an-analysis-of-metro-on-windows-8-developer-preview/
- Windows 8: 101 tips & tricks for the new start experience http://www.istartedsomething.com/20110914/windows-8-101-tips-tricks-for-new-start-experience/
- Summary of Metro vs. Desktop apps by Mary Jo Foley http://www.zdnet.com/blog/microsoft/microsoft-to-developers-metro-is-your-future/10611
- Mary Jo Foley on "what we do & don't know about WIn8" http://www.zdnet.com/blog/microsoft/microsofts-windows-8-heres-what-we-now-know-and-dont/10608
Conference notes
Steven Sinofsky comes on stage
Today we are going to be talking about Windows 8
We are launching a new opportunity for developers. No matter what the size or shape of the PC.
Starts off by talking about Windows 7
Approaching 450mil copies of Win7 sold.
Win7 usage is FINALLY greater than WinXP
Delivered over 1,500 product changes to Win7 (through patches) since RTM
Form factors for PCs have been changing.
Win7 started delivering touch.
Steve thinks that once you start using touch in Win8, that you will want touch on EVERY PC you own.
"What is Windows 8?"
Everything that was great with Win7, they took that and made it "better"
"you get to build on top of all of that success of Windows 7, with Windows 8"
"Windows 8 reimagines what windows should be". In reference to quick boot, better touch, system on a chip.
Win8 reimagines what hardware windows can run on.
Everything they are showing today work on x86 and ARM
They are going to do 4 main demonstrations today
- Basics of starting windows, switching programs, etc.
- How to build Metro style applications from the ground up.
- What is the hardware platforms that Win8 can run on
- Then showing how all of it works and connects with "cloud based services" like Windows Live
They are going to have big session later on the day with deep dives into these features
To show off that Win8 is more efficient, he brings on stage a 3 year old netbook with 1GB of ram.
He first shows it with Win7 SP1 installed
And then demonstrates what the task manager looks like with Windows 8. A lot less memory usage
It is important to understand that everything they are showing is a part of windows. It is all built natively in windows, and not as "layers".
Steve invites Julie on stage - Corporate Vice President, Windows experience
Shows the new "lock screen"
Has all of the "at a glance" information
Next calendar appointment.
Battery level, messages, etc.
The new login screen
It is a "picture password" to save you from having to type passwords in a "touch centric" interface.
She touches her daughters nose, then the lemonade, then draws a line along the railing to log in.
The new start screen.
Live tiles EVERYWHERE!
Can pan to the left and right to see more tiles
Each tile represents an application.
Can see calendar, rss feed, paused music
The start screen is an integration/unification of all application functionality.
One place to integrate your applications in with.
Can drag tiles around (like WP7)
Can pinch zoom out to see all the groups quickly
New "users" section in the control panel
Immersive applications
Applications have a new menu bar along the bottom
System settings while inside an immersive application. Swipe from the right hand side
Multi tasking applications by docking them
IE10: text selection similar to how Windows Phone 7 does it
When in an application you have application "tasks" you can do, called "Charms"
She clicks "share" and it then shows all the applications that support that function
The content that she had selected, has been copied into the "Friend Send" application.
Spellchecking is integrated into windows, so EVERY application gets it
Built in search. Can search inside applications or bing
Earlier in the demo she changed her user profile.
They picked up another PC, and showed that ALL of the changes that she'd made to her profile (changed her user pic, etc) was synced across to the other PCs on stage!
Julie leaves. Steve back on stage
All the apps that you can create are "Metro and full screen". These are the "immersive apps"
When you add applications to your PC, your machine will be getting "richer and richer" as the apps add their functionality to the machine (share, etc.)
How apps are to be built.
Standard desktop apps can be built with the traditional stack.
The new Metro style apps let you choose the development platform you want to use.
All of the fundamentals are built into the kernel. (multitasking, memory management, etc.)
Windows Runtime (WinRT) 18,000 objects for you to use. Use of "objects" here means modern C++. Trumps Win32's C API.
The WinRT APIs are the new low level libraries built into windows. All the languages on top reflect onto WinRT to invoke them.
Steve invites Antoine Lebond on stage to build an app. Senior Vice president of Windows app store
Opens Visual Studio Express 11
Can select which language you want. Under the covers it is all the same as they all reflect into WinRT
Writing an app with HTML5/JS
The application template has a CSS file to define the styles, etc
Adds some "HTML5 code". That would also run in a web browser.
The code lets him draw lines in a canvas
Adds a javascript click event to the button. Wants it to display a file picker dialog.
Under the covers it is a native control, but Javascript can call into it
Adds functionality to integrate "share" into his application, so that other apps can share files into it. So that you can retrieve photos from Facebook.
The entire app is 58 lines of code
Expression blend
He then opens the application in Expression blend.
Prebuilt controls with "metro looks"
The same set of controls work with XAML based applications
The "app bar" is just a DIV in the HTML application
Using the CSS layouts with grids, etc. allow all of the additional system features. Like screen orientation.
Expression blend allows you to see what your app looks like with different screen resolutions, orientations, etc.
Windows Store
Now that the application is built, he wants to upload it to the Windows store.
There is a menu built into Visual Studio that lets you upload directly to the store
He then loads the store to show one that he submitted earlier.
It looks a lot like the Windows Phone 7 store
(Note: Notice that there are Windows Phone 7 games in the games store!)
What about Win32 apps?
Win32 apps are able to be listed in the store. An example is Quicken
XAML based applications
Moves onto talking about XAML
He took a sample Silverlight app and compiled it on Windows 8.
IE10 launches. As it is still just a Silverlight app
He then takes the app and creates a Windows 8 XAML based app.
He pastes it all into Visual Studio and it almost works without any modifications.
He just needs to make some namespace changes and it all works.
Win8 has a LOT richer networking functionality than Silverlight has.
The application does not look "Metro"
So he modifies the grid to use the native WinRT grid instead
He then enables the charms through a few lines of code
This is all mostly compatible with Windows Phone 7.
Took all of the code, changed 1 line of code, and it compiled and worked
Steve comes back on stage
If you build your app in C#/XAML or HTML5/JS, then it will run on ALL hardware that Windows 8 supports
If you want to write native code…. You can… they will help you cross compile it.
Every Windows 8 PC is your target customer (Desktops, laptops, netbooks, slates, etc.)
Steve invites Michael Angiulo - Windows ecosystem
Note: there are lots of cool hardware demos given, like per pixel touch. But they don’t translate well when written down, so were mostly skipped in there notes)
Win8 supports the widest range of hardware.
UEFI helps windows boot quickly
A cold boot takes less than 8 seconds. The demo they showed, it almost booted quicker than the monitor could turn on.
Win8 has a LOT lower power requirements for SOC (System On a Chip). There is a new super low powered state that leaves the network connected, and instantly turns on.
There are now ARM SOC systems, and a new Intel Atom based SOC.
All the application transitions, transforms, etc. are all hardware accelerated
Once you go 1024x768 resolution, you can have metro apps run
Once you get up to 1366 then you can dock
Has a new "sensor fusion" api that combines all of the sensors together. Takes 3 lines of code
NFC (Near Field Communication) lets you tap computers or cards to share data. He taps a BUILD card onto his PC, and it launches the BUILD website.
Built in functionality for 3G connectivity
New "Ultra books" have desktop chipsets in it. But are thin
http://www.flickr.com/photos/longzheng/6144647726/sizes/z/in/photostream/
It is thinner than the ethernet & VGA ports. They had to let those 2 ports bump out
Machines are now mostly batteries
Every attendee gets a developer tablet PC
More details about the device can be found at http://www.istartedsomething.com/20110914/build-attendees-take-home-samsung-windows-developer-preview-pcslate/
http://www.winsupersite.com/article/windows8/windows-8-developer-preview-samsung-700t-photo-gallery-140547
Steve back on stage, giving a demo of how a dev can use win8 day to day
No more constant popup nagging about restarting for security patches
Task manager
Immersive apps can be put into a suspended state where they don't take up any CPU cycles (sounds like Windows Phone 7 lifecycle. Except they stay in memory)
Refresh / reset
Ability to clean a system and restore it back to a clean state.
Can create a baseline for your PC after you have installed Visual Studio, etc. Then you can restore your PC to that state easily.
Can create performance benchmarks. Then you can watch the health of your PC over time and see if it degrades.
Hyper-V is now built into Windows 8
Remote desktop
Remote desktop allows all of the touch centric interaction. Steve was able to easily pan around the new tile based start screen with the touch screen on the tablet, to control the remote desktop
Demonstrated how a tablet could remote desktop into a desktop.
Personally this excites me. You can take your new Win8 tablet around with you, and easily remote into your home PC and interact with it directly with your built in 3G connections. With all the touch features working.
Multi monitor support
Desktop backgrounds can now span over multiple monitors
New multi monitor support for the task bar.
You can make it so that the taskbar on each monitor just shows the apps that are on that monitor
Typing in the live tile view, automatically brings up search
Application bar
You can run IE10 chromeless in an "immersive app" but you can also run it in a standard window
New accessibility options
Sync
Personal settings Syncing. If you log into your windows 8 PC with a Windows Live account, then your account settings can be synced.
Steve invites Chris Jones on stage to talk about Cloud based services with windows 8 & Windows Live
They rewrote all the Live applications to have a metro experience for Windows 8
Once you sign in with your LiveId, then it is all integrated in
Live Mail
Written in HTML 5 and Javascript.
Calendar
Written in HTML5 + JS
Can see multiple calendars that are shared with you
People
Photos
Written in HTML5 + JS
Is like Windows Phone 7, brings in all of the services that you have linked in to your LiveId
Sky Drive
Every Win8 user has a skydrive for cloud storage.
Connect your PCs together via live
You can browse the photos from another of your PCs, in another location, behind firewalls, directly from within the application. Live does some funky network routing for you.
Can go and browse all of the files on your remote PC via skydrive.com in a web browser
Steve back on stage
Driven by "quality and not by date".