Have Single-Page Apps Ruined the Web? | Transitional Apps with Rich Harris, NYTimes

Have Single-Page Apps Ruined the Web? | Transitional Apps with Rich Harris, NYTimes

Jamstack TV

2 года назад

232,549 Просмотров

Ссылки и html тэги не поддерживаются


Комментарии:

@beaticulous
@beaticulous - 01.12.2023 18:57

Enginee Over Red b/s

Ответить
@alivenumber5
@alivenumber5 - 23.11.2023 03:59

I don't think it's single-page vs multi-page. Instead it's client-side vs server-side view state management. I've found over time that it's best to pull the state management back to the server in most cases unless you absolutely need instant transitions. But if the state changes it's generally good if the server finds out anyways. So perhaps a combination is the best bet. On click of a button it should instantly change color (or whatever), but the complex state changes should still have to hit the back end for the sole reason that there's a maximum amount of state you really want to send up front anyways. Lets say a table with 10 viewable entries. Paging forward should instantly give feedback with an initial small change and possible loading animation, but the query should only return lets say 20 results, the queued results and the viewed ones. A click should show the queued results, but still hit the back-end for the next queued results. Best of both worlds!

Ответить
@explorster
@explorster - 19.07.2023 20:57

Web development has become over complicated.

Ответить
@edhahaz
@edhahaz - 12.07.2023 14:10

Yep. This explains the problem pretty well and why fighting the javascript stack is simply impossible without google doing the work DIRECTLY in V8

Ответить
@fennecbesixdouze1794
@fennecbesixdouze1794 - 07.07.2023 23:05

"I want to be free of design constraints!"

"I want predictable browser behavior!"

Think a bit deeper.

Ответить
@fennecbesixdouze1794
@fennecbesixdouze1794 - 07.07.2023 22:56

About 15 years ago it was not clear that the web would survive native phone applications. The best options for truly interactive web applications were using things like Macromedia Flash or even Internet Explorer specific web extensions. Native phone applications provided far better platforms for fluid, interactive experiences, so it seemed like the web would die.

In response, we developed SPA frameworks, AJAX and client-side dynamic JS-controlled rendering, starting with virtual doms and progressing to what we have now with observer frameworks. All these developments saved the web by transforming plain HTML into a medium that could deliver rich interactive experiences to rival native UI development. At this point, not only have SPAs in general saved the web, they've also taken over native desktop application development: many companies are rewriting their desktop GUI applications from Qt to Electron apps. And shockingly, far from becoming slower and more bloated they are often faster and more responsive despite the massive Electron overhead.

I'm waiting for the talk where someone actually addresses the people in power: browser vendors, Google Chrome etc, and demands better accessibility and better graceful degrading from them, rather than demanding developers magically be able to change the way they have to write code to make a living. There's no reason why Google Chrome couldn't adjust to SPA's and JS-driven applications, and bring better accessibility to that world we've actually built.

Ответить
@chinmayk8004
@chinmayk8004 - 22.06.2023 12:38

With that hairstyle when he says "come to jesus moment", I am sure he is referring to himself.

Ответить
@MrJonathandsouza
@MrJonathandsouza - 08.06.2023 22:27

This mans talks are 🔥

Ответить
@LeePenkman
@LeePenkman - 07.06.2023 03:35

Pretty nice... I'll chime in with both of my personalities:
Traditionalist: you're not building the new york times and you don't need Transitional Apps Either. Sure you could build a SPA which isn't going to be found in Google and your business will implode under complexity...
Modernist: Are you even a real craftsman? Your app should be the best of the best and custom transitions add to the pizzaz, if your homepage is oldschool then people will leave and wont invest. Pizzaz/brand is even more important than correctness. Show the the examples of a successful 2023 startup that doesn't need javascript (apart from reddit/hacker news/craigslist)?

Ответить
@user-bw6de4pd5h
@user-bw6de4pd5h - 25.05.2023 05:04

Great. Loaded with great analysis, rhetoric, and... empathy :).

Ответить
@chmod0644
@chmod0644 - 01.05.2023 01:18

Way too dismissive of the LiveView-style approach. The vast majority (and I mean literally 99%) of website needs are covered by it as it exists today. And there is no theoretical limit to the approach. Sorry JS devs, but we just need to get JavaScript out of the driver's seat here, and flip the script. Use as little JS as possible, push more into the statically-compiled browser core, and ship as little state as you can back and forth. LiveView is the way.

