ModernUI without Touch: Why It Is Relevant


Recommended Posts

A lot of folks in the various Windows 8 threads seem to have an idea that you can't use ModernUI (or the applications thereof) on non-touch hardware. What I find rather laughable is that a good half of these users ran the Previews of Windows 8 in VMs (and since I've never seen VM software that supports touch-interactivity, it means that you certainly can't use touch in a Windows 8 VM). So where in the h-e-double-hockey-sticks did the "ModernUI requires touch support" rubric come from?

As most of these same critics are aware, I posted quite regularly in the Preview threads about my experiences with the Developer, Consumer, and Release Previews of Windows 8, and then followed that up with posts in the RTM threads. I pointed out that I've been running the Windows 8 Previews (and now the RTM, in a tag-team with Windows Server 2012) on desktop hardware. No touch support. Not even an external trackpad. It utterly replaced Windows 7 (and before that, Vista). I run MetroIRC and MetroTwit - a pair of ModernUI apps - as my default IRC and Twitter clients. replacing Win32 applications.

How is it that MetroIRC and MetroTwit managed to get through the gauntlet?

Easy enough - the developers of both applications get that ModernUI is NOT a touch-only (or even touch-first) API, simply because it can't be.

Most of the Windows 7 hardware base has no hardware that supports a touch interface - it just plain isn't there. Therefore, a touch-only (or even touch-first) API would, in fact, be quite irrelevant.

