I suggest you ...

Create a Ubiquitous .NET Client Application Development Model

This suggestion is migrated to Developer Community. Please use below link to view the current status.
https://developercommunity.visualstudio.com/content/idea/351412/create-a-ubiquitous-net-client-application-develop.html
This vote is for developers who wish to see the idea of a ubiquitous .NET client application development model created by Microsoft and the Visual Studio team.

A ubiquitous .NET client application development model is a model that is defined in .NET-based technologies and is able to run in a multitude of runtime environments -- both native-compiled (store-hosted) and web-hosted.

A *very* rough image of the vision can be found here:
http://i0.wp.com/blog.developers.win/wp-content/uploads/2015/09/Vision.png

The goal is to enable *one* .NET Client Application Project to build deliverables for the following platforms:
1) Windows 10
2) Legacy Windows
3) *nix (Unix/Linux)
4) Droid
5) iOS
6) Macintosh
7) HTML5
8) ??? (Extendible to different, future platforms)

In order to achieve the above, a ubiquitous .NET client application development model should strive to possess the following qualities:
1) Native Cross-Platform Capable - For native-compiled/store-hosted scenarios (iOS/Droid/Windows Store)
2) HTML5-Compliant - For web-hosted scenarios, via .NET-to-JavaScript transpilation
3) Consistent User Experience - For brand recognition, reinforcement, and optimal usability across all known scenarios
4) Cross-Boundary Accessibility - For shared code/assemblies between server and client boundaries
5) Xaml-Powered - Harnessing one of the greatest inventions in Microsoft's great history
6) Object Serialization Congruence - Markup used to describe serialized objects is what is created in memory
7) Holistic Development Consistency - The same guidelines and conventions are used in both client and server scenarios

For more information around this idea and the qualities above, a series of articles has been created to discuss the notion of a ubiquitous .NET client application development model at length. You can view that series here:
http://blog.developers.win/series/bridge-to-dotnet-ubiquity/

Finally, this is intended to be a starting point for discussion, and not a final solution. THAT is meant for the experts there at Microsoft. :) Thank you for any support, dialogue, and feedback around this idea!

