31 ms·
MS Teams Switches from AngularJS to React, Ditches Electron.
- roydivision 5y agoUI wise one of the worst apps I’ve had the misfortune of using. Buggy (ticks for mono space text never work first time), really slow, like 300 baud modem typing experience on a laptop that otherwise has no problems, confusing UI, teams/chat/activity I never know where to go. Also it often crashes entirely. I really hope this change clears up some of these problems.
- Mountain_Skies 5y agoInteresting that they didn't go with Blazor.
- SigmundA 5y agoOffice for web already committed to React, Blazor barely production ready, Office team doesn't seem to be a big fan of .Net, C++ or JS all the way
- octopoc 5y agoWebAssembly (and by extension Blazor) is for people who want to keep writing in their preferred (non-Javascript) language, but have to target the web. Electron/Webview2 is for people who want to keep writing Javascript, but have to target the desktop. The two tools are for opposite groups of people.
- deleted 5y ago[deleted]
- qznc 5y agoIt is still powered by a browser engine, so will this really make a difference?
- manquer 5y agoMore control, Edge ( also chromium based yes) gives them more control to fine tune performance better than Electron perhaps, or they are able to fix bugs/ add features to Edge WebView2 easier than with Electron.
- olyjohn 5y agoI hope this also takes care of the battery life issue. Teams video meetings will take my 8 hour battery life, and suck it all down in under an hour. Zoom would not even put a dent in my battery any more than me doing my regular work.
- qixv 5y agoThis. Also, my Teams is _really_ slow. When I, during a video meeting, decide to paste my clipboard into the chat to share an URI, it takes upwards of 10 seconds from when I first push the chat button to it having loaded, and having loaded the input field to having sent the message. It is the same when loading a chat with a new person. It is just _slow_. Thankfully it is weekend now, so I have two full days before returning to work and having to use Teams again.
- godelmachine 5y agoNot forgetting to mention Teams is a memory guzzler Just boot it up and puff, 500MB gone into oblivion
- brutal_chaos_ 5y agoWas that the fault of Teams or maybe because of Electron itself using gobs and gobs of RAM?
- olyjohn 5y agoIf it's an Electron issue, then it's still Teams' fault for choosing to use it!
- brundolf 5y agoI doubt the UI framework has much to say about video chat performance
- qwerty456127 5y ago
- SigmundA 5y agoWonder why WebView2 would be any better than Electron? They are both Chromium based and if kept ups to date should be almost identical, would it just be saving disk space and sharing some memory since it would be using a single install of the browser engine?
- Wowfunhappy 5y agoShouldn’t it also help significantly with memory usage, if the user is also browsing the web or using other WebView2 apps?
- qwerty456127 5y ago> Wonder why WebView2 would be any better than Electron? Because its under their own control. Using a platform you control is great if you actually have the resources to maintain it.
- manquer 5y agoThey could always fork electron, it would have been first thing to do, unless they are expecting to do lot of radical changes which is quite hard to do on electron perhaps
- amunicio 5y agoDon't they own GitHub which employs most of Electron's contributors?
- qwerty456127 5y agoThe community around Electron still has specific expectations. With an actual framework of their own they can safely make maintaining compatibility with the APIs their products use a top priority and also introduce questionable and Windows-specific things which probably aren't welcome in Electron.
- fuzzy2 5y agoOn a single PC it probably wouldn’t matter that much, but if distributed at scale, the savings in bandwidth could be enormous. Electron is quite large after all. Teams shipped with incredibly outdated versions of Electron for a very long time.
- qwerty456127 5y ago"Ditching Electron" is a clickbait - it doesn't go native, just switches to their own clone which seems very reasonable to me as long as they are capable and willing of maintaining it. Switching from Angular to React seems weird. What for? AFAIK the only way React is better is there are more developers familiar with it. I wonder if they considered switching to PHP instead /s
- kunagi7 5y agoSkimming through the Tweets, it seems like the rest of the online Office suite uses React and Teams was the outlier using Angular. Somehow it makes sense to use the same framework for everything and save resources.
- MR4D 5y agoSo now we know that react will never die! Somewhere in Office 2047 will be some code from it I’m sure!
- fuzzy2 5y agoIt is not switching from Angular 2+. It truly is still AngularJS. Very different and an incredible leap.
- qwerty456127 5y agoThis makes sense. Thanks.
- treespace8 5y agoWhen even Microsoft isn't writing native desktop apps anymore, you know it's dead.
- aero-glide2 5y agoIs that why MS Teams is so glitchy? I really wish companies don't abandon native.
- enlightens 5y agoThe linked tweet says that they're switching away from Angular, not AngularJS. These are two entirely different frameworks. https://en.wikipedia.org/wiki/Angular_(web_framework)#Differences_between_Angular_and_AngularJS https://en.wikipedia.org/wiki/Angular_(web_framework)#Differ...
- exoque 5y agohttps://twitter.com/rishmsft/status/1408186679295287296 https://twitter.com/rishmsft/status/1408186679295287296
- politelemon 5y agoThis tweet clarifies it. They're switching from old AngularJs https://mobile.twitter.com/rishmsft/status/1408186679295287296 https://mobile.twitter.com/rishmsft/status/14081866792952872...
- misterbwong 5y agoThis. Looks like they were on the old angular so some switching costs were already baked in to their decision making.
- manquer 5y ago"AngularJS" is more commonly specified as "Angular 1" these days. Without specifying 1 it usually means the latest version of "Angular" which started with only 2+
- eitland 5y agoThat is news to me and I used to use Angular a lot. (angular.js 1.3 - 1.5 and Angular 2, 4, 5, 6, 7 and 8 I think.)
- manquer 5y agoPerhaps it depends on location/ type of environment or something. When I see job postings they seem to mention AngularJS 1.x or as 1 specifically. However the ones for Angular2+ don't really mention to mention that clearly. Perhaps your experience has been different . [1] https://www.ziprecruiter.com/c/Capgemini/Job/Senior-Software-Engineer-Angular-NodeJS-Full-Stack/-in-San-Francisco,CA?jid=5a91e683a3dcb841&lvk=aWa2y9MgI3qgrzU_hP4H0g.--M4ZTId-xF https://www.ziprecruiter.com/c/Capgemini/Job/Senior-Software... [2] https://www.ziprecruiter.com/c/CyberCoders/Job/Lead-Programmer-(AngularJS-JavaScript-)/-in-San-Francisco,CA?jid=66224968f245f186&lvk=4ymahaN704yxAUQAm53LPg.--M3vECHMyc https://www.ziprecruiter.com/c/CyberCoders/Job/Lead-Programm...
- jerhewet 5y agoWith any luck the Microsoft Teams redesign will eliminate all of the "57 replies from ...", "See More", "Expand (52 lines)" and other pointless and annoying prompts from the entire product.
- wayneftw 5y agoLike many in that thread, I'm wondering how WebView2 will work on Linux or Mac. Will it be a PWA or will they build a native shell around native web views for each platform?
- fuzzy2 5y agoApparently, Microsoft is looking to port WebView2 to both macOS and Linux: https://github.com/MicrosoftEdge/WebView2Feedback/issues/1314 https://github.com/MicrosoftEdge/WebView2Feedback/issues/131... https://github.com/MicrosoftEdge/WebView2Feedback/issues/645 https://github.com/MicrosoftEdge/WebView2Feedback/issues/645
- wayneftw 5y agoThank you for digging into that! I've been out of touch with Microsoft tech for a while. I wonder what form a WebView2 would take on macOS and Linux. Some of the commenters on that issue mentioned that they were interested in using it with MAUI/.NET [0] but they could even produce a lower level, C++ component for interop with other environments, which would be pretty interesting. If I could build small, fast desktop cross platform apps with just .NET though, I'd still be interested. [0] https://github.com/dotnet/maui https://github.com/dotnet/maui
- haolez 5y agoThe input lag in Microsoft Teams is atrocious. If they eventually fix this, I'd consider it a decent communication tool, regardless of some inconsistencies in the UX. But this performance issue is very distracting and harms productivity.
- rado 5y agoSo no native. It is terribly slow. 1-2 seconds to switch tabs. Why are people tolerating this? Not nitpicking, it really is a disaster.
- fuzzy2 5y ago> Why are people tolerating this? Because it’s mandated by management.
- derimagia 5y agoI noticed in the Powertoys devdocs[1] it mentions the settings[2] uses React. This looks to be for the settings. Windows 11 had some multi-tasking changes which look very similar to Fancy Zones and I wouldn't be surprised if they are using React in Windows 11 itself. I assume they are probably using React Native through their FluentUI[3]. Would be curious if anyone knows more info on it. [1] https://github.com/microsoft/PowerToys/tree/fa92f2e581e8c74c8968c385b49a72af4266a352/doc/devdocs#settings-web https://github.com/microsoft/PowerToys/tree/fa92f2e581e8c74c... [2] https://github.com/microsoft/PowerToys/tree/fa92f2e581e8c74c8968c385b49a72af4266a352/src/settings-web https://github.com/microsoft/PowerToys/tree/fa92f2e581e8c74c... [3] https://developer.microsoft.com/en-us/fluentui#/get-started/windows https://developer.microsoft.com/en-us/fluentui#/get-started/...