Hacker News new | comments | ask | show | jobs | submit login
[dupe] Office 365, Skype, MS Teams, and VS Code Are All Being Rewritten in React Native (twitter.com)
55 points by signa11 8 months ago | hide | past | web | favorite | 15 comments

Hi, I'm Kenneth, PM on VS Code. To clarify here: @code is written in TypeScript and is an Electron app. Not React Native. We don't have plans on moving away from Electron in any near future.

well that's a shame. the Teams app is a slow clunky piece of irritation.

Is re-writing whole parts of a complex project like Skype, O365, or VS Code really worth the effort ?

Compared to fixing existing bugs ?

I'm assuming that MS has decent code quality standards here.

Office 365, the mobile version I assume. There’s no way they’re rewriting Excel for Windows in React...


My understanding is that its almost impossible to achieve the same level of performance that a C/C++ based spreadsheet editor achieves, with a JS based spreadsheet editor.

Especially when dealing with large and complex spreadsheets.

While I'm not disagreeing with you, React would only handle the view part. Native code could still handle the computational parts.

What is it with this tweet being reposted?

Previous discussion here: https://news.ycombinator.com/item?id=17300893


Buried under a fine dust perhaps? We've applied some leavening to let it come up from the second page.

I wonder, not long ago there was a c++ conference were two Microsoft employees were talking about the Office mobile apps and how they developed it [1]. They said that they developed the main part in c++ and the ui part in the respective ui platform (cocoa/android ui framework).

Would be interesting why they moved from this approach to React native.

[1] https://m.youtube.com/watch?v=3HROqnw-nf4

The tweet itself is short on details due to the 280 character limitation on Twitter. The TL;DR seems to be that most of the UI, which was earlier written in TypeScript and created as an Electron application is now in React Native.

Here's the reddit comment [1] with more details (copy pasted the text of that comment here):

> Hi there!!! Original Tweeter here! I'm Sean and I'm a Program Manager at Microsoft working on Microsoft Edge and Edge Dev Tools!

> Going to clarify across a few things. Some was lack of more then 280 chars in a tweet and not expecting this to get beyond #JavaScript twitter.

> MS Teams, VS Code, is already written _with_ TypeScript which is compiled to JavaScript powered by Electron. It is an electron application. VS Code is on GitHub and Open Source if you'd like to see examples of how or what.

> We are not abandoning C++, C#, or any of the other awesome languages, apis, and toolings that we use across Microsoft. EdgeHTML is almost entirely written in C++ like any other browser engine. However we do also run JavaScript (compiled from TypeScript) in DevTools, and leverage open source technologies like React and webpack to build the UI's for them.

> Office 365's UI, a lot of it, but definitely not all of it, are pieces that are built using React Native (Windows). API's and Services are still going to be powered by C++, C#, or whatever is the most appropriate for that team. Nothing is converting to "all/completely" JavaScript/TypeScript.

> React Native compiling JavaScript to "native code" is arguably wrong. Most of what is native are API's interactions and Native Modules that can be communicated with through JavaScript. WebViews power UI rendering thanks to React. Thanks to the Skype Engineer who sniped me on that in discussion.

> Feel free to ask anything else! It's the least I can do for tweeting some pretty unclear messaging.

[1]: https://www.reddit.com/r/programming/comments/8qqhlz/office_...

Javascript, not react native

If you scroll down a bit, you'll see some of the replies reference using React Native.

Applications are open for YC Summer 2019

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact