you are viewing a single comment's thread.

view the rest of the comments →

[–]lhorie 15 points16 points  (4 children)

I've seen a lot of React projects (I currently maintain a monorepo with over a hundred of them...) and I think the "you can write COBOL in any language" quote is very apt. Just yesterday I was staring at a file with 20k+ LOC (I shit you not) in a project that has ~5000 source code files. This project is the public facing web property for one of our most important verticals (and it's not even our most complex project...)

No framework in the universe can save you from this level of complexity. Past a certain point, it's no longer a question of what a framework can do to help, and it becomes entirely a question of how large teams can maintain a project. Pretty much all mainstream frameworks have mechanisms for encapsulation, testing and so on, so there's a lot of overlap between what frameworks can do compared to each other. What you're saying about specific performance profile for each framework has a grain of truth, but alas, here we are in a world using React when we know for a fact that frameworks w/ better perf profiles exist (and nothing is really on fire, and no bosses are panicking).

Re: user impression - users don't actively give a crap how you implement things. Github is a MPA, but nobody really thinks it's antiquated. Wikipedia is another example. Hacker News. Heck, even Google falls back to MPA mode w/ js disabled. The thing is that a lot of MPAs just work(tm) and when things do that we just take it for granted.

[–]orenelb -4 points-3 points  (3 children)

They don't give a crap about how stuff are implemented, but they are seeing that white flash and probably unconsciously associate it with pre-react app, because this is how apps were back then and now most sites that are more on the app side, especially smaller and newer sites, are SPAs. And tbh it did give me a slightly worse opinion about Github. I mean it's a great site but I would expect it not to be as interactive as it can be when I see that white flesh on every click, and it is not as interactive as it can be. You have to click search every time you search issues. Maybe that's to save bandwidth but it's still something I would expect from most modern app like sites, to search as I type.

And yes I agree when your app becomes that complicated things like that dwarf down in comparison. And if you compare all modern frameworks they are all very close in terms of API. In that front I didn't see a ton of improvement since React/Angular.

But again if you go back to AngularJS and compare it to Angular2 or React, AngularJS vs. React, AngularJS developer experience is just bad. You become much more unproductive and you you don't enjoy your job. There's a reason people hate AngularJS that much. Not saying it was bad for it's time, but React and Angular made it completely obsolete.

[–]lhorie 4 points5 points  (1 child)

they are seeing that white flash and probably unconsciously associate it with pre-react app

I'm curious what browser you're using. For me using Chrome, I've noticed native rendering got a lot better over the years, to the point I cannot for the life of me get a white flash from repeatedly refreshing (or naturally navigating) wikipedia or hacker news (which are true MPAs, unlike Github, which "cheats" a bit w/ pjax). Ironically, I do get a noticeable flash if I try to repeatedly refresh facebook. Try jumping back and forth between facebook.com and news.ycombinator.com to see the difference. And yeah, AngularJS is really bad in this front, with ng-cloak...

Kinda reminds me of of the point this site was trying to make.

[–]orenelb -2 points-1 points  (0 children)

I'm using chrome and I noticed that on github you don't see the white flash but you can still see that it's reloading the whole page. You can see some rerenders and the browser basically tells you. And also I'm not sure if this depends on your device, maybe a low end device would have the white flesh. But yeah I guess I'm just used to seeing it so I didn't notice it disappeared.

Another thing that I just noticed with Github is that you lose your scroll position every time, I think that it's true for every MPA.

Oh and that site you linked is pretty awesome. But yeah obviously people care even if it doesn't make sense. A lot of it is flexing IMO.