Solutions

How to be productive in Windows 8

Overview

Microsoft launched Windows 8 to much fanfare on 25th to 26th Oct 2012 worldwide & the reception has been pretty good overall. Steve Ballmer mentioned at the Windows Phone 8 launch that Windows 8 takeup rate was faster than Windows 7 was back in 2009. There are, however, still concerns that it will leave behind a big group of enterprise users who have a problem with the learning curve involve with the Start Screen.

Yes, the Start Menu & Start button are gone & there’s no way to get it back without buying some third-party software, which business will, no doubt, hesitate in spending extra on.

If you’re wondering what made Microsoft make such a major change, read my opinion piece here.

How to be productive in Windows 8 on older PC

Many PCs are still running great or are acceptable. Most of them don’t have a Touchscreen or Pen digitizer. The biggest concern for many users is, can the new interface be used with Keyboard & Mouse without sacrificing productivity? The answer is a resounding YES!

Now, let me qualify that I’m going to teach you how to use WIndows 8 using an average keyboard & mouse, not the new generation of keyboard with Windows 8 keys or the new mice that has Touch surfaces or even Trackpads that mimic a Touchscreen. Just you plain old familiar stuff. You’re welcome to upgrade your keyboard & mouse if you want some of the new features but they’re not necessary. Microsoft has taken care of us.

The new Start Screen

Your new playground to drive away the Monday Blues & welcome TGIF!

 

Well as mentioned, Start button & Start menu are gone. In its place is this beautiful, cheerful full screen & scrollable page with tiles arrange in neat grids. The first reaction is the information overload if you’ve configured your Windows 8 to sync with your MSN/Xbox/Hotmail/WP7 account. Next is the shock of not being able to find your favourite software & perhaps Desktop!

Start Typing on the Start Screen & you get Auto Search!

No worries, let go of the mouse & start typing the name of your software right at the Start Screen. A panel will appear on the right & the result will be shown on the left. You can select your program by using the Up/Down arrow keys & pressing Enter.

By default, Windows 8 will search your keyword under Apps, Settings & Files. This means that you can easily find anything on your App list, Windows settings & even files on your HDD without leaving the Start Screen! You will also notice that beneath the 3 system defaults, there are some apps that you’ve installed. By clicking them, you’re actually asking the App to search your keyword within the App automatically! How convenient is that!

The All Apps screen…

So what if you just want a list of All your apps & programs? No problem! Just right click at the a blank area of the Start Screen & a panel will pop-up from below. You can also press the Context Menu key to bring it up. To the right, you’d see an “All Apps” icon. Click it & all the apps are displayed alphabetically & in groups where applicable.

The Windows Key on your keyboard becomes extremely important in Windows 8. Pressing it always switches you to the Start Screen or between the Start Screen & the Desktop depending on what app is in the foreground.

The Start Screen & All apps list is also the place where you uninstall stuff. No need to open Control Panel!

Charms Bar

More useful for tablets but serves a purpose with keyboard as well

Now you may have heard of the Charms bar which appears from the right. Just move your mouse to any of the right corners to bring it up or press Win+C. This is where you find more shortcuts like the before-mention Search.

The Charms Bar is also where you’d find the Share button. Share allows you to share stuff from one app to another, similar to copy & paste; Windows Icon acts like the Windows key; Devices shows some currently connected peripherals; Settings is where you can change the Settings of the current Metro app or Start Screen.

The Charms Settings Bar is also where you can change Networking, Volume, Brightness, Notifications from Apps, Power & Keyboard language.

Multitasking

Next major change is regarding multi-tasking between different Apps & Software.

Move your mouse to the top-left corner to bring up the last used Software/App. Slide down to bring out the multitasking screen or press Win + Tab to bring it up on the Left & cycle through opened software & Apps.

Another great & useful way to multi-task

Right-click on the App & you can close it. You can also move the mouse to the top of the App, then drag down to close.

Alt-Esc still works in Desktop by cycling through non-minimized software windows.

Alt-Tab still show Live Preview of your software & Apps in an overlay on top of Desktop or Start Screen.

