Create a Ubiquitous .NET Client Application Development Model
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:
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)
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)
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:
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!
Pranav Powar commented
some langage (they claim to be multi platform (in reality bolatware)) is a piece of ****. As a .Net developer we simply laugh at the stuff the "some language" teams are trying to do (in our company) for years .b'cuz we know that we can do the same stuff in WPF in just 3-4 mnths. I know microsoft can do much more with .Net core with adding good UI(eg XAML support) , Service frameworks to it. but the biggest question is when?. hope the do it within my career lifetime(I have dedicated my whole developement career to .Net & Win technologies). will be eagerly waiting for it.
The Stackoverflow 2017 survey says:
"In the five years we've been collecting the Developer Survey, we've seen languages such as Python and Node.js grow in popularity, while the usage of languages like C# and C has been shrinking."
XAML Standard 1.0 just announced!
C# is declining LOL
C# is declining in popularity and has been for the last 5 years.
Largely because it is becoming irrelevant. Servers are mainly Linux now. ASP.net is declining. Mobile isn't supported (Xamarin is irrelevant).
His has all come about becuase of low cost labour in Asia and other developing regions. They are skilled only with the basics like JS. In addition, you get them involume so they handle/ create a mess!
It's like the industrial revolution of software without the quality.
A small group of experts building a C++, C#, XAML etc platform will most likely win. Something that still allows unskilled devs to hack around in JS. That something is WASM and neosisgui looks like the ideal independent experts environment (possibly avalonia.net).
So I completely refreshed my local and development environment last week, completely reinstalling any and everything I owned and upgrading it to the latest and greatest, including Windows Creator Update and VS2017. This also means that I haven't gotten around to wiring up the vote counter, but I am not exactly rushing to do it. I think everyone here gets the idea. ;)
In any case, I am checking out an ambitious Plan B in case WebAssembly doesn't pan out: client-side virtualization. It is only valid for always-on/connected scenarios, but you essentially pipe your application through a remote desktop. So you could develop in it anything if you wanted, even WPF.
Azure actually had something like this called RemoteApp, but it was domain-joined only. They they pawned it off to Citrix. I have an open question in their forum which you can follow (or chime in with interest) here:
Truly is frightening how pervasive and common the thinking is to "just use JS." It has infected the typical developer as much as it has MSFT, the source of such inflicted thinking. Look no further than the scourge of TypeScript, which not only reinforces this cost-intensive thinking, but confuses market space that we are fighting so hard to save.
At some point, everyone will understand: two codebases are more expensive than one.
I dream one day I can utilize the full .Net Framework in C# with XAML/WinForm to build a complete program (frontend and backend) that works on Windows7, iOS, Android, Mac, Web...
Yeah, not too surprising. "Xamarin" is pretty broad though... is it "Xamarin" or "Xamarin.Forms"? Interesting that it is also 48.7% "Loved" vs. its 51.3% "Dreaded."
This survey doesn't make any sense C# is the one language so many VB 6 programmers switched over since the last years
Yep, remix3d looks cool - if you see source code of https://www.remix3d.com web page (where the Paint 3D app in Win10 Creators Update publishes to), it has mentions of some Beihai-web library, so probably it is about Paint 3D or some more general foundation to be used by multiple apps. In fact some time ago, this article was mentioning Beihai in relation to Tsunoda: http://www.zdnet.com/article/beihai-a-new-app-from-microsofts-windows-apps-studio/
Coooool... thanks for the info, George!
I just upgraded to the Creator Update, which has a new Paint (Paint3D), which is tied to this:
Bonus points/kudos to anyone who can id the tech involved to make that happen. My guess is WebGL.
Kind of cool. 3D in a web page... once again. Like Silverlight. Seven years ago. ;)
...btw, the demise of Nokia has brought down lots of links to Qt documentation in forums. Luckily there is archive.org, pity the browsers don't offer option to users to redirect to that when a link is broken (and it has cached copy)
FWIW, looks like there are bindings for Qt here: https://github.com/ddobrev/QtSharp
My money is still on Noesis at this point, however. It is based on Xaml and better Xaml than UWP "Xaml." :P
Weekly Friday morning check-in: 31 votes were cast for this idea last week, bringing the total to 45,940 combined votes across 10 similar ideas asking for a ubiquitous .NET. Please feel free to like and/or retweet to show your support to the "Big Three" here:
Thank you all who have shown and continue to show your support!