Live data from Hacker News

Office 365 is being completely rewritten in JavaScript

twitter.com

381–390 of 459 posts

Re: Office 365 is being completely rewritten in JavaScript

#381

Earlier quoted context omitted.

Well, blazor exists now, so that's not totally true.

They are actually using Typescript, and this will lead to less friction wrt hiring devs, supporting all those platforms and integrating web components. Still I would have hoped that MS would be a little more forward thinking, and put some of their MSR tech in good use, to encourage the use of better languages. Just like how Facebook is pushing ReasonML. I think that the C# focus of .NET is a major mistake holding the…

How do you know they're doing that? Not that it doesn't make total sense to use TypeScript from any angle I can imagine.

> I think that the C# focus of .NET is a major mistake holding the platform back, especially when we have languages like F#, Scala, Swift, ReasonML and Rust these days.

Yeah F# is really nice, but the IDE support is kinda meh. Also .Net expects you to embrace nil at a lot of points which doesn't gel so nice with F#. But Swift has a worse problem with Objective-C-isms but being a first class citizen really helps as they make a lot of API's really better to use with Swift.

Re: Office 365 is being completely rewritten in JavaScript

#382
post #365

Earlier quoted context omitted.

If you figure out how to build a cross-platform application distribution mechanism that is better than the modern web, please do let us know!

I sure will. The challenge here is social. The Web has fist-mover advantage. Also, I fear that doing it the right way would be equivalent to forcing standardization on a single operating system (or a family of systems).

You would inevitably just end up re-implementing a shittier Web with less features and no adoption. A waste of time.

In the best case scenario you implement something almost identical to the current web which is only slightly better, and therefore not worth moving the entire world over to your stack just to get these minor improvements.

Re: Office 365 is being completely rewritten in JavaScript

#383
post #13

I wonder, is it actually JS or they are using TypeScript? VSCode is written in TypeScript but it was mentioned there that it's JS, did somebody mixed things up?

Yeah, we can verify the validity of the statement since most of these project are open source. It's all Typescript, not JavaScript. according to the OP:

>> Those are one in the same thing (compiled) :-). But us TypeScript in majority at Microsoft in almost all the projects I've seen or been apart of.

Using the same logic, could we say that all windows is written in assembly ? When looking at JavaScript output of a Typescript program, it does really look like JavaScript is treated as assembly.

One almost never edits the JavaScript code when using Typescript, especially if the mapped ts files are available when debugging in F12.

Re: Office 365 is being completely rewritten in JavaScript

#384
post #150

Earlier quoted context omitted.

This is the confusing part for me, yes. Javascript is fine and well, but C# seems the better choice in general here.

I wonder if it has anything to do with their being more JS developers than C# developers. Though, I imagine the average C# developer is a better programmer than the average JS programmer, but since quality is often a function of quantity, maybe there are going the later route. Or maybe it's something entirely different ;-)

> to do with their being more JS developers than C# developers.

My boss told me there was no future banging out C on small embedded processors. 25 years later there is always work because there are so few people who can still do it. When 80% of programmers can't do anything other than JavaScript they'll be more than plenty of work for the other 20%

Re: Office 365 is being completely rewritten in JavaScript

#385

Earlier quoted context omitted.

You may want to actually learn what Typescript is before blithely making such comments.

Yeah, I know what Typescript is. It's another transpiled language. I don't care what the syntax looks like, the point is you've added a secondary level of knowledge required to operate in a codebase written in it, and most don't fluently know the first. Please tell me more about what I don't know.

Typescript is pretty much just annotations and linting. Most of the syntax features have been folded into javascript by now.

In other words it's not a "secondary" level, you only have to learn one level to use it.

Re: Office 365 is being completely rewritten in JavaScript

#386
post #350
post #177

Earlier quoted context omitted.

Can you guarantee all ES6- code to disappear immediately? Or are you forced to dive deep into warts when you have to work on some older JS project?