The invisible Start Button

Preview instead of Start Button

The Start Button may be gone but by hovering your mouse over the bottom-left corner of the screen, a mini Start Screen will appear. Clicking it brings you to the Start Screen, giving the same functionality as the Windows key. Sliding up also brings out the multitasking screen.

Finally! All the Power User functions grouped into a menu!

Now the best part is for power user, right-clicking here brings up a context menu with all the administrative tools like Computer Management, Mobility Center & Control Panel, etc. The old Mobility Center shortcut, Win + X now bring up this menu.

Snap!

Shamelessly ripped from Microsoft demo video because my old laptop doesn’t have at least 1366 horizontal pixels

For Windows 8 with a minimum of 1366 horizontal pixel, you can use a new Snap function to “snap” a second app to the edge of the screen to allow multitasking. Just move the mouse to the left corners of the screen, slide down, drag one of the apps out & hover for a while. It should expand & snap to the edge that you hover over.

Ending notes

If you’ve any questions on other problems not listed above or you’d like me to show more features, please leave your comments & I’d try to answer them.

Opinions

How Windows Phone 8 & Windows 8 can share software

Overview

Microsoft just generated a huge amount of buzz in the press & developer community when Microsoft’s Paul Thurrott confirmed a leak that Windows Phone 8 (WP8) codename “Apollo” will use Windows 8 kernel.

This is a big deal, bigger than what most people realise, because it means that Microsoft can have a standard integrated development environment (IDE) to target Windows 8 (for Intel x86/64 – Wintel), Windows on Arm (WoA) & WP8 (now a WoA)!

So when a developer wrote an app for Windows 8, he can automatically target both Wintel, WoA & with some tweaks for screen dimension, WP8!

What’s the big deal anyway?

Let’s me start by saying I’ve been a software developer for many years since C++ & Visual Basic 6. Unlike many developers these days, I’m what was called a system programmer, meaning I do low-level, machine interface stuff, including Assembler on embedded systems. I stopped coding professionally 8 years ago but I still do some projects here & there. So I’m aware of the going on in the development of Wintel, WP7 world.

Software is created by writing code in a language not unlike English. In order for the code to be recognised, you need the other party to also speak the same language.

Unfortunately, Intel Core i7 or nVidia Tegra-3 or Qualcomm Snapdragon CPU doesn’t speak English, so you need an intermediary. A translator that converts the code into machine language which is just a bunch of ones & zeros. This is the job of the compiler.

There are 2 ways to accomplish this. You can compile code directly into machine language or you can send your code into a translator that converts these code in realtime into machine language.

The advantage of the first approach is speed. The problem is you need to rewrite (port) code from one platform to another.

The second is the interpreter approach. A middleman will translate the code during software running time into machine code for the CPU to execute, hence the term, “runtime”.

The advantage is the ease of porting code from one platform to another. It still takes efforts & time to customise for the environment but at least there are less mundane chore to do/debug. The major problem is speed because the middleman also uses CPU resource. Multicore CPU mask some of the time but there’s still lag.

SO, where does Windows 8 fit into all these CPU discussion anyway?

Windows 8 is an Operating System. It’s job is to manage resources in CPU, memory, storage, network, graphics, user input, etc. The part that manage the hardware is called the kernel, which is itself a special software. The part that you see on the screen is the GUI, which is also software. All the apps that you use must interact with the kernel & GUI.

IIRC, the kernel of Windows Phone 7 is based on Windows CE, which is itself a branch of Windows 95 or earlier. It’s a very mature & stable kernel but doesn’t support multi-core CPU or pre-emptive multi-threading which is why multi-tasking on PocketPC/Windows Mobile always seem to hang or slow the phone with no way to recover but a soft reset. Surprisingly, Android 2/3 seem to share the same problems! But is mitigated somewhat by having multicore CPU.

Windows Phone 7 bypass this limitation by following Apple’s iOS when it was initially launched. No app is allowed to run in the background, except for a few that strictly follows certain parameters. Task switching was minimum, restricted to 5 open screens, not 5 open apps. This severely limited many enterprise apps which required ongoing background processing.

