Microsoft introduced the "Windows 8, " and if I do not get it wrong it looks like Microsoft is betting big on applications in html5.
But what about WPF and Silverlight?
Microsoft will abandon them?
Or will html5 and WPF have different purposes?
Should I invest in learning WPF or wait to see what direction it will take?
- Changed type BladeRunner2019 Thursday, June 02, 2011 9:04 PM
I cant speak for microsoft on the point of Html5, nor if WPF and Silverlight are headed for the dumpster. But i don't think its something that anyone needs to worry about.
Speaking from a developers standpoint i think its wise not to rat hole yourself into any single technology. Many people don't last long as developers because they learn a single technology and refuse to learn new things, this forces them into a bad situation and they become less valuable in the marketplace. There is no rule against learning to develop using multiple platforms, including learning both WPF and HTML5, knowledge in one area almost always helps you in another.
Having said that, there is also great value in becoming an expert in a particular technology. HTML5 is still being developed along with all of its associated pieces but it has a lot of people excited (including me), it will undoubtedly become a key technology for the future. WPF has been around for about 5 years and Microsoft has been largely silent on its future and this has been disconcerting to many developers.
So all that all i can say is WPF is a cool technology and i have enjoyed developing (and continue developing) on the platform, HTML5 looks awesome and i look forward to learning and developing on it as well. I'm sure the day will come that WPF and Silverlight will no longer make sense as technologies, but who knows how long that will be, for now i will use the best tool for the job.
At the last PDC, the Silverlight folks were shocked to hear that HTML5 is going to be king. In fact just about a month ago MSFT announced that Silverlight is now primarily a Phone application, and that the future is HTML 5. Don't believe me, just head over to the Silverlight site....
We've heard very little regarding the next version of WPF. So is that because MSFT's internal direction has changed? I don't think we know.
If HTML5 becomes the defacto Windows development platform, I think a lot of folks will have felt "left in the dust" by MSFT. How that could happen is beyond me. I think MSFT will continue WPF but it will become one of those proprietary things that all "open" developers will hate.
At the last PDC, the Silverlight folks were shocked to hear that HTML5 is going to be king.
No "they" didn't. Some people decided that something one person said could possibly be interpreted in that way and got a bit carried away.
MS is showing off something which will run on tablets.
I wouldn't extrapolate from that too far.
What will probably happen is that WPF and Silverlight will eventually converge somehow.
Silverlight is used for more apps than WPF and getting more attention but both are being developed.
They're similar at the moment and getting more so.
Learning one or the other or both is a good idea IMO.
MS would be a bit crazy to be developing Silverlight and WPF 5 if they were going to drop the products.
And since then Scott has been reassgned duties. I was hanging out on SL site for months and heard all the chatter. MSFT is silent on SL future. Release 5.0 was nothing. MSFT also redirected it to be "The mobile phone application language". SL is too restrictive and is NOT a good application language as a result. Sure you can create OOB applications but why would anybody choose that over WPF? WPF is unrestricted so really it is the only true managed application facility MSFT has, unless one wants to revert to Windows forms.
MSFT has subcombed to HTML 5, period.
I know there has not been an announcement for a Blend 5 and I've seen enough chatter to guess they are planning a single tool that will be able to generate WPF, SL, or HTML5 code. I see these worlds as merging and you'd be better off learning WPF today to help you to understand the new models coming out.
The concept of WPF was taken from Adobe flex (xml markup usd to define and design the UI) which uses Action Script for the code behind. WPF uses C# for the code behind and Android uses Java for the code behind. All three code behinds are very similar in syntax and all three XML UI front ends are very similar. I have been developing in all 3 over the past few years. The architecture is advanced and sound. Microsoft can't abandon it, they may morph it a bit but the framework structure will remain the same. I wouldn't worry too much.
One of the next big things coming along is Jupiter.
That somehow involves xaml with C#/VB/C++
It would seem there's also HTML 5 for widget/active tile thingummies.
So whilst they may be renaming, converging technologies and whatnot, your xaml and c# knowledge is going to be good for some time yet.
The problem is the nature of the panic driven blogosphere.
It's in people's interests to stir up rumours and post dramatic headlines because it gets them traffic.
It would be nice if MS adapted to this and published roadmaps earlier.
But they don't.
The sky isn't falling until my blog says it is ;^)
Then of course you better click on all the advertising to hold it up.
As technologists I think it is important we remember that change is a good thing, it keeps us all in a job and keeps us well paid. Is it painful sure. When I started developing in Silverlight and WPF with MVVM I thought my head was going to explode. It was such a drastic paradigm shift I didn't think I would ever become fluent in it. Guess what, I did and now I love working with it.
Now, do I think WPF is dead? No. Do I think HTML5 is the future? Yes. So are quantum computers but I am not expecting Q-Linq any time soon.
I am more interested in seeing how Microsoft is going to provide HTML 5 Tooling for Windows 8 then worrying whether or not it is going to become the new defacto rich client development language.
WPF tools are pretty bad, compared to other MVC tools like Apple's iOS.
What I mean is, having to edit XAML by hand to do bindings is craazy....and makes me think they are not putting too much effort into it.
I like C#, but I'd rather develop for iOS than deal with the XAML hell I've been in lately.
How much does blend cost?
Apple's tools are free, and the quality of them has improved greatly since iPhone popularity...
MessageBox() ? Seems like you have to roll your own? I saw a blog on someone's implementation of WinForms MessageBox() API in WPF using MVVM. Must have taken the guy hours if not days. This is progress?
Common guys, push back on this stuff. It's not fully baked.
Jupiter the big mysterious red dotted planet shrouded in toxic fumes pulling everything into it's orbit. I guess we'll have to wait until September to find out but I think we're expecting it to be as big as the planet. Wonder if MSFT will be able to deliver (with all the inter-departmental wars going on).
Good points JP.
A while back I did some work on chip and pin integration in Silverlight 4.
I was somewhat irritated to find that on our dedicated machine ( it's literally a Till ) I had issues talking to another process via sockets.
You have to serve a SecurityPoilicy.xml file from the machine to Silverlight before it can access a socket on the same machine.
You can avoid that with a full trust out of browser SL app but the whole point is that SL had to run in a browser to connect a php served web page to local chip and pin.
I think SL5 allows you to have trusted apps running in the browser and may well obviate this.
So MS is edging towards fuller support in browser.
I can imagine that MS might eventually offer the ability to write something which you can run with just a plug in if you want or full framework if you prefer.
There again, I can imagine all sorts of things.
Hopefully MS will have had time to consider the uproar from developers and give us some clear indication in September.
Past experience tells me this is unlikely, but maybe someone somewhere is listening and thinking.
1) Make .NET 1st class citizen
2) Get rid of Office Intero and all of the other interops (Allow us to embed the fully monty into our applications)
3) Make WPF fully supported in Browser using certificates to secure applications.
- Edited by Mr. Javaman IIMicrosoft community contributor Wednesday, July 13, 2011 12:41 PM Cowboy Coders Unite!
I'd recommend having a read of this excellent ars technica post before jumping to any conclusions re: Win8/HTML5/JS apps vs .NET/SL/WPF apps
This is their conclusion (well lets hope it works out that way anyway...)
> Far from being a developer disaster, Windows 8 should be a huge leap forward: a release that threatens to make development a pleasure for
> native, managed, and Web developers alike. The unification of the .NET and native worlds; the full hardware acceleration; the clean, modern
> APIs; Avalon as the primary solution for creating Windows UIs—this is what Longhorn's WinFX promised all those years ago, and this time
> around it looks like it might actually happen.
Seems like the whole HTML5/JS noise could be an attempt to attract non-MS web developers to the new platform
You know that "C# will be used in writing immersive application or invoking a Jupiter-based application in Jupiter platform on Windows 8". I suggest reviewing the following article:
Microsoft has delivered a new release candidate (RC) of Silverlight 5. Pete Brown, lead of the Developer Guidance Community Team at Microsoft in September 1, 2011, said the Silverlight 5 RC is a developer-only release that is aimed at getting developers ready for the final release later this year.
Silverlight 5 performance has very good improvements include: Reduced network latency by using a background thread for networking; XAML parser improvements that speed up startup and runtime performance; support for 64-bit operating systems; and reduced network latency by using a background thread for networking.
Please read the following article to learn more:
Have you used expression blend to create your WPF applications? I usually use expression blend and Visual Stdio side-by-side to create my WPF applications. For binidings, I am not doing it manually. You can simply drag and drop bindings in MS expression blend. To learn more, visit the following link:
I also suggest you to visit the following link to learn more about Silverlight 5 and future of WPF:
Microsoft announced yesterday that Blend .Preview (which is Blend 5 .Preview version) is available now. I just posted a new article for this exciting news:
Steve Ballmer before time said something about MS, i think it was on mix 2008 but it was like this Microsoft is what it is because it always progress and goes to new areas. Lets make a quick briefing what have made MS for the past decade. I will go through big segments.
1) Of course new versions of windows.
2) DirectX, when it was born it was the underdog now it is the king of graphics in modern games.
3) Xbox, era of play station and sega. I can say that if i play some game i would like to do it on a Xbox + kinect, atleast i would take off some kilos :)
4) The enterprise sector. Here i will make a quick list of products: MS Sql Server(ok little more than 10 years) but as quality it is compared to oracle its really great server. More enterprise sharepoint servers, dynamics and alot more products.
5).Net . How much this technology progressed, before time we were arguing with friends who were writing on java about c# vs java well now they dont argue, they simply say you won.
6) Bing . I really think that with the new integration with mango and xbox live it will become my favorite search engines.
7) WP 7 i really like my phone and wait for the mango update + i hope soon we start our WP 7 first application.
i can continue to give great examples of technologies that really made a big point in the past decade. I write all this simply to show that microsoft goes to new areas all the time but think about this. Google is dropping projects but from all those things i mentioned MS havent dropped even one(except IE 6 :P ) .
I agree with you that WPF should not be compared with HTML5. It reminds me the first release of the Flash by Macromedia in 2001. I was consulting for a company as a MS Interdev developer and we suddenly faced with the strong marketing policy of Macromedia at that time to promote Flash as much as possible. It is true that Flash was/is great, but you cannot ever, never compare it with Microsoft programming languages. It might work well for the beginners, but will not work for senior developers who are usually working on enterprise level projects. With Flash, you have seen lots of fancy websites, but have you seen any multi-transactional applications such as online banking applications or monster e-commerce sites to use flash in their designs or in any of their developments?
Using WPF in Visual Studio 2010 together with Microsoft expression Blend provides you capabilities that cannot be found in HTML5 at all. Microsoft will usually combine the best of each technology and will offer a package that long-term will show it works and performs much better. The Preview version of Blend is now available. You will notice that the performance has been improved a lot.
For those of you in this forum that you have not heard about Blend Preview version, please read my recent post at:
Amir Ahani, MCSD .NET + MBA
Well says , I am very concern about what technology shall I learn, I was about about learn properly WPF with C#.
I already know a little bit of VB.NET. So one Question I want you to answer please, is that shall I go on WPF or start straight on HTML5
Two different technologies two different purposes. WPF is mostly for desktop, html is for web. What kind of applications you have to develop. Generally WPF is more powerful and can achieve things better, faster and easier than standart web applications.
Please review my recent post about "WPF Useful Links" at blog.charplearners.com:
Amir Ahani (MCSD.NET)
- Edited by Amir AhaniMVP Sunday, September 18, 2011 7:38 PM
I dont think that the intent of Windows 8 and "Metro Style" is to replace LOB apps. I dont know if you can get the depth of PhotoShop or Excel in a touch application.
HTML5 and JS will still be a key technology for web apps, but for Metro style apps, pick your poison.
- Edited by sehlers Tuesday, September 20, 2011 3:05 PM
I wish Microsoft would give some guidance to the future of WPF, I didn't hear WPF mentioned mentioned even once at the BUILD conference, I was at plenty sessions but nobody ever mentioned WPF. However at the breakfast/lunch tables speculations was going on all the time, it is really hurtful to our business that Microsoft refuse to give a clear answer on the continued dedication to WPF.
Dont get me wrong, I like Metro, but for LOB it is not useful, I dont see enterprises using Metro apps for normal office use.
I like the performance of WinRT, but it is not possible to use in a desktop lob app, why not? Will it be possible in the future? Nobody at the conference would answer that question.
My business has invested heavily in WPF and I have no idea what Microsofts vision for the future of WPF/desktop apps is.
I believe Microsoft will continue their support for WPF. We can still write non metro style apps in Windows 8. You can view the below thread for details
Since Microsoft wanted their users to adhere to new UI style (Metro Style), probably that is the reason why they might not have focused on their old technology which is mouse centric and Window based.
I believe we can write LOB apps that adhere to Metro style design. I would say it is the matter of time for the users to switch to new UI paradigm.
I dont think office workers in general will use a touch interface for LOB applications, things like data entry and apps with many functions does not lend themself well to Metro style designs. My customers have end-users with 3-4 monitors and many apps open at the same time, Windows 8 supports only one open Metro application on just screen (only exception is the split-screen functionality where you can have two apps open with one in a limited view), there is no support of multi monitors for Metro.
I think it's the consumer product that is in the driver seat right now when it comes to programming technology, and for the moment, it is the future of Windows in tablet world and other mobile devices. If you consider that cheaper tablet PCs is outphasing laptop sales, it's imperative that Windows adapt to that circumtance. They are probably just considering the future where consumer will forgo buying a laptop(or even desktop PC) when tablet PC (including eReaders) has caught up with what most people use computer at home in the first place (hint, it's not opening Excel and Word document or firing up their company's ERP).
I have not touch my desktop PC at home for 4 months now after my bank finally rolled out their mobile device app. I browse website and read news using a tablet.
- Edited by JRQ Thursday, October 13, 2011 3:59 PM
I would like to share with you my notes about the recent presentation of Richard Campbell on Windows 8, and Build in BCIT:
Amir Ahani (MCSD.NET)
- Edited by Amir AhaniMVP Wednesday, October 26, 2011 11:17 AM
I would like to share with you my notes about the recent presentation of Rockford Lhotka on Windows 8 in Visual Studio Live! Redmond:
Amir Ahani (MCSD.NET)
- Edited by Amir AhaniMVP Wednesday, October 26, 2011 11:17 AM
I think the active tiles might be best using jquery but it;s just a guess at this point.
I reckon there will eventually be another product like silverlight oob which'll be good for apps on winrt.
Seeing as how the OS isn't anywhere near finalised, let alone tools.
Difficult to judge what businesses would be using these theoretical arm based slates for.
What I see as the future for software developers is very clear:
• .NET Developers can use XAML, C#, F# and Visual Basic to build beautiful Metro style apps.
• Game developers can use the power of DirectX 11.1 to build amazing, immersive gaming experiences.
• Driver developers can use the new, integrated Microsoft® Visual Studio® development environment to increase productivity.
To learn more please read my latest posts at: http://blog.csharplearners.com/2011/11/05/justin-angel-windows-8-c-build-2/
Amir Ahani (MCSD.NET)
- Edited by Amir AhaniMVP Saturday, November 12, 2011 6:54 AM
Don't be so quick to jump the gun on dismissing Silverlight or WPF.
Not all apps are going to be suitable for the new Metro side of Windows 8. There is still the traditional desktop, which will be essential for Business applications.
If you have Silverlight and/or WPF under your belt then to me it seems as though you are getting the best of both worlds.
Some WinRT APIs will also be available to WPF/Silverlight apps running on the traditional desktop. I see them both as technologies worth having.
Personally i'm happy with a number of technologies.
The advantage of WinRT development comes (at first anyway) in my opinion when developing consumer applications that you want to sell through the Windows App Store, as you can also compile them to run on the ARM version of Windows 8 (Which supports the Metro style and not traditional desktop).
The way I see it, it's more choices for developers. You use what works best for your situation.
JP Cowboy Coders Unite!
Very good thanks for confimation on that. This means that the dividing line is this:
Interesting how Java introduced the write once, run anywhere model in 1990, and how we keep having to come back around to that concept. If all platforms support Javscript, then hasn't it become the UNIVERSAL write once run anywhere language now that many companies have shut out Java? Too bad we couldn't get C# to become the universal language, I think a ton of folks really like C#. On the other hand, now that I'm learning Javscript, I'm finding that untyped languages are pretty cool... In fact they tend to support convention over classification. As we dive deeper into typed languages we learn that convention IS very important. So I'm just wondering how handicapped we've been over all these years sticking to strongly typed languages.
JP Cowboy Coders Unite!
Maybe. But you have to also remember what this new model could do to the open source values. Think of what Microsoft is doing with the Windows Store; I asked about this very thing a couple of months ago in another forum talking about publishing to the Store, and one of the moterators sort of pushed me away. he didn't want to talk about Open Source in the store. And not to mention, look what's up for .net; there is a .net 4.5 which is more like 5.0. But my point here is that we could argue frameworks all night; they're all still supported. The question is open source and whether that is supported in Windows8. What will happen to the Outercurve foundation? What will happen to all of the open source metro stuff they have put out? If microsoft is really making us only have one place for metro apps in the name of our safety, if they really want to baby us that much, then what is the point of developing? At least for enjoyment? I'm not trying to diss propriotary software and people trying to make a living, but there are those who are more community driven and who love the open source model.
From what I've seen, businesses still rely heavily and will rely heavily in the future on strong client-side LOB applications written using frameworks like WPF. HTML5 just doesn't make financial sense for non-customer facing applications, and doubtfully ever will in my opinion due to the complexity required to make even a basic application.
For customer-facing applications that are intended to have a broad reach, HTML5 and Silverlight seem to be the only popular options available. Silverlight won't run on mobile, but don't be fooled into thinking that that makes HTML5 a good option...you will still run into the write-once, debug everywhere trap using a language and ecosystem that is nowhere near mature or performant enough for heavy lifting.
For broad reach to standard consumers, writing native GUIs (apps) and relying on cloud services for backend services seems like the best way to do it now, IMO. Some customers, especially businesses like financial institutions, have issues with installing native software applications on PCs, and HTML5 may be the only option for targeting these companies.
- Edited by Mikeg22 Sunday, January 27, 2013 3:53 PM