Windows 8, like every version of Windows before it (except niche versions aimed at specific hardware) was also sold retail - as an upgrade. That means that it also supported the hardware being upgraded to the new OS. Wouldn't that ALSO apply to any API included with the OS (such as ModernUI)? ModernUI improved on the absolutely-awful touch support in previous versions of Windows - however, that wasn't the only reason for its existence. ModernUI is also a simpler API for every form of interaction it supports - included in the supported interactions are the traditional keyboard and mouse that we've taken for granted with Win32, and Win16 before that. It's not as porky an API as Win32 - by design. If you don't need the entirety of the Win32 API - and a lot of users, or even developers, don't, that is what ModernUI (as an API) is about - a simpler and more concise API than Win32. Let's face facts here - Win32 is a poor API for small applications. It's big, bulky, and resembles Arnold the "Green Acres" pig - not "Babe". ModernUI is a better fit for the smaller application. There are, however, two problems with ModernUI, in terms of small-application development; ModernUI apps are full-screen by default - not exactly a good fit for even 1680x1050, let alone anything bigger than that in terms of resolution. The other problem is, in fact, the corollary of the "too-tall resolution" problem - we as users are NOT used to having a whole screen to work with. Most of us are USED to applications running in any mode BUT full-screen - including reducing Microsoft Office to running in a window, when full-screen is the default. Most of the time, the only users that run full-screen have lower resolutions (such as portable PC users) - most desktop users will run windowed applications whenever possible. (I admit that I am just as *guilty* of that as any other Windows user -most of my current application base is Win32 and runs in a window - not full-screen. The two general exceptions are Web browsers and Microsoft Office applications - those run entirely full-screen (in Word, my default is two-page side-by-side - in Outlook, it's three-pane side-by-side-by-side.)

However, like Web browsers, IRC and Twitter clients are mostly full-screen - even the Win32 versions are by and large meant to be run full-screen by default. That puts it squarely in MetroIRC and MetroTwit's wheelhouse. Neither MetroIRC or MetroTwit is overly complex - if anything, they are almost TOO simple and concise. But, if your NEEDS are simple and concise, than they can suit you right down to the ground.

  • Like 2
Link to comment
Share on other sites

its not about whether or not it is ACTUALLY touch only (its not, and everybody knows that). but whether developers actually make the apps mouse friendly and if it makes sense for those apps at all to be mouse friendly too. and with stuff on the store such as "adobe reader touch" that really just SUCKS to use with just a mouse, there's really no hope

Link to comment
Share on other sites

its not about whether or not it is ACTUALLY touch only (its not, and everybody knows that). but whether developers actually make the apps mouse friendly and if it makes sense for those apps at all to be mouse friendly too. and with stuff on the store such as "adobe reader touch" that really just SUCKS to use with just a mouse, there's really no hope

That's been my point from the beginning, Julius - and I've been pointing to that since the Windows 8 Developer Preview. It's not an API issue, as mouse support is very much there in ModernUI apps - it's thinking about mouse users as part of your target userbase. Thus, it is entirely on developers. (I've been calling out most ModernUI developers as thinking like MOBILE developers - worse, like Android developers, who I have been calling out time and again for violating best-coding practices by writing to specific devices, as opposed to a more generic API. I haven't cut *Google* any slack, either - they actually have a policy that is supposed to BAR such badly-coded apps from Google Play - however, they don't enforce it, because they are doubtless aware that if they enforced it, app count would drop like an anchor - for USS George H. W. Bush. It's not JUST about app quantity - app QUALITY counts, too.)

It's also why I've been talking up MetroIRC and MetroTwit, because they didn't ignore the touchless as part of their user targets. I have refused to throw out the baby with the bath water - not with ModernUI, or even with Android. However, I will not hesitate to point out what is dirtying up the bath water - poor-quality/poorly-coded ModernUI and/or Android apps.

Link to comment
Share on other sites

Many Modern apps even support the back/forward mouse buttons on 5 button mice for navigation within the app. I haven't tried "adobe reader touch", but Photoshop Express works fine with mouse/kb, and so does every other app that I have tried. OneNote is a great example of mouse/kb and touch integration.

Anyone letting the Modern side of their OS lay dormant and unused because of a misperception that it's made solely for touch is missing out on some really great and productive experiences. Modern apps can't replace the desktop for a number of things, but they do add quite a lot to the overall experience in Windows.

Link to comment
Share on other sites

No one with half a brain has ever made the statement that it's 'touch' only. No one. As in completely false pretense which renders the sizable response as fruitless as stabbing scarecrows.

Its relevance has nothing to do with the input scheme (or its less than optimal/tailored experience with the mouse input) but simply access to the Marketplace. What the UI has done is retard what is possible compared to their desktop cousins, for good or bad. (As you note, smaller and simpler).

You're completely off base on the full screen question though. The reason is simply flexibility, something Metro has no hope of competing with, and thats ok as long as you recognize its utility for what it is without derping off the deep end.

It still stands that anyone that thinks Metro 'works fine' with a mouse currently should take advice from Socrates and stop being such smugly satisfied pigs.

Link to comment
Share on other sites

A lot of folks in the various Windows 8 threads seem to have an idea that you can't use ModernUI (or the applications thereof) on non-touch hardware. What I find rather laughable is that a good half of these users ran the Previews of Windows 8 in VMs (and since I've never seen VM software that supports touch-interactivity, it means that you certainly can't use touch in a Windows 8 VM). So where in the h-e-double-hockey-sticks did the "ModernUI requires touch support" rubric come from?

It didn't come from anywhere because it's a perception that solely exists in your head. A false premise.

I will agree that a few trolls may of said it, and maybe even non-trolls during periods of great exasperation with the Windows 8 Borg that infest this forum.

But no, the issue has never been that it only works for touch, it's that it's not designed specifically and only for the desktop and as such is not as optimal as it could be.

Link to comment
Share on other sites

It didn't come from anywhere because it's a perception that solely exists in your head. A false premise.

I will agree that a few trolls may of said it, and maybe even non-trolls during periods of great exasperation with the Windows 8 Borg that infest this forum.

But no, the issue has never been that it only works for touch, it's that it's not designed specifically and only for the desktop and as such is not as optimal as it could be.

Maybe because ModernUI doesn't need to overlap Win32?

I never said (in fact, I don't see anyone saying) that Win32 is necessarily a *bad* API - I have said, however, that it is a very static and porky API.

The app or even application model for ModernUI is simplistic and concise by design - yet it allows for control options difficult, if not impossible, to implement in the Win32 API.

ModernUI is also very much a 1.0 API - how many developers are actually daring to write ModernUI apps that are desktop-friendly (or, by and large, even desktop-usable)?

I pointed out ModernUI's glaring weaknesses compared to Win32 - full-screen by default and an unfriendliness to higher resolutions.

However, there can be situations where a ModernUI app that plays to the strengths of ModernUI - yet is desktop-friendly - can work. (MetroIRC and MetroTwit are prime examples.)

My issue with a lot of the trolls (and a large number of the critics) is that they are unwilling to give ModernUI an honest evaluation - even compare the apps directly to ther Win32 equivalents. (Notice that I said "evaluate" - not adopt.)

I'm not asking that everyone adopt ModernUI whole-hog - that WOULD be silly (and hypocritical, given that a mere two ModernUI apps, as opposed to games, successfully passed through my gauntlet). Don't assume that ModernUI apps are automatically unsuitable merely due to the API. Evaluate and compare them honestly - including to the Win32 API competition. There is no reason at all to fear ModernUI, or the apps that use it - even without touch.

Athernar, look over all the criticism of ModernUI - not merely the apps, but even the API itself. What's been the overweening thread of ALL the criticism of ModernUI? Touch-friendliness.

Touch-friendliness matters not a whit to me as a user for the rather obvious reason that my desktop doesn't have any touch support. None. It hasn't had any, and likely won't - ever.

I started this thread to point out that ModernUI is relevant to even those of us that have no touch support in our hardware at all - including desktop users. Why cut off your nose to spite your face?

Link to comment
Share on other sites

No one with half a brain has ever made the statement that it's 'touch' only. No one. As in completely false pretense which renders the sizable response as fruitless as stabbing scarecrows.

Its relevance has nothing to do with the input scheme (or its less than optimal/tailored experience with the mouse input) but simply access to the Marketplace. What the UI has done is retard what is possible compared to their desktop cousins, for good or bad. (As you note, smaller and simpler).

You're completely off base on the full screen question though. The reason is simply flexibility, something Metro has no hope of competing with, and thats ok as long as you recognize its utility for what it is without derping off the deep end.

It still stands that anyone that thinks Metro 'works fine' with a mouse currently should take advice from Socrates and stop being such smugly satisfied pigs.

I have NOT, as you put it, gone off the deep end - not when a mere two ModernUI apps (as opposed to games) have made it through the usability gauntlet.

However, to be honest, I didn't expect ANY apps to make it through at all.

ModernUI is a new API. Like a lot of new APIs, it brings developers with a very *static* sense of thinking - and mostly mobile developers (in fact, I suspect mostly Android developers).

Look at the post in which I kicked off this thread. I castigated most ModernUI developers for apparently forgetting that a lot of Windows 8 users are on hardware that doesn't support touch at all. (It ties into a similar - and related - criticism I have with most Android developers - device-specific, or device-type-specific coding.)

What was the PURPOSE of the code merge between the phone-biased Froyo/2.x and the 3.x tablet-biased 3.x of Android? An end to device-specificity. Yet the developers are screwing that all up. (Worse, Google is letting them, by NOT enforcing their own TOS regarding either the Android Market OR Google Play, its successor - the TOS for both specifically bars device-specific AND device-type-specific apps - and Google is not enforcing it in the name of app count.)

App quality counts - regardless of WHAT API the app targets. An API - any API - is only as good as the apps or applications written for it.

That is why Android is still vulnerable. (Believe it or not, iOS is almost as vulnerable for the same reason - too much device-specificity in iOS apps.)

I see an opportunity to punish Google for basically *doing evil* by their own standards, as well as stanch the loss of customers from Windows to all tablets. However, unlike the critics and trolls, it requires more than just Microsoft doing work - we as users have to get involved as well.

1. Evaluate ModernUI apps honestly - including comparing them to Win32 versions. If the app is unsuitable (whether it is for API reasons or not) say so in this forum - if necessary, start a thread for that criticism *and* e-mail the developer your criticism - how will the developer correct the errors if the developer doesn't know what is broke?

2. If the app is suitable, compliment the developer on it (again, that is part of what this forum is for).

3. Above all, don't be afraid of a new API - cutting off your nose to spite your face is never a good thing to do.

Link to comment
Share on other sites

However, like Web browsers, IRC and Twitter clients are mostly full-screen - even the Win32 versions are by and large meant to be run full-screen by default.

I'm not sure how to come to this conclusion when virtually al web pages are designed by default to be viewed in portrait which is not full screen on a desktop, and some or many elements distort when full screen even those that scale properly the UI elements can be 20-27" away from where the designer intended. Twitter also is designed to be portrait and my favorite IRC client, mIRC is best portrait. Other than that interesting article. But you can't base much on something that just isn't fact with regards to those particular apps being designed to be run full screen by default. That's just not true IMO.

It isn't relevant. I kinda thought that was obvious...

It is relevant. It has been shoehorned on top of the desktop environment, the Start Page is Modern UI, and most of the settings/controls are now, so it must work well in a non-touch (desktop) environment. That's why MS is making major usability fixes in 8.1.

Link to comment
Share on other sites

I'm not sure how to come to this conclusion when virtually al web pages are designed by default to be viewed in portrait which is not full screen on a desktop, and some or many elements distort when full screen even those that scale properly the UI elements can be 20-27" away from where the designer intended. Twitter also is designed to be portrait and my favorite IRC client, mIRC is best portrait. Other than that interesting article. But you can't base much on something that just isn't fact with regards to those particular apps being designed to be run full screen by default. That's just not true IMO.

It is relevant. It has been shoehorned on top of the desktop environment, the Start Page is Modern UI, and most of the settings/controls are now, so it must work well in a non-touch (desktop) environment. That's why MS is making major usability fixes in 8.1.

MorganX, most Web sites are still by and large designed for lower resolutions than desktops have been capable of since Windows XP - 1024x768 or lower. I haven't had my desktop resolution that low since prior to Windows 9x. That is why most desktop browsers wind up being resized - to match the site's resolution. (In short, it is NOT browser-specific - it's been a problem I have had with every browser.) Coding for a specific browser can exacerbate the problem; however, the two aren't related - not when you have to resize the browser window by default regardless of browser. Portrait mode for a desktop browser (any desktop browser) is a *windowed* mode, and specifically 4:3. That is, in and of itself, a poor fit when your screen is 16:9 or 16:10 - both aspect rates are commonplace, and not just for desktops. (What is the typical aspect ratio for smartphones?) It is identical to the issue of 16:9 content on a 4:3 screen - the screen may be capable of it, but it looks *wrong*.

Link to comment
Share on other sites

Even some of the ModernUI apps don't work good with a mouse. Why can't MS even get it right?

Several of them REQUIRE grabbing the top of the windows and pulling down and the Windows Key doesn't even take you back to the Start Screen.

Link to comment
Share on other sites

It is relevant. It has been shoehorned on top of the desktop environment, the Start Page is Modern UI, and most of the settings/controls are now, so it must work well in a non-touch (desktop) environment. That's why MS is making major usability fixes in 8.1.

I'm sorry, but putting lipstick on a pig changes nothing... it's still a pig.

Link to comment
Share on other sites

I'm sorry, but putting lipstick on a pig changes nothing... it's still a pig.

Well, when it comes to the current implementation, such as Modern UI search, I can't argue with you. It does have potential and they're headed in the right direction with 8.1. Keep in mind, it's a pig on the desktop, it actually works well on tablets. I just don't think the tablets or the software are really there yet, and widescreen is questionable at this stage.

Link to comment
Share on other sites

Keep in mind, it's a pig on the desktop, it actually works well on tablets. I just don't think the tablets or the software are really there yet, and widescreen is questionable at this stage.

Yes, indeed I refer specifically to the desktop, and I include laptops in my net.

Tablets and smartphones are for Android, so I don't even consider them... :)

Link to comment
Share on other sites

I started this thread to point out that ModernUI is relevant to even those of us that have no touch support in our hardware at all - including desktop users. Why cut off your nose to spite your face?

Metro has absolutely nothing to offer me as a platform on the desktop. In every regard the traditional desktop model (on the desktop) is superior - mature APIs, open ecosystem, windowing and so on.

It makes sense in the world of Android tablets and modern laptops, WP8 is an amazing. But when it comes to the desktop? No.

By all means include Metro as an extra in Windows, but please - don't force people into it just because you (Microsoft) are scared of dropping share in the Mobile+Store market.

Link to comment
Share on other sites

Metro has absolutely nothing to offer me as a platform on the desktop. In every regard the traditional desktop model (on the desktop) is superior - mature APIs, open ecosystem, windowing and so on.

I note you didn't add performance, security, and not being able to interact with other apps in ways that most of us don't care to let them.

I'll be glad to see win32 go.

Link to comment
Share on other sites

Yes, indeed I refer specifically to the desktop, and I include laptops in my net.

Tablets and smartphones are for Android, so I don't even consider them... :)

As far as laptops go, once you get trackpad drivers that support gestures (all gestures aren't supported in all drivers for legacy machines, the majority of existing laptops), they work quite well. The problem is there's no compelling reason to learn them or make the effort to use them. It still comes down to apps. 8.1 will just be making Modern UI more tolerable over the Desktop Environment without significant full Modern UI apps.

Maybe with Xbox One games will move to the Modern UI. That alone would make it worth it. The next Wolfenstein will use id tech 5 for XBOne and PS4, will be curious to see if that is ported to Modern UI. Or any next gen XBOne game.

Not sure about other apps. Given the Xbox Core Music and Video apps which universally kind of suck, are made to mirror what's supposed to be in XBOne, that would explain a lot. And it doesn't bode well for the desktop.

Link to comment
Share on other sites

I note you didn't add performance, security, and not being able to interact with other apps in ways that most of us don't care to let them.

I'll be glad to see win32 go.

Sounds like you don't do anything serious on a desktop. I don't expect CAD companies (like Autodesk) to suddenly put their main focus on MetroUI.

Link to comment
Share on other sites

Metro has absolutely nothing to offer me as a platform on the desktop. In every regard the traditional desktop model (on the desktop) is superior - mature APIs, open ecosystem, windowing and so on.

It makes sense in the world of Android tablets and modern laptops, WP8 is an amazing. But when it comes to the desktop? No.

By all means include Metro as an extra in Windows, but please - don't force people into it just because you (Microsoft) are scared of dropping share in the Mobile+Store market.

So you are saying that you ONLY run large and complicated applications?

I don't buy that. Every Windows user - and that includes desktop users - doubtless has a small and/or simple application that they use at SOME point during their computing day. For such applications, the ONLY option on Windows has been Win32, because Win16 got deprecated with the death of 9x. The issue with Win32 is it is still overkill as an API for small and/or simple applications - however, with Win16 no longer an option, what choice has there been?

An alternative API for these applications IS needed - why is Win32 as an API needed for a simple messaging client?

Notice that I said nothing about larger applications and ModernUI; further, I am decidedly NOT implying that ModernUI would even WORK for larger applications. I'm talking small, simple, largely uncomplicated applications of the sort that exist in the Android and iOS space, but designed to be usable with keyboards and mice in addition to (or even instead of) touch. Bringing up large and complicated applications isn't even the point of ModernUI, because it's not that sort of API.

A perfect example of a small application that has been *stuck* with Win32 due to the lack of alternatives is messaging clients - all of them, Not alone those that support voice and video, such as Skype, or Trillian, or even Google Talk, Yahoo Messenger, etc. The ModernUI version of Skype is an example of an application that suits the API's purpose - it's perfectly usable on desktops. It also doesn't have (or even need) all the features of the Win32 version. ModernUI (as an API) is almost purpose-built for small, simple, and concise applications. Not everyone has a need for a big and bulky Win32 application - even on a desktop, and especially not if it will be run alongside other applications. OneNote MX is another - it fits where the big full-size OneNote is overkill.

That's the real reason why ModernUI (as an API) is relevant - it fits the small and simple application model better than Win32 does.

Link to comment
Share on other sites

2 questions:

1. Did you know you don't have to load the entire win32 API in your app?

2. Ever heard of .net?

You can pick and choose the win32 components you use, and given that RT combines win32 libraries with .net'esque meta data, you're pretty much still writing in win32.

You could easily write a win32 based app that leverages HTML5 for display and has identical functionality to an RT app.

I think a better understanding of the underlying technology would help your point here...

Before you scream windows 8 hater, ask people which side of the line I tend to fall on..

Link to comment
Share on other sites

I don't expect CAD companies (like Autodesk) to suddenly put their main focus on MetroUI.

I don't either. Especially since WinRT is very new, only works with one OS, and they've been working with win32 for a long time.

Nobody is going to put their 'main focus' on one OS thats been out less than a year.

Link to comment
Share on other sites

I don't particularly run any ModernUI apps not because of the way they're designed but simply because I haven't really found a reason to do so apart from a couple of games which would be run full screen anyway. The way I look at ModernUI apps is simply an added bonus on Windows 8 that you get the best of both worlds having access to all the usual Windows applications and the added extra of access to all of the WinRT apps which makes it great for supporting both desktop and tablet users.

Link to comment
Share on other sites

2 questions:

1. Did you know you don't have to load the entire win32 API in your app?

2. Ever heard of .net?

You can pick and choose the win32 components you use, and given that RT combines win32 libraries with .net'esque meta data, you're pretty much still writing in win32.

You could easily write a win32 based app that leverages HTML5 for display and has identical functionality to an RT app.

I think a better understanding of the underlying technology would help your point here...

Before you scream windows 8 hater, ask people which side of the line I tend to fall on..

Is .NET part of the solution - or part of the problem?

From the complaints of both users and developers, managing all the different runtime options with Win32, including, if not especially .NET, is indeed part of the problem. Just in terms of Win32 alone, there are five different .NET Framework options (and thus runtimes) that your prospective application can use - 2.0, 3.0, 3.5, 4.0, and 4.5. Runtime management may fall on Microsoft, but how many complaints have there been (just here in this forum) about .NET Framework management issues merely in Windows 7 alone? ModernUI requires no runtimes for either developer OR user - hence a lot easier to package and distribute - a requirement for app stores such as those of Windows 8/RT.

And I'm not asking either developers OR users to throw Win32 away. Win32 still has a place and I have not said otherwise - ever. All I am asking is that users give ModernUI apps honest evaluations (the same sort of evaluation you would give Win32 applications that do the same thing) and that developers actually remember that not all users of ModernUI have touch support - in fact, very few of your target users do, given all those upgrades of Windows 8 on non-touch hardware out there.

Link to comment
Share on other sites

This topic is now closed to further replies.