CodeGuru Home VC++ / MFC / C++ .NET / C# Visual Basic VB Forums Developer.com
Page 1 of 3 123 LastLast
Results 1 to 15 of 43
  1. #1
    Join Date
    May 2009
    Posts
    2,413

    Windows 8 / Metro ?

    To me it looks like Microsoft is making a major strategy shift.

    http://www.i-programmer.info/news/12...pers-take.html

    Windows 8 is split into two. There's the Desktop with all the "old" familiar technologies such as Win32 and .NET. And then there's the Metro which is based on a brand new native API called WinRT, an object oriented C++ interface. The Desktop isn't going to be developed any further, only maintained. All new developments will go into Metro.

    To me this is truely amazing. That Win32 would need to go at some point is maybe natural but .NET, that's a big surprise. Just a few years ago .NET and managed code was the future and would replace native developments eventually. Microsoft even put C++ on hold. But now native C++ is back big time, at least that's what it looks like to me.

    What do you make of all this?

  2. #2
    Join Date
    Aug 2008
    Posts
    902

    Re: Windows 8 / Metro ?

    What do you make of all this?
    I'm happier than ever that I no longer use Windows. Microsoft sure has made it clear that they want to push Metro hard, but I've never seen any definitive statement that they have ceased all development for "traditional" applications. If that is the case, then maybe others will put Windows behind them as well.

    I'd really like to see applications like Photoshop, Visual Studio and Excel as "immersive" applications. To me, that would be the most counter productive thing in the world. There is a reason we moved away from one full screen application at a time (DOS) and moved to multiple scalable, movable applications on screen at the same time (Windows).

    The whole point of Metro is to be tablet centric. Those applications may be easier to use on a tablet computer, but they'll suck on a desktop. There is a similar problem on Linux too. Gnome, one of the most popular desktop managers available has gone 100% tablet centric with their next version (Gnome 3) as well.

    I'm hoping that this obsession with tablets is just a 2011 fad that will die off soon.

  3. #3
    Join Date
    Oct 2008
    Posts
    1,456

    Re: Windows 8 / Metro ?

    Quote Originally Posted by Chris_F View Post
    I'm hoping that this obsession with tablets is just a 2011 fad that will die off soon.
    agreed ...

    Quote Originally Posted by Chris_F View Post
    [...]as "immersive" applications. To me, that would be the most counter productive thing in the world. There is a reason we moved away from one full screen application at a time (DOS) and moved to multiple scalable, movable applications on screen at the same time (Windows).
    totally agreed ...

    IMO, something at the same time amazing and horrible happened in the last few years: more and more people with near-zero-computer-knowledge is using computers pervasively in their everyday lives; no more just as a hidden experts/enthusiasts driven backbone of modern society as happened in the late 20th century, but as a set of fundamental tools for social relationships and activities at all levels.

    this is obviously a good thing, but had the side effect of pushing the industry to invest on things like touch screen phones, tablets and other "social" products, that are simply not designed to be "productive", at least not as productive as they could be given the complexity of the hardware/software they are based on. They are optimized to be usable by the most number of people, not to be the most useful, eventually only to a niche of power users ...
    ... this seems the perfect recipe for mediocrity.

    now, if the Microsoft choice goes in the direction of providing a common platform for both dumb-users and computer-savvy-users then, after all, I think it's an acceptable choice. We'll see ...

    speaking of WinRT,

    Quote Originally Posted by nuzzle
    The Desktop isn't going to be developed any further, only maintained. All new developments will go into Metro.
    do you have any reference to support this claim ? as far as I understood, winRT is not limited to metro style applications, it can be used as a full replacement of win32 to code usual window-like programs as well.

  4. #4
    Join Date
    Aug 2008
    Posts
    902

    Re: Windows 8 / Metro ?

    Quote Originally Posted by superbonzo View Post
    do you have any reference to support this claim ? as far as I understood, winRT is not limited to metro style applications, it can be used as a full replacement of win32 to code usual window-like programs as well.
    I don't have any references, but I doubt WinRT would be useful for traditional applications, since no doubt the GUI facilities are a key part of the API.

    The other thing which I just recently found out, is that WinRT isn't really going to be a C++ API. It's going to be made using a technique similar to COM, and will make use of a proprietary extension to the language called C++/CX, which looks similar to C++/CLI. It adds ref new to the language, a version of new for refrence counted WinRT objects, and it adds ^ (carrot) pointer notation, for reference counted WinRT objects.

    Not particularly hot on the idea of proprietary extensions to the C++ language. I didn't mind C++/CLI so much, because it had it's own obscure uses, but now they are actually encouraging everyone to use this.

  5. #5
    Join Date
    May 2009
    Posts
    2,413

    Re: Windows 8 / Metro ?

    Quote Originally Posted by superbonzo View Post
    do you have any reference to support this claim ? as far as I understood, winRT is not limited to metro style applications, it can be used as a full replacement of win32 to code usual window-like programs as well.
    Sure, the link I supplied in my first post. Here Desktop (with a capital D) represents the old traditional Windows technologies. It's contrasted with Metro which represents the new WinRT based technologies.

    According to the reference, Desktop is doomed to slowly fade away and eventually be replaced by Metro. But this doesn't necessarily mean you cannot build desktop applications similar to those we see today within the Metro framework. This doesn't seem to be Microsoft's intention though, at least not initially, since Metro applications are full-screen only.
    Last edited by nuzzle; October 8th, 2011 at 04:20 PM.

  6. #6
    Join Date
    May 2009
    Posts
    2,413

    Re: Windows 8 / Metro ?

    Quote Originally Posted by Chris_F View Post
    Not particularly hot on the idea of proprietary extensions to the C++ language. I didn't mind C++/CLI so much, because it had it's own obscure uses, but now they are actually encouraging everyone to use this.
    Neither am I. I had hoped for a clean C++ interface.

    http://mariusbancila.ro/blog/2011/09...ndows-runtime/

    On the other hand also Qt uses a C++ language extension but the impact of C++/RT will of course be much greater. Many programmers won't be aware of that they're using a Microsoft dialect of C++ also when not dealing directly with WinRT.

  7. #7
    Arjay's Avatar
    Arjay is offline Moderator / EX MS MVP Power Poster
    Join Date
    Aug 2004
    Posts
    13,490

    Re: Windows 8 / Metro ?

    I say bring it on. No problem learning another framework or technology.

    I've got about 20 more years in this business, so I'll need to stay current with the latest Microsoft technologies since that is where I focus.

    I suppose the guys still using VC6 might be in for a bit of trouble.

  8. #8
    Join Date
    Jan 2010
    Posts
    1,133

    Re: Windows 8 / Metro ?

    I don't think it's that scary as it seems at first. They've just taken all the relatively new, modern technology directions exemplified by the .NET library (like XAML), and put the performance considerations in the equation, and built a new abstraction layer on top of the OS for devs to use. I don't see how that is going to take away from anyone. It's just another tool in the box, and all tools are only good for certain kinds of jobs.

    The way I see it, WinRT will be initially mainly used for the more "casual" apps, while business-oriented applications will still be developed in the traditional way - until one day someone comes up with an innovative solution to do them Metro-style.
    I don't see the fact that they are full screen apps to be particularly problematic - it's just a matter of the current mindset. Aren't we forgetting something? All these windows floating around on our desktops are not really individual objects - as the abstraction of the window tries to convince us - under the hood, there is just one screen, and the OS is doing all the region checking, all the mouse tracking, all the painting... In essence, isn't Windows really just one big, complicated full-screen application?
    Someone will eventually figure out a way to present a business-oriented Metro-style application in a way that is engaging and productivity-boosting.

    Besides, from what I've heard - you C++ guys appear to have the most reasons for celebration - assuming you happen to get to work on a Metro-style app project in the future.

    As for how are they going to integrate WinRT with different languages: they mentioned that WinRT includes a unified type system, that is "projected into these languages". I guess it will probably be exposed to the supported languages through APIs, just like everything else, and maybe covered up by some syntactic sugar, and aided with language infrastructure where possible. They say that WinRT is very thin, and highly optimized, so I also guess that's the main reason this all is possible.

    Check out this video; but beware, the speaker is a bit overenthusiastic.
    Edit: Oh, yeah, you can skip the first few minutes - just jump to the talk.

    Final thought:
    Wait a sec...
    Windows 8 will be... without windows?!
    Last edited by TheGreatCthulhu; October 10th, 2011 at 12:26 AM.

  9. #9
    Join Date
    Oct 2008
    Posts
    1,456

    Re: Windows 8 / Metro ?

    Quote Originally Posted by TheGreatCthulhu View Post
    I don't see the fact that they are full screen apps to be particularly problematic - it's just a matter of the current mindset.
    patterns of user interaction are not simply a mindset matter, they depends on both the physical way the user interacts with the mechanical interfaces and the specific content of the tasks he's supposed to do, in a coordinated way. Each user/tasks pair has it's own optimal interaction pattern, and, you know, given that the consumer market is mostly made of users with the same number of legs/arms/hands/cognitive-sensory abilities/etc.. it's an acceptable approximation saying that each (set of coordinated)task has its own optimal interface.
    So, it's reasonable to claim that windows based applications that have proven productive will remain windows based in the future as well, in the same way certain command line programs have remained command line till these days.

    Quote Originally Posted by TheGreatCthulhu View Post
    Aren't we forgetting something? All these windows floating around on our desktops are not really individual objects - as the abstraction of the window tries to convince us - under the hood, there is just one screen, and the OS is doing all the region checking, all the mouse tracking, all the painting... In essence, isn't Windows really just one big, complicated full-screen application?
    well, the same thing could be said about any physical body, you know Magritte's Ceci n'est pas une pipe, don't you ?

    Quote Originally Posted by TheGreatCthulhu View Post
    Besides, from what I've heard - you C++ guys appear to have the most reasons for celebration - assuming you happen to get to work on a Metro-style app project in the future.

    As for how are they going to integrate WinRT with different languages: they mentioned that WinRT includes a unified type system, that is "projected into these languages". I guess it will probably be exposed to the supported languages through APIs, just like everything else, and maybe covered up by some syntactic sugar, and aided with language infrastructure where possible. They say that WinRT is very thin, and highly optimized, so I also guess that's the main reason this all is possible.
    yes, from a C++ programmer POV, winRT seems very good, although I've not yet seen any code, for example, to see how XAML code behind should work in C++ ( does anybody have any reference ? ). Also, an easy to use common ABI is very intriguing ...

    regarding the fact they introduced a c++ dialect it's not that bad too, because, contrary to c++/CLR, one can always segregate the Microsoft-ish c++ parts at the design level through simple incapsulation, if needed.

    the only fear I have about the current industry trends is from a user POV: as I said in my previous post, the consumer-oriented industry seems moving from usefulness-bound products to usability-bound products. Just take a tablet and a desktop workstation; if one compares productivity ( the absolute value of what someone can create with it, measured in some reasonable way ) then the latter beats the former hands down.

    now, what's scares me is the effect this could have on the consumer market as a whole; more specifically, the effect on the development speeed and consumer prices of those IT goods that happen to be very useful to some but not necesserely usable by most consumers ... well, let's be optimistic !

  10. #10
    Join Date
    Feb 2003
    Location
    Iasi - Romania
    Posts
    8,244

    Re: Windows 8 / Metro ?

    Quote Originally Posted by Arjay View Post
    I suppose the guys still using VC6 might be in for a bit of trouble.
    Well, I'm still using VC6 sometimes (especially to quickly find answers for the VC forums) but don't feel in trouble at all.
    I see WinRT as a new exciting tam-tam-toy and not as a possible replacement for the real native WinAPI (except for tablets, smartphones and other little cute gadgets).
    Last edited by ovidiucucu; October 10th, 2011 at 04:05 AM.
    Ovidiu
    "When in Rome, do as Romans do."
    My latest articles: https://codexpertro.wordpress.com/

  11. #11
    Join Date
    Jan 2010
    Posts
    1,133

    Re: Windows 8 / Metro ?

    Quote Originally Posted by superbonzo View Post
    patterns of user interaction are not simply a mindset matter, they depends on both the physical way the user interacts with the mechanical interfaces and the specific content of the tasks he's supposed to do, in a coordinated way. Each user/tasks pair has it's own optimal interaction pattern, and, you know, given that the consumer market is mostly made of users with the same number of legs/arms/hands/cognitive-sensory abilities/etc.. it's an acceptable approximation saying that each (set of coordinated)task has its own optimal interface.
    So, it's reasonable to claim that windows based applications that have proven productive will remain windows based in the future as well, in the same way certain command line programs have remained command line till these days.
    Exactly the kind of mindset shift I'm talking about: you are, of course, right - window-based UI systems have been there for a long time, and we are all, as users, familiar with them, which is a big advantage, and the industry experience allowed us to develop ways to provide the optimal user experience - in that system. However, the change is here (in software business, it seems it always is)... Let's hit it and see what we can do. Before, we didn't have much alternative, but now we have room to experiment. Window-based approach might provide pretty optimized user experience, but it doesn't mean it's the only approach possible. Maybe we can find a way to be super-productive with Metro-style apps, wh just don't quite know how yet.
    Or it could turn out to be a dead end in that department.



    well, the same thing could be said about any physical body, you know Magritte's Ceci n'est pas une pipe, don't you ?
    Nope, it's not a pipe

    EDIT: Hm... what the h3ll happened with the img tags? And where is the insert image button???

    However, you're taking the analogy too far. I'm just saying that underneath the abstraction, it's actually something else, an underlying complexity that the abstraction shields us form - in the same way that TCP provides "reliable" transfer although it's built upon an unreliable system, by implementing certain behavior under the hood.
    Take games - these are full screen applications, that have toyed with all kinds of user interfaces applicable in their domain. Including windows - in a full screen app.
    It is not impossible that people will eventually develop UI libraries that are applicable to the new system, possibly using a hybrid approach.


    EDIT: Oh, yeah - it's a little silly how Microsoft insists on the full screen approach... In the video, they show how a call to MessageBox fails to compile... Like it's a big deal if a message box pops up... No, you have to do it the new way! Probably some text flashes somewhere, or an semitransparent animated pane rolls in carrying the message or something. Like there's a fundamental difference between a window and an semitransparent rectangle...

    yes, from a C++ programmer POV, winRT seems very good, although I've not yet seen any code, for example, to see how XAML code behind should work in C++ ( does anybody have any reference ? ). Also, an easy to use common ABI is very intriguing ...
    The in the video I linked to in my previous post, they write a small Metro-style app in C++, using XAML for the presentation layer. MS seems to have taken the it-just-works approach, where XAML is supported on the level of WinRT itself. The interesting thing is, you can take XAML from your C++ Metro-app and just paste it in a C# Metro-app, and there will be no problem whatsoever. Heck, it appears that you can paste it in a regular .NET WPF app, since they say its standard XAML.
    As for the architecture, it really seems they've taken some of the ideas and concepts developed for the .NET and made it happen for native code.


    the only fear I have about the current industry trends is from a user POV: as I said in my previous post, the consumer-oriented industry seems moving from usefulness-bound products to usability-bound products. Just take a tablet and a desktop workstation; if one compares productivity ( the absolute value of what someone can create with it, measured in some reasonable way ) then the latter beats the former hands down.

    now, what's scares me is the effect this could have on the consumer market as a whole; more specifically, the effect on the development speeed and consumer prices of those IT goods that happen to be very useful to some but not necesserely usable by most consumers ... well, let's be optimistic !
    Maybe we'll have a cleaner separation to probably more numerous "casual developers" that never heard of a register, and less numerous "hardcore developers" that can do the job done when it truly matters. After all, aren't those guys that use these productivity-oriented applications making money for some other people... People who want they employees productive.
    See? You C++ devs might even end up getting a raise.
    Last edited by TheGreatCthulhu; October 10th, 2011 at 08:25 PM.

  12. #12
    Join Date
    May 2009
    Posts
    2,413

    Re: Windows 8 / Metro ?

    Quote Originally Posted by TheGreatCthulhu View Post
    I don't see the fact that they are full screen apps to be particularly problematic - it's just a matter of the current mindset.
    And what was wrong with the monochrome computer screen really?

    If it weren't for the current mindset I'm sure people would abandon color right away for the much more unproblematic black and white user experience.

  13. #13
    Join Date
    Oct 2008
    Posts
    1,456

    Re: Windows 8 / Metro ?

    Quote Originally Posted by TheGreatCthulhu View Post
    Window-based approach might provide pretty optimized user experience, but it doesn't mean it's the only approach possible. Maybe we can find a way to be super-productive with Metro-style apps, wh just don't quite know how yet.
    is it possible to use a monkey as a screwdriver ? yes, it is, maybe one day in the future someone will think out how to use a monkey like that ... but, the point is: can we reasonably say that consumers won't use monkeys for anything but making funny examples about monkeys ? [answer: yes] in the unreasonable event that someone uses a monkey in a non trivial way, can we reasonably say that there are better ways of doing the same thing ? [answer: yes]

    I'm not simply claiming that a user interaction pattern gets used just because of its being "familiar", I'm claiming that user interaction can be bound by both "the interacting interface" ( eg. the machanical interface + software ) and by the "human interface" ( his fingers/hands/arms/ his language/etc... ) and that being the human interface constant ( cyborgs and politicians excluded ) those interfacing technologies proven successful for such a long time reasonably belong to the latter category. That is, if you want them to change you have to change the task not the user mindset.

    Consider the keyboard: (most) humans will plausibly continue thinking and communicating knowledge through alphabetic words; this means that any non trivial knowledge dependent task performed on a computer will require a text input interface;
    now, we have two hands and ten fingers; in theory, it's (3+3)*10 degrees of freedom (of the finger tips); the more of those DOF you use the more coordinated the motion of the finger tips must be, that is, for each "packet" of action peformed by a finger the interacting device must perform a consistent feedback "packet" in the least time; now, the fastest sensory-motor pathways in the human nervous system involving relatively simple coordinated motion of body parts happens at very early cortical stages;
    that is, the human nervous system being constant, no visually based touch screen per character input system can beat a mechanical device in speed, such as a keyboard, ever.

    Quote Originally Posted by TheGreatCthulhu View Post
    Maybe we'll have a cleaner separation to probably more numerous "casual developers" that never heard of a register, and less numerous "hardcore developers" that can do the job done when it truly matters. After all, aren't those guys that use these productivity-oriented applications making money for some other people... People who want they employees productive.
    See? You C++ devs might even end up getting a raise.
    well, I was not reffering to devolopers, just the effetcs of the current trends on me as a "consumer"; consider again the keyboard, just try comparing the keyboards coming with desktop PCs of ~5 years ago and those supplyed nowadays, the latter being those flatty things with nearly no mechanical feedback ... now, imagine this effect on a larger scale ...

    Quote Originally Posted by TheGreatCthulhu View Post
    The in the video I linked to in my previous post, they write a small Metro-style app in C++, using XAML for the presentation layer.
    uhm, for some reason I cannot see that video ... I'll try again later ...

  14. #14
    Join Date
    Jan 2010
    Posts
    1,133

    Re: Windows 8 / Metro ?

    Quote Originally Posted by nuzzle View Post
    And what was wrong with the monochrome computer screen really?

    If it weren't for the current mindset I'm sure people would abandon color right away for the much more unproblematic black and white user experience.
    Wrong analogy.
    Aside from that, how is color problematic for users? (save a few that like to lead their lives retro-style... Hm... rhymes with Metro-style. lol)
    The following analogy is flawed, too, but here's one from a developer's perspective: It's more like 3D movies vs 2d movies - a lot of people hate 3D, mostly because directors tend to misuse the feature. My point is, if you're gonna develop Metro-style apps, you're gonna have to reconsider the old ways, and try out a thing or two until you find an approach that works.

    Besides that, where have I said that windows-based apps will go away? I'm just saying that it is not impossible that new kind of workflows my arise, now that there is room for experimentation. There are things that developers can do to make up for the lack of windows in Metro-style apps - and I'm not talking about emulating windows, but about coming up with ways to switch between tasks, or things like simultaneously looking at a reference of some sort while you work on something - and there is a possibility that the alternate approach turns out to be equally good.
    Maybe not, we'll just have to wait and see.

    Quote Originally Posted by superbonzo View Post
    is it possible to use a monkey as a screwdriver ? yes, it is, maybe one day in the future someone will think out how to use a monkey like that ... but, the point is: can we reasonably say that consumers won't use monkeys for anything but making funny examples about monkeys ? [answer: yes] in the unreasonable event that someone uses a monkey in a non trivial way, can we reasonably say that there are better ways of doing the same thing ? [answer: yes]
    Wrong analogy: (monkey-screwdriver distance) >> (MetroApp-winApp distance).
    (Just so that there's no confusion, the '>>' is the math symbol for "much greater than" - and, just so that there's no confusion, I know you know that, I just didn't want you to read it as right shift or something :P)

    You're assuming that it's highly unlikely that Metro-style apps can be used in that particular way; I'm arguing that it's not - but that we won't really know until someone actually tries it.
    Maybe you're right, however, your Metro-monkey is already there - so why not see what it can do with screws.

    I'm not simply claiming that a user interaction pattern gets used just because of its being "familiar"
    But you can't deny that familiarity plays an important role: every time you find the Cancel button on the wrong side, it slows you down. Ever happened to you that, after using a bunch of apps that have OK/Cancel arranged one way, there comes this one app that has them switched, and after doing some edits you lose all your work simply because you assumed that the OK button would be at a certain place...

    I'm claiming that user interaction can be bound by both "the interacting interface" ( eg. the machanical interface + software ) and by the "human interface" ( his fingers/hands/arms/ his language/etc... ) and that being the human interface constant ( cyborgs and politicians excluded ) those interfacing technologies proven successful for such a long time reasonably belong to the latter category. That is, if you want them to change you have to change the task not the user mindset.
    Yes, but it's a layered system: there's the human interface, then there's the hardware interface, then there's the software interface. And although they impose certain constraints on each other, the very fact that there's this kind of layering makes it possible to vary one layer to some extent. What I'm claiming is that Metro-style apps are still withing those bounds - but, again, we will have to wait and see.

    Consider the keyboard: [...]
    that is, the human nervous system being constant, no visually based touch screen per character input system can beat a mechanical device in speed, such as a keyboard, ever.
    I don't think that the keyboard is jeopardized by Metro. If it is, then MS people have been eating some funky mushrooms...

    well, I was not reffering to devolopers, just the effetcs of the current trends on me as a "consumer"; consider again the keyboard, just try comparing the keyboards coming with desktop PCs of ~5 years ago and those supplyed nowadays, the latter being those flatty things with nearly no mechanical feedback ... now, imagine this effect on a larger scale ...
    Processing...
    Imagining...
    Reacting...
    "Noooooooooooooooooooooo!"



    Maybe that is what is happening... But I doubt it.
    Last edited by TheGreatCthulhu; October 11th, 2011 at 07:32 AM.

  15. #15
    Join Date
    Oct 2008
    Posts
    1,456

    Re: Windows 8 / Metro ?

    Quote Originally Posted by TheGreatCthulhu View Post
    But you can't deny that familiarity plays an important role
    agreed

    Quote Originally Posted by TheGreatCthulhu View Post
    I don't think that the keyboard is jeopardized by Metro. If it is, then MS people have been eating some funky mushrooms...
    I didn't mean so, it was just an example showing a user interface technology that simply cannot be any better, because bound to limitations of humans and not of computers/softwares. You can't plausibly say << maybe, in the future someone will invent a faster way of inputting text >>, unless humans are phisically modified somehow, or a radically different non-mechanical interaction method is developed ( like mind reading or the like ).

    That said, I cannot claim with certainty that window based interaction shares the same level of optimality, I simply said that it's plausible ( == if I had to bet I'd say so ) because

    1) windows have been successfully used in productive contexts for very long time
    2) many alternatives to windows have been developed over the years and even decades; touch/voice/gesture/etc... based interfaces have been tested many times in the past and none of them emerged as means of enhancing productivity in knowledge dependent contexts
    3) the origin of the recent adoption of touch based interfaces is explainable in terms of a new emerging market of non-productive consumers, rather then in terms of truly novel interaction schemes

    anyway, let's wait and see then !

    Quote Originally Posted by TheGreatCthulhu View Post
    Maybe that is what is happening... But I doubt it.
    <<I hope so ... I hope so>> he said quietly, while touch typing on his good'ol keyboard ...

Page 1 of 3 123 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  





Click Here to Expand Forum to Full Width

Featured