Live data from Hacker News

Yahoo Mail moving to React

slideshare.net

171–180 of 301 posts

Re: Yahoo Mail moving to React

#171
post #57
post #19

Earlier quoted context omitted.

I'd say, more than anything, the benefit it provides is more personnel-related than anything. While there are definitely dedicated server-side and client side JS people, speaking the "same language" helps within teams and allows for some shared responsibilities. That's appealing to large organizations with decent turnover.

I think you've touched upon the strongest argument for using JavaScript within a server stack. That said, that argument seems less strong for companies the size of Netflix, Yahoo, and so on. They don't exactly have problems recruiting top engineers. Curious stuff.

Recruiting? No, absolutely not. But maintaining? I mean if you can move in and out of server and front side, that might build some lasting engagement with developers.

It also encourages an ecosystem wherein almost any developer out there can work on either side for you.

Re: Yahoo Mail moving to React

#172

I've been a Javascript and Node skeptic for years now but I think the tide is finally turning. So much time and energy has been poured into making JS better that it's finally starting to pay off. Javascript with all the ES6 enhancements is really not a bad language. The runtime performance is already very good and continually getting better. Tools like Typescript and Flow make dealing with larger code bases much easi…

> The runtime performance is already very good and continually getting better Have you checked out the Computer Benchmarks Game? Here are some benchmarks they provide, comparing the JavaScript V8 to Python [1], Ruby [2], and PHP [3]. Looking at statistics such as these, I'm left thinking, "1. This is awesome! 2. Is there something about these other languages that prevents V8-like performance, or is this more a matter…

benchmarksgame is not a serious comparison site, it's in the name.

The comparisons they do is not of idiomatic code... for example in python they do a lot of array programming and don't use numpy (http://www.numpy.org/). So for most languages the results in there are completely meaningless.

Re: Yahoo Mail moving to React

#173

Earlier quoted context omitted.

Probably because he really wants to build an SPA and believes that it provides the best experience for his users. Which might be true.

The notion that SPA automatically gives you better user experience is a fallacy. Better UI design gives you better user experience, and good UI design is possible using the classic approach to web development. As an added bonus, you get searchability for free and you don't have to move away from your existing server-side stack.

I used to think the same way, but trying out a non-SPA site really feels jarring now. The intermittent blank screen and the 2 second wait period makes for a shit user experience. I'm much more used to the fluid desktop-grade UI.

My only gripe with SPA was the initial load-time (looking at you Gmail), but with virtual-dom, being able to generate the html on the server gives you the best of both worlds.

Re: Yahoo Mail moving to React

#174

I see a ton of discussion about the NodeJS decision and almost nothing about the more interesting industry paradigm shift to reactive programming and using functional-style programming in an imperative language. They're joining the likes of Facebook, Netflix, Square, Microsoft, Instagram, Khan Academy, SoundCloud, Trello, New York Times, and others in adopting reactive extensions.

"paradigm shift to reactive programming"

What exactly do you mean by reactive here? As one of the other posters said, react's 're-render the virtual dom' concept doesn't have any direct relationship with the reactive manifesto, though flux might be a better candidate.

Re: Yahoo Mail moving to React

#175
post #97

Earlier quoted context omitted.

I did. I was very much a skeptic of Node.js, but the tools and libraries won me over. So much work is being done to make Javascript a viable platform.

Out of curiosity, what did you program in before you learned node?

I switched from WPF, C# dev to Angular JS with Typescript and Web API with relative ease and I'm digging it. Typescript definitely helped though. I know I have plenty more to learn, but it's not as shitty as people make it out to be.

Re: Yahoo Mail moving to React

#176

Earlier quoted context omitted.

I never worked much with JS, but from my experience I find it hard to imagine writing such a big application in JS. It is so easy to do things wrong in JavaScript. Weak types, global namespace, ambiguous and unexpected behaviours.

I feel like people stick fingers in their ears and ignore the ecosystem whenever JS is mentioned. There's a wealth of transpilers and tools that fix all the problems mentioned here (if you even agree they are problems), and yet they are brought up every time. Weak types: Check out Facebook Flow or TypeScript. Global namespace: Not true with require/modules. Ambiguous/unexpected behavior... please explain? You could u…

True, there's a plethora of JS tools someone can use. The problem is that they have to be discovered. And there's no standard. I found out about Browserify 2 days ago and realised all the problems it could have solved for me. Now I have to migrate the code I have to it.

JS ecosystem is confusing. See: https://news.ycombinator.com/item?id=7074307

Utilities should be a part of the language's "battery".

Ambiguous/Unexpected behaviour: I mean I can redirect you to the popular "Wat" talk. Moreover, isn't that the entire premise of "Javascript: The Good Parts" anyway?

Re: Yahoo Mail moving to React

#177
post #68

Earlier quoted context omitted.

First-class functions and closures are nice if you're coming from Java.

Those are in Java now. Always have been, really, with a lot of boilerplate.

No, they aren't. The only thing "first-class" in Java is classes. They added lambda expressions in Java 8 but they still must be defined inside of a class method. It is still illegal to define a function outside of a class in Java. And Java methods are still not lexical closures; there are some tricks you can do to sort-of emulate this but closures are not a language feature.

Re: Yahoo Mail moving to React

#179
With the Opera browser it takes over a second to load the GUI whenever I click something, and the overall design looks like it has been made by someone making his/her first homepage. No wonder they decided to use something that encourage in-line HTML where code and design get entangled like a pile of spaghetti - making it almost impossible to maintain.

In the last years JavaScript has exploded with new frameworks and "compile to JS languages". But I have yet seen anything close to usable. Maybe it's because I've become "speed blind" after coding JS for over 15 years. I do not see all the problems ppl see in JavaScript, until I look at code written by beginners that seem to use every framework out there, and over-complicate the code, and naming everything with one letter variables and the name of their favorite pizzas.

Re: Yahoo Mail moving to React

#180
Is finding Clojure people that hard (honest question)?

The Clojure + ClojureScript approach has many more batteries included. You get all the benefits of reusing the codebase on both sides of the fence while the language is solving the "Transactional Store", efficient dirty checks, nice server-side concurrency primitives and many unrelated problems for you.

Post reply on HN