Why does that impact whether or not it's a reasonable choice to use the language today? Old libraries I could understand, but old independent projects? How do they affect the current state of the language?

Isn't it obvious? You apply for a job, company that isn't a startup has code that is likely written with old JavaScript whose replacement is not economical, so even if you do everything new in ES7, you still have to wade through old ugly code, likely everyday.

Re: Office 365 is being completely rewritten in JavaScript

#387
post #345

Earlier quoted context omitted.

My favorite thing I noticed recently; if you buy a book on the Microsoft Store and open it in a web browser, the url is hosted on zune.net. What year is this?!

Oh it gets better. If you look at the appx package names for "Groove music" and a couple others they're still Microsoft.Zune prefixed

Thats because the team that wrote Groove Music (and Movies & TV) originated from the Zune desktop player and Windows Media Center. In fact it still used a lot of core code from the Zune days for things like library management and DRM.

Source: former dev on the team.

Re: Office 365 is being completely rewritten in JavaScript

#388
post #217

Earlier quoted context omitted.

As much as I can imagine MS would love to kill VBA it would be a major loss of business if they did. Oil and Gas lives in the stuff and would probably even sue MS if VBA died. That said could it be getting a much needed fixup... probably. I suspect the same is true of COM plugins.

I rewrote a 3000 line VBA function into C# earlier this year for a Oil/Gas company. It was surprisingly easy. Sometimes tedious, but easy. It runs faster, it's easier to maintain and now they can slap whatever front-end they want on it. Is it money, fear or gatekeeping that keeps these VBA programs untouchable?

Probably all three.

I used to be in the Medical Devices field. A couple years ago, I was told to add a feature to a massive VBA app hosted in Excel that we (S/W development) inherited from another department. It was hands down the worst code I have ever seen. Everything was a global variable. I flat out told my boss that it barely worked, didn't come close to meeting the weakest of our development standards, and since it was used to disposition product (determine whether or not it was acceptable to be used on Patients) it was an FDA audit nightmare waiting to happen. I added the features, but made some pretty unpleasant commit comments since I didn't want to have my fingerprints all over it.

In all fairness, it was originally developed by a scientist with no SW dev training (I knew him well) for his own use, and just grew over the years as he was told to add more features to it. I have no idea how a company with that level of process strictness ever allowed this fiasco to happen.

[rant over]

I estimated the rewrite at 6-12 months. It was really not a very complex program and since we already had the Validation tests written and documented, we at least knew what tests its replacement would need to pass. The problem was all the stuff that we knew it was doing that wasn't in any of the tests. That would have been the majority of time spent to replace it.

Since I left, I heard ownership of it was transferred to Corporate IT and they were making it into a web app to run on their intranet. Heaven help those guys.

Re: Office 365 is being completely rewritten in JavaScript

#389
post #365

Earlier quoted context omitted.

If you figure out how to build a cross-platform application distribution mechanism that is better than the modern web, please do let us know!

I sure will. The challenge here is social. The Web has fist-mover advantage. Also, I fear that doing it the right way would be equivalent to forcing standardization on a single operating system (or a family of systems).

"Doing it the right way" is a fictitious concept in software development.

You will have built a beautiful language/Web for today's needs, 10 years too late. And as the needs mutate you'll try to mutate with it, and that's how we get JavaScript.

Re: Office 365 is being completely rewritten in JavaScript

#390
post #185

Earlier quoted context omitted.

because it is not a pile of trash. the programmer can be a pile of trash though.

> because it is not a pile of trash For instance, see the `Set` implementation here " rel="nofollow">https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refe... and note that it doesn't even has `union` and `intersection` in the standard library. You have to copy/paste some code and place somewhere to have a minimum usable `Set` implementation. Pretty much a "pile of trash" in my opinion.

That's such a weak example that it reads like a parody of the people who call Javascript a pile of trash.

You're basically praising it with such faint condemnation.

And by your own metric, I can't imagine how bad you think Golang is.

Post reply on HN