Ответить
@DummyFace123
@DummyFace123 - 27.04.2023 01:47

What a Lit 3.0 could really use however is just far less boilerplate.
Some people say “oh Svelte is most loved because it’s so fast and because it’s compiled blah blah blah”
WRONG!
Svelte is most loved because of its simplicity and it obeys KISS. This is a byproduct of being compiled. If you are going to compile, then you may as well make it expressive an intuitive. A purpose built language designed around a problem it’s solving.
I compare svelte to sql.
Svelte is to reactive web development as sql is to relational database querying.
You COULD use MS Linq to query a database if you hate yourself, but why? Why would you use a hammer on a screw?
And that is why svelte is most loved. It’s a purpose built language designed to solve a reactive UI problem, instead of hamfisting the problem with javascript syntax

Ответить
@DummyFace123
@DummyFace123 - 27.04.2023 01:35

If anyone has had to work on pages at big businesses with multiple technologies going on, you can appreciate non-frameworks, where there’s no monolithic tyrant piece of JavaScript trying to control everything.
Inevitably, no matter what it is, that thing is going to go on life support.
And when that entire page oppressing tyrantscript dies, it is a painful process.
When a web component dies, the pain is very manageable.
That’s something I think every framework needs to ask is how easy is it for them to die.

Ответить
@DummyFace123
@DummyFace123 - 27.04.2023 01:24

I’m hitching my wagon to Lit web components because you can inject them into any framework and they are responsible for themselves. They’re like mini-sveltes and there’s nothing you can do about them. Not even blazor pages can prevent them

Ответить
@dugalcedo
@dugalcedo - 14.04.2023 01:22

Browser Applications Supplying Thorough Usability?

Ответить
@haidermansoor4760
@haidermansoor4760 - 01.04.2023 13:45

Erlich Bachmann created Svelte?

Ответить
@petermoore8811
@petermoore8811 - 09.03.2023 14:04

Lets face it I accept JS but the language design decision in it are terrible which is why we use duck tape it with frameworks. python and ruby are much better designed languages and if they were implemented by browsers we would see a sharp decline in JS. SPA are the way forward so JS will balloon. But please lets be real JS is not cool. Svelte however is a great step forward :-)

Ответить
@markusobermaier
@markusobermaier - 18.02.2023 15:47

HOTTUB, SAUNA, JACUZZI...you are a genius 😂

Ответить
@nadavbensimon1267
@nadavbensimon1267 - 30.01.2023 19:56

who says you need js framework

Ответить
@danvilela
@danvilela - 14.01.2023 22:36

Yep.. I thought SPAs was the next biggest thing and all super efficient. Did my website with nuxt 2 and vuetify and BAM.. Shoot in the foot, was way worse then my previous PHP version. Thank god Rich Harris is making my knowledge on this usefull lol

Ответить
@Miles-co5xm
@Miles-co5xm - 24.12.2022 09:13

Idk, but spa with svelte-spa-router is just awesome

Ответить
@HaraldEngels
@HaraldEngels - 13.12.2022 01:20

HTMX or UNPOLY came to our rescue 🙂

Ответить
@PARTYzaNOVAC
@PARTYzaNOVAC - 11.12.2022 23:33

One more hitch that was frustrating is that extending the Locals interface from /app.d.ts did not work, it kept complaining that properties I just defined do not exist on App.Locals, after a good hour of googling I found that I need to wrap the App namespace declaration in "declare global {...}" and it magically worked. Not sure why that is needed, but it would probably be a good idea to have it wrapped in "global" by default as many might give up on Svelte when they encounter this.

Ответить
@CarlosKoulatsis
@CarlosKoulatsis - 08.11.2022 22:07

I like this guy.

Ответить
@kerron68
@kerron68 - 08.10.2022 21:02

That was brilliant

Ответить
@cedrickmccrary5356
@cedrickmccrary5356 - 01.10.2022 15:25

Is this Chris from common creations Dick's sporting goods sponsor because he's all starting to make sense now you guys threw me out of the company and then you tried to say because we were partners caught on quote they give you the right to the access to things that you did not know were government and federal bound... Can't wait til they go down for their actions

Ответить
@ramireznoy
@ramireznoy - 12.09.2022 19:10