Now unlike Apple, which keeps its iOS & Mac-OS separately. Microsoft seems to want to consolidate their OS as early as 2003 with the MinWin initiative. Windows 7 is based on the Windows NT kernel, which was super robust but very monolithic in that all the services were integrated into the kernel, making it big & hard to debug or extend. Performance was good though because all the services exist in the same memory space.

The problem was, every time a new service is needed, like IPv6, Microsoft had to change the kernel without affecting other components. The complexity gets too much to handle even for a software house as big as Microsoft. The only way was to compartmentalized the kernel. Performance suffered a bit but can be recovered when developers optimise the individual components that were separated from the kernel.

This initiative culminated in Windows 8 using just 600+MB of memory footprint compared to Windows 7 800+MB in a TabletPC configuration. The kernel itself is only tens of MB! Small enough to fit in the future 256MB of RAM on a Windows Phone 7.5.x upgrade called “Tango”.

For WoA, the memory footprint will probably be similar to Wintel because Windows Desktop will also appear in WoA. However, as mentioned, for any developer who needs speed in their desktop apps like Microsoft Office, they will have to port their code & recompile the entire app to work in WoA Desktop environment. Which is why Microsoft was very secretive about whether legacy Windows Apps can run on WoA. My answer is, No. (Unless MS includes VirtualPC on WoA.)

It’s very clear to me that since Microsoft wrote the compiler in Visual Studio IDE & can port the entire Windows to ARM, it’s no problem for them to port MS Office as well! However, legacy apps compiled for Intel CPU will not work on WoA. Developers need to port their code.

The good news is, the new Visual Studio will probably support compiling to both Intel x86/64 & ARM all in the same IDE! Devs may need to set certain parameters but they do not need to invest in another IDE or train/hire new developers. Visual Studio will handle the differences in platform like it handles the difference in Intel & AMD CPU.

This is excellent news for Enterprise customers because it simplifies managing their business by providing a single platform that can run on Intel PCs in the office & WoA laptops/tablets for their mobile workforce. Intel CPU is much more powerful but ARM CPU uses much less power so having Windows on both platform solves a dilemma that has dogged the industry for more than 10 years. This is the reason why the iPad is so successful because even though Bill Gates envisioned a tablet future, it was Steve Jobs who realised the vision!

However, Steve had to compromise on functionality on the iPad because Mac-OS wasn’t optimised for low-memory/CPU computing. On top of that, Mac-OS was compiled for Intel CPU & it will take them time to find a good compiler to recompile for ARM, plus all the engineering needed to port the OS.

What about WP8?

Most of the 60,000 apps on WP7 are written in Silverlight & XNA. Both are interpreted code which requires a Runtime. This Runtime is also an integral of Windows 8.

Now that we know WP8 Apollo uses the NT kernel, it automatically means that WP8 supports multicore CPU, full pre-emptive multi-threading, multi-GPU & multi-displays on-top of the other regular stuff you find on iPhones & Android phones.

Since Microsoft has to compile Silverlight/XNA to work on WoA & Windows Phone is actually an ARM computer with a small screen, it means that there is NO difference between WoA Silverlight/XNA & Silverlight/XNA on Windows Phone as well! Do I even need to mention Silverlight/XNA is already in Windows 8 for x86/64?

Ultimately, this means that developers can use Visual Studio to compile speedy Native apps like MS Office for Wintel, WoA & WP8. If the situation doesn’t require speed, they can more easily program in Silverlight/XNA & enjoy low power consumption for Wintel, WoA & WP8 as well. The only major work is to change the interface to fit the screen & that’s it!

Conclusion

Microsoft has announced a range of screen size for the next version of Windows 8/WP8 & the reason is very simple.

All Windows machines will share a common interface & work the same. After adjustment for screen size, Silverlight developers can also easily target WP8 & Windows 8.

Native App developers can also easily target Wintel or WoA allowing the new platforms to gain huge number of apps in a short time. Having tons of apps drive adoption which is what ensures the survival of the platform.

I can’t wait! 8)