11,282 votes
Vote
Sign in
Check!
(thinking…)
Reset
or sign in with
  • facebook
  • google
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    Developers Win! shared this idea  ·   ·  Flag idea as inappropriate…  ·  Admin →

    497 comments

    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      Signed in as (Sign out)
      Submitting...
      • Mike-EEE commented  ·   ·  Flag as inappropriate

        Suddenly we're only 300 votes away from 10,000... did something happen or something? An event or something? ;)

      • birbilis commented  ·   ·  Flag as inappropriate

        exactly what standard do you have in mind? please don't tell me Java, we've seen what Google did with Android, they're still fighting on this with Oracle in courts

      • Takenomiya Kate commented  ·   ·  Flag as inappropriate

        If you want compatibility, there's .Net for that. Muddling with .NET Core cross-platformness will just taint its reputation. Younger programmer might not know what Microsoft did in 1990s but I remember when they lie to us about "embracing" such standard just to muddle with it later on.

      • birbilis commented  ·   ·  Flag as inappropriate

        on the contrary, it's very good news: the power of Microsoft was all these years that they'd strive for backwards compatibility and interop with older tech (can still run Win16 in 32-bit Windows for example and would hope they also had it in x64 since there are some nice older 16-bit educational apps that need a VM to run), not ditch a technology for the latest trendy stuff and tell you to write all your stuff from scratch

        btw, interesting reading on what happens at the world of trendy that's called web development currently:

        The Brutal Lifecycle of JavaScript Frameworks https://stackoverflow.blog/2018/01/11/brutal-lifecycle-javascript-frameworks/

      • robloo commented  ·   ·  Flag as inappropriate

        Microsoft, you haven't yet lost the mobile space if you make this happen. You will have a LOT of usage if you created a cross-platform XAML implementation. Developers will pay for it and are asking for it. All you need to do is listen to your customers. As you used to realize, being the middle man is very lucrative. It's also not too difficult either. Just write a rendering backend in OpenGL and call it a day. There are a handful of projects already trying to do this in one form or another. Give Miguel de Icaza a ***** at it if no one else is going to step up to the plate.

      • Jack Bond commented  ·   ·  Flag as inappropriate

        Hey Microsoft. It's been three days since your last poll. Quick, do another, maybe this time the top request won't be exactly the same as the last 100 polls.

        Whoop Dee Doo. You can now run WPF on top of .netcore, but only on Windows.

        The level of incompetence is staggering.

      • Paul Sinclair commented  ·   ·  Flag as inappropriate

        A QT like GUI/Form designer for C# please... that can just work on all platforms.

        MS used to provide good tooling for windows that all went down hill after windows 8.. time to get back to good tooling no?

        With .net core stuff and multi platform support and proper tooling for GUI layouts they could surely do alot better than half dozen JS libraries built on poor foundations.

      • Anonymous commented  ·   ·  Flag as inappropriate

        I agree GUI for rapid development is needed for web (blazor) and mobile (xamarin.forms), it has been asked thousend of times in xamarin.forms forums. A GUI is why visual basic/winforms/etc were so succesful years ago because any one could create UI so easy and fast, if you had to create windows UI using code, MFC, etc it would not have been succesful.

        Coding UI is so boring and slow and is not where innovation for business is. MS has always provided great tooling for UI (vb,winforms,wpf, silverlight,etc) not sure why they are not doing nowdays for web and mobile and they want us to go back 20 years ago to code everything.

        If they could provide great GUI tooling for web/mobile it would be a big differentiation from other techonologies like angular, react, etc and lot of people would move to use it as learning curve is so much faster.

      • Mike-EEE commented  ·   ·  Flag as inappropriate

        @Marc 100% agree... there was actually a discussion around this lately on Xamarin's forums. Well it actually started on Twitter and had to do with Xaml Standard, but was never on Xaml Standard's repo... GO FIGURE. Anyways, there is actually a movement to make code more UI-ish, and I'll just skip to the good part where I put in my $.02. ;)
        https://forums.xamarin.com/discussion/comment/328392/#Comment_328392

        People seem to forget that while it's cool to build neat tech (and that certainly is part of it), the core/root/fundamental challenge is the business driver. You can build the most amazing tech in the world, but if it costs 3-5x as much to use it as something less fancy with less talented resources, that's where the business goes. Just ask JavaScript.

      • Marc Roussel commented  ·   ·  Flag as inappropriate

        @Markus Schaber:

        Any GUI to develop ? Because having a button this way is hard to know where it is.

        // Create the UI
        var button = new Button("Click me!");

        This makes me laugh a little. Imagine I have a very complex form to build. I don't think I see myself building a UI that way.

      • Mike.NET commented  ·   ·  Flag as inappropriate

        @Anonymous first of all Angular 2+ is written in TypeScript, so as an frontend expert, if you want to advance argument about JavaScript winning, that may not been a good example...

        Second of all, heard about webassembly, or WebGL, sorry to say, but I would not want to be a JavaScript developer, knowing that a machine can produce Javascript assembly for me. Talk about machines replacing humans. The future is coming, I say.. Keep writing that java script by hand...

      • Marc Roussel commented  ·   ·  Flag as inappropriate

        @Anonymous LOL - Microsoft isn't going to bring about some white horse frontend technology that everyone will use

        Why not ?

      • Anonymous commented  ·   ·  Flag as inappropriate

        I hear a lot of you speak about the UI.... Here's the deal. The UI/UX at this moment is owned by Angular 2,3,4,5,6,,, and React. You build your service for the backend and then you use frontend technologies. As an expert in frontend technologies I am not sure I am getting what this question is even striving for... It is quit ridiculous actually. The point is that front Razor templates or Java beansprouts or whatever is ridiculous... You cannot build a rich environment that way. Microsoft isn't going to bring about some white horse frontend technology that everyone will use. Remember Silverlight and flash? You can't do it. Javascript wins end of story. Now, can native platforms work. Yep, IOS and Android. or Middle ground... Xamarin or Cordova/Ionic... and again Javascript Wins. Get with the times gentlemen. I am pretty sure the ladies aren't confused as you all are.

      • Joseph commented  ·   ·  Flag as inappropriate

        “You cannot escape the responsibility of tomorrow by evading it today.” ~ Abraham Lincoln

      Feedback and Knowledge Base