That's a really interesting and thoughtful analysis. But somehow I can not stop thinking it is like re-inventing the wheel. Getting chunks of the page and the page logic is something we considered normal and common in the golden age of jQuery. Getting a modal content and form validator, a menu content and animations, a notification content and interactions was something very common 12 or 14 years ago.
Of course, the point of the multilanguage issue was a problem, amplified by the use of many template engines all over the place. Making portability a huge issue. In any case... As we all can recognize the need for SSR and the advantages of SPA... Why not to have Svelte (It could also be applied to Vue and React) working as a template engine instead of isolating itself as a SSR capability? I think current SSR support is the one increasing the gap here, not solving any issue (most of the time you could get away easier and faster with smart code splitting). It is fine if SSR applies for a number of cases and you can use it, but the real power tool will be to also include template engine capabilities. Imagine being able to parametrize every page load as you wish but from you business logic.

Ответить
@jonathanvandenberg3571
@jonathanvandenberg3571 - 20.08.2022 21:33

very nice, I like.

Ответить
@lancemarchetti8673
@lancemarchetti8673 - 20.08.2022 10:07

Brilliant 👏

Ответить
@webdeveloperninja9220
@webdeveloperninja9220 - 14.08.2022 15:13

Been thinking of this, interesting

Ответить
@DodaGarcia
@DodaGarcia - 13.08.2022 21:00

Also I don't understand the random hate for JavaScript? I get it's still not seen as a "grownup" language like Python or Java, but the flexibility and versatility of what you can do with a good grasp of JavaScript are astounding, and not just in web development.

Ответить
@DodaGarcia
@DodaGarcia - 13.08.2022 20:55

God this talk is almost ASMR to me, not because it's boring (it's definitely not) but because the eloquence and honesty with which they present each argument calm me down. I keep coming back to it when I feel stressed out, I wish more technical talks were like this.

Ответить
@bashirokala9380
@bashirokala9380 - 11.08.2022 17:50

Nice to see Erlic Backman take time from smoking opium in china to give us a tech talk

Ответить
@benc9765
@benc9765 - 09.08.2022 22:33

Jìan-Yàng!!!

Ответить
@blarvinius
@blarvinius - 08.08.2022 19:07

Excellent.

Ответить
@JeatBunkie
@JeatBunkie - 05.08.2022 00:34

I could find you so many badly designed ‘traditional’ MPAs. You just picked out a few oversights and badly implemented features of specific SPAs. ‘Ruined the web’ lol stfu man. You’re also so pompous about i urgh cringe

Ответить
@loistalagrand5479
@loistalagrand5479 - 26.07.2022 20:42

Erlich ???

Ответить
@Fanaro
@Fanaro - 21.07.2022 20:55

And how about no freaking framework??? Just build something tailored to your app's needs with what's available in HTML, CSS and JS/TS, that's a new (old) idea.

Ответить
@Fanaro
@Fanaro - 21.07.2022 20:54

And WASM?

Ответить
@ihelpdogs
@ihelpdogs - 21.07.2022 08:14

Imagine if the universe said... "this matters".

Ответить
@champorado2131
@champorado2131 - 20.07.2022 10:22

So much talk, this is a waste of time. Just use whatever you need to satisfy your clients. Its a free world.

Ответить
@yuri0001
@yuri0001 - 19.07.2022 22:06

This guy. Listen to this guy, he's an arch mage.

Ответить
@Narblo
@Narblo - 13.07.2022 22:55

What if we do webapps like android apps? Let me expand: binary files, they use the browser GUI lib (jetpack compose like API) any language can compile to this binary format (webasm) and thus we get faster to download apps, we can use any toolchain we want (more tools available in any language!) and thus better web!

Ответить
@waytospergtherebro
@waytospergtherebro - 08.07.2022 20:45

When "webmasters" became "engineers" and "engineers" decided that "front end" and "back end" were two separate things some butthurt little boy got tired of the "back end" people picking on him for making things look pretty and set out to make the "front end" more complicated and convoluted than device driver development in retaliation. That butthurt little boy still doesn't understand CSS so he keeps on inventing new ways to avoid having to learn it or use it properly.

Ответить
@edwassermann8368
@edwassermann8368 - 27.06.2022 04:23

awesome. I"m sold.

Ответить
@ianmarteens
@ianmarteens - 17.06.2022 20:57

I liked the video, and I prefer Svelte over all the others frameworks I now… but it’s true that most of the evil in modern webs has something to do with Javascript.